mathlib documentation

ring_theory.​free_comm_ring

ring_theory.​free_comm_ring

def free_comm_ring  :
Type uType u

Equations
@[instance]

Equations
theorem free_comm_ring.​induction_on {α : Type u} {C : free_comm_ring α → Prop} (z : free_comm_ring α) :
C (-1)(∀ (b : α), C (free_comm_ring.of b))(∀ (x y : free_comm_ring α), C xC yC (x + y))(∀ (x y : free_comm_ring α), C xC yC (x * y))C z

def free_comm_ring.​lift {α : Type u} {β : Type v} [comm_ring β] :
(α → β)free_comm_ring α →+ β

Lift a map α → R to a additive group homomorphism free_comm_ring α → R. For a version producing a bundled homomorphism, see lift_hom.

Equations
@[simp]
theorem free_comm_ring.​lift_zero {α : Type u} {β : Type v} [comm_ring β] (f : α → β) :

@[simp]
theorem free_comm_ring.​lift_one {α : Type u} {β : Type v} [comm_ring β] (f : α → β) :

@[simp]
theorem free_comm_ring.​lift_of {α : Type u} {β : Type v} [comm_ring β] (f : α → β) (x : α) :

@[simp]
theorem free_comm_ring.​lift_add {α : Type u} {β : Type v} [comm_ring β] (f : α → β) (x y : free_comm_ring α) :

@[simp]
theorem free_comm_ring.​lift_neg {α : Type u} {β : Type v} [comm_ring β] (f : α → β) (x : free_comm_ring α) :

@[simp]
theorem free_comm_ring.​lift_sub {α : Type u} {β : Type v} [comm_ring β] (f : α → β) (x y : free_comm_ring α) :

@[simp]
theorem free_comm_ring.​lift_mul {α : Type u} {β : Type v} [comm_ring β] (f : α → β) (x y : free_comm_ring α) :

def free_comm_ring.​lift_hom {α : Type u} {β : Type v} [comm_ring β] :
(α → β)free_comm_ring α →+* β

Lift of a map f : α → β to free_comm_ring α as a ring homomorphism. We don't use it as the canonical form because Lean fails to coerce it to a function.

Equations
@[simp]
theorem free_comm_ring.​coe_lift_hom {α : Type u} {β : Type v} [comm_ring β] (f : α → β) :

@[simp]
theorem free_comm_ring.​lift_pow {α : Type u} {β : Type v} [comm_ring β] (f : α → β) (x : free_comm_ring α) (n : ) :

@[simp]
theorem free_comm_ring.​lift_comp_of {α : Type u} {β : Type v} [comm_ring β] (f : free_comm_ring α → β) [is_ring_hom f] :

@[simp]

def free_comm_ring.​map {α : Type u} {β : Type v} :
(α → β)free_comm_ring α →+* free_comm_ring β

A map f : α → β produces a ring homomorphism free_comm_ring α → free_comm_ring β.

Equations
theorem free_comm_ring.​map_zero {α : Type u} {β : Type v} (f : α → β) :

theorem free_comm_ring.​map_one {α : Type u} {β : Type v} (f : α → β) :

theorem free_comm_ring.​map_of {α : Type u} {β : Type v} (f : α → β) (x : α) :

theorem free_comm_ring.​map_add {α : Type u} {β : Type v} (f : α → β) (x y : free_comm_ring α) :

theorem free_comm_ring.​map_neg {α : Type u} {β : Type v} (f : α → β) (x : free_comm_ring α) :

theorem free_comm_ring.​map_sub {α : Type u} {β : Type v} (f : α → β) (x y : free_comm_ring α) :

theorem free_comm_ring.​map_mul {α : Type u} {β : Type v} (f : α → β) (x y : free_comm_ring α) :

theorem free_comm_ring.​map_pow {α : Type u} {β : Type v} (f : α → β) (x : free_comm_ring α) (n : ) :

def free_comm_ring.​is_supported {α : Type u} :
free_comm_ring αset α → Prop

Equations
theorem free_comm_ring.​is_supported_upwards {α : Type u} {x : free_comm_ring α} {s t : set α} :
x.is_supported ss tx.is_supported t

theorem free_comm_ring.​is_supported_add {α : Type u} {x y : free_comm_ring α} {s : set α} :
x.is_supported sy.is_supported s(x + y).is_supported s

theorem free_comm_ring.​is_supported_neg {α : Type u} {x : free_comm_ring α} {s : set α} :

theorem free_comm_ring.​is_supported_sub {α : Type u} {x y : free_comm_ring α} {s : set α} :
x.is_supported sy.is_supported s(x - y).is_supported s

theorem free_comm_ring.​is_supported_mul {α : Type u} {x y : free_comm_ring α} {s : set α} :
x.is_supported sy.is_supported s(x * y).is_supported s

theorem free_comm_ring.​is_supported_zero {α : Type u} {s : set α} :

theorem free_comm_ring.​is_supported_one {α : Type u} {s : set α} :

theorem free_comm_ring.​is_supported_int {α : Type u} {i : } {s : set α} :

Equations
@[simp]
theorem free_comm_ring.​restriction_of {α : Type u} (s : set α) [decidable_pred s] (p : α) :
(free_comm_ring.restriction s) (free_comm_ring.of p) = dite (p s) (λ (H : p s), free_comm_ring.of p, H⟩) (λ (H : p s), 0)

@[simp]

@[simp]

theorem free_comm_ring.​is_supported_of {α : Type u} {p : α} {s : set α} :

theorem free_comm_ring.​exists_finite_support {α : Type u} (x : free_comm_ring α) :
∃ (s : set α), s.finite x.is_supported s

theorem free_comm_ring.​exists_finset_support {α : Type u} (x : free_comm_ring α) :
∃ (s : finset α), x.is_supported s

@[instance]

Equations
  • _ = _
@[simp]
theorem free_ring.​coe_zero (α : Type u) :
0 = 0

@[simp]
theorem free_ring.​coe_one (α : Type u) :
1 = 1

@[simp]
theorem free_ring.​coe_of {α : Type u} (a : α) :

@[simp]
theorem free_ring.​coe_neg {α : Type u} (x : free_ring α) :

@[simp]
theorem free_ring.​coe_add {α : Type u} (x y : free_ring α) :
(x + y) = x + y

@[simp]
theorem free_ring.​coe_sub {α : Type u} (x y : free_ring α) :
(x - y) = x - y

@[simp]
theorem free_ring.​coe_mul {α : Type u} (x y : free_ring α) :
(x * y) = x * y

theorem free_ring.​coe_eq (α : Type u) :
coe = functor.map (λ (l : list α), l)

def free_ring.​of' {R : Type u_1} {S : Type u_2} [ring R] [ring S] (e : R S) [is_ring_hom e] :
R ≃+* S

Interpret an equivalence f : R ≃ S as a ring equivalence R ≃+* S.

Equations