Built with Alectryon, running Coq+SerAPI v8.16.0+0.16.3. Bubbles () indicate interactive fragments: hover for details, tap to reveal contents. Use Ctrl+↑Ctrl+↓ to navigate, Ctrl+🖱️ to focus. On Mac, use ⌘ instead of Ctrl.
From Tealeaves Require Export
Functors.Early.Ctxset
Classes.Kleisli.DecoratedContainerFunctor
Classes.Kleisli.Theory.DecoratedContainerFunctor.Import DecoratedContainerFunctor.Notations.(** * <<DecoratedContainerFunctor>> Instance for <<ctxset>> *)(**********************************************************************)SectionContainer_ctxset.Context {E: Type}.#[local] InstanceToCtxset_ctxset: ToCtxset E (ctxset E) :=
fun (A: Type) (s: ctxset E A) => s.
E: Type
DecoratedHom E (ctxset E) (ctxset E)
(@toctxset E (ctxset E) ToCtxset_ctxset)
E: Type
DecoratedHom E (ctxset E) (ctxset E)
(@toctxset E (ctxset E) ToCtxset_ctxset)
E: Type
forall (AB : Type) (f : E * A -> B),
mapd f ∘ toctxset = toctxset ∘ mapd f
reflexivity.Qed.
E: Type
forall (AB : Type) (t : ctxset E A)
(fg : E * A -> B),
(forall (e : E) (a : A),
(e, a) ∈d t -> f (e, a) = g (e, a)) ->
mapd f t = mapd g t
E: Type
forall (AB : Type) (t : ctxset E A)
(fg : E * A -> B),
(forall (e : E) (a : A),
(e, a) ∈d t -> f (e, a) = g (e, a)) ->
mapd f t = mapd g t
E, A, B: Type t: ctxset E A f, g: E * A -> B hyp: forall (e : E) (a : A), (e, a) ∈d t -> f (e, a) = g (e, a)
mapd f t = mapd g t
E, A, B: Type t: ctxset E A f, g: E * A -> B hyp: forall (e : E) (a : A), (e, a) ∈d t -> f (e, a) = g (e, a) e: E b: B
mapd f t (e, b) = mapd g t (e, b)
E, A, B: Type t: E * A -> Prop f, g: E * A -> B hyp: forall (e : E) (a : A), t (e, a) -> f (e, a) = g (e, a) e: E b: B
(existsa : A, t (e, a) /\ f (e, a) = b) =
(existsa : A, t (e, a) /\ g (e, a) = b)
E, A, B: Type t: E * A -> Prop f, g: E * A -> B hyp: forall (e : E) (a : A), t (e, a) -> f (e, a) = g (e, a) e: E b: B
(existsa : A, t (e, a) /\ f (e, a) = b) ->
existsa : A, t (e, a) /\ g (e, a) = b
E, A, B: Type t: E * A -> Prop f, g: E * A -> B hyp: forall (e : E) (a : A), t (e, a) -> f (e, a) = g (e, a) e: E b: B
(existsa : A, t (e, a) /\ g (e, a) = b) ->
existsa : A, t (e, a) /\ f (e, a) = b
E, A, B: Type t: E * A -> Prop f, g: E * A -> B hyp: forall (e : E) (a : A), t (e, a) -> f (e, a) = g (e, a) e: E b: B
(existsa : A, t (e, a) /\ f (e, a) = b) ->
existsa : A, t (e, a) /\ g (e, a) = b
E, A, B: Type t: E * A -> Prop f, g: E * A -> B hyp: forall (e : E) (a : A), t (e, a) -> f (e, a) = g (e, a) e: E b: B a: A Hin: t (e, a) Heq: f (e, a) = b
existsa : A, t (e, a) /\ g (e, a) = b
E, A, B: Type t: E * A -> Prop f, g: E * A -> B e: E a: A hyp: f (e, a) = g (e, a) b: B Hin: t (e, a) Heq: f (e, a) = b
existsa : A, t (e, a) /\ g (e, a) = b
E, A, B: Type t: E * A -> Prop f, g: E * A -> B e: E a: A hyp: f (e, a) = g (e, a) Hin: t (e, a)
existsa0 : A, t (e, a0) /\ g (e, a0) = f (e, a)
eauto.
E, A, B: Type t: E * A -> Prop f, g: E * A -> B hyp: forall (e : E) (a : A), t (e, a) -> f (e, a) = g (e, a) e: E b: B
(existsa : A, t (e, a) /\ g (e, a) = b) ->
existsa : A, t (e, a) /\ f (e, a) = b
E, A, B: Type t: E * A -> Prop f, g: E * A -> B hyp: forall (e : E) (a : A), t (e, a) -> f (e, a) = g (e, a) e: E b: B a: A Hin: t (e, a) Heq: g (e, a) = b
existsa : A, t (e, a) /\ f (e, a) = b
E, A, B: Type t: E * A -> Prop f, g: E * A -> B e: E a: A hyp: f (e, a) = g (e, a) b: B Hin: t (e, a) Heq: g (e, a) = b
existsa : A, t (e, a) /\ f (e, a) = b
E, A, B: Type t: E * A -> Prop f, g: E * A -> B e: E a: A hyp: f (e, a) = g (e, a) Hin: t (e, a)