@@ -121,7 +121,7 @@ Module Derived.
121
121
fun G _ _ _ A B f => bindt T G (fmap G (ret T) ∘ f).
122
122
123
123
End operations.
124
-
124
+
125
125
Section special_cases.
126
126
127
127
Context
@@ -207,7 +207,7 @@ Module Derived.
207
207
{| fun_fmap_id := fmap_id;
208
208
fun_fmap_fmap := fmap_fmap;
209
209
|}.
210
-
210
+
211
211
(** *** Monad instance *)
212
212
(***************************************************************************** *)
213
213
#[export] Instance : Kleisli.Monad.Monad T.
@@ -236,7 +236,7 @@ Module Derived.
236
236
Qed .
237
237
238
238
End with_kleisli.
239
-
239
+
240
240
(** ** Special cases for Kleisli composition *)
241
241
(***************************************************************************** *)
242
242
Section Kleisli_composition.
@@ -347,7 +347,7 @@ Module Derived.
347
347
rewrite (fun_fmap_id T).
348
348
now rewrite (fun_fmap_id G1).
349
349
Qed .
350
-
350
+
351
351
End Kleisli_composition.
352
352
353
353
(** ** Composition with lesser Kleisli operations *)
@@ -361,7 +361,7 @@ Module Derived.
361
361
(G2 : Type -> Type )
362
362
`{Applicative G2}
363
363
`{Applicative G1}.
364
-
364
+
365
365
(** *** Composition with <<fmap>> *)
366
366
(***************************************************************************** *)
367
367
Lemma fmap_bindt : forall `(g : B -> C) `(f : A -> G1 (T B)),
@@ -382,7 +382,7 @@ Module Derived.
382
382
fequal. now rewrite Mult_compose_identity2.
383
383
rewrite kcompose_tm30; auto.
384
384
Qed .
385
-
385
+
386
386
(** *** Composition with <<traverse>> *)
387
387
(***************************************************************************** *)
388
388
Lemma traverse_bindt : forall `(g : B -> G2 C) `(f : A -> G1 (T B)),
@@ -492,7 +492,7 @@ Module Derived.
492
492
change (@Fmap_Bindt T H0 H) with (@ToFunctor.Fmap_Bind T _ _).
493
493
now rewrite (ToFunctor.fmap_bind T).
494
494
Qed .
495
-
495
+
496
496
End Kleisli_composition.
497
497
498
498
End Derived.
0 commit comments