Skip to content

More elegant construction of ZariskiLattice #1110

Open
@MatthiasHu

Description

@MatthiasHu

Here is an idea for an improvement in ZariskiLattice.Base .

The current set-quotient construction begins by defining a preorder (without using this name) and deriving the equivalence relation _∼_ from that:

_≼_ : A A Type ℓ
(_ , α) ≼ (_ , β) = i α i ∈ √ ⟨ β ⟩
private
isRefl≼ : {a} a ≼ a
isRefl≼ i = ∈→∈√ _ _ (indInIdeal _ _ i)
isTrans≼ : {a b c : A} a ≼ b b ≼ c a ≼ c
isTrans≼ a≼b b≼c i = (√FGIdealCharRImpl _ _ b≼c) _ (a≼b i)
_∼_ : A A Type ℓ -- \sim
α ∼ β = (α ≼ β) × (β ≼ α)

So the set-quotient is actually an instance of a general (not formalized yet, I think) preorder-to-poset construction. I propose to actually implement it as such and then to use the resulting poset structure to define the lattice structure more easily.

Advantages:

  • Because meets and joins in a poset are unique, we only need to show mere existence and don't need to prove the well-definedness of the _∨z_ and _∧z_ operations.
  • We don't need to prove any of the monoid axioms (assoc, comm, L/Rid) on _∨z_ and _∧z_ by hand, only the distributive law remains.

Prerequisites:

  • the preorder-to-poset construction (perhaps in Order.Preorder.Properties)
  • the poset-plus-finite-meets/joins-to-lattice construction

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions