The category of finite partial orders #
This defines FinPartOrd
, the category of finite partial orders.
Note: FinPartOrd
is not a subcategory of BddOrd
because finite orders are not necessarily
bounded.
TODO #
FinPartOrd
is equivalent to a small category.
Equations
- FinPartOrd.instCoeSortType = { coe := fun (X : FinPartOrd) => ↑X.toPartOrd }
Equations
@[reducible, inline]
Construct a bundled FinPartOrd
from PartialOrder
+ Fintype
.
Equations
Instances For
Equations
- FinPartOrd.instInhabited = { default := FinPartOrd.of PUnit.{?u.3 + 1} }
instance
FinPartOrd.concreteCategory :
CategoryTheory.ConcreteCategory FinPartOrd fun (x1 x2 : FinPartOrd) => ↑x1.toPartOrd →o ↑x2.toPartOrd
Equations
- One or more equations did not get rendered due to their size.
@[reducible, inline]
abbrev
FinPartOrd.ofHom
{X Y : Type u}
[PartialOrder X]
[Fintype X]
[PartialOrder Y]
[Fintype Y]
(f : X →o Y)
:
Typecheck a OrderHom
as a morphism in FinPartOrd
.
Equations
Instances For
@[simp]
@[simp]
theorem
FinPartOrd.hom_ext
{X Y : FinPartOrd}
{f g : X ⟶ Y}
(hf : PartOrd.Hom.hom f = PartOrd.Hom.hom g)
:
@[simp]
theorem
FinPartOrd.hom_ofHom
{X Y : Type u}
[PartialOrder X]
[Fintype X]
[PartialOrder Y]
[Fintype Y]
(f : X →o Y)
:
@[simp]
Constructs an isomorphism of finite partial orders from an order isomorphism between them.
Equations
- FinPartOrd.Iso.mk e = { hom := FinPartOrd.ofHom ↑e, inv := FinPartOrd.ofHom ↑e.symm, hom_inv_id := ⋯, inv_hom_id := ⋯ }
Instances For
@[simp]
OrderDual
as a functor.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
The equivalence between FinPartOrd
and itself induced by OrderDual
both ways.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
theorem
FinPartOrd.dualEquiv_unitIso :
dualEquiv.unitIso = CategoryTheory.NatIso.ofComponents (fun (X : FinPartOrd) => Iso.mk (OrderIso.dualDual ↑X.toPartOrd))
@dualEquiv.proof_1
@[simp]
theorem
FinPartOrd.dualEquiv_counitIso :
dualEquiv.counitIso = CategoryTheory.NatIso.ofComponents (fun (X : FinPartOrd) => Iso.mk (OrderIso.dualDual ↑X.toPartOrd))
@dualEquiv.proof_2