Alphabeta Math
TheoremStatement: Literature-sourcedProof: AI-generatedSession-authored (Fable 5 assisted)precheck passjudge pass (deepseek-v4-pro + gpt-5.6-terra)audited 2026-08-26
How statement and proof provenance work

The first chip identifies the source of the statement or construction; the second identifies the source of its local proof or verification.

  • Literature-sourced: the exact statement appears in a cited source; only wording and notation differ.
  • AI-adapted: a semantically identical restatement of literature-sourced material, modulo indexing, notation, and boundary cases adopted by the library.
  • AI-generated: a genuinely novel statement formulated by AI, with no source for the claim itself.

These labels describe origin, not correctness: citations and verification chips remain separate evidence.

A coend is a colimit weighted by the hom-bifunctor, and an end a limit weighted by it

Statement

Let C be small (Small, locally small, and large categories), let M be locally small and let T:Cop×CM be a functor. Take the index category to be J:=Cop×C (Product category and its projection functors, Opposite category Cop) and T itself as the diagram.

Coend clause. Let W:JopSet be the weight W(a,b):=C(b,a), that is the hom-bifunctor (The covariant and contravariant hom-assignments and the hom-bifunctor of a locally small category, The hom-assignment C(,):Cop×CSet is a bifunctor) composed with the interchange of the two slots, which is what makes it a functor on Jop and not on J. Then the cowedges under T with vertex m are exactly the natural transformations WM(T,m), naturally in m, so T has a coend exactly when WT exists (The end and the coend of a functor Cop×CD, Set-weighted limits and colimits) and then

cT(c,c)=WT.

End clause. Let W:JSet be the hom-bifunctor itself, W(a,b)=C(a,b). Then the wedges over T with vertex m are exactly the natural transformations WM(m,T), naturally in m, so T has an end exactly when {W,T} exists and then cT(c,c)={W,T}.

Facts & Assumptions

Given: A small category C, a locally small category M and a functor T on Cop×C with values in M.

[F7]

A category is small when both Ob(C) and Mor(C) are sets. (Small, locally small, and large categories).

[F5]

The product category has morphisms (f,g):(C,D)(C,D), componentwise identities, and componentwise composition (f,g)(f,g)=(ff,gg) (Product category and its projection functors).

[F6]

The opposite category has the same objects and reverses every morphism: Cop(A,B)=C(B,A), and (Cop)op=C strictly (Opposite category Cop).

[F4]

The hom-assignment sends (a,b) to C(a,b), and a morphism of the product category consisting of h:aa and u:bb acts by C(h,u):C(a,b)C(a,b),fufh (The covariant and contravariant hom-assignments and the hom-bifunctor of a locally small category).

[L1]

For every locally small category C, the hom-assignment C(,):Cop×CSet is a functor (The hom-assignment C(,):Cop×CSet is a bifunctor).

[F2]

A wedge from d to T is a dinatural transformation from a constant functor to T: a family ωc:dT(c,c) with T(1c,f)ωc=T(f,1c)ωc; a cowedge is a family ρc:T(c,c)d with ρcT(f,1c)=ρcT(1c,f) (Wedges and cowedges, and the categories they form).

[F3]

An end of T is a terminal object of the category of wedges over T and a coend an initial object of the category of cowedges under T; in short, an end is a terminal wedge and a coend an initial cowedge (The end and the coend of a functor Cop×CD).

[F1]

A weighted limit {W,F} is an object that represents the functor sending an object to the set of natural transformations from the weight, and a weighted colimit WF is characterised by M(WF,m)[Jop,Set](W,M(F,m)) naturally in m (Set-weighted limits and colimits).

[F8]

A representation of a functor is an object together with a natural isomorphism from the corresponding hom-functor; The pair (R,θ) is a representation of F, and R is a representing object (Presheaves, covariantly and contravariantly representable functors, and representations).

Proof

technique · direct
1.1

The index category J is small with C, and Jop is C×Cop by [F6]. The assignment W(a,b)=C(b,a) is the functor of [L1] composed with the interchange of the two slots, which is an isomorphism C×CopCop×C, so W is a functor on Jop; the interchange is what the variance requires, and writing the hom-bifunctor on J instead would give the weight of the end clause, not of the coend clause. A morphism (a,b)(a,b) of Jop is a pair (u,v) with u:aa and v:bb in C, and W sends gC(b,a) to ugv by [F4].

F4F5F6F7L1
2.1

For the coend clause, send a cowedge ρ with vertex m to the family α(a,b)(g):=ρbT(g,1b) for gC(b,a), which equals ρaT(1a,g) by the cowedge equation of [F2] at g:ba. It is natural: for (u,v) as in step 1.1, both α(a,b)(ugv) and α(a,b)(g)T(u,v) reduce, by the factorisations of T supplied by [F5] and the cowedge equation at u:aa, to ρaT(1a,ugv). Conversely a natural α gives ρc:=α(c,c)(1c), whose cowedge equation at f:cc is naturality of α at (f,1c) read against naturality at (1c,f), both of which compute α(c,c)(f). The two assignments are mutually inverse, since α(c,c)(1c)=ρc and naturality recovers α(a,b)(g) from α(b,b)(1b).

F2F4F5step 1.1
2.2

For the end clause, send a wedge ω with vertex m to α(a,b)(g):=T(1a,g)ωa for gC(a,b), which equals T(g,1b)ωb by the wedge equation of [F2] at g:ab. A morphism (a,b)(a,b) of J is a pair (u,v) with u:aa and v:bb, and both α(a,b)(vgu) and T(u,v)α(a,b)(g) reduce, by the same factorisations and the wedge equation at u:aa, to T(1a,vgu)ωa. Conversely a natural α gives ωc:=α(c,c)(1c), and naturality at (1c,f) and at (f,1c) gives the two sides of the wedge equation.

F2F4F5step 1.1
3.1

Both correspondences are natural in m: postcomposing a cowedge with h:mm postcomposes every α(a,b)(g) with h, and precomposing a wedge with h:mm precomposes every α(a,b)(g) with h. So by [F1] and [F8] an initial cowedge under T is exactly a representing object for m[Jop,Set](W,M(T,m)) and a terminal wedge exactly a representing object for m[J,Set](W,M(m,T)); by [F3] the coend of T exists exactly when WT does and the end exactly when {W,T} does, with equality in each case.

F1F3F8step 2.1step 2.2

Remarks

The variance of the weight is fixed before any computation and is the point at which the statement can go wrong. A weight for a colimit over J is a presheaf on J, so it is a functor on C×Cop, and the hom-bifunctor becomes one only after its two slots are interchanged. The weight for the end clause is the hom-bifunctor with no interchange at all.

Together with An end is a limit over the twisted arrow category, and a coend is a colimit over its opposite this closes the loop between the two descriptions of a coend. One presents it as an ordinary colimit over a larger index category; the other presents it as a weighted colimit over the original index category, with the hom-bifunctor carrying the information that the larger index category encoded. The category of elements of the weight is what turns one into the other, by A weighted limit is an ordinary limit over the category of elements of the weight, and a weighted colimit an ordinary colimit over it.

Depends on

Used by

Nothing in the library uses this result yet.

Dependency tree · two levels

21 results within two dependency steps of this one, each drawn at its shortest distance from it. An arrow runs from a result to what uses it, so the chart reads left to right and ends at this result, which carries a heavier outline. Every node is a link to that result. Click elsewhere on the chart to enlarge it.

Sources