# Sieve (category theory)

In category theory, a branch of mathematics, a sieve is a way of choosing arrows with a common codomain. It is a categorical analogue of a collection of open subsets of a fixed open set in topology. In a Grothendieck topology, certain sieves become categorical analogues of open covers in topology.

## Definition

Let C be a category, and let c be an object of C. A sieve S on c is a subfunctor of Hom(−, c), i.e., for all objects c′ of C, S(c′) ⊆ Hom(c′, c), and for all arrows f:c″→c′, S(f) is the restriction of Hom(f, c), the pullback by f (in the sense of precomposition, not of fiber products), to S(c′).

Put another way, a sieve is a collection S of arrows with a common codomain which satisfies the functoriality condition, "If g:c′→c is an arrow in S, and if f:c″→c′ is any other arrow in C, then the pullback S(f)(g) = gf is in S." Consequently sieves are similar to right ideals in ring theory or filters in order theory.

## Pullback of sieves

The most common operation on a sieve is pullback. Pulling back a sieve S on c by an arrow f:c′→c gives a new sieve f*S on c′. This new sieve consists of all the arrows in S which factor through c′.

There are several equivalent ways of defining f*S. The simplest is:

For any object d of C, f*S(d) = { g:dc′ | fg ∈ S(d)}

A more abstract formulation is:

f*S is the image of the fibered product S×Hom(−, c)Hom(−, c′) under the natural projection S×Hom(−, c)Hom(−, c′)→Hom(−, c′).

Here the map Hom(−, c′)→Hom(−, c) is Hom(f, c′), the pullback by f.

The latter formulation suggests that we can also take the image of S×Hom(−, c)Hom(−, c′) under the natural map to Hom(−, c). This will be the image of f*S under composition with f. For each object d of C, this sieve will consist of all arrows fg, where g:dc′ is an arrow of f*S(d). In other words, it consists of all arrows in S that can be factored through f.

If we denote by c the empty sieve on c, that is, the sieve for which (d) is always the empty set, then for any f:c′→c, f*c is c. Furthermore, f*Hom(−, c) = Hom(−, c′).

## Properties of sieves

Let S and S′ be two sieves on c. We say that SS′ if for all objects c′ of C, S(c′) ⊆ S′(c′). For all objects d of C, we define (SS′)(d) to be S(d) ∪ S′(d) and (SS′)(d) to be S(d) ∩ S′(d). We can clearly extend this definition to infinite unions and intersections as well.

If we define SieveC(c) (or Sieve(c) for short) to be the set of all sieves on c, then Sieve(c) becomes a partially ordered under ⊆. It is easy to see from the definition that the union or intersection of any family of sieves on c is a sieve on c, so Sieve(c) is a complete lattice.

A Grothendieck topology is a collection of sieves subject to certain properties. These sieves are called covering sieves. The set of all covering sieves on an object c is a subset J(c) of Sieve(c). J(c) satisfies several properties in addition to those required by the definition:

• If S and S′ are sieves on c, SS′, and SJ(c), then S′ ∈ J(c).
• Finite intersections of elements of J(c) are in J(c).

Consequently, J(c) is also a distributive lattice, and it is cofinal in Sieve(c).