The category of Boolean rings #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
This file defines BoolRing
, the category of Boolean rings.
TODO #
Finish the equivalence with BoolAlg
.
The category of Boolean rings.
Equations
@[protected, instance]
@[protected, instance]
Equations
- X.boolean_ring = X.str
Construct a bundled BoolRing
from a boolean_ring
.
Equations
@[protected, instance]
Equations
@[protected, instance]
Equations
- BoolRing.boolean_ring.to_comm_ring.category_theory.bundled_hom.parent_projection = category_theory.bundled_hom.parent_projection.mk
@[protected, instance]
@[simp]
@[simp]
theorem
BoolRing.has_forget_to_CommRing_forget₂_obj_str_add
(X : category_theory.bundled boolean_ring)
(ᾰ ᾰ_1 : X.α) :
@[protected, instance]
@[simp]
@[simp]
theorem
BoolRing.has_forget_to_CommRing_forget₂_obj_str_nsmul
(X : category_theory.bundled boolean_ring)
(ᾰ : ℕ)
(ᾰ_1 : X.α) :
comm_ring.nsmul ᾰ ᾰ_1 = ring.nsmul ᾰ ᾰ_1
@[simp]
theorem
BoolRing.has_forget_to_CommRing_forget₂_obj_str_sub
(X : category_theory.bundled boolean_ring)
(ᾰ ᾰ_1 : X.α) :
@[simp]
theorem
BoolRing.has_forget_to_CommRing_forget₂_map
(X Y : category_theory.bundled boolean_ring)
(f : X ⟶ Y) :
@[simp]
theorem
BoolRing.has_forget_to_CommRing_forget₂_obj_str_mul
(X : category_theory.bundled boolean_ring)
(ᾰ ᾰ_1 : X.α) :
@[simp]
theorem
BoolRing.has_forget_to_CommRing_forget₂_obj_str_neg
(X : category_theory.bundled boolean_ring)
(ᾰ : X.α) :
@[simp]
theorem
BoolRing.has_forget_to_CommRing_forget₂_obj_str_npow
(X : category_theory.bundled boolean_ring)
(ᾰ : ℕ)
(ᾰ_1 : X.α) :
comm_ring.npow ᾰ ᾰ_1 = ring.npow ᾰ ᾰ_1
@[simp]
theorem
BoolRing.has_forget_to_CommRing_forget₂_obj_str_int_cast
(X : category_theory.bundled boolean_ring)
(ᾰ : ℤ) :
@[simp]
theorem
BoolRing.has_forget_to_CommRing_forget₂_obj_str_zsmul
(X : category_theory.bundled boolean_ring)
(ᾰ : ℤ)
(ᾰ_1 : X.α) :
comm_ring.zsmul ᾰ ᾰ_1 = ring.zsmul ᾰ ᾰ_1
@[simp]
theorem
BoolRing.has_forget_to_CommRing_forget₂_obj_str_nat_cast
(X : category_theory.bundled boolean_ring)
(ᾰ : ℕ) :
@[simp]
Constructs an isomorphism of Boolean rings from a ring isomorphism between them.
Equations
- BoolRing.iso.mk e = {hom := ↑e, inv := ↑(e.symm), hom_inv_id' := _, inv_hom_id' := _}
@[simp]
@[protected, instance]
Equations
- BoolRing.has_forget_to_BoolAlg = {forget₂ := {obj := λ (X : BoolRing), BoolAlg.of (as_boolalg ↥X), map := λ (X Y : BoolRing), ring_hom.as_boolalg, map_id' := BoolRing.has_forget_to_BoolAlg._proof_1, map_comp' := BoolRing.has_forget_to_BoolAlg._proof_2}, forget_comp := BoolRing.has_forget_to_BoolAlg._proof_3}
@[simp]
@[simp]
@[protected, instance]
Equations
- BoolAlg.has_forget_to_BoolRing = {forget₂ := {obj := λ (X : BoolAlg), BoolRing.of (as_boolring ↥X), map := λ (X Y : BoolAlg), bounded_lattice_hom.as_boolring, map_id' := BoolAlg.has_forget_to_BoolRing._proof_1, map_comp' := BoolAlg.has_forget_to_BoolRing._proof_2}, forget_comp := BoolAlg.has_forget_to_BoolRing._proof_3}
@[simp]
theorem
BoolAlg.has_forget_to_BoolRing_forget₂_map
(X Y : BoolAlg)
(f : bounded_lattice_hom ↥(X.to_BddDistLat.to_BddLat) ↥(Y.to_BddDistLat.to_BddLat)) :
@[simp]
The equivalence between Boolean rings and Boolean algebras. This is actually an isomorphism.
Equations
- BoolRing_equiv_BoolAlg = category_theory.equivalence.mk (category_theory.forget₂ BoolRing BoolAlg) (category_theory.forget₂ BoolAlg BoolRing) (category_theory.nat_iso.of_components (λ (X : BoolRing), BoolRing.iso.mk (ring_equiv.as_boolring_as_boolalg ↥X).symm) BoolRing_equiv_BoolAlg._proof_1) (category_theory.nat_iso.of_components (λ (X : BoolAlg), BoolAlg.iso.mk (order_iso.as_boolalg_as_boolring ↥X)) BoolRing_equiv_BoolAlg._proof_2)