ñòð. 25 |

a nearly constant presheaf is a sheaf. It turns out that every nearly constant

presheaf over P is a sheaf over P if and only if the meet of two nonzero elements

of P is nonzero.

To see this, suppose E is a nearly constant presheaf whose value at any x 60

=

W

is S and that x = xi . In the diagram

Y Y

Â¡

!

E(x) Â¡

! E(xi ^ xj )

E(xi ) Â¡

!

every term in which xi = 0 contributes nothing to the product since 1 Â£ Y Â» Y .

=

An element of the product is a string fsi g such that si 2 S. The condition of

being an element of the equalizer is the condition that the image of si under the

induced function E(xi ) Â¡ E(xi ^ xj ) is the same as the image of sj under E(xj )

!

Â¡ E(xi ^ xj ). But in a nearly constant sheaf, all these sets are the same and all

!

the functions are the identity, so this condition is simply that si = sj . But this

means that an element of the equalizer must be the same in every coordinate,

hence that diagram is an equalizer.

5.5.8 Interpretation of sheaves Let E be a sheaf on P . The reader will want

to know how E is to be interpreted. Start by thinking of P as an algebra of truth

values. Whereas propositions (assertions) in ordinary logic are either true or false

(so that ordinary logic is often called 2-valued), in P -valued logic, the truth of an

assertion is an element of P . In the next section, we will use this idea to discuss

70 Toposes

time sheaves in which propositions can be true at some times and not at others.

If p is some proposition, let us write [[p]] to denote the element of P that is the

truth value.

A sheaf E is a set in this logic. For x 2 P , the (ordinary) set E(x) could,

as a Â¯rst approximation, be thought of as the set of all entities a for which

[[a 2 E]] is at least x. If y < x, then [[a 2 E]] Â¸ x implies that [[a 2 E]] Â¸ y so that

E(x) Âµ E(y). This is only a Â¯rst approximation and what we have described is

actually a P -valued fuzzy set (see ES 5.6). The reason is that equality is also a

predicate and it may happen, for example, that [[a = b]] could lie between x and

y so that the entities a and b are not discernably equal at level x, but are equal at

level y. The result is that rather than an inclusion, we have a restriction function

E(x) Â¡ E(y) for y Â· x.

!

5.5.9 Time sheaves, I Here is a good example of a topos in which one can see

that the restriction arrows should not be expected to be injective. Consider the

partially ordered set whose elements are intervals on the real line with inclusion

as ordering. It is helpful to think of these as time intervals.

Now consider any deÂ¯nition of a naive set. Some possible deÂ¯nitions will be

time invariant, such as the set of mathematical statements about, say, natural

numbers, that are true. Others of these `sets' change with time; one example might

be the set of all books that are currently in print; another the set of statements

currently known to be true about the natural numbers. These may conveniently

be thought of as the presheaves whose value on some time interval is the set of

books that were in print over the entire interval and the set of statements about

natural numbers known to be true during that entire interval. The restriction

to a subinterval is simply the inclusion of the set of books in print over the

whole interval to that (larger) set of those in print over that subinterval or the

restriction of the knowledge from the interval to the subinterval. In this example,

the restrictions are injective.

Instead of books in print, we could take the example of businesses in operation.

Because of the possibility of merger, divestment and the like, two businesses which

are actually distinct over a large interval might coincide over a smaller subinterval.

Thus for this example of a \set", the restriction function is not injective in general.

Another situation in which the restriction functions are not necessarily injec-

tive arises from the set of variables in a block-structured programming language.

The presheaf is this: the set for a certain time interval during the running of

the program is the quotient of the set of variables which exist over the whole

time interval, modulo the equivalence relation that identiÂ¯es two variables in an

interval if they should happen to have the same value over the whole interval.

Two variables may not be equivalent over a large interval, whereas they may be

equivalent over a smaller one; in that case the restriction function would not be

injective.

5.5 Sheaves 71

In general, any property describes the set of all entities that have that prop-

erty over the entire interval. The restriction to a subinterval arises out of the

observation that any entity that possesses a property over an interval possesses

it over any subinterval.

The sheaf condition in this case reduces to this: if the interval I is a union of

subintervals Ik (where k ranges over an index set which need not be countable)

and an entity possesses that property over every one of the subintervals Ik , then

it does over the whole interval. This condition puts a deÂ¯nite restriction on the

kinds of properties that can be used. For example, the property of being grue,

that is blue over the Â¯rst half of the interval and green on the second half, is not

allowed. The properties that are allowed are what might be called local, that is

true when they are true in each suÂ±ciently small interval surrounding the point

in time. This statement is essentially a tautology, but it does give an idea of what

the sheaf condition means.

5.5.10 Time sheaves, II Here is another topos, rather diÂ®erent from the one

above, that might also be considered to be time sheaves. Unlike the one above

which is symmetric to forward and reverse time, this one deÂ¯nitely depends on

which way time is Â°owing. This is not to say that one is better or worse, but they

are diÂ®erent and have diÂ®erent purposes. In this one, the elements of the Heyting

algebra are the times themselves. In other words, we are looking at time indexed

sets, as opposed to sets indexed by time intervals.

We order this set by the reverse of the usual order. So a presheaf in this model

is a family fX (t)g of sets, t a real number, together with functions f (s; t) : X(t)

Â¡ X (s) for t Â· s, subject to the condition that f(t; t) is the identity and f (r; s) Â±

!

f(s; t) = f(r; t) for t Â· s Â· r. The sheaf condition of DeÂ¯nition ES 5.5.4 is a bit

technical, but can easily be understood in the special case of a presheaf all of

whose transition arrows f (s; t) are inclusions. In that case, the condition is that

V T

when t = ti (so that t is the greatest lower bound of the ti ), then X(t) = X(ti ).

An example, which might be thought typical, of such a sheaf might be de-

scribed as the `sheaf of states of knowledge'. At each time t we let X(t) denote

the set of all things known to the human race. On the hypothesis (which might

be disputed) that knowledge is not lost, we have a function X (t) Â¡ X (s) for

!

t Â· s. In common parlance, we might consider this function to be an inclusion, or

at least injective, but it is possible to modify it in various ways that will render

it not so. We might introduce an equivalence relation on knowledge, so that two

bits of knowledge might be considered the same. In that case, if at some future

time we discover two bits of knowledge the same, then bits not equal at one time

become equal at a later time and the transition arrow is not injective.

For example, consider our knowledge of the set of complex numbers. There

was a time in our history when all the numbers e, i, Â¼ and Â¡1 were all known,

but it was not known that eiÂ¼ = Â¡1. In that case, the number eiÂ¼ and Â¡1 were

72 Toposes

known separately, but not the fact that they were equal. See [Barr, McLarty and

Wells, 1985]. The sheaf condition is this: if fti g is a set of times and t is their

inÂ¯mum, then anything known at time ti for every i is known at time t.

5.5.11 Exercise

be a complete Heyting algebra. DeÂ¯ne the binary operation ): H Â£ H

1. Let

Â¡ H by requiring that a ) b is the join of all elements c for which a ^ c Â· b.

!

a. Prove that a ^ c Â· b if and only if c Â· a ) b.

b. Prove that when is regarded as a category in the usual way, it is cartesian

closed with ) as internal hom.

5.6 Fuzzy sets

Fuzzy set theory is a more-or-less categorical idea that some claim has application

to computer modeling. It appears to be closely related to topos theory. In fact, it

appears to us that the interesting core of the subject is already implicit in topos

theory. We will not go deeply into the subject, but only give a few deÂ¯nitions

and point out the connections. More details can be found in [Barr, 1986a], [Pitts,

1982].

5.6.1 At this point, it would be appropriate to give some deÂ¯nitions. One of

the problems with fuzzy sets is that the meaning of the term has been left vague

(one might say fuzzy). Rather than attempt to give all possible deÂ¯nitions, we

content ourselves with a deÂ¯nition that is common and for which the connection

with topos theory is as simple as possible.

ñòð. 25 |