Draft lesson.
Bimodules and adjoints of module-stack functors
Written by GPT-6.1 Sol (OpenAI), October 2026. Public domain (CC0).
A bimodule gives a tensor functor between module categories. For sheaves, recovering that bimodule requires the functor's behavior on restrictions as well as on the global regular module. The right adjoint must respect those restrictions too. This lesson proves the reconstruction theorem, describes all its natural transformations, and exhibits the failure when only adjoints on individual fibres are supplied.
Let \(\mathcal E\) be the sheaf category of a small site and \(R\) a commutative ring sheaf. Let \(A,B,C\) be unital, possibly noncommutative \(R\)-algebra sheaves. Their scalar maps land in their centers. All modules are left modules unless a right action is specified, and section sets and coproducts are taken in a fixed universe.
The module stack \(\mathsf{Mod}(A)\) assigns to a base sheaf \(V\) the modules over the restriction of \(A\) in \(\mathcal E/V\), interpreted on the element site. A linear functor of module stacks has functors on these fibres and coherent comparisons with restriction. A right adjoint as a stack functor consists of a functor \(H\) with the same restriction compatibility and units and counits compatible with it. Thus every \(F_V\dashv H_V\), and those adjunctions form one stack adjunction. Section 7 describes the obstruction to assembling fibre adjoints.
For prerequisites, Local module categories and Morita equivalence, Section 4 proves the generator presentation and extension construction used below. Tensor and Hom for twisted module stacks, Section 1 constructs internal Hom, currying, and restriction on element sites. Here the Hom maps are also required to respect the indicated noncommutative action.
1. Adjoint functors preserve the colimits needed here
Lemma 1.1. If a linear module-stack functor \(F:\mathsf{Mod}(B)\to\mathsf{Mod}(A)\) has a right adjoint as a stack functor, then each \(F_V\) preserves small colimits. It also commutes with extension from a localized test object to its base.
Proof. For a diagram \((M_i)\) in one fibre, maps from \(F(\operatorname{colim}_i M_i)\) to \(N\) correspond successively to \[ \operatorname{Hom}(\operatorname{colim}_iM_i,HN) \simeq\lim_i\operatorname{Hom}(M_i,HN) \simeq\lim_i\operatorname{Hom}(FM_i,N). \tag{1.1} \] The bijections are natural, and the maps from \(FM_i\) are the images of the colimit maps. Thus \(F\) takes the colimit cocone to a colimit cocone. In particular it preserves coproducts and cokernels.
On the element site of a base, for a test object \(S\), restriction \(j_S^*\) has the left adjoint \(j_{S!}\) constructed by sheafifying \[ T\longmapsto\bigoplus_{a:T\to S}N(T\xrightarrow a S). \tag{1.2} \] The indicated scalar actions are those of the restricted algebra. A map from this presheaf to \(M\) is exactly a map \(N\to j_S^*M\), by evaluating each summand; sheafification preserves this universal property. Let \(N\) be a \(B\)-module on that localization and \(L\) an \(A\)-module on the base. Then \[ \begin{aligned} \operatorname{Hom}_A(Fj_{S!}N,L) &\simeq\operatorname{Hom}_B(j_{S!}N,HL)\\ &\simeq\operatorname{Hom}_{B|_S}(N,j_S^*HL)\\ &\simeq\operatorname{Hom}_{B|_S}(N,H_Sj_S^*L)\\ &\simeq\operatorname{Hom}_{A|_S}(F_SN,j_S^*L)\\ &\simeq\operatorname{Hom}_A(j_{S!}F_SN,L). \end{aligned} \tag{1.3} \] All bijections are natural. Taking the identity of either represented object constructs mutually inverse maps between them. Hence \(Fj_{S!}\simeq j_{S!}F_S\). The middle comparison uses restriction compatibility of the right adjoint, not just the existence of separate right adjoints. \(\square\)
These arguments apply on every element site. Units, counits and the restriction comparisons make the resulting extension comparisons compatible with further restriction.
2. The tensor functor and its stack right adjoint
An \((A,B)\)-bimodule \(P\) is a left \(A\)-module and a right \(B\)-module with commuting actions and agreeing central \(R\)-actions. Define \[ T_P(M)=P\otimes_B M, \qquad H_P(N)=[P,N]_A. \tag{2.1} \] The second object consists of the \(A\)-linear local maps. Its left \(B\)-action is \[ (b\cdot f)(p)=f(pb). \tag{2.2} \] Indeed \(b\cdot(c\cdot f)\) sends \(p\) to \(f((pb)c)=f(p(bc))\), so is \((bc)\cdot f\). Commuting actions on \(P\) ensure that this remains an \(A\)-linear map. The two central scalar actions agree.
Proposition 2.1. These are linear functors of stacks, and \(T_P\dashv H_P\) as stack functors. No flatness, finite generation or projectivity assumption on \(P\) is required.
Proof. Construct the tensor sheaf from the sectionwise balanced tensor presheaf and sheafify. It inherits the left \(A\)-action. The sheaf of \(A\)-linear maps is a subsheaf of the ordinary \(R\)-linear internal Hom: linearity can be checked locally, so compatible local linear maps glue to a linear map. Both constructions commute with slice restriction. For tensor this follows from the sectionwise relations and sheafification on the element site; for Hom it follows from the restriction description of the map sets. The extra \(A\)-linearity equations are unchanged on all further restrictions.
For an \(A\)-linear map \(q:P\otimes_B M\to N\), put \(\widehat q(m)(p)=q(p\otimes m)\). This is \(A\)-linear in \(p\) and satisfies \[ \widehat q(bm)(p)=q(p\otimes bm)=q(pb\otimes m) =(b\cdot\widehat q(m))(p). \] Hence it is a \(B\)-linear map \(M\to H_P(N)\). Conversely such a map gives the balanced rule \(q(p\otimes m)=\widehat q(m)(p)\). Tensor's universal property makes it a unique \(A\)-linear map. These two rules are inverse and natural, also after every restriction. This is the stack adjunction.
Its unit and counit are \[ \eta_M(m)(p)=p\otimes m, \qquad\epsilon_N(p\otimes f)=f(p). \tag{2.3} \] The triangle on \(P\otimes_B M\) sends \(p\otimes m\) to \(p\otimes\eta_M(m)\), then back to \(p\otimes m\). The triangle on \([P,N]_A\) sends \(f\) to the map \(p\mapsto\epsilon_N(p\otimes f)=f(p)\). Pure tensors locally generate, and Hom maps are determined by evaluations, so these checks prove both triangles globally. \(\square\)
3. Recovering the bimodule and the functor
Theorem 3.1. Let \(F:\mathsf{Mod}(B)\to\mathsf{Mod}(A)\) be linear and have a right adjoint as a stack functor. Then \(P=F(B)\) has a canonical \((A,B)\)-bimodule structure, and \[ P\otimes_B-\xrightarrow{\sim}F \tag{3.1} \] is an isomorphism of linear stack functors.
Proof. On every localization, a section \(b\) defines the left \(B\)-linear map \(r_b:B\to B\), \(x\mapsto xb\). Set \(pb=F(r_b)(p)\). The equation \(r_c\circ r_b=r_{bc}\) gives \((pb)c=p(bc)\); addition and units follow from linearity and functoriality. Each \(F(r_b)\) is \(A\)-linear, so the actions commute. Linearity over \(R\) identifies the two central actions. The comparisons for restriction make these into sheaf actions on \(P\).
For a local section \(m\) of \(M\), let \(\ell_m:B\to M\) send \(x\) to \(xm\). Define \[ \theta_M(p\otimes m)=F(\ell_m)(p). \tag{3.2} \] It is additive in both entries and \(A\)-linear. Since \(\ell_{bm}=\ell_m\circ r_b\), it is balanced. The formula commutes with restriction and is natural in \(M\); its local bilinear maps therefore give a stack transformation \(\theta:T_P\to F\).
We prove it invertible without assuming that the global regular module alone generates all sheaves. Put \(B[S]=j_{S!}(B|_S)\). For a module sheaf \(M\), a map \(B[S]\to M\) is determined by a section \(m\in M(S)\): the summand at \(a:T\to S\) sends \(b\) to \(b(m|_a)\). Conversely evaluating at the identity summand recovers \(m\). A coproduct over all pairs \((S,m)\) consequently maps epimorphically to \(M\); every section has its indicated lift. Apply this construction to the kernel of that map. This gives a presentation \[ \bigoplus_jB[S_j]\longrightarrow\bigoplus_iB[S_i] \longrightarrow M\longrightarrow0. \tag{3.3} \] All index sets are small in the fixed universe.
Lemma 1.1 identifies \(F(B[S])\) with \(j_{S!}P|_S\). The sectionwise extension formula also identifies \(P\otimes_B B[S]\) with that module: tensor distributes over its sums and commutes with their sheafification, by its balanced universal property. We identify the actual map. Let \(e:B|_S\to j_S^*B[S]\) be the extension unit, whose universal section is the summand labeled by \(\operatorname{id}_S\). The inverse of the extension comparison in (1.3), a map \(j_{S!}P|_S\to F(B[S])\), has adjoint transpose \(F_S(e)\), with the restriction comparison understood. This follows by tracing the identity through the five bijections in (1.3). Formula (3.2) also takes the universal section to \(F_S(e)(p)\). By the extension adjunction, these two maps are equal. Thus \(\theta_{B[S]}\) is exactly the invertible extension comparison, not merely a map between isomorphic objects.
Both functors preserve coproducts and cokernels, by their adjunctions. Naturality of \(\theta\) gives a map between the two images of (3.3). It is an isomorphism on both coproduct terms, so induces an isomorphism on their cokernels. Hence \(\theta_M\) is invertible for every \(M\). The same proof on each element site and the restriction formula (3.2) prove (3.1) for stack functors. \(\square\)
4. All transformations are bimodule maps
Let \(\mathsf{Adj}_R(B,A)\) be the category of linear functors \(\mathsf{Mod}(B)\to\mathsf{Mod}(A)\) that have a right adjoint as a stack functor. Its arrows are all stack natural transformations; no choice of adjoint is part of an object.
Theorem 4.1. The functor \[ \mathsf{Mod}(A\otimes_R B^{\mathrm{op}}) \longrightarrow\mathsf{Adj}_R(B,A), \qquad P\longmapsto T_P \tag{4.1} \] is an equivalence. On arrows it sends \(h:P\to Q\) to \(h\otimes1\). The reconstruction is compatible with localization.
Proof. Commuting left \(A\)- and right \(B\)-actions are exactly a left action of \(A\otimes_RB^{\mathrm{op}}\), with \((a\otimes b^{\mathrm{op}})p=apb\). The multiplication in the opposite algebra makes the right-action order correct. Proposition 2.1 and Theorem 3.1 give existence of the functor and essential surjectivity.
Given \(\alpha:T_P\to T_Q\), identify \(P\otimes_B B\simeq P\) and \(Q\otimes_B B\simeq Q\) by multiplication. Its component at \(B\) gives an \(A\)-linear map \(h:P\to Q\). Naturality at \(r_b\), on every localization, gives \(h(pb)=h(p)b\). Thus it is a bimodule map. Naturality at \(\ell_m:B\to M\) gives \[ \alpha_M(p\otimes m)=h(p)\otimes m. \tag{4.2} \] Restriction compatibility makes this formula valid for all local sections. Pure tensors locally generate, so it determines the whole transformation. Conversely a bimodule map defines (4.2), which is balanced, linear, natural and compatible with restriction. Evaluation at \(B\) recovers \(h\). These are inverse bijections on all arrow sets. They preserve identities and composition by their displayed formulas, proving full faithfulness. The same construction on any localization proves its last assertion. \(\square\)
In particular, transformations between noninvertible tensor functors are included. They are not determined merely by an arbitrary \(A\)-linear endomorphism of the regular value: the right \(B\)-linearity is essential.
5. Composition and the order of the adjoints
Let \(P\) be an \((A,B)\)-bimodule and \(Q\) a \((C,A)\)-bimodule. Then \[ T_QT_P\simeq T_{Q\otimes_A P}, \qquad H_{Q\otimes_A P}\simeq H_PH_Q. \tag{5.1} \] The first comparison sends \(q\otimes(p\otimes m)\) to \((q\otimes p)\otimes m\). Both sides impose exactly the \(A\)- and \(B\)-balancing equations. The reverse parenthesization defines its inverse, so it is an isomorphism commuting with all restrictions.
For the second comparison, curry an element of \([Q\otimes_A P,N]_C\) by \[ f\longmapsto\big(p\mapsto(q\mapsto f(q\otimes p))\big). \tag{5.2} \] The inner map is \(C\)-linear. The \(A\)-balancing identity makes the outer map \(A\)-linear for the action \((a\cdot g)(q)=g(qa)\). The right action on \(P\) makes the comparison \(B\)-linear, since acting by \(b\) replaces \(p\) with \(pb\) in both formulas. Uncurrying is its inverse. This proves the second comparison, including its restriction compatibility.
The unit bimodule \(A\) gives the identity functor: multiplication identifies \(A\otimes_A M\) with \(M\), with inverse \(m\mapsto1\otimes m\). Horizontal composition of transformations is tensor product of the corresponding bimodule maps. For three bimodules, both associativity comparisons send a pure tensor to the same ordered four factors; the pentagon and the two unit equations follow in the same way. Thus reconstruction preserves composition, its associators and its units, in addition to individual functors and transformations.
6. Recovering equivalences as the invertible case
Corollary 6.1. The tensor functor \(T_P\) is a linear equivalence of module stacks exactly when there is a \((B,A)\)-bimodule \(Q\) with bimodule isomorphisms \[ P\otimes_B Q\simeq A, \qquad Q\otimes_A P\simeq B. \tag{6.1} \]
Proof. These isomorphisms and (5.1) give mutually inverse tensor functors, with natural comparisons to the two identity functors. Conversely let \(G\) be an inverse linear stack equivalence to \(F=T_P\). Choose an invertible counit \(\epsilon:FG\to1\). Full faithfulness of \(F\) gives a unique invertible \(\eta_X:X\to GFX\) with \(F\eta_X=\epsilon_{FX}^{-1}\). It is natural, and the first triangle is immediate. Naturality of \(\epsilon\) at \(\epsilon_Y:FGY\to Y\) gives \(FG\epsilon_Y=\epsilon_{FGY}\), after canceling \(\epsilon_Y\). Applying faithful \(F\) to the second triangle therefore gives \(FG\epsilon_Y\,\epsilon_{FGY}^{-1}=1\). Thus the second triangle holds too. Uniqueness of \(\eta\) makes it compatible with restrictions; the supplied counit already is. This proves the stack adjoint-equivalence assertion, and interchanging the two functors gives a stack right adjoint for \(G\) as well. Theorem 3.1 now writes \(G=T_Q\). The two inverse comparisons, by Theorems 4.1 and (5.1), are precisely bimodule isomorphisms (6.1). \(\square\)
This recovers the equivalence case of the earlier Morita lesson. The broader reconstruction theorem needs no finite or projective hypothesis on \(P\); invertibility is a further property, not a condition for having a tensor right adjoint.
7. Testing whether fibre adjoints assemble
Suppose instead that each fibre functor \(F_V\) has a chosen right adjoint \(H_V\), with unit \(\eta^V\) and counit \(\epsilon^V\). For a restriction \(h^*\) from \(V\) to \(W\), the comparison for \(F\) defines a canonical map \[ \beta_h:h^*H_VN\longrightarrow H_Wh^*N. \tag{7.1} \] It is the adjoint transpose of \[ F_Wh^*H_VN\simeq h^*F_VH_VN \xrightarrow{h^*\epsilon^V_N}h^*N. \tag{7.2} \] Explicitly, insert \(\eta^W\) into \(h^*H_VN\), use the comparison for \(F\), and then apply \(H_W\) to the restricted counit.
Proposition 7.1. These fibre adjunctions assemble to a stack adjunction if and only if every \(\beta_h\) is invertible.
Proof. If there is a stack right adjoint, its restriction comparison satisfies the counit compatibility equation (7.2). Adjunction's bijection says it is exactly \(\beta_h\), so it is invertible.
Conversely use the invertible \(\beta_h\) as the restriction comparisons for \(H\). The identity restriction gives the identity comparison by the triangle identity: its transpose is the counit. For composable restrictions \(h^*,k^*\), the composite \(\beta_k\,k^*\beta_h\) has transpose the composite restriction of \(\epsilon^V\). Indeed the equation defining \(\beta_k\) replaces \(\epsilon\,F\beta_k\) by the restricted counit, and the equation defining \(\beta_h\) makes the next replacement. What remains is exactly (7.2) for \(k^*h^*\), using the coherent comparison of \(F\). Uniqueness of the transpose therefore gives the comparison for the composite. This proves the restriction coherence.
Counits are compatible by (7.2). Units are compatible as well: transpose either proposed unit comparison under the fibre adjunction; the unit-counit triangle turns both transposes into the restriction comparison for \(F\). The transpose bijection makes the two unit maps equal. The triangles already hold in every fibre, so now hold as stack transformations. This constructs the required stack adjunction. \(\square\)
The distinction is consequential even on a site with two nonempty opens, as Exercise 8.3 shows.
8. Graded exercises with complete solutions
Exercise 8.1 (foundation). On a point let \(B=k[t]\), \(A=k\), and let \(P=k\) with right \(B\)-action given by evaluation at zero. Identify its tensor functor, its right adjoint, its unit and counit. Is it exact or an equivalence?
Solution. Balancing \(p\otimes tm=(p\cdot t)\otimes m=0\) makes the tensor \(M/tM\). The isomorphism sends \(p\otimes m\) to \(p\bar m\); its inverse sends \(\bar m\) to \(1\otimes m\), well-defined by the same balancing equation. A \(k\)-linear map \(P=k\to N\) is determined by its value at one. Formula (2.2) makes \(t\) act as zero on this Hom. Thus the right adjoint regards \(N\) as a \(B\)-module annihilated by \(t\). The unit is the quotient \(M\to M/tM\); the counit is the identity on \(N\), since \(N/tN=N\). Tensor sends the injection \(t:B\to B\) to the zero map \(k\to k\), which is not injective. Hence this left adjoint is not exact and is not an equivalence. Existence of a stack right adjoint on a point imposes no flatness on \(P\).
Exercise 8.2 (calculation). Let \(A\) be an algebra and \(\sigma\) an automorphism. Give \(P=A\) its usual left action and right action \(p\cdot b=p\sigma(b)\). Identify \(T_P(M)\) with a module whose underlying additive group is \(M\). Determine the tensor composition for two automorphisms. For \(A=k[t]\), \(\sigma(t)=t+1\), compute the new action of \(t\).
Solution. The map \(p\otimes m\mapsto\sigma^{-1}(p)m\) is balanced, because \(\sigma^{-1}(p\sigma(b))m=\sigma^{-1}(p)bm\). Its inverse is \(m\mapsto1\otimes m\): balancing with \(b=\sigma^{-1}(p)\) proves \(p\otimes m=1\otimes\sigma^{-1}(p)m\). The target action is consequently \(a\cdot_{\mathrm{new}}m=\sigma^{-1}(a)m\), not \(\sigma(a)m\).
Write \(P_\sigma,P_\tau\) for the two bimodules. The isomorphism \[ P_\tau\otimes_A P_\sigma\xrightarrow{\sim}P_{\tau\circ\sigma}, \qquad q\otimes p\longmapsto q\tau(p) \] is balanced: \(q\tau(a)\tau(p)=q\tau(ap)\). The right action maps to \(q\tau(p\sigma(b))=q\tau(p)(\tau\circ\sigma)(b)\), and the left action is the usual one. Its inverse is \(x\mapsto x\otimes1\), since \(q\otimes p=q\tau(p)\otimes1\). This also checks the order of functor composition: \(T_{P_\tau}T_{P_\sigma}\) has new action \((\tau\circ\sigma)^{-1}=\sigma^{-1}\circ\tau^{-1}\). For the indicated polynomial automorphism, \(t\) acts by the old operator \(t-1\). The inverse functor uses \(\sigma^{-1}\), so these tensor functors are equivalences.
Exercise 8.3 (obstruction). Take the topological space \(X=\{0,1\}\) with opens \(\varnothing,U=\{1\},X\), and the constant ring sheaf \(k_X\). Show that \(F_X(V\xrightarrow f W)=(W\xrightarrow1W)\) and \(F_U=1\) define a linear module-stack functor with right adjoints on both fibres. Compute its maps (7.1) and show that it is not tensoring with its regular value.
Solution. A sheaf of modules here is precisely an arrow of vector spaces: no covering of \(X\) by smaller opens covers the point zero, and a cover of \(U\) contains \(U\). A morphism is a commuting pair. Restriction to \(U\) takes \(V\to W\) to \(W\), and \(k_X\) is the arrow \(k\xrightarrow1k\). Thus the two specified functors commute with restriction and are linear; the empty-open fibre is the trivial category.
For a target \(Y\xrightarrow g Z\), a map \((W\xrightarrow1W)\to(Y\xrightarrow g Z)\) is determined by a map \(a:W\to Y\), with its other component forced to be \(ga\). A map \((V\xrightarrow f W)\to(Y\xrightarrow1Y)\) is also determined by \(a:W\to Y\), with its first component forced to be \(af\). Hence \[ H_X(Y\xrightarrow g Z)=(Y\xrightarrow1Y),\qquad H_U=1 \] are right adjoints on their fibres. Their unit at \(V\to W\) is the pair \((f,1_W)\), and their counit at \(Y\to Z\) is \((1_Y,g)\), as the two Hom bijections show. Formula (7.2) therefore gives the mate \(\beta_U:Y\to Z\) equal to \(g\). Choose \(Y=k,Z=0\); it is not invertible. By Proposition 7.1 the right adjoints cannot assemble into a stack adjoint. Any other fibre right adjoints are isomorphic to these by the adjunction bijections, so cannot cure this defect.
The regular value is \(F_X(k\xrightarrow1k)=k_X\). Tensoring with that regular bimodule is the identity on all sheaves. But \(F_X(k\to0)=0\), whereas \(k\to0\) is nonzero. Thus reconstruction from the regular value fails under the weaker fibrewise condition. This does not contradict Theorem 3.1: precisely its stack-adjoint hypothesis is missing.
Exercise 8.4 (synthesis). On a point let \(A=M_2(k)\). Classify natural transformations from the identity functor on left \(A\)-modules to its direct sum with itself. Explain why a pair of arbitrary left \(A\)-linear maps \(A\to A\) does not necessarily extend to such a transformation.
Solution. Theorem 4.1 identifies these transformations with bimodule maps \(A\to A\oplus A\). A left-linear component sends \(a\) to \(ac\), where \(c\) is its value at one. Right-linearity additionally gives \(bc=cb\) for every \(b\in A\). Thus the two components are multiplication by two elements of the center. If \(c=\begin{pmatrix}a&b\\c'&d\end{pmatrix}\), commuting with the diagonal matrix unit \(E_{11}\) gives \(b=c'=0\); commuting with \(E_{12}\) then gives \(a=d\). The center is exactly \(kI\). The transformations are therefore \[ m\longmapsto(\lambda m,\mu m),\qquad \lambda,\mu\in k. \] Conversely these maps are linear and natural on every module. For a specific failure, right multiplication by \(E_{12}\) is left-linear on \(A\), but is not right-linear: at \(a=1\), right-linearity with \(b=E_{21}\) would require \(E_{21}E_{12}=E_{12}E_{21}\), whereas these are \(E_{22}\) and \(E_{11}\). It cannot be the component of a natural transformation on all left modules. This calculation records the extra action that evaluation at the regular object must preserve.
9. Further reading
- Andrea D'Agnolo and Pietro Polesello, Stacks of twisted modules and integral transforms, open preprint, Proposition 2.1 and Lemma 2.2, for the module-stack reconstruction theorem and the role of extension from an open subset.
- Local module categories and Morita equivalence, especially Section 4, for the generator presentations, extension functors and equivalence case on a ringed site.
- Tensor and Hom for twisted module stacks, Section 1, for slice internal Hom and its restriction conventions.
- Tensor duality and coherent inverses, Section 4, for coherent adjoint-equivalence choices.