A variant of the WildCat Yoneda lemma #1744
Replies: 3 comments 3 replies
-
I think that this would make sense and I am interested to see how you find it useful. The proof of the wild yoneda lemma always irked me in a few ways.
The fact that you have a new proof makes me hopeful that we can relax 1 and perhaps change the situation with 3. (2 is another mess but I don't think we know how to (or if) we can fix that). |
Beta Was this translation helpful? Give feedback.
-
@Alizter My use case is that I think I can prove some equivalences between joins in a clean way using the Yoneda lemma, but my existing arguments don't need Funext, and I'd have to add Funext if I want to use the current version of the Yoneda lemma. That's not a big deal, but as I walked to work this morning I sketched a proof that doesn't need the equivalences, so should avoid needing Funext. And it just seems to fit better with the wild category philosophy of getting to choose the higher cells, rather than using the native path types. I'm not sure if this will avoid the requirement that the category be strong, but it might. I'm not sure what you mean by your third point. For one, it's On a practical note, have you already got some code that defines the wild category of graphs? (Do we have any wild categories of some kinds of wild category?) |
Beta Was this translation helpful? Give feedback.
-
To make the discussion more concrete, here is what I mean in the case where (* Special case of opyon_equiv for [A] being [Type], but using the graph structure on [a -> c] (i.e., [==]) instead of the path structure [=]. *)
Definition opyon_equiv' (a b : Type)
(f : forall c, opyon1 a c -> opyon1 b c)
(fn : forall c d (h : opyon1 a c) (k : c -> d), k o (f c h) == f d (k o h))
(g : forall c, opyon1 b c -> opyon1 a c)
(gn : forall c d (h : opyon1 b c) (k : c -> d), k o (g c h) == g d (k o h))
(gf : forall c (h : opyon1 a c), g c (f c h) == h)
(fg : forall c (h : opyon1 b c), f c (g c h) == h)
: (b $<~> a).
Proof.
snrapply (equiv_adjointify (f a idmap) (g b idmap)).
- refine (pointwise_paths_concat (gn _ _ idmap (f a idmap)) _).
exact (gf _ idmap).
- refine (pointwise_paths_concat (fn _ _ idmap (g b idmap)) _).
exact (fg _ idmap).
Defined. Edited to directly use composition of homotopies, and to add these remarks: No equality of paths is used, no identity homotopies are used, and no inverse homotopies are used. Composition of homotopies is used, but only in the proof, not in the hypotheses. So I think it would work if we consider the hom sets to be graphs, or to be 01 categories. Not sure what is best. |
Beta Was this translation helpful? Give feedback.
-
Here's one form of the Yoneda lemma currently in the library:
In the case where
A
is the wild category of types, this requires us to provide an equivalence(a -> c) <~> (b -> c)
in order to get an equivalencea <~> b
. But withoutFunext
, an equivalencea <~> b
only gives us maps back and forth betweena -> c
andb -> c
which compose to the identities up to pointwise homotopy. Moreover, that weaker data is sufficient for the proof of Yoneda to go through. And I believe all of this works for any wild categoryA
, using the graph structure on the hom types ofA
.So I'd like to generalize Yoneda to this situation. I think the way to do it is to define the wild category of (1-)graphs, and to regard the representable functor as landing there. The statement would look essentially the same, and the proof would be slightly different.
Does this make sense? Does anyone already have some code related to this?
Beta Was this translation helpful? Give feedback.
All reactions