Definition closed_sieve_max_operation : max_operation closed_sieves_poset. Proof. intros S₁ S₂. refine (closed_sieve_union S₁ S₂ ,, _ ,, _ ,, _). - abstract (intros x p ; intro H ; induction H as [ T H ] ; cbn ; use H ; exact (hinhpr (inl p))). - abstract (intros x p ; intro H ; induction H as [ T H ] ; cbn ; use H ; exact (hinhpr (inr p))). - abstract (intros T p q x ; intro H ; refine (H (_ ,, _)) ; intro y ; use factor_through_squash_hProp ; intros z ; induction z as [ z | z ] ; [ exact (p y z) | exact (q y z) ]). Defined.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.Algebra.BinaryOperations. Require Import UniMath.OrderTheory.Lattice.Lattice. Require Import UniMath.OrderTheory.Lattice.Bounded. Require Import UniMath.OrderTheory.Lattice.Distributive. Require Import UniMath.OrderTheory.Lattice.Heyting. Require Import UniMath.OrderTheory.Lattice.CompleteHeyting. Require Import UniMath.OrderTheory.Lattice.Examples.FromPartialOrder.