English
The Ultrafilter construction forms a lawful monad; the unit, bind, and map operations satisfy the monad laws.
Русский
Конструкция ультрафильтра образует законную монаду: единица, связывание и отображение удовлетворяют монады-правилам.
LaTeX
$$$ \text{LawfulMonad Ultrafilter} $$$
Lean4
instance lawfulMonad : LawfulMonad Ultrafilter
where
id_map f := coe_injective (id_map f.toFilter)
pure_bind a f := coe_injective (Filter.pure_bind a ((Ultrafilter.toFilter) ∘ f))
bind_assoc _ _ _ := coe_injective (filter_eq rfl)
bind_pure_comp f x := coe_injective (bind_pure_comp f x.1)
map_const := rfl
seqLeft_eq _ _ := rfl
seqRight_eq _ _ := rfl
pure_seq _ _ := rfl
bind_map _ _ := rfl