# mathlibdocumentation

topology.sheaves.sheaf_of_functions

# Sheaf conditions for presheaves of (continuous) functions.

We show that

• Top.sheaf_condition.to_Type: not-necessarily-continuous functions into a type form a sheaf
• Top.sheaf_condition.to_Types: in fact, these may be dependent functions into a type family

For

• Top.sheaf_condition.to_Top: continuous functions into a topological space form a sheaf please see topology/sheaves/local_predicate.lean, where we set up a general framework for constructing sub(pre)sheaves of the sheaf of dependent functions.

## Future work

Obviously there's more to do:

• sections of a fiber bundle
• various classes of smooth and structure preserving functions
• functions into spaces with algebraic structure, which the sections inherit
def Top.presheaf.to_Types (X : Top) (T : X → Type u) :

We show that the presheaf of functions to a type T (no continuity assumptions, just plain functions) form a sheaf.

In fact, the proof is identical when we do this for dependent functions to a type family T, so we do the more general case.

Equations
def Top.presheaf.to_Type (X : Top) (T : Type u) :

The presheaf of not-necessarily-continuous functions to a target type T satsifies the sheaf condition.

Equations
• = (λ (_x : X), T)
def Top.sheaf_to_Types (X : Top) :
(X → Type u)Top.sheaf (Type u) X

The sheaf of not-necessarily-continuous functions on X with values in type family T : X → Type u.

Equations
def Top.sheaf_to_Type (X : Top) :
Type uTop.sheaf (Type u) X

The sheaf of not-necessarily-continuous functions on X with values in a type T.

Equations