As just said, we will prove the result assuming first that
Z
=
{
p
0
}
is a singleton set. In this case consider the set
˜
A
=
{
c
+
f
:
c
∈
R
, f
∈ A}
.
It is immediate that
˜
A
is an algebra and, since (for example) the constant function 1 is in it, it satisfies the nonvanishing
property. It also separates points. By the Stone Weierstrass Theorem it is dense in
C
(
X
); in other words, given
² >
0,
f
∈
C
(
X
), there exists
c
∈
R
,
g
∈ A
such that

f
(
p
)

(
c
+
g
(
p
))

< ²/
2 for all
p
∈
X
. If
f
(
p
0
) = 0, then letting
p
=
p
0
in

f
(
p
)

(
c
+
g
(
p
))

< ²/
2 we get

c

< ²/
2. Thus

f
(
p
)

g
(
p
)
 ≤ 
f
(
p
)

(
c
+
g
(
p
))

+

c

<
²
2
+
²
2
=
²
for all
p
∈
X
. The case
Z
=
{
p
0
}
is done.
For the general case, we have to be a bit more devious.
We can start with a result which can either be seen as
a consequence of what we just did, or proved using the same idea we used here from Weierstrass’ Approximation
Theorem.
Theorem 1
(Weierstrass2) Let
f
∈
C
([
a, b
])
, where
∞
< a <
0
< b <
∞
and assume
f
(0) = 0
. For every
² >
0
there exists a polynomial
p
with 0 constant term such that

f
(
x
)

p
(
x
)

< ²
for all
x
∈
[
a, b
]
.
Proof.
Proof #1.
Let
² >
0 be given. By the Theorem of Weierstrass there exists a polynomial
q
,
q
(
x
) =
a
0
+
a
1
x
+
· · ·
+
a
n
x
n
, such that

f
(
x
)

q
(
x
)

< ²/
2 for all
x
∈
[
a, b
]. Evaluating at 0 we get

a
0

< ²/
2. Letting
p
(
x
) =
a
1
x
+
· · ·
+
a
n
x
n
,
we have that

f
(
x
)

p
(
x
)

=

f
(
x
)

p
(
x
)

a
0
+
a
0

=

f
(
x
)

q
(
x
) +
a
0
 ≤ 
f
(
x
)

q
(
x
)

+

a
0

<
²
2
+
²
2
=
².
Proof #2.
The set
P
=
{
p
:
p
is a polynomial and
p
(0) = 0
}
satisfies properties (a)(d) above with
Z
=
{
0
}
. The result is now immediate from the
Z
= singleton set case.
Assume now
A
is a subalgebra of
C
(
X
) (Properties (a), (b) above hold), the set
Z
=
∩{
f

1
(
{
0
}
) :
f
∈ A} 6
=
∅
,
and
p
∈
X
\
Z
,
q
∈
X
,
p
6
=
q
implies there exists
f
∈ A
such that
f
(
p
)
6
=
f
(
q
). (Properties (c), (d)). Incidentally, if
p /
∈
Z
, there is
f
∈
sA
such that
f
(
p
)
6
= 0; this
f
automatically separates
p
from all points of
Z
. Property (d) could as
well have been stated as: If
p, q
∈
X
\
Z
,
p
6
=
q
, then there exists
f
∈ A
such that
f
(
p
)
6
=
f
(
q
).
We will imitate the proof of Stone’s Theorem. We denote by
¯
A
the closure of
A
in the norm metric.
•
Step 1. If
p, q
∈
X
\
Z
,
p
6
=
q
, then for every
a, b
∈
R
there exists
f
∈ A
such that
f
(
p
) =
a
,
f
(
q
) =
b
.
If
p
∈
X
\
Z
, for every
a
∈
R
there exists
f
∈ A
such that
f
(
p
) =
a
.
The second statement is immediate from the definition of
Z
. If
p /
∈
Z
, there exists
g
∈ A
such that
g
(
p
)
6
= 0, then
f
= (
a/g
(
p
))
g
∈ A
and
f
(
p
) =
a
. The first statement can be proved exactly as in the proof of Stone Weierstrass.
First of all,there is
g
∈ A
such that
g
(
p
)
6
= 0
6
=
g
(
q
). In fact, by the definition of
Z
, there exist
g
1
, g
2
∈ A
such
that
g
1
(
p
)
6
= 0
6
=
g
2
(
q
); then
g
=
g
2
1
+
g
2
2
∈
sA
and foots the bill. Because
A
separates points not in
Z
, there exists
h
∈ A
such that
h
(
p
)
6
=
h
(
q
). Then
det
g
(
p
)
g
(
p
)
h
(
p
)
g
(
q
)
g
(
q
)
h
(
q
)
¶
=
g
(
p
)
g
(
q
)(
h
(
q
)

h
(
p
))
6
= 0
,
3