So  far we have talked exclusively about types and their
members.
We now want to talk about simple declarative statements.
In the case of the integers many interesting facts
can be expressed as equations between terms.
For example, we can say that a number n is even by
writing  
.
In Nuprl
  the equality relation on int is built--in;
we write  
.
In fact, each type A comes with an equality relation
written  
.
The idea that types come equipped with an equality
relation is very explicit in the writings of
Bishop [Bishop 67].
For example, in  The Foundation of Constructive Analysis,
he says,
``A set is defined by describing what must be
done to construct an element of the set, and what must be
done to show that two elements of the set are equal.''
The notion that types come with an equality is central
to Martin-Löf
 's type theories as well.
The equality relations 
 play a dual role in
Nuprl
  in that they can be used to express type membership relations
as well as equality relations within a type.
Since each type comes with such a relation, and since
 is a sensible relation only if a and b are
members of A, it is possible to express the idea that a
belongs to A by saying that 
 is true.
In fact, in Nuprl
  the form 
 is really shorthand for
.
The equality statement 
 has the curious property
that it is either true or nonsense.
If a has type A then 
 is true; otherwise, 
is not a sensible statement because 
 is sensible only if
a and b belong to A.
Another way to organize type theory is to use a
separate form of judgement  to say that a is in
a type, that is, to regard 
 as distinct from
.
That is the approach taken by Martin-Löf
 .
It is also possible to organize type theory without
built--in equalities at all except for the most
primitive kind.
We only need equality on some two--element type,
say a type of booleans, 
;
we could then define equality on int as a function from
int into 
The fact that each type comes equipped with equality
complicates an understanding of the rules,
as we see when we look at functions.
If we define a function 
 then
we expect that if 
 then
.
This is a key property of functions, that they respect
equality. 
In order to guarantee this property there are a host of rules of the form that if part of an expression is replaced by an equal part then the results are equal. For example, the following are rules.