File: Mathlib/Order/Category/FinBoolAlg.lean

full_name: FinBoolAlg
code: /-- The category of finite boolean algebras with bounded lattice morphisms. -/
structure FinBoolAlg where
  toBoolAlg : BoolAlg
  [isFintype : Fintype toBoolAlg]
goal: Type (u_1 + 1)

full_name: FinBoolAlg.isFintype
code: /-- The category of finite boolean algebras with bounded lattice morphisms. -/
structure FinBoolAlg where
  toBoolAlg : BoolAlg
  [isFintype : Fintype toBoolAlg]
goal: Fintype ↑self.toBoolAlg

full_name: FinBoolAlg.toBoolAlg
code: /-- The category of finite boolean algebras with bounded lattice morphisms. -/
structure FinBoolAlg where
  toBoolAlg : BoolAlg
  [isFintype : Fintype toBoolAlg]
goal: BoolAlg

full_name: FinBoolAlg.instCoeSortType
code: instance : CoeSort FinBoolAlg Type* 
goal: CoeSort FinBoolAlg (Type u_1)

full_name: FinBoolAlg.instBooleanAlgebraαToBoolAlg
code: instance (X : FinBoolAlg) : BooleanAlgebra X 
goal: BooleanAlgebra ↑X.toBoolAlg

full_name: FinBoolAlg.of
code: /-- Construct a bundled `FinBoolAlg` from `BooleanAlgebra` + `Fintype`. -/
def of (α : Type*) [BooleanAlgebra α] [Fintype α] : FinBoolAlg 
goal: FinBoolAlg

full_name: FinBoolAlg.coe_of
code: @[simp]
theorem coe_of (α : Type*) [BooleanAlgebra α] [Fintype α] : ↥(of α) = α 
goal: ↑(FinBoolAlg.of α).toBoolAlg = α

full_name: FinBoolAlg.instInhabited
code: instance : Inhabited FinBoolAlg 
goal: Inhabited FinBoolAlg

full_name: FinBoolAlg.largeCategory
code: instance largeCategory : LargeCategory FinBoolAlg 
goal: CategoryTheory.LargeCategory FinBoolAlg

full_name: FinBoolAlg.concreteCategory
code: instance concreteCategory : ConcreteCategory FinBoolAlg 
goal: CategoryTheory.ConcreteCategory FinBoolAlg

full_name: FinBoolAlg.instFunLike
code: instance instFunLike {X Y : FinBoolAlg} : FunLike (X ⟶ Y) X Y 
goal: FunLike (X ⟶ Y) ↑X.toBoolAlg ↑Y.toBoolAlg

full_name: FinBoolAlg.instBoundedLatticeHomClass
code: instance instBoundedLatticeHomClass {X Y : FinBoolAlg} : BoundedLatticeHomClass (X ⟶ Y) X Y 
goal: BoundedLatticeHomClass (X ⟶ Y) ↑X.toBoolAlg ↑Y.toBoolAlg

full_name: FinBoolAlg.hasForgetToBoolAlg
code: instance hasForgetToBoolAlg : HasForget₂ FinBoolAlg BoolAlg 
goal: CategoryTheory.HasForget₂ FinBoolAlg BoolAlg

full_name: FinBoolAlg.hasForgetToFinBddDistLat
code: instance hasForgetToFinBddDistLat : HasForget₂ FinBoolAlg FinBddDistLat 
goal: CategoryTheory.HasForget₂ FinBoolAlg FinBddDistLat

full_name: FinBoolAlg.forgetToBoolAlg_full
code: instance forgetToBoolAlg_full : (forget₂ FinBoolAlg BoolAlg).Full 
goal: (CategoryTheory.forget₂ FinBoolAlg BoolAlg).Full

full_name: FinBoolAlg.forgetToBoolAlgFaithful
code: instance forgetToBoolAlgFaithful : (forget₂ FinBoolAlg BoolAlg).Faithful 
goal: (CategoryTheory.forget₂ FinBoolAlg BoolAlg).Faithful

full_name: FinBoolAlg.hasForgetToFinPartOrd_forget₂_map
code: @[simps]
instance hasForgetToFinPartOrd : HasForget₂ FinBoolAlg FinPartOrd 
goal: CategoryTheory.HasForget₂.forget₂.map f =
  let_fun this :=
    ↑(let_fun this := f;
      this);
  this

full_name: FinBoolAlg.hasForgetToFinPartOrd
code: @[simps]
instance hasForgetToFinPartOrd : HasForget₂ FinBoolAlg FinPartOrd 
goal: CategoryTheory.HasForget₂ FinBoolAlg FinPartOrd

full_name: FinBoolAlg.hasForgetToFinPartOrd_forget₂_obj
code: @[simps]
instance hasForgetToFinPartOrd : HasForget₂ FinBoolAlg FinPartOrd 
goal: CategoryTheory.HasForget₂.forget₂.obj X = FinPartOrd.of ↑X.toBoolAlg

full_name: FinBoolAlg.forgetToFinPartOrdFaithful
code: instance forgetToFinPartOrdFaithful : (forget₂ FinBoolAlg FinPartOrd).Faithful 
goal: (CategoryTheory.forget₂ FinBoolAlg FinPartOrd).Faithful

full_name: FinBoolAlg.Iso.mk_hom_toLatticeHom_toSupHom_toFun
code: /-- Constructs an equivalence between finite Boolean algebras from an order isomorphism between
them. -/
@[simps]
def Iso.mk {α β : FinBoolAlg.{u}} (e : α ≃o β) : α ≅ β 
goal: (FinBoolAlg.Iso.mk e).hom.toSupHom a = e a

full_name: FinBoolAlg.Iso.mk
code: /-- Constructs an equivalence between finite Boolean algebras from an order isomorphism between
them. -/
@[simps]
def Iso.mk {α β : FinBoolAlg.{u}} (e : α ≃o β) : α ≅ β 
goal: α ≅ β

full_name: FinBoolAlg.Iso.mk_inv_toLatticeHom_toSupHom_toFun
code: /-- Constructs an equivalence between finite Boolean algebras from an order isomorphism between
them. -/
@[simps]
def Iso.mk {α β : FinBoolAlg.{u}} (e : α ≃o β) : α ≅ β 
goal: (FinBoolAlg.Iso.mk e).inv.toSupHom a = e.symm a

full_name: FinBoolAlg.dual
code: /-- `OrderDual` as a functor. -/
@[simps]
def dual : FinBoolAlg ⥤ FinBoolAlg 
goal: FinBoolAlg ⥤ FinBoolAlg

full_name: FinBoolAlg.dual_map
code: /-- `OrderDual` as a functor. -/
@[simps]
def dual : FinBoolAlg ⥤ FinBoolAlg 
goal: FinBoolAlg.dual.map a = BoundedLatticeHom.dual a

full_name: FinBoolAlg.dual_obj
code: /-- `OrderDual` as a functor. -/
@[simps]
def dual : FinBoolAlg ⥤ FinBoolAlg 
goal: FinBoolAlg.dual.obj X = FinBoolAlg.of (↑X.toBoolAlg)ᵒᵈ

full_name: FinBoolAlg.dualEquiv
code: /-- The equivalence between `FinBoolAlg` and itself induced by `OrderDual` both ways. -/
@[simps functor inverse]
def dualEquiv : FinBoolAlg ≌ FinBoolAlg 
goal: FinBoolAlg ≌ FinBoolAlg

full_name: FinBoolAlg.dualEquiv_functor
code: /-- The equivalence between `FinBoolAlg` and itself induced by `OrderDual` both ways. -/
@[simps functor inverse]
def dualEquiv : FinBoolAlg ≌ FinBoolAlg 
goal: FinBoolAlg.dualEquiv.functor = FinBoolAlg.dual

full_name: FinBoolAlg.dualEquiv_inverse
code: /-- The equivalence between `FinBoolAlg` and itself induced by `OrderDual` both ways. -/
@[simps functor inverse]
def dualEquiv : FinBoolAlg ≌ FinBoolAlg 
goal: FinBoolAlg.dualEquiv.inverse = FinBoolAlg.dual

full_name: finBoolAlg_dual_comp_forget_to_finBddDistLat
code: theorem finBoolAlg_dual_comp_forget_to_finBddDistLat :
    FinBoolAlg.dual ⋙ forget₂ FinBoolAlg FinBddDistLat =
      forget₂ FinBoolAlg FinBddDistLat ⋙ FinBddDistLat.dual 
goal: FinBoolAlg.dual ⋙ CategoryTheory.forget₂ FinBoolAlg FinBddDistLat =
  CategoryTheory.forget₂ FinBoolAlg FinBddDistLat ⋙ FinBddDistLat.dual

full_name: fintypeToFinBoolAlgOp
code: /-- The powerset functor. `Set` as a functor. -/
@[simps]
def fintypeToFinBoolAlgOp : FintypeCat ⥤ FinBoolAlgᵒᵖ 
goal: FintypeCat ⥤ FinBoolAlgᵒᵖ

full_name: fintypeToFinBoolAlgOp_obj
code: /-- The powerset functor. `Set` as a functor. -/
@[simps]
def fintypeToFinBoolAlgOp : FintypeCat ⥤ FinBoolAlgᵒᵖ 
goal: fintypeToFinBoolAlgOp.obj X = Opposite.op (FinBoolAlg.of (Set ↑X))

full_name: fintypeToFinBoolAlgOp_map
code: /-- The powerset functor. `Set` as a functor. -/
@[simps]
def fintypeToFinBoolAlgOp : FintypeCat ⥤ FinBoolAlgᵒᵖ 
goal: fintypeToFinBoolAlgOp.map f =
  Quiver.Hom.op
    (let __src := { toFun := ⇑(CompleteLatticeHom.setPreimage f), map_sup' := ⋯, map_inf' := ⋯ };
    { toFun := ⇑(CompleteLatticeHom.setPreimage f), map_sup' := ⋯, map_inf' := ⋯, map_top' := ⋯, map_bot' := ⋯ })