Documentation

Init.Grind.Ring.Field

class Lean.Grind.Field (α : Type u) extends Lean.Grind.CommRing α, Inv α, Div α :

A field is a commutative ring with inverses for all non-zero elements.

Instances
    theorem Lean.Grind.Field.inv_mul_cancel {α : Type u_1} [Field α] {a : α} (h : a 0) :
    a⁻¹ * a = 1
    theorem Lean.Grind.Field.eq_inv_of_mul_eq_one {α : Type u_1} [Field α] {a b : α} (h : a * b = 1) :
    a = b⁻¹
    theorem Lean.Grind.Field.inv_one {α : Type u_1} [Field α] :
    1⁻¹ = 1
    theorem Lean.Grind.Field.inv_inv {α : Type u_1} [Field α] (a : α) :
    theorem Lean.Grind.Field.inv_eq_iff_eq_iff {α : Type u_1} [Field α] (a b : α) :
    a⁻¹ = b a = b⁻¹
    theorem Lean.Grind.Field.inv_neg {α : Type u_1} [Field α] (a : α) :
    theorem Lean.Grind.Field.inv_eq_zero_iff {α : Type u_1} [Field α] {a : α} :
    a⁻¹ = 0 a = 0
    theorem Lean.Grind.Field.zero_eq_inv_iff {α : Type u_1} [Field α] {a : α} :
    0 = a⁻¹ 0 = a
    theorem Lean.Grind.Field.of_mul_eq_zero {α : Type u_1} [Field α] {a b : α} :
    a * b = 0a = 0 b = 0
    theorem Lean.Grind.Field.inv_mul {α : Type u_1} [Field α] (a b : α) :
    (a * b)⁻¹ = a⁻¹ * b⁻¹
    theorem Lean.Grind.Field.of_pow_eq_zero {α : Type u_1} [Field α] (a : α) (n : Nat) :
    a ^ n = 0a = 0
    theorem Lean.Grind.Field.zpow_natCast {α : Type u_1} [Field α] (a : α) (n : Nat) :
    a ^ n = a ^ n
    theorem Lean.Grind.Field.zpow_one {α : Type u_1} [Field α] (a : α) :
    a ^ 1 = a
    theorem Lean.Grind.Field.zpow_neg_one {α : Type u_1} [Field α] (a : α) :
    a ^ (-1) = a⁻¹
    theorem Lean.Grind.Field.zpow_add_one {α : Type u_1} [Field α] {a : α} (h : a 0) (n : Int) :
    a ^ (n + 1) = a ^ n * a
    theorem Lean.Grind.Field.zpow_sub_one {α : Type u_1} [Field α] {a : α} (h : a 0) (n : Int) :
    a ^ (n - 1) = a ^ n * a⁻¹
    theorem Lean.Grind.Field.zpow_add {α : Type u_1} [Field α] {a : α} (h : a 0) (m n : Int) :
    a ^ (m + n) = a ^ m * a ^ n
    theorem Lean.Grind.Field.div_zero {α : Type u_1} [Field α] {x : α} :
    x / 0 = 0
    theorem Lean.Grind.Field.mul_div {α : Type u_1} [Field α] {x y z : α} :
    x * (y / z) = x * y / z
    theorem Lean.Grind.Field.div_mul {α : Type u_1} [Field α] {x y z : α} :
    x / y * z = x * z / y
    theorem Lean.Grind.Field.div_add {α : Type u_1} [Field α] {x y z : α} (hy : y 0) :
    x / y + z = (x + y * z) / y
    theorem Lean.Grind.Field.add_div {α : Type u_1} [Field α] {x y z : α} (hz : z 0) :
    x + y / z = (x * z + y) / z
    theorem Lean.Grind.Field.div_div_right {α : Type u_1} [Field α] {x y z : α} :
    x / (y / z) = x * z / y
    theorem Lean.Grind.Field.div_div_left {α : Type u_1} [Field α] {x y z : α} :
    x / y / z = x / (y * z)
    theorem Lean.Grind.Field.div_mul_cancel {α : Type u_1} [Field α] {x y : α} (h : y 0) :
    x / y * y = x
    theorem Lean.Grind.Field.natCast_ne_zero {α : Type u_1} [Field α] [IsCharP α 0] {n : Nat} (h : n 0) :
    n 0
    theorem Lean.Grind.Field.intCast_div_of_dvd {α : Type u_1} [Field α] {x y : Int} (h : y x) (w : y 0) :
    ↑(x / y) = x / y
    theorem Lean.Grind.Field.natCast_div_of_dvd {α : Type u_1} [Field α] {x y : Nat} (h : y x) (w : y 0) :
    ↑(x / y) = x / y
    Equations
    • =
    Instances For