lawfulRunMEvil

This commit is contained in:
mehbark 2025-04-08 21:54:27 -04:00
parent 2573d64897
commit 38c00b3311

View file

@ -6,3 +6,18 @@ instance : Monad EmptyM where
theorem runMEvil (runM : ∀α m, [Monad m] → m αα) : False :=
runM PEmpty EmptyM ⟨⟩ |>.elim
instance : LawfulMonad EmptyM where
map_const := by intros; trivial
id_map := by intros; trivial
seqLeft_eq := by intros; trivial
seqRight_eq := by intros; trivial
pure_seq := by intros; trivial
bind_pure_comp := by intros; trivial
bind_map := by intros; trivial
pure_bind := by intros; trivial
bind_assoc := by intros; trivial
theorem lawfulRunMEvil (runM : ∀α m, [Monad m] → [LawfulMonad m] → m αα)
: False :=
runM PEmpty EmptyM ⟨⟩ |>.elim