Blog Archive

Tuesday, June 23, 2026

The Monoidal Structure of Ch(R): Total Complexes, Tensor Ideals, and Internal Homs

 

The Tensor Product of Chain Complexes as a Total Complex

A good way to understand the monoidal structure on Ch(R) is not to start with abstract coherence diagrams, but with a much more concrete picture:

CRDis the total complex of the double complexEp,q=CpRDq.

This point of view explains both parts of the definition:

(CRD)n=p+q=nCpRDq,

and

d(cx)=dCcx+(1)|c|cdDx.

The first formula says that total degree is obtained by adding bidegrees. The second formula is the sign convention that makes the total differential square to zero.

Throughout, R is a commutative ring, and Ch(R) means the category of homologically graded chain complexes of R-modules:

Cn+1dCCndCCn1

So the differential has degree 1.


The Double Complex Behind CRD

Given two chain complexes C and D, form the bigraded object

Ep,q=CpRDq.

There are two evident differentials. The horizontal one is induced by the differential of C:

dh=dC1:Ep,qEp1,q.

The vertical one is induced by the differential of D:

dv=1dD:Ep,qEp,q1.

On the nose, these two maps commute:

dhdv=dvdh.

Indeed,

(dC1)(1dD)=dCdD=(1dD)(dC1).

But for a total complex, commuting differentials are not what we want. If one simply tried

dtot=dh+dv,

then

dtot2=(dh)2+dhdv+dvdh+(dv)2.

The first and last terms vanish, but the middle terms add:

dtot2=dhdv+dvdh.

Since dhdv=dvdh, this is generally not zero.

So the total differential cannot be the naive sum. A sign has to be inserted.


Totalizing the Double Complex

The tensor product complex CRD is defined by taking direct sums along diagonals:

(CRD)n=p+q=nEp,q=p+q=nCpRDq.

Thus, if cCp and xDq, then

cx(CRD)p+q.

The total differential is

dtot=dh+(1)pdvon Ep,q.

Equivalently,

d(cx)=dCcx+(1)pcdDx,

where p=|c|.

This is the usual formula for the tensor product of chain complexes.

The sign depends on the degree of the left factor. Conceptually, the vertical differential has to pass across the horizontal degree p, and the price is the sign (1)p.


Why This Sign Works

Let

d~v=(1)pdvon Ep,q.

Then

dtot=dh+d~v.

We want the two pieces to anticommute:

dhd~v+d~vdh=0.

Compute on Ep,q. First,

dhd~v=dh((1)pdv)=(1)pdhdv.

On the other hand, after applying dh, the first index drops from p to p1. Hence

d~vdh=(1)p1dvdh.

Since dhdv=dvdh, we get

dhd~v+d~vdh=((1)p+(1)p1)dhdv=0.

Therefore

dtot2=0.

That is the whole reason for the sign.


Direct Verification of d2=0

Let cCp and xDq. Then

d(cx)=dCcx+(1)pcdDx.

Apply d again. The first term gives

d(dCcx)=dC2cx+(1)p1dCcdDx.

The second term gives

d((1)pcdDx)=(1)pdCcdDx+(1)p(1)pcdD2x.

Thus

d2(cx)=dC2cx+((1)p1+(1)p)dCcdDx+cdD2x.

Since dC2=0 and dD2=0, and since

(1)p1+(1)p=0,

we get

d2(cx)=0.

Without the sign (1)p, the two middle terms would add instead of canceling.


A Small Example: Tensoring Two Two-Term Complexes

Let

P=(0RaR0),

and

Q=(0RbR0),

with nonzero terms in degrees 1 and 0.

Then PRQ has nonzero terms in degrees 2,1,0.

In degree 2,

(PQ)2=P1Q1R.

In degree 1,

(PQ)1=(P0Q1)(P1Q0)RR.

In degree 0,

(PQ)0=P0Q0R.

So PRQ has the form

0Rd2RRd1R0.

With the above ordering of the middle term, the first differential is

d2(1)=(a,b).

Indeed,

d(11)=dP(1)11dQ(1).

The second differential is

d1(x,y)=bx+ay.

Therefore

d1d2(1)=d1(a,b)=baab=0.

This is the smallest place where the sign becomes visible. The minus sign is not cosmetic; it is exactly what makes the composition vanish.


The Unit Complex

The tensor unit in Ch(R) is R[0], the complex with R in degree 0 and zero elsewhere:

0R0

Then

(CRR[0])n=p+q=nCpRR[0]q.

Only the summand with q=0 survives, so

(CRR[0])nCnRRCn.

Similarly,

(R[0]RC)nRRCnCn.

Thus

CRR[0]C,R[0]RCC.

So R[0] is the monoidal unit.


Associativity

There is a natural isomorphism

(CRD)RECR(DRE).

On the underlying graded modules, both sides have degree n part

p+q+r=nCpRDqREr.

The differential on a pure tensor cxy, with cCp and xDq, is

d(cxy)=dCcxy+(1)pcdDxy+(1)p+qcxdEy.

This is just the same total-complex rule, now for a triple complex.

So the associativity isomorphism is not merely an isomorphism of graded modules; it is an isomorphism of chain complexes.


The Koszul Symmetry

Since R is commutative, one expects a symmetry

CRDDRC.

But in chain complexes the symmetry is not the naive map cxxc. The correct formula is

τC,D(cx)=(1)|c||x|xc.

This is the Koszul sign rule.

It says that when an element of degree p crosses an element of degree q, the sign is

(1)pq.

Odd-degree elements anticommute with odd-degree elements. Everything else commutes.

This sign is forced by the condition that τC,D be a chain map.


Checking That the Symmetry Is a Chain Map

Let cCp and xDq.

First compute dτ(cx):

dτ(cx)=d((1)pqxc).

Using the differential on DC, this is

(1)pq(dDxc+(1)qxdCc).

So

dτ(cx)=(1)pqdDxc+(1)pq+qxdCc.

Now compute τd(cx):

τd(cx)=τ(dCcx+(1)pcdDx).

For the first term, dCc has degree p1, so

τ(dCcx)=(1)(p1)qxdCc.

For the second term, dDx has degree q1, so

τ((1)pcdDx)=(1)p(1)p(q1)dDxc.

Hence

τd(cx)=(1)(p1)qxdCc+(1)p+p(q1)dDxc.

Modulo 2,

(p1)qpq+q,

and

p+p(q1)pq.

Therefore

τd(cx)=(1)pq+qxdCc+(1)pqdDxc.

This agrees with dτ(cx).

So τ is a chain map.


Tensor Product of Chain Maps

If

f:CC,g:DD

are chain maps, then

fg:CRDCRD

is defined on pure tensors by

(fg)(cx)=f(c)g(x).

Because f and g have degree 0, there is no extra sign here.

The verification that fg is a chain map is straightforward:

d(fg)(cx)=d(f(c)g(x)).

Since f(c) has the same degree as c,

d(f(c)g(x))=dCf(c)g(x)+(1)|c|f(c)dDg(x).

Using

dCf=fdC,dDg=gdD,

we get

d(fg)(cx)=f(dCc)g(x)+(1)|c|f(c)g(dDx).

This is exactly

(fg)d(cx).

Hence

d(fg)=(fg)d.

A Note on Homogeneous Maps

In the ordinary category Ch(R), morphisms are degree 0 chain maps. But once one works with Hom complexes or dg categories, one also considers homogeneous maps of arbitrary degree.

If f has degree |f| and g has degree |g|, the tensor product of homogeneous maps is defined by

(fg)(cx)=(1)|g||c|f(c)g(x).

The sign appears because g has to pass across the element c before acting on x.

With this convention, one may write the differential on CD formally as

dCD=dC1+1dD.

The sign in the second term is already built into the tensor product of homogeneous maps.


Compatibility with Chain Homotopy

The tensor product also behaves correctly with chain homotopy.

Suppose

f:CD

is null-homotopic. Thus there is a degree +1 map

s:CD

such that

f=dDs+sdC.

Then for any complex Z,

f1Z0,

and

1Zf0.

For the first statement, define

H(cz)=s(c)z.

A direct computation gives

dH+Hd=f1Z.

For the second statement, the homotopy needs a sign:

K(zc)=(1)|z|zs(c).

Then

dK+Kd=1Zf.

Thus null-homotopic maps are closed under tensoring on either side.

Consequently, null-homotopic maps form a tensor ideal in Ch(R).

This is why the tensor product descends to the homotopy category

K(R)=Ch(R)/{null-homotopic maps}.

The formula is simply

[f][g]=[fg].

The Final Picture

The monoidal structure on Ch(R) can be read from one construction:

Ep,q=CpRDq.

Then

CRD=Tot(E),

with

(CRD)n=p+q=nEp,q.

The total differential is

dtot=dh+(1)pdv.

In element notation,

d(cx)=dCcx+(1)|c|cdDx.

From this total-complex viewpoint, the usual features of Ch(R) become natural:

R[0]is the tensor unit,
(CD)EC(DE),

and, when R is commutative,

CDDC

via

cx(1)|c||x|xc.

So the slogan is:

The tensor product of chain complexes is the total complex of the tensor-product double complex.

The rest is bookkeeping: the bookkeeping of degrees, and the bookkeeping of signs.

Null-Homotopic Maps Form a Tensor Ideal

The tensor product of chain complexes is not merely compatible with chain maps. It is also compatible with chain homotopies.

The statement is:

null-homotopic maps form a tensor ideal in Ch(R).

Let

N(C,D)={f:CDf0}.

Thus fN(C,D) means that there exists a degree +1 map

s:CD

such that

f=dDs+sdC.

In components, this says

fn=dn+1Dsn+sn1dnC.

We shall check that N is closed under addition, under composition from both sides, and under tensoring from both sides.


Additivity

If

f=dDs+sdC

and

g=dDt+tdC,

then

f+g=dD(s+t)+(s+t)dC.

Also,

f=dD(s)+(s)dC.

So each N(C,D) is a subgroup of HomCh(R)(C,D).


Closure Under Composition

Suppose

f:CD

is null-homotopic, say

f=dDs+sdC.

Let

u:BC,v:DE

be arbitrary chain maps. Then

vfu=v(dDs+sdC)u.

Since u and v commute with differentials,

vdD=dEv,dCu=udB.

Therefore

vfu=dE(vsu)+(vsu)dB.

So

vfu0.

Thus null-homotopic maps form a two-sided ideal in the ordinary categorical sense.


Closure Under Tensoring on the Right

Now let Z be another chain complex. We prove that

f1Z:CZDZ

is null-homotopic.

Define a degree +1 map

H:CZDZ

by

H(cz)=s(c)z.

Let cCp and zZq. Then

dH(cz)=dDs(c)z+(1)p+1s(c)dZz.

On the other hand,

Hd(cz)=H(dCcz+(1)pcdZz),

so

Hd(cz)=sdC(c)z+(1)ps(c)dZz.

Adding the two expressions gives

(dH+Hd)(cz)=(dDs+sdC)(c)z.

The two terms involving dZz cancel:

(1)p+1s(c)dZz+(1)ps(c)dZz=0.

Hence

dH+Hd=f1Z.

Therefore

f1Z0.

Closure Under Tensoring on the Left

The other side is similar, but a sign is needed.

We want to prove that

1Zf:ZCZD

is null-homotopic.

Define

K:ZCZD

by

K(zc)=(1)|z|zs(c).

Let zZq and cCp. Then

dK(zc)=(1)qdZzs(c)+zdDs(c).

Also,

d(zc)=dZzc+(1)qzdCc.

Therefore

Kd(zc)=K(dZzc)+(1)qK(zdCc).

Since dZz has degree q1,

K(dZzc)=(1)q1dZzs(c).

And

(1)qK(zdCc)=(1)q(1)qzsdC(c)=zsdC(c).

Thus

Kd(zc)=(1)q1dZzs(c)+zsdC(c).

Adding gives

(dK+Kd)(zc)=z(dDs+sdC)(c).

Again, the terms involving dZz cancel:

(1)q+(1)q1=0.

So

dK+Kd=1Zf.

Hence

1Zf0.

The sign

(1)|z|

in the definition of K is forced. Without it, the dZ-terms would not cancel.


The Tensor Ideal Statement

Combining the previous observations, null-homotopic maps satisfy:

f0vfu0

for all composable chain maps u,v, and

f0f1Z0,1Zf0.

More generally, if

g:AB

is any chain map, then

fg=(1Dg)(f1A)

is null-homotopic, and

gf=(g1D)(1Af)

is null-homotopic.

Thus

N is a tensor ideal of morphisms in Ch(R).

Consequently, the tensor product descends to the homotopy category

K(R)=Ch(R)/N.

Indeed, if

ff,gg,

then

fgfg=(ff)g+f(gg).

Both terms on the right are null-homotopic. Hence

fgfg.

So the formula

[f][g]=[fg]

is well-defined in K(R).


The Internal Hom Complex

The tensor product on Ch(R) has a right adjoint. This is the internal Hom complex.

For chain complexes C and D, define

Hom(C,D)n=pZHomR(Cp,Dp+n).

Thus an element

φHom(C,D)n

is a homogeneous map of degree n:

φp:CpDp+n.

The differential is

δ(φ)=dDφ(1)nφdC.

In components,

(δφ)p=dDφp(1)nφp1dC.

Since φ has degree n, the element δ(φ) has degree n1.


Why δ2=0

Let |φ|=n. Then

δ(φ)=dDφ(1)nφdC.

Applying δ again gives

δ2(φ)=dDδ(φ)(1)n1δ(φ)dC.

Substitute the formula for δ(φ):

δ2(φ)=dD(dDφ(1)nφdC)(1)n1(dDφ(1)nφdC)dC.

Expanding,

δ2(φ)=dD2φ(1)ndDφdC(1)n1dDφdC+(1)2n1φdC2.

The first and last terms vanish because

dD2=0,dC2=0.

The middle terms cancel because

(1)n(1)n1=0.

Therefore

δ2(φ)=0.

So Hom(C,D) is indeed a chain complex.


Chain Maps and Homotopies Inside the Hom Complex

The definition of Hom(C,D) packages chain maps and chain homotopies into one complex.

First,

Z0Hom(C,D)

is the group of degree 0 cycles. A degree 0 element φ:CD is a cycle precisely when

δ(φ)=0.

But

δ(φ)=dDφφdC.

Thus

δ(φ)=0

if and only if

dDφ=φdC.

So

Z0Hom(C,D)=HomCh(R)(C,D).

Next,

B0Hom(C,D)

consists of degree 0 boundaries. These come from degree 1 elements

sHom(C,D)1.

For such an s,

δ(s)=dDs(1)1sdC=dDs+sdC.

But this is exactly the form of a null-homotopic map.

Hence

B0Hom(C,D)={f:CDf0}.

Therefore

H0Hom(C,D)HomK(R)(C,D).

This is the clean conceptual meaning of the homotopy category: its morphisms are the degree-zero homology classes of the mapping complex.


The Tensor-Hom Adjunction

The internal Hom is right adjoint to tensor product.

There is a natural isomorphism of chain complexes

Hom(CRD,E)Hom(C,Hom(D,E)).

This is the tensor-Hom adjunction in Ch(R).

At the level of homogeneous maps, the correspondence is the usual currying operation.

Let

F:CRDE

be a homogeneous map of degree n. Define

F^:CHom(D,E)

by

F^(c)(x)=F(cx).

If cCp, then F^(c) is a map

DqEp+q+n.

So F^(c) has degree p+n as an element of Hom(D,E). Therefore F^ itself has degree n.

Conversely, given a homogeneous map

G:CHom(D,E)

of degree n, define

G~:CRDE

by

G~(cx)=G(c)(x).

These two constructions are inverse to each other.


Compatibility with Differentials

The main point is that the currying isomorphism is not just an isomorphism of graded modules. It is an isomorphism of chain complexes.

Let F have degree n, and let cCp, xDq.

First compute the differential after currying.

Since F^(c) has degree n+p inside Hom(D,E),

(δF^)(c)(x)=dEF(cx)(1)n+pF(cdDx)(1)nF(dCcx).

On the other hand,

δF^(c)(x)=(δF)(cx).

Since F has degree n,

(δF)(cx)=dEF(cx)(1)nF(dCD(cx)).

Using

dCD(cx)=dCcx+(1)pcdDx,

we get

δF^(c)(x)=dEF(cx)(1)nF(dCcx)(1)n+pF(cdDx).

This agrees with (δF^)(c)(x).

Therefore currying commutes with differentials:

δF^=δF^.

Thus

Hom(CRD,E)Hom(C,Hom(D,E))

as chain complexes.


Ordinary Adjunction and Homotopy Adjunction

Taking degree-zero cycles gives the ordinary adjunction in Ch(R):

HomCh(R)(CRD,E)HomCh(R)(C,Hom(D,E)).

Taking degree-zero homology gives the corresponding adjunction in the homotopy category:

HomK(R)(CRD,E)HomK(R)(C,Hom(D,E)).

So the closed monoidal structure is already visible before passing to derived categories.

In the derived category D(R), one has to replace these by their derived versions:

RL

and

RHom(,).

But at the level of Ch(R) and K(R), the basic tensor-Hom adjunction is the one above.


Summary

The monoidal structure on Ch(R) has two companion facts.

First, null-homotopic maps form a tensor ideal:

f0fg0,gf0.

This is why the tensor product descends from Ch(R) to K(R).

Second, the tensor product has an internal right adjoint:

Hom(CRD,E)Hom(C,Hom(D,E)).

The Hom complex also explains chain homotopy:

Z0Hom(C,D)=HomCh(R)(C,D),

while

B0Hom(C,D)={null-homotopic maps CD}.

Hence

H0Hom(C,D)HomK(R)(C,D).

So the passage

Ch(R)K(R)

is already encoded inside the internal Hom complex.

Popular Posts