In 1987, Gerhard Gierz produced another example of a compact semilattice without small semilattices [1]. It is a bit simpler than Jimmie Lawson’s counterexample, and it has an additional feature: it embeds into the Hilbert cube [0, 1]** ^{N}**, the product of a countably infinite number of copies of [0, 1], with its usual Hausdorff topology (although we will not say why here).

The fact that Gierz’s counterexample embeds into the Hilbert cube may seem paradoxical, as Lawson’s theorem (see Theorem D there) states that any compact semilattice that embeds into a power [0, 1]* ^{A}*, for any set

*A*, must have small semilattices, right? Of course, there is a subtle point: any compact semilattice that embeds into [0, 1]

^{A}*as a topological semilattice*will have small semilattices. But Gierz’s counterexample will only embed

*as a topological space*. That is, the embedding will be a topological embedding, but it will

*not*map sums to sums.

In any case, let us proceed to the example. This is built in four steps.

## Step 1: The compact semilattice ([0, 1]^{N}, ⊓) and the functions *f*_{n} and *f* : [0, 1]^{N} → [0, 1]

^{N}

_{n}

^{N}

We start from the Hilbert cube [0, 1]** ^{N}** itself, and we equip with the ⊓ operation (pointwise min). Gierz uses the pointwise max operation instead. Using mins will make step 2 slightly more complicated, but using maxes would force us to adjust our minds constantly later on, forcing us to juggle with min operations which are really maxes, or to deal with

**1**being a zero and

**0**being a one.

By Lawson’s theorem (see Theorem D there), ([0, 1]** ^{N}**, ⊓) is a compact lattice with small semilattices. We use the notation

**(in boldface font, for lack of an overhang arrow) to denote elements of [0, 1]**

*x***, that is, sequences of elements of [0, 1]. For each such sequence**

^{N}**, we will write**

*x**x*(no boldface, but a subscript) to denote its element at position

_{n}*n*.

For every number *n*≥1, we define a function *f _{n}* : [0, 1]

**→ [0, 1], by:**

^{N}*f _{n}*(

**) ≝ 1 – log (1+**

*x**n*–

*x*

_{0}–…–

*x*

_{n}_{–1})/log (1+

*n*),

where log is natural logarithm. In order to fix ideas, *f _{n}*(

**) is equal to**

*x**g*(

_{n}

*x**), where*

_{n}

*x**is the average of the first*

_{n}*n*entries of the tuple

**, and**

*x**g*is the function mapping

_{n}*t*∈ [0, 1] to 1–log(1+

*n*–

*nt*)/log(1+

*n*) (also in [0, 1]); those functions

*g*are depicted in the graph below, for

_{n}*n*=1, 2, 3, 4, 5, 6, 10, 20, 100 from top to bottom.

The functions *f _{n}* are continuous, and monotonic with respect to the pointwise ordering on [0, 1]

**; if you prefer, they are perfect maps from ([0, 1]**

^{N}_{σ})

^{N}to [0, 1]

_{σ}. They map any sequence that starts with

*n*zeroes to 0, and any sequence that starts with

*n*ones to 1.

Lawson’s counterexample also used some funny trickery with logarithms (see Fact (i) there, where we need to observe that for *k* large enough, log_{2}log_{2} (1+*k*) + ε > log_{2} log_{2} (1+2*k*)). Here we need to observe that *f _{n}* is almost a semilattice homomorphism, and looks more and more like one as

*n*tends to infinity. In other words, the following inequalities hold.

**Fact A.** min (*f _{n}*(

**),**

*x**f*(

_{n}**)) – log 2/log (**

*y**n*+1) ≤

*f*(

_{n}**⊓**

*x***) ≤ min (**

*y**f*(

_{n}**),**

*x**f*(

_{n}**)),**

*y*for all

**,**

*x***in [0, 1]**

*y***.**

^{N}*Proof.* The second inequality *f _{n}*(

**⊓**

*x***) ≤ min (**

*y**f*(

_{n}**),**

*x**f*(

_{n}**)) is because**

*y**f*is monotonic in its argument (not in

_{n}*n*, mind you). The first inequality is more interesting. The proof below is unfortunately slightly more complex than Gierz’s, because of our choice of staying with pointwise mins: Gierz uses maxes instead, and his definition of

*f*is slightly simpler as a consequence.

_{n}Without loss of generality, we may assume that *x*_{0}+…+*x _{n}*

_{–1}≤

*y*

_{0}+…+

*y*

_{n}_{–1}, so

*f*(

_{n}**) ≤**

*x**f*(

_{n}**), and we need to show that**

*y**f*(

_{n}**) – log 2/log (**

*x**n*+1) ≤

*f*(

_{n}**⊓**

*x***). Let**

*y***≝**

*z***⊓**

*x***, so that**

*y**z*= min (

_{k}*x*,

_{k}*y*) for every index

_{k}*k*.

- We use the fact that, for any two numbers
*a*and*b*in [0, 1], max(*a*,*b*) ≤*a*+*b*. - Hence also 1–min(
*a*,*b*) = max(1–*a*, 1–*b*) ≤ (1–*a*)+(1–*b*). - It follows that 1+
*n*–*z*_{0}–…–*z*_{n}_{–1}= 1+(1–*z*_{0})+…+(1–*z*_{n}_{–1}) ≤ 1+(1–*x*_{0})+(1–*y*_{0})+…+(1–*x*_{n–1})+(1–*y*_{n–1}). - Remembering that
*x*_{0}+…+*x*_{n}_{–1}≤*y*_{0}+…+*y*_{n}_{–1}, this entails that 1+*n*–*z*_{0}–…–*z*_{n}_{–1}≤ 1+2(1–*x*_{0})+…+2(1–*x*_{n–1}), and the latter is less than or equal to 2+2(1–*x*_{0})+…+2(1–*x*_{n–1}) = 2(1+*n*–*x*_{0}–…–*x*_{n}_{–1}). - Therefore log (1+
*n*–*z*_{0}–…–*z*_{n}_{–1}) ≤ log 2 + log (1+*n*–*x*_{0}–…–*x*_{n}_{–1}), so log (1+*n*–*z*_{0}–…–*z*_{n}_{–1})/log (1+*n*) ≤ log 2/log (1+*n*) + log (1+*n*–*x*_{0}–…–*x*_{n}_{–1})/log (1+*n*), from which the desired inequality follows. ☐

Now we define:

*f*(** x**) ≝ inf

_{n}_{≥1}

*f*(

_{n}**).**

*x*At this point, we might think that Fact A would imply that *f* is a semilattice homomorphism, but that would be wrong. The wrong (but natural) proof consists in taking the infima on all terms of the inequalities in Fact A. Then inf_{n}_{ ∈ N} (min (*f _{n}*(

**),**

*x**f*(

_{n}**)) – log 2/log (**

*y**n*+1)) ≤ inf

_{n}_{ ∈ N}

*f*(

_{n}**⊓**

*x***) =**

*y**f*(

**⊓**

*x***) ≤ inf**

*y*

_{n}_{ ∈ N}min (

*f*(

_{n}**),**

*x**f*(

_{n}**)), and since log 2/log (**

*y**n*+1) tends to 0 as

*n*tends to infinity, and since infs and mins commute, the leftmost term and the rightmost term would both be equal to

*f*(

**⊓**

*x***). There is some truth in that argument: infs and mins commute, so the rightmost term inf**

*y*

_{n}_{ ∈ N}min (

*f*(

_{n}**),**

*x**f*(

_{n}**)) is indeed equal to min (**

*y**f*(

**),**

*x**f*(

**)), but the mistake lies in believing that inf**

*y*

_{n}_{ ∈ N}(min (

*f*(

_{n}**),**

*x**f*(

_{n}**)) – log 2/log (**

*y**n*+1)) would be equal to inf

_{n}_{ ∈ N}(min (

*f*(

_{n}**),**

*x**f*(

_{n}**)): yes, infs behave like limits… but only for monotonic or antitonic sequences, and**

*y**f*(

_{n}**),**

*x**f*(

_{n}**), or their min, is not monotonic or antitonic in general.**

*y***Fact B.** For all ** x**,

**in [0, 1]**

*y***,**

^{N}*f*(

**⊓**

*x***) ≤ min (**

*y**f*(

**),**

*x**f*(

**)) but equality fails in general.**

*y**Proof.* We have just shown *f*(** x** ⊓

**) ≤ min (**

*y**f*(

**),**

*x**f*(

**)); alternatively, this follows from the fact that**

*y**f*is a pointwise inf of monotonic functions, hence is itself monotonic. We now exhibit an example of two elements

**,**

*x***in [0, 1]**

*y***such that**

^{N}*f*(

**⊓**

*x***) < min (**

*y**f*(

**),**

*x**f*(

**)). Let**

*y**a*be any number such that 0<

*a*<1; while the argument can be made to work for any such

*a*, we will actually fix

*a*to 1/2 later on. Let:

be (*x**a*, 1, 1, …) , starting with*a*, and then all the other entries are equal to 1;be (1,*y**a*, 1, 1, …): a one, an*a*, and then only ones.

For every *m*≥1, *f _{m}*(

**) = 1–log(1+**

*x**m*–

*a*–(

*m*–1))/log(1+

*m*) = 1–log(2–

*a*)/log(1+

*m*); this grows as

*m*grows, so the least value of that when

*m*varies with

*m*≥1 is obtained with

*m*=1, hence

*f*(

**)=1–log(2–**

*x**a*)/log 2.

For every *m*≥2 (not *m*≥1), *f _{m}*(

**) = 1–log(1+**

*y**m*–1–

*a*–(

*m*–2))/log(1+

*m*) = 1–log(2–

*a*)/log(1+

*m*), and when

*m*=1, we have

*f*(

_{m}**) = 1–log(1+**

*y**m*–1)/log(1+

*m*) = 1. Hence, as

*m*enumerates the natural numbers starting from 1, the values of

*f*(

_{m}**) start at 1, then drop to**

*y**f*

_{2}(

**) = 1–log(2–**

*y**a*)/log 3, and then increase all the way to their limit, which is 1. The least of all those values, which is

*f*(

**) by definition, is therefore equal to 1–log(2–**

*y**a*)/log 3.

Now log 3>log 2>0, so log(2–*a*)/log 2 > log(2-*a*)/log 3, so *f*(** x**)=1–log(2–

*a*)/log 2 is strictly smaller than

*f*(

**)=1–log(2–**

*y**a*)/log 3. Hence min (

*f*(

**),**

*x**f*(

**)) =**

*y**f*(

**) = 1–log(2–**

*x**a*)/log 2.

The infimum ** x** ⊓

**is (**

*y**a*,

*a*, 1, 1, …). For every

*m*≥2,

*f*(

_{m}**⊓**

*x***) = 1–log(1+**

*y**m*–

*a*–

*a*–(

*m*–2))/log(1+

*m*) = 1–log(3–2

*a*)/log(1+

*m*), and this grows as

*m*grows; while for

*m*=1,

*f*(

_{m}**⊓**

*x***) = 1–log(1+**

*y**m*–

*a*)/log(1+

*m*) = 1–log(2–

*a*)/log 2.

Plotting 1–log(2–*a*)/log 2 and 1–log(3–2*a*)/log 3 as functions of *a* in ]0, 1[ should convince you that 1–log(2–*a*)/log 2 > 1–log(3–2*a*)/log 3 for each such *a*. But we only need a counterexample, and for that we choose, say, *a* ≝ 1/2. Then 1–log(2–*a*)/log 2 ≈ 0.415037, while 1–log(3–2*a*)/log 3 ≈ 0.36907, so 1–log(2–*a*)/log 2 > 1–log(3–2*a*)/log 3 — for *a*=1/2.

With that value of *a*, then *f _{m}*(

**⊓**

*x***) starts out at 1–log(2–**

*y**a*)/log 2 ≈ 0.415037, then decreases to 1–log(3–2

*a*)/log 3 ≈ 0.36907, and then goes up, tending to 1 as

*m*tends to infinity. Taking the least of those values leads to the fact that

*f*(

**⊓**

*x***) = 1–log(3–2**

*y**a*)/log 3. But this is strictly less than 1–log(2–

*a*)/log 2, which we had shown was the value of min (

*f*(

**),**

*x**f*(

**)). ☐**

*y*So *f* is a *not* a semilattice homomorphism. It is *not* continuous either. Here is a counterexample. By the way, the elements * u_{n}* and

**1**introduced below will be used again later.

**Fact C.** The function *f* is *not* continuous from [0, 1]** ^{N}** to [0, 1] (with their Hausdorff topologies). Explicitly, let:

≝ (1, …, 1, 0, 0, …), with**u**_{n}*n*ones at the beginning, and then only zeroes;**1**be the constant 1 sequence.

Then * u_{n}* tends to

**1**in [0, 1]

**as**

^{N}*n*tends to infinity, but

*f*(

*)=0 for every*

**u**_{n}*n*∈

**N**, and

*f*(

**1**)=1.

*Proof.* For every *m*>*n*, *f _{m}*(

*) = 1 – log (1+*

**u**_{n}*m*–

*n*)/log(1+

*m*), which tends to 0 as

*m*tends to infinity, so

*f*(

*)=0. For every*

**u**_{n}*m*≥1,

*f*(

_{m}**1**) = 1 – log(1+

*m*–

*m*)/log(1+

*m*) = 1, so

*f*(

**1**)=1. ☐

However, *f* and the functions *f _{n}* have the following property, which will be crucial in Step 3 below, and follows from Fact A.

**Fact D.** For all *a*<*b* in [0, 1], there is a number *n*_{0}≥1 such that for all ** x**,

**∈ [0, 1]**

*y***such that**

^{N}*b*≤ min (

*f*(

**),**

*x**f*(

**)), then**

*y**a*<

*f*(

_{n}**⊓**

*x***) for every**

*y**n*≥

*n*

_{0}.

*Proof.* Let us pick *n*_{0} so large that log 2/log (*n*_{0}+1)<*b*–*a*. Let us assume that *b* ≤ min (*f*(** x**),

*f*(

**)). By Fact A, min (**

*y**f*(

_{n}**),**

*x**f*(

_{n}**)) – log 2/log (**

*y**n*+1) ≤

*f*(

_{n}**⊓**

*x***), so for every**

*y**n*≥

*n*

_{0},

*b*≤ min (

*f*(

**),**

*x**f*(

**)) ≤ min (**

*y**f*(

_{n}**),**

*x**f*(

_{n}**)) <**

*y**f*(

_{n}**⊓**

*x***) + (**

*y**b*–

*a*), hence

*a*<

*f*(

_{n}**⊓**

*x***). ☐**

*y*## Step 2: The compact semilattice (*S*, +)

We build the space *S* of those pairs (** x**,

*r*) in [0, 1]

**× [0, 1] such that**

^{N}*f*(

**)≥**

*x**r*.

As a set, *S* is the intersection of the sets *S _{n}* ≝ {(

**,**

*x**r*) in [0, 1]

**× [0, 1] |**

^{N}*f*(

_{n}**)≥**

*x**r*},

*n*≥1. Since

*f*is continuous and the graph of ≥ is closed in the product of [0, 1] with itself ([0, 1], with its Hausdorff topology and its usual ordering, is a compact pospace),

_{n}*S*is closed in [0, 1]

_{n}**× [0, 1] (in its Hausdorff topology). Therefore the intersection of all the sets**

^{N}*S*, which is

_{n}*S*, is also closed. Being closed in a compact Hausdorff space, it is compact Hausdorff.

We define an operation + on *S* by:

(* x*,

*r*) + (

**,**

*y**s*) ≝ (

**⊓**

*x***, min (**

*y**r*,

*s*,

*f*(

**⊓**

*x***))).**

*y*Note that the right-hand side is in *S*. Indeed, *f*(** x** ⊓

**) ≥ min (**

*y**r*,

*s*,

*f*(

**⊓**

*x***)).**

*y***Lemma E.** (*S*, +) is a compact semilattice.

*Proof.* We know that *S* is compact Hausdorff. The + operation is commutative. We have (* x*,

*r*) + (

**,**

*x**r*) ≝ (

**, min (**

*x**r*,

*r*,

*f*(

**))) = (**

*x***,**

*x**r*) because

*f*(

**)≥**

*x**r*, by definition of

*S*, so + is idempotent. Associativity is slightly tricker. We have ((

*,*

**x***r*) + (

**,**

*y**s*)) + (

**,**

*z**t*) = (

**⊓**

*x***, min (**

*y**r*,

*s*,

*f*(

**⊓**

*x***))) + (**

*y***,**

*z**t*) = ((

**⊓**

*x***) ⊓**

*y***, min (min (**

*z**r*,

*s*,

*f*(

**⊓**

*x***)),**

*y**t*,

*f*((

**⊓**

*x***) ⊓**

*y***)))). We simplify the latter to (**

*z***⊓**

*x***⊓**

*y***, min (**

*z**r*,

*s*,

*f*(

**⊓**

*x***),**

*y**t*,

*f*(

**⊓**

*x***⊓**

*y***)))). Since**

*z**f*is monotonic,

*f*(

**⊓**

*x***⊓**

*y***) ≤**

*z**f*(

**⊓**

*x***), so we can simplify even more to (**

*y***⊓**

*x***⊓**

*y***, min (**

*z**r*,

*s*,

*t*,

*f*(

**⊓**

*x***⊓**

*y***)))). We obtain the same formula for (**

*z**,*

**x***r*) + ((

**,**

*y**s*) + (

**,**

*z**t*)).

It remains to show that + is continuous. Since ⊓ is continuous, it suffices to show that the map *g* : ((* x*,

*r*), (

**,**

*y**s*)) ↦ min (

*r*,

*s*,

*f*(

**⊓**

*x***)) is continuous from**

*y**S*to [0, 1]. That may seem totally unlikely, since

*f*is not continuous (Fact C), but Fact D will come to our rescue. As Gierz points out, this comes from Proposition VI-4.2 in the red book [2], but we will redo the proof by hand in order to understand what is happening here. We will show that

*g*

^{–1}(]

*c*, 1]) and

*g*

^{–1}([0,

*c*[) are both open, for every

*c*∈ [0, 1], and thus

*g*will be continuous.

*Claim: g ^{–1}(]c, 1]) is open.* Let us first imagine that

*g*((

*,*

**x***r*), (

**,**

*y**s*)) >

*c*, and let us find an open neighborhood

*W*of ((

*,*

**x***r*), (

**,**

*y**s*)) which is mapped to ]

*c*, 1] by

*g*. We pick two numbers

*an*and

*b*such that

*c*<

*a*<

*b*<

*g*((

*,*

**x***r*), (

**,**

*y**s*)). Using Fact D, we find

*n*

_{0}≥1 such that for all

**,**

*u***∈ [0, 1]**

*v***such that**

^{N}*b*≤ min (

*f*(

**),**

*u**f*(

**)), then**

*v**a*<

*f*(

_{n}**⊓**

*u***) for every**

*v**n*≥

*n*

_{0}. We note that

*a*<

*f*(

_{n}**⊓**

*x***) for every**

*y**n*≥1, since

*a*<

*g*((

*,*

**x***r*), (

**,**

*y**s*)) = min (

*r*,

*s*,

*f*(

**⊓**

*x***)) ≤**

*y**f*(

**⊓**

*x***) <**

*y**f*(

_{n}**⊓**

*x***). Since ⊓ and**

*y**f*are continuous, there is an open rectangle

_{n}*U*×

_{n}*V*containing (

_{n}**,**

*x***) and mapped by**

*y**f*(_ ⊓ _) to ]

_{n}*a*, 1].

The desired open neighborhood *W* is the product of (∩_{n=1}^{n}_{0} *U _{n}* × ]

*b*, 1]) ∩

*S*with (∩

_{n=1}

^{n}_{0}

*V*× ]

_{n}*b*, 1]) ∩

*S*. Note that this open because we are taking

*finite*intersections of open sets

*U*, resp.

_{n}*V*. Let us check that ((

_{n}*,*

**x***r*), (

**,**

*y**s*)) belongs to

*W*and that

*W*is mapped to ]

*a*, 1] by

*g*:

- ((
,**x***r*), (,*y**s*)) is in*U*: indeed,*g*((,**x***r*), (,*y**s*)) = min (*r*,*s*,*f*(⊓*x*)) >*y**b*, so*r*,*s*>*b*; andis in every**x***U*(even not just for_{n}*n*<*n*_{0}), andis in every*y**V*, by construction._{n} - For every pair ((
,**u***r’*), (,*v**s’*)) in*U*, we have*r’*,*s’*>*b*and also∈*u**U*and_{n}∈*v**V*for every_{n}*n*with 1≤*n*<*n*_{0}, by definition of*U*. Hence*f*(_{n}⊓*u*) >*v**a*for every*n*with 1≤*n*<*n*_{0}. The same inequality holds for every*n*≥*n*_{0}because of our choice of*n*_{0}, using Fact D. Takings infima over all*n*≥1, we obtain that*f*(⊓*u*) ≥*v**a*>*c*. We have*r’*,*s’*>*b*>*a*>*c*, so*g*((,**u***r’*), (,*v**s’*)) = min (*r’*,*s’*,*f*(⊓*u*)) >*v**c*.

*Claim: g ^{–1}([0, c[) is open.* Next, let us imagine that

*g*((

*,*

**x***r*), (

**,**

*y**s*)) <

*c*, and let us find an open neighborhood

*W*of ((

*,*

**x***r*), (

**,**

*y**s*)) which is mapped to [0,

*c*[ by

*g*. This is much easier. Since

*g*((

*,*

**x***r*), (

**,**

*y**s*)) = min (

*r*,

*s*,

*f*(

**⊓**

*x***)) <**

*y**c*, we have

*r*<

*c*or

*s*<

*c*or

*f*(

**⊓**

*x***) <**

*y**c*. If

*r*<

*c*, then the product of ([0, 1]

**× ]**

^{N}*c*, 1]) ∩

*S*by

*S*is an open neighborhood of ((

*,*

**x***r*), (

**,**

*y**s*)) that is mapped by

*g*to [0,

*c*[. If

*s*<

*c*, then we choose the product of

*S*by ([0, 1]

**× ]**

^{N}*c*, 1]) ∩

*S*for

*W*instead. Finally, if

*f*(

**⊓**

*x***) <**

*y**c*, then there is a number

*n*≥1 such that

*f*(

_{n}**⊓**

*x***) <**

*y**c*. (Beware: the sequence

*f*is not monotonic or antitonic in general, so that does not imply that a similar inequality would hold for every larger

_{n}*n*as well. But this will not matter.) Since ⊓ and

*f*are continuous, there is an open rectangle

_{n}*U*×

_{n}*V*containing (

_{n}**,**

*x***) and mapped by**

*y**f*(_ ⊓ _) to [0,

_{n}*c*[. We then define

*W*as the product of (

*U*× [0, 1]) ∩

_{n}*S*with (

*V*× [0, 1]) ∩

_{n}*S*. This is an open neighborhood of ((

*,*

**x***r*), (

**,**

*y**s*)), and for every pair ((

*,*

**u***r’*), (

**,**

*v**s’*)) in

*W*, we have

*f*(

_{n}**⊓**

*u***) <**

*v**c*, hence

*f*(

**⊓**

*u***) <**

*v**c*, by definition of

*f*as an inf, and therefore

*g*((

*,*

**u***r’*), (

**,**

*v**s’*)) = min (

*r’*,

*s’*,

*f*(

**⊓**

*u***)) <**

*v**c*. ☐

## Step 3: A funny thing happens to interval homomorphisms on (*S*, +)

Some strange things start to occur with the following observation. Let us recall that *I* is the compact semilattice ([0, 1], min) (and it has small semilattices). Let **1** be the constant 1 sequence. We have *f*(**1**)=1, so (**1**, *r*) is in *S* for every *r* ∈ [0, 1].

**Proposition F.** For every continuous semilattice homomorphism φ from *S* to *I*, φ(**1**, 0) = φ(**1**, 1).

*Proof.* As with every semilattice, the operation + induces an ordering on *S*, defined by (** x**,

*r*) ⊑ (

**,**

*y**s*) if and only if (

**,**

*x**r*) = (

**,**

*x**r*) + (

**,**

*y**s*), for which + is binary infimum, and then any semilattice homomorphism preserves infima, hence is monotonic. Now if

*r*≤

*s*(and

*r*,

*s*≤

*f*(

**)), then (**

*x***,**

*x**r*) + (

**,**

*x**s*) = (

**, min (**

*x**r*,

*s*,

*f*(

**))) = (**

*x***,**

*x**r*), so (

**,**

*x**r*) ⊑ (

**,**

*x**s*), and therefore φ(

**,**

*x**r*) ≤ φ(

**,**

*x**s*). (Oh yes, the ordering associated with the min operation on

*I*is the usual ordering ≤.) In particular, φ(

**1**, 0) ≤ φ(

**1**, 1).

For the sake of contradiction, let us assume that φ(**1**, 0) < φ(**1**, 1). Let *a* be any real number such that φ(**1**, 0) < *a* < φ(**1**, 1). Then (**1**, 1) is in the open set φ^{–1}(]*a*, 1]), and (**1**, 0) is in the open set φ^{–1}([0, *a*[),. We will build several sequences of elements of *S*; some will tend to (**1**, 0), some others will tend to (**1**, 1).

- Our first sequence of elements
is built as follows. Let**x**_{n}be the element (1, …, 1, 0, 1, …) in [0, 1]**e**_{n}, with its unique 0 at position^{N}*n*. For every natural number*m*,*f*(_{m}) = 1 – log (1+**e**_{n}*m*–*m*)/log (1+*m*) = 1 if*m*≤*n*and*f*(_{m}) = 1 – log (1+**e**_{n}*m*–*m*+1)/log (1+*m*) = 1 – log 2/log (1+*m*) if*m*>*n*, and taking infima over all*m*≥1 yields that*f*() = 1 – log 2/log (2+**e**_{n}*n*). Hence (, 1 – log 2/log (2+**e**_{n}*n*)) is in*S*for every natural number*n*. We let≝ (**x**_{n}, 1 – log 2/log (2+**e**_{n}*n*)). - As
*n*tends to infinity,tends to (**x**_{n}**1**, 1), so φ() >**x**_{n}*a*for*n*large enough. In other words, there is a natural number*n*_{0}such that φ() >**x**_{n}*a*for every*n*≥*n*_{0}. - Let us fix some
*n*≥*n*_{0}(here and in the next item), and let us look at+…+**x**_{n}**x**_{n}_{+}, for any natural number_{k}*k*. Since φ is a semilattice homomorphism, it maps sums to mins, so φ(+…+**x**_{n}**x**_{n}_{+}) = min (φ(_{k}), …, φ(**x**_{n}**x**_{n}_{+})) >_{k}*a*, where the latter inequality is because*n*,*n*+1, …,*n*+*k*are all larger than or equal to*n*_{0}, and using the previous item. - Explicitly,
+…+**x**_{n}**x**_{n}_{+}= (_{k}⊓ … ⊓**e**_{n}**e**_{n}_{+},_{k}*r*), where_{nk}*r*is a min of various values. As_{nk}*k*tends to infinity,⊓ … ⊓**e**_{n}**e**_{n}_{+}tends to the sequence_{k}≝ (1, …, 1, 0, 0, …), with**u**_{n}*n*ones at the beginning, and then only zeroes. Therefore+…+**x**_{n}**x**_{n}_{+}tends to (_{k},**u**_{n}*r*) for some value_{n}*r*≤_{n}*f*(). Since**u**_{n}*f*is continuous,*f*(⊓ … ⊓**e**_{n}**e**_{n}_{+}) tends to_{k}*f*() as**u**_{n}*k*tends to infinity. But, for every*m*>*n*,*f*(_{m}) = 1 – log (1+**u**_{n}*m*–*n*)/log(1+*m*), which tends to 0 as*m*tends to infinity, so*f*()=0, and hence,**u**_{n}*r*=0. To sum up, we have obtained that, as_{n}*k*tends to infinity,+…+**x**_{n}**x**_{n}_{+}tends to (_{k}, 0). Since φ(**u**_{n}+…+**x**_{n}**x**_{n}_{+}) >_{k}*a*for every*k*, as we have seen in the previous item, we have φ(, 0) ≥**u**_{n}*a*. - However, as
*n*tends to infinity, (, 0) tends to (**u**_{n}**1**, 0), so φ(, 0) <**u**_{n}*a*for*n*large enough (remember that (**1**, 0) is in the open set φ^{–1}([0,*a*[)), which is impossible. ☐

We arrive at the fourth and final step. Proposition F is the key, and it remains to build an appropriate quotient of *S*, which will turn the funny result of Proposition F into something much more radical.

## Step 4: The Rees quotient (*S*/≡, +)

We define an equivalence relation ≡ on *S* by declaring that (* x*,

*r*) ≡ (

**,**

*y**s*) if and only if either (

*,*

**x***r*) = (

**,**

*y**s*) or

*r*=

*s*=0 (and

*and*

**x****are arbitrary). We build the quotient**

*y**S*/≡, with the quotient topology. Since

*S*/≡ is the image of a compact space by the quotient map, which is continuous,

*S*/≡ is compact.

We wish to show that *S*/≡ is Hausdorff, and that addition + on *S* induces a continuous semilattice operation on *S*/≡, by passing to equivalence classes. To this end, we note that *S*/≡ is what it known as the *Rees quotient* of the semigroup (*S*, +) by an ideal. (A *semigroup* is a set with an associative operation + on it, and we will define ideals below.) Explicitly, ≡ has only one non-trivial equivalence class: the equivalence class [0, 1]** ^{N}** × {0} of any point of the form (

*, 0); the equivalence class of any point (*

**x***,*

**x***r*) with

*r*≠0 consists just of (

*,*

**x***r*), and is therefore

*trivial*. The non-trivial equivalence class [0, 1]

**× {0} is an**

^{N}*ideal*, meaning that the sum of any element (

*, 0) of [0, 1]*

**x****× {0} with any other element (**

^{N}*,*

**y***s*) is in [0, 1]

**× {0}: in other words,(**

^{N}*, 0)+(*

**x***,*

**y***s*)=(

**⊓**

*x***, 0). Conversely, given any semigroup**

*y**G*and any ideal

*J*of

*G*, we may define an equivalence relation ≈ on

*G*by

*u*≈

*v*if and only if

*u*=

*v*or both

*u*and

*v*are in

*J*. The quotient

*G*/≈, usually written as

*G*/

*J*, is the

*Rees quotient*of

*G*by

*J*, by definition.

**Lemma G.** Let (*G*, +) be a semigroup, and *J* be an ideal of *G*. Let *q* : *G* → *G*/*J* be the quotient map. Then (*G*/*J*, +) is a semigroup where + is defined on *G*/*J* by *q*(*u*)+*q*(*v*) ≝ *q*(*u*+*v*).

If *G* is a semilattice, then so is *G*/*J*.

If *G* is a compact semigroup (namely if *G* is topologized in such a way that it is compact Hausdorff and + is jointly continuous) and *J* is closed in *G*, then *G*/*J* is a compact semigroup (with the quotient topology).

*Proof.* We first show that + is well-defined, namely that the definition of *q*(*u*)+*q*(*v*) does not depend on *u* (or *v*) in its equivalence class. This boils down to the verification that if *u*≈*u’* then *u*+*v*≈*u’*+*v*. If *u*=*u’*, this is clear. Otherwise, *u* and *u’* are both in *J*, and therefore *u*+*v* and *u’*+*v* are both in *J* as well, since *J* is an ideal; therefore *u*+*v*≈*u’*+*v*.

It is then clear that + is associative, commutative if *+* is commutative, and idempotent if + is idempotent. Then *G*/*J* is a semilattice if *G* is.

Let us now assume that *G* is a compact semigroup, and that *J* is closed in *G*. Note that *G* is compact Hausdorff, so *J* is in fact compact as well. *G*/*J* is the image of the compact space *G* by the continuous map *q*, hence is compact. We claim that *G*/*J* is Hausdorff. Let us consider any two distinct points *q*(*u*), *q*(*v*) in *G*/*J*.

- If both
*u*and*v*are outside*J*, then there is an open neighborhood*U*of*u*and an open neighborhood*V*of*v*in*G*that are disjoint. We can assume that neither*U*nor*V*intersects*J*, replacing them by*U*–*J*and*V*–*J*if necessary, respectively. This is possible because*J*is closed. Then*U*and*V*are ≈-saturated: given any element in*U*(resp.*V*), any element ≈-equivalent to it must also be in*U*(resp.*V*). Hence their images*q*[*U*] and*q*[*V*] by the quotient map*q*are open (see Proposition 4.10.20 in the book). Additionally,*q*[*U*] contains*q*(*u*),*q*[*V*] contains*q*(*v*), and they are disjoint, because*q*is injective outside*J*. - If
*u*is in*J*but*v*is not, then we use the fact that*G*, being compact Hausdorff, is T_{4}(Proposition 4.4.17 in the book) hence T_{3}(comment after Definition 4.1.22 in the book), so there is an open neighborhood*U*of*J*(not just of*u*) that is disjoint from some open neighborhood of*v*. Since*U*contains*J*,*U*is ≈-saturated, and*V*is ≈-saturated because it is disjoint from*J*. Hence*q*[*U*] and*q*[*V*] are open, and they must be disjoint. - The case where
*u*is not in*J*and*v*is is symmetric.

We finally wish to show that + is continuous, at any pair of points *q*(*u*), *q*(*v*). To this end, we consider any open neighborhood *W* of *q*(*u*)+*q*(*v*). Since + is (jointly) continuous and since *q* is continuous, there is an open neighborhood *U* of *u* and there is an open neighborhood *V* of *v* in *G* such that *U* × *V* ⊆ +^{–1}(*q*^{–1}(*W*)).

- If both
*u*and*v*are outside*J*, then we can assume that neither*U*nor*V*intersects*J*, replacing them by*U*–*J*and*V*–*J*if necessary, as in the proof that*G*/*J*is Hausdorff. Then*U*and*V*are ≈-saturated, so*q*[*U*] and*q*[*V*] are open, and then*q*[*U*] ×*q*[*V*] is an open neighborhood of the pair (*q*(*u*),*q*(*v*)) whose image under + is included in*W*. - If
*u*is in*J*, then we reason as follows. The sum*u*+*v*is in*J*, since*J*is an ideal. Therefore*W*contains*q*(*u*+*v*)=*q*[*J*], so*J*⊆*q*^{–1}(*W*), and hence*J*×*G*⊆ +^{–1}(*q*^{–1}(*W*)) (every sum of an element of*J*with an element of*G*is in*J*, since*J*is an ideal). An easy theorem due to Alexander Doniphan Wallace [3, Chapter II, Theorem 12] states that any product*K*_{1}×*K*_{2}of compact sets included in an open set*W*is included in a basic open set*U*×*V*included in*W*. (See the Appendix for a proof.) Here*J*is compact, being closed in the compact space*G*. Hence there is an open neighborhood*U*, not just of*u*, but in fact of the whole of*J*, and an open neighborhood*V*of*G*(yes, that must be*G*itself) such that*U*×*V*⊆ +^{–1}(*q*^{–1}(*W*)). Since*U*contains*J*,*U*is ≈-saturated.*V*=*G*is also ≈-saturated. Then*q*[*U*] ×*q*[*V*] is an open neighborhood of the pair (*q*(*u*),*q*(*v*)) and its image under + is included in*W*. - The case is similar if
*v*is in*J*. ☐

As a consequence of Lemma G (with Lemma E, saying that (*S*, +) is a compact semilattice, and using the fact that *J* ≝ [0, 1]** ^{N}** × {0} is clearly closed in

*S*), (

*S*/≡, +) is a compact semilattice.

Now let us assume a continuous semilattice homomorphism ψ from *S*/≡ to *I*. Then φ ≝ ψ o *q* (where *q* is the quotient map) is continuous, and is a semilattice homomorphism: φ(*u*+*v*) = ψ(*q*(*u*+*v*))=ψ(*q*(*u*)+*q*(*v*))=min(ψ(*q*(*u*))*,* ψ(*q*(*v*)))=min(φ(*u*), φ(*v*)). We have the following.

- In a Rees quotient, the unique non-trivial equivalence class
*J*is a zero (an absorbing element): adding it to anything gives you back zero. Explicitly, if*u*is in*J*, then*u*+*v*is in*J*for every element*v*, so*q*(*u*)+*q*(*v*) =*q*(*u*) =*q*[*J*]; equivalently,*q*[*J*] =*q*[*J*]+*v*. In the case of*S*/≡,*J*= [0, 1]× {0}, and taking^{N}*u*≝ (**1**, 0), we obtain that φ(**1**, 0) = ψ(*q*(**1**, 0)) = ψ(*q*[*J*]). Since ψ is a semilattice homomorphism, ψ(*q*[*J*]) = ψ(*q*[*J*]+*q*(*v*)) = min (ψ(*q*[*J*]), ψ(*q*(*v*))) for every*v*in*S*, so φ(**1**, 0) = min (φ(**1**, 0), φ(*v*)). In other words, φ(**1**, 0) ≤ φ(*v*), for every*v*in*S*. - The element (
**1**, 1) is a unit: adding it to any*v*gives you back*v*. Indeed, for every (,*y**s*) in*S*, (**1**, 1)+(,*y**s*) = (**1**⊓, min (1,*y**s*,*f*(**1**⊓))) = (*y*, min (1,*y**s*,*f*())) = (*y*,*y**s*), using the fact that*s*≤*f*(), by definition of*y**S*. Since φ is a semilattice homomorphism, min (φ(**1**, 1), φ(*v*)) = φ((**1**, 1) +*v*) = φ(*v*). Namely, φ(*v*) ≤ φ(**1**, 1), and this for every*v*in*S*. - By Proposition F, φ(
**1**, 0) = φ(**1**, 1). It follows from the previous two items that φ(*v*) = φ(**1**, 0) = φ(**1**, 1) for every*v*in*S*. Hence φ is constant, and therefore so is ψ.

In particular, (*S*/≡, +) certainly does not have enough interval homomorphisms. Its only interval homomorphisms are constant, and cannot separate *any* pair of points. By Theorem D, we conclude:

**Theorem (Gierz).** (*S*/≡, +) is a compact semilattice that does not have small semilattices. More precisely, all its interval homomorphisms are constant.

## Conclusion

Additionally, Gierz shows that *S*/≡ is homeomorphic to the Hilbert cube [0, 1]** ^{N}**. We will skip that part. This involves, first, showing that

*S*is homeomorphic to an infinite dimensional convex subset of the Hilbert cube. That is not hard. By a theorem due to O. H. Keller,

*S*is then homeomorphic to the Hilbert cube itself, and then the homeomorphism equates the non-trivial equivalence class

*J*= [0, 1]

**× {0} with a face of the Hilbert cube, from which it follows that**

^{N}*S*/≡ is itself homeomorphic to the Hilbert cube. That would require us to explain many more things here, and we will simply not do so.

- Gerhard Gierz. A compact semilattice on the Hilbert cube with no interval homomorphism. Proceedings of the American Mathematical Society 101(4):592–594, 1987.
- Gerhard Gierz, Karl Heinrich Hofmann, Klaus Keimel, Jimmie D. Lawson, Michael W. Mislove, and Dana S. Scott. Continuous Lattices and Domains. Number 93 in Encyclopedia of Mathematics and its Applications. Cambridge University Press, Cambridge, 2003.
- John Leroy Kelley. General Topology. University Series in Higher Mathematics. Princeton, New Jersey, Toronto, New York London: D. Van Nostrand company, 1955.

— Jean Goubault-Larrecq and Zhenchao Lyu (November 20th, 2023)

## Appendix A: Wallace’s theorem

**Fact (Wallace’s theorem).** Given two compact subsets *K*_{1}, *K*_{2} of a topological space *X*, and an open neighborhood *W* of *K*_{1} × *K*_{2} in *X* × *X* (with the product topology), there is an open rectangle *U* × *V* included in *W* that contains *K*_{1} × *K*_{2}.

*Proof.* We start by fixing *x* ∈ *K*_{1}. For every *y* ∈ *K*_{2}, there is an open rectangle *U _{xy}* ×

*V*containing (

_{xy}*x*,

*y*) and included in

*W*. In particular, the sets

*V*cover

_{xy}*K*

_{2}as

*y*varies over

*K*

_{2}. Since

*K*

_{2}is compact, there is a finite subset

*E*of

*K*

_{2}such that

*K*

_{2}⊆ ∪

_{y∈E}

*V*. We let

_{xy}*U*≝ ∩

_{x}_{y∈E}

*U*. This is an open neighborhood of

_{xy}*x*, since

*E*is finite. We let

*V*≝ ∪

_{x}_{y∈E}

*V*. Every point of

_{xy}*U*×

_{x}*V*is in

_{x}*U*×

_{x}*V*for some

_{xy}*y*∈

*E*, hence in

*U*×

_{xy}*V*, hence in

_{xy}*W*. We have show that

*U*×

_{x}*V*is included in

_{x}*W*.

The sets *U _{x}* form an open cover of

*K*

_{1}as

*x*varies over

*K*

_{1}. Hence there is a finite subset

*E*of

*K*

_{1}such that

*K*

_{1}⊆ ∪

_{x∈E}

*U*. Let

_{x}*U*≝ ∪

_{x∈E}

*U*and

_{x}*V*≝ ∩

_{x∈E}

*V*, and let us note that

_{x}*V*is open, since

*E*is finite. Since every

*V*contains

_{x}*K*

_{2},

*V*contains

*K*

_{2}, and therefore

*U*×

*V*contains

*K*

_{1}×

*K*

_{2}. Finally,

*U*×

*V*is a union of sets

*U*×

_{x}*V*, each one is included in

*U*×

_{x}*V*, which is included in

_{x}*W*, as we have seen in the previous paragraph. Therefore

*U*×

*V*is included in

*W*, too. ☐