theorem Lean.Grind.Ring.OfSemiring.instAssociativeHAdd (α : Type u) [Semiring α] :
Std.Associative fun (x1 x2 : α) => x1 + x2
theorem Lean.Grind.Ring.OfSemiring.instCommutativeHAdd (α : Type u) [Semiring α] :
Std.Commutative fun (x1 x2 : α) => x1 + x2
theorem Lean.Grind.Ring.OfSemiring.instAssociativeHMul (α : Type u) [Semiring α] :
Std.Associative fun (x1 x2 : α) => x1 * x2
@[implicit_reducible]
Equations
Instances For
Equations
Instances For
Equations
Instances For
Equations
- Lean.Grind.Ring.OfSemiring.neg q = Quot.liftOn q (fun (x : α × α) => match x with | (a, b) => Lean.Grind.Ring.OfSemiring.Q.mk (b, a)) ⋯
Instances For
Equations
Instances For
Equations
Instances For
Equations
Instances For
Embedding theorems
Helper definitions and theorems for proving toQ is injective when
CommSemiring has the right_cancel property
@[instance 10000]
instance Lean.Grind.Ring.OfSemiring.instNoNatZeroDivisorsQOfAddRightCancel {α : Type u} [Semiring α] [AddRightCancel α] [NoNatZeroDivisors α] :
NoNatZeroDivisors (Q α)
@[instance 10000]
instance Lean.Grind.Ring.OfSemiring.instIsCharPQOfAddRightCancel {α : Type u} {p : Nat} [Semiring α] [AddRightCancel α] [IsCharP α p] :
@[instance_reducible, instance 10000]
instance Lean.Grind.Ring.OfSemiring.instLEQOfOrderedAdd {α : Type u} [Semiring α] [LE α] [Std.IsPreorder α] [OrderedAdd α] :
Equations
- One or more equations did not get rendered due to their size.
@[instance_reducible, instance 10000]
instance Lean.Grind.Ring.OfSemiring.instLTQOfOrderedAdd {α : Type u} [Semiring α] [LE α] [Std.IsPreorder α] [OrderedAdd α] :
Equations
- Lean.Grind.Ring.OfSemiring.instLTQOfOrderedAdd = { lt := fun (a b : Lean.Grind.Ring.OfSemiring.Q α) => a ≤ b ∧ ¬b ≤ a }
@[instance 10000]
instance Lean.Grind.Ring.OfSemiring.instIsPreorderQ {α : Type u} [Semiring α] [LE α] [Std.IsPreorder α] [OrderedAdd α] :
Std.IsPreorder (Q α)
theorem Lean.Grind.Ring.OfSemiring.toQ_le {α : Type u} [Semiring α] [LE α] [Std.IsPreorder α] [OrderedAdd α] {a b : α} :
theorem Lean.Grind.Ring.OfSemiring.toQ_lt {α : Type u} [Semiring α] [LE α] [LT α] [Std.LawfulOrderLT α] [Std.IsPreorder α] [OrderedAdd α] {a b : α} :
@[instance 10000]
instance Lean.Grind.Ring.OfSemiring.instOrderedAddQ {α : Type u} [Semiring α] [LE α] [Std.IsPreorder α] [OrderedAdd α] :
OrderedAdd (Q α)
@[instance 10000]
instance Lean.Grind.Ring.OfSemiring.instOrderedRingQOfLawfulOrderLTOfExistsAddOfLT {α : Type u} [Semiring α] [LE α] [LT α] [Std.LawfulOrderLT α] [Std.IsPreorder α] [OrderedRing α] [ExistsAddOfLT α] :
OrderedRing (Q α)
theorem Lean.Grind.CommRing.OfCommSemiring.instAssociativeHAdd (α : Type u) [CommSemiring α] :
Std.Associative fun (x1 x2 : α) => x1 + x2
theorem Lean.Grind.CommRing.OfCommSemiring.instCommutativeHAdd (α : Type u) [CommSemiring α] :
Std.Commutative fun (x1 x2 : α) => x1 + x2
theorem Lean.Grind.CommRing.OfCommSemiring.instAssociativeHMul (α : Type u) [CommSemiring α] :
Std.Associative fun (x1 x2 : α) => x1 * x2
theorem Lean.Grind.CommRing.OfCommSemiring.instCommutativeHMul (α : Type u) [CommSemiring α] :
Std.Commutative fun (x1 x2 : α) => x1 * x2
theorem Lean.Grind.CommRing.OfCommSemiring.mul_comm {α : Type u} [CommSemiring α] (a b : Ring.OfSemiring.Q α) :
@[instance_reducible, instance 10000]
Equations
- Lean.Grind.CommRing.OfCommSemiring.ofCommSemiring = { toRing := Lean.Grind.Ring.OfSemiring.ofSemiring, mul_comm := ⋯ }
@[instance_reducible, instance 10000]
instance Lean.Grind.CommRing.OfCommSemiring.instAddQ {α : Type u} [CommSemiring α] [CommRing (Ring.OfSemiring.Q α)] :
Add (Ring.OfSemiring.Q α)
@[instance_reducible, instance 10000]
instance Lean.Grind.CommRing.OfCommSemiring.instSubQ {α : Type u} [CommSemiring α] [CommRing (Ring.OfSemiring.Q α)] :
Sub (Ring.OfSemiring.Q α)
@[instance_reducible, instance 10000]
instance Lean.Grind.CommRing.OfCommSemiring.instMulQ {α : Type u} [CommSemiring α] [CommRing (Ring.OfSemiring.Q α)] :
Mul (Ring.OfSemiring.Q α)
@[instance_reducible, instance 10000]
instance Lean.Grind.CommRing.OfCommSemiring.instNegQ {α : Type u} [CommSemiring α] [CommRing (Ring.OfSemiring.Q α)] :
Neg (Ring.OfSemiring.Q α)
@[instance_reducible, instance 10000]
instance Lean.Grind.CommRing.OfCommSemiring.instOfNatQ {α : Type u} [CommSemiring α] {n : Nat} [CommRing (Ring.OfSemiring.Q α)] :
OfNat (Ring.OfSemiring.Q α) n
@[instance_reducible, instance 10000]
instance Lean.Grind.CommRing.OfCommSemiring.instNatCastQ {α : Type u} [CommSemiring α] [CommRing (Ring.OfSemiring.Q α)] :
@[instance_reducible, instance 10000]
instance Lean.Grind.CommRing.OfCommSemiring.instIntCastQ {α : Type u} [CommSemiring α] [CommRing (Ring.OfSemiring.Q α)] :
@[instance_reducible, instance 10000]
instance Lean.Grind.CommRing.OfCommSemiring.instHPowQNat {α : Type u} [CommSemiring α] [CommRing (Ring.OfSemiring.Q α)] :
HPow (Ring.OfSemiring.Q α) Nat (Ring.OfSemiring.Q α)
Equations
- One or more equations did not get rendered due to their size.