Let there be a morphism f : X → Y between varieties. Then all the information about f is encoded in the graph Γf ⊂ X × Y of f, which (as a set) is defined as
Γf = {(x, f(x)) : x ∈ X} ⊂ X × Y —– (1)
Now consider the natural projections pX, pY from X × Y to the factors X, Y. Restricted to the subvariety Γf, pX is an isomorphism (since f is a morphism). The fibres of pY restricted to Γf are just the fibres of f; so for example f is proper iff pY | Γf is.
If H(−) is any reasonable covariant homology theory (say singular homology in the complex topology for X, Y compact), then we have a natural push forward map
f∗ : H(X) → H(Y)
This map can be expressed in terms of the graph Γf and the projection maps as
f∗(α) = pY∗ (pX∗(α) ∪ [Γf]) —– (2)
where [Γf] ∈ H (X × Y) is the fundamental class of the subvariety [Γf]. Generalizing this construction gives us the notion of a “multi-valued function” or correspondence from X to Y, simply defined to be a general subvariety Γ ⊂ X × Y, replacing the assumption that pX be an isomorphism with some weaker assumption, such as pX |Γf, pY | Γf finite or proper. The right hand side of (2) defines a generalized pushforward map
Γ∗ : H(X) → H(Y)
A subvariety Γ ⊂ X × Y can be represented by its structure sheaf OΓ on X × Y. Associated to the projection maps pX, pY, we also have pullback and pushforward operations on sheaves. The cup product on homology turns out to have an analogue too, namely tensor product. So, appropriately interpreted, (2) makes sense as an operation from the derived category of X to that of Y.
A derived correspondence between a pair of smooth varieties X, Y is an object F ∈ Db(X × Y) with support which is proper over both factors. A derived correspondence defines a functor ΦF by
ΦF : Db(X) → Db(Y)
(−) ↦ RpY∗(LpX∗(−) ⊗L F)
where (−) could refer to both objects and morphisms in Db(X). F is sometimes called the kernel of the functor ΦF.
The functor ΦF is exact, as it is defined as a composite of exact functors. Since the projection pX is flat, the derived pullback LpX∗ is the same as ordinary pullback pX∗. Given derived correspondences E ∈ Db(X × Y), F ∈ Db(Y × Z), we obtain functors ΦE : Db(X) → Db(Y), ΦF : Db(Y) → Db(Z), which can then be composed to get a functor
ΦF ◦ ΦE : Db(X) → Db(Z)
which is a two-sided identity with respect to composition of kernels.