Built with Alectryon, running Coq+SerAPI v8.19.0+0.19.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.
[Loading ML file number_string_notation_plugin.cmxs (using legacy method) ... done]
exact (if i thenif j then Empty else Bool else Empty).Defined.(** Parallel pair diagram *)
A, B: Type f, g: A -> B
Diagram parallel_pair_graph
A, B: Type f, g: A -> B
Diagram parallel_pair_graph
A, B: Type f, g: A -> B
parallel_pair_graph -> Type
A, B: Type f, g: A -> B
forallij : parallel_pair_graph,
parallel_pair_graph i j -> ?obj i -> ?obj j
A, B: Type f, g: A -> B
forallij : parallel_pair_graph,
parallel_pair_graph i j ->
(funX : parallel_pair_graph => if X then A else B) i ->
(funX : parallel_pair_graph => if X then A else B) j
intros [] [] []; [exact f | exact g].Defined.(** Cones on [parallel_pair]s *)
A, B, Q: Type f, g: B -> A q: A -> Q Hq: q o g == q o f
Cocone (parallel_pair f g) Q
A, B, Q: Type f, g: B -> A q: A -> Q Hq: q o g == q o f
Cocone (parallel_pair f g) Q
A, B, Q: Type f, g: B -> A q: A -> Q Hq: q o g == q o f
foralli : parallel_pair_graph,
parallel_pair f g i -> Q
A, B, Q: Type f, g: B -> A q: A -> Q Hq: q o g == q o f
forall (ij : parallel_pair_graph)
(g0 : parallel_pair_graph i j),
?legs j o (parallel_pair f g) _f g0 == ?legs i
A, B, Q: Type f, g: B -> A q: A -> Q Hq: q o g == q o f
forall (ij : parallel_pair_graph)
(g0 : parallel_pair_graph i j),
(funi0 : parallel_pair_graph =>
if i0 as b return (parallel_pair f g b -> Q)
then q o f
else q) j o (parallel_pair f g) _f g0 ==
(funi0 : parallel_pair_graph =>
if i0 as b return (parallel_pair f g b -> Q)
then q o f
else q) i