Itaï Ben

STAR SORTS, LELEK FANS, AND THE RECONSTRUCTION OF NON-ℵ 0 -CATEGORICAL THEORIES IN CONTINUOUS LOGIC

Keywords: 2020 Mathematics Subject Classification. 03C15, 03C95, 03C30 continuous logic, theory, interpretation, bi-interpretation, sort, groupoid, reconstruction

We prove a reconstruction theorem valid for arbitrary theories in continuous (or classical) logic in a countable language, that is to say that we provide a complete bi-interpretation invariant for such theories, taking the form of an open Polish topological groupoid.

More explicitly, for every such theory T we construct a groupoid G * (T) that only depends on the bi-interpretation class of T, and conversely, we reconstruct from G * (T) a theory that is bi-interpretable with T. The basis of G * (T) (namely, the set of objects, when viewed as a category) is always homeomorphic to the Lelek fan.

We break the construction of the invariant into two steps. In the second step we construct a groupoid from any sort of codes for models, while in the first step such a sort is constructed. This allows us to place our result in a common framework with previously established ones, which only differ by their different choice of sort of codes.

INTRODUCTION

This paper deals with what we have come to refer to as reconstruction theorems. By this we mean a procedure that associates to a theory T (possibly under some hypotheses) a topological group-like object that is a complete bi-interpretation invariant for T. In other words, if T ′ is bi-interpretable with T, then we associate to it the same object (up to an appropriate notion of isomorphism), and conversely, the isomorphism class of this object determines the bi-interpretation class of T.

The best-known result of this kind is due to Coquand, and appears in Albrandt & Ziegler [START_REF] Gisela | Quasi-finitely axiomatizable totally categorical theories[END_REF]. It states that if T is an ℵ 0 -categorical theory (in a countable language), then the topological group G(T) = Aut(M), where M is the unique countable model, is such an invariant. This was originally proved for theories in classical (Boolean-valued) logic, and subsequently extended by Kaïchouh and the author [START_REF] Itaï | Reconstruction of separably categorical metric structures[END_REF] to continuous (real-valued) logic.

In [START_REF]Reconstruction of non-ℵ 0 -categorical theories[END_REF] we proposed a reconstruction result that also covers some non-ℵ 0 -categorical theories, using a topological groupoid (rather than a group) as invariant. The result was presented in two times, first for classical logic and then for the more general continuous logic. This was not done for the sake of presentation (do the more familiar case first), but because of a fundamental difference between the two cases. In classical logic, we have a straightforward construction of a sort of "codes of models" (more about this later). In continuous logic, on the other hand, no such construction exists in general, and we were reduced to assuming that such a sort (satisfying appropriate axioms) existed, and was given to us. Worse still, we gave an example of a theory for which no such sort existed, and consequently, for which our reconstruction theorem was inapplicable.

In the present paper we seek to remedy this deficiency, proposing a reconstruction theorem that holds for all theories (in a countable language). This time, we work exclusively in continuous logic, keeping in mind that this contains classical logic as a special case.

In Section 1 we provide a few reminders regarding continuous logic in general, and interpretable sorts in particular. We (re-)define the notions of interpretation and bi-interpretation, in a manner that is particularly appropriate for the use we shall make of them, and that avoids the rather tedious notions of interpretation schemes.

In Section 2 we discuss various ways in which one sort E can be "coded" in another sort D, both uniform (e.g., E is interpretable in D) and non-uniform (e.g., each a ∈ E is in the definable closure of some b ∈ D). We define a coding sort D as a sort which codes models. Every sort is coded in a coding sort in a non-uniform fashion, and therefore in a uniform fashion as well.

In Section 3 we associate to a coding sort D a topological groupoid G D (T), from which a theory T 2D , biinterpretable with T, can be recovered. In particular, G D (T) determines the bi-interpretation class of T. If, in addition, D only depends on the bi-interpretation class of T, then so does G D (T), in which case it is a complete bi-interpretation invariant. We point out, rather briefly, how previous reconstruction theorems fit in this general setting.

In Section 4 and Section 5 we define star spaces and star sorts. These, by their very nature, require us to work in continuous (rather than classical) logic. In particular, we define a notion of a universal star sort, and show that if it exists, then it is unique up to definable bijection, and only depends on the bi-interpretation class of T.

In Section 6 we use the star sort formalism to give a construction that is analogous to, though not a direct generalisation of, the construction of the coding sort for classical theories in [START_REF]Reconstruction of non-ℵ 0 -categorical theories[END_REF]. We then prove that the resulting sort is a universal star sort, so one always exists. Moreover, the construction is independent of the theory: we simply construct, for any countable language L, a star sort D * that is universal in any L-theory, complete or incomplete.

We conclude in Section 7, showing that the universal star sort must be a coding sort, whence our most general reconstruction theorem: in a countable language, the groupoid G D * (T) is a complete bi-interpretation invariant for T. We also show that the type-space of the sort D * , relative to any complete theory T, is the Lelek fan L. Finally, in case T does fall into one of the cases covered by previous results, we show that our last result can be viewed as some kind of generalisation. More precisely, using the Lelek fan, we can recover the coding sort D * , and therefore the corresponding groupoid G D * (T), from those given by the earlier results.

SORTS AND INTERPRETATIONS

As said in the introduction, we are going to work exclusively in continuous first order logic, and assume that the reader is familiar with it. For a general exposition, see [START_REF] Itaï | Continuous first order logic and local stability[END_REF][START_REF] Itaï | Model theory for metric structures, Model theory with applications to algebra and analysis[END_REF]. We allow formulas to take truth values in arbitrary compact subsets of R, so connectives are arbitrary continuous functions from R n to R. For a countable family of connectives, it will suffice to take all rational constants, addition and multiplication, to which we add the absolute value operation. Closing these under composition yields a (countable) family of functions that is dense among all continuous functions on each compact subset of R n . Notation 1.1. Using the absolute value operation we may define maximum and minimum directly (i.e., without passing to a limit). We shall use infix notation ∨ and ∧ for those. We shall also write t -. s for the truncated subtraction (ts) ∨ 0.

We allow the language to be many-sorted. Some of the time we also require the language to be countable, which means in particular that the set of sorts is countable, although this will not be a requirement for the present section.

We are going to talk quite a bit about sorts and interpretations, so let us begin with a few reminders. By a sort we mean an interpretable sort in the sense of continuous logic, as discussed, for example, in [START_REF] Itaï | Reconstruction of separably categorical metric structures[END_REF][START_REF]Reconstruction of non-ℵ 0 -categorical theories[END_REF]. Sorts are obtained by closing the family of basic sorts (namely, sorts named in the language) by • adding the constant sort {0, 1} (so it is always implicitly interpretable),

• countable product, • quotient by a definable pseudo-distance (in a model that is not saturated, this may also require a passage to the completion), and • non-empty definable subset. We follow the convention that natural numbers are coded by sets n = {0, . . . , n -1} ∈ N, so {0, 1} may sometimes be denoted by 2 (this is especially true of its powers: the Cantor space is 2 N ).

Throughout, by definable we mean definable by a formula, without parameters (unless parameters are given explicitly). Any function {0, 1} → R is a formula on the sort {0, 1}. Formulas on a finite product of sorts are constructed in the usual way, using function and predicate symbols, connectives and quantifiers, and closing the lot under uniform limits. In particular, if ϕ i (x) are formulas on a sort D for i < 2 n , then ϕ(i, x) = ϕ i (x) is a formula on 2 n × D. Formulas on an infinite product of sorts consist of all formulas on finite sub-products (extended to the whole product through the addition of dummy variables), as well as all uniform limits of such (where the sub-products through which they factor may vary). If d is a definable pseudo-distance on a sort D (defined by a formula on D × D), then formulas on the quotient (D, d) are formulas on D that are uniformly continuous with respect to d. Similarly, for formulas on a product of several quotient sorts.

Finally, we recall that a definable subset of a sort D is a subset E ⊆ D, the distance to which is definable (this is significantly more involved than the notion of a definable subset in classical logic). Equivalently, if for every formula ϕ(x, y), where x is a variable in D and y is a tuple of variables in arbitrary sorts, the predicate sup x∈E ϕ(x, y) is definable by a formula ψ(y). Formulas on a product of definable subsets of sorts are restrictions of formulas on the corresponding product of ambient sorts.

Notice that every compact metric space is a quotient space of 2 N by a continuous pseudo-distance, and therefore a sort, on which the formulas are the continuous functions. Conversely, we could have chosen any non-trivial compact metric space as a basic constant sort in place of {0, 1} (the other obvious candidate being [0, 1]), and realise {0, 1} as any two-point set therein.

Remark 1.2. An obvious, yet crucial remark, is that if ϕ(x, y) is an arbitrary formula on E × D, then

d ϕ (y, y ′ ) = sup x∈E |ϕ(x, y) -ϕ(x, y ′ )|
defines a pseudo-distance on D. In addition, if D = E, and ϕ happens to define a pseudo-distance on D, then it agrees with d ϕ .

This has numerous useful consequences, let us state two of them explicitly. First of all, one may be bothered by the fact that a formula ϕ(x, y) defining a pseudo-distance on a sort D may depend on the structure(s) under consideration. However, we may restrict the "quotient by a pseudo-distance" step to pseudo-distances of the form d ϕ , that always define pseudo-distances, without any loss of generality.

A second consequence is that if E ⊆ D are two sorts, then every definable pseudo-distance d on E extends to one on D. Indeed, extend it first in an arbitrary fashion to a formula ϕ(x, y) on E × D. Then d ϕ is a pseudodistance on D, and it agrees with d on E. Remark 1.3. A formula ψ(x) defining the distance to a subset is another property that depends on the structure under consideration, or on its theory. However, we do not know a general construction of definable sets from arbitrary formulas, analogous to that of Remark 1.2, and have good reason to believe that none such exists.

In other words, as far as we know, the set of interpretable sorts depends in a non-trivial way on the theory. This makes it all the more noteworthy that our construction of the universal star sort as D * Φ can be carried out in a manner that depends only on the language, and not on the theory.

A definable map between two sorts σ : D → E is one whose graph is the zero-set of some formula. Composing a formula with a definable map yields another formula. A special case of such a composition is the formula d σ(x), y , on the product D × E, whose zero-set is indeed the graph of σ. Every formula is uniformly continuous in its arguments, and d σ(x), y is no exception. It follows that every definable map σ : D → E is uniformly continuous.

Two sorts that admit a definable bijection are, for most intents and purposes (in particular, for those of the present paper) one and the same. Moreover, every sort is in definable bijection with one obtained from the basic sorts by applying each of the operations once, in the given order, so we may pretend that every sort is indeed of this form. Similarly, we may say that a sort D (which may be a basic sort, or one that has already been obtained through some interpretation procedure) is interpretable in a family of sorts (E i ) if we can construct from this family (E i ) a sort D ′ that admits a definable bijection with D.

Consider two languages L ⊆ L ′ , where L ′ is allowed to add not only symbols, but also sorts. If M ′ is an L ′ -structure, and M is the L-structure obtained by dropping the sorts and symbols not present in L, then M is the L-reduct of M ′ and M ′ is an L ′ -expansion of M. If T ′ is an L ′ -theory and T is the collection of L-sentences in T ′ , then T is also the theory of all L-reducts of models of T ′ (notice, however, that an arbitrary model of T need only admit an elementary extension that is a reduct of a model of T ′ ). In this situation we say that T is the L-reduct of T ′ and that T ′ is an L ′ -expansion of T.

One special case of an expansion is a definitional expansion, in which L and L ′ have the same sorts, and each new symbol of L ′ admits an L-definition in T ′ . In this case, T ′ is entirely determined by T together with these definitions. A more general case is that of an interpretational expansion of T, where T ′ identifies each new sort of L ′ with an interpretable sort of T, and gives L-definitions to all new symbols in L ′ (for this to work we also require L ′ to contain, in particular, those new symbols that allow T ′ to identify the new sorts with the corresponding interpretable ones). Again, T, together with the list of interpretations of the new sorts and definitions of the new symbols, determine T ′ . Moreover, unlike the general situation described in the previous paragraph, here every model of T expands to a model of T ′ . Definition 1.4. Let T and T ′ be two theories, say in disjoint languages. We say that T ′ is interpretable in T if T ′ is a reduct of an interpretational expansion of T. The two theories are bi-interpretable if they admit a common interpretational expansion (which is stronger than just each being interpretable in the other).

A theory has the same sorts (up to a natural identification) as an interpretational expansions. Therefore, somewhat informally, we may say that two theories are bi-interpretable if and only if they have the same sorts.

Let us consider a few more possible constructions of sorts that will become useful at later stages, and show that they can be reduced to the basic construction steps that we allow.

Lemma 1.5. Let D 0 π 0 և D 1 π 1 և • • •
be an inverse system of sorts with surjective definable maps π n : D n+1 ։ D n . Then the inverse limit D = lim ← -D n ⊆ ∏ D n is again a sort, which we may equip with the distance

d(x, y) = ∑ n 2 -n ∧ d(x n , y n ) (1)
(or with the restriction of any other definable distance on ∏ D n ).

Proof. Indeed, D is the zero-set in ∏ D n of the formula

ϕ(x) = ∑ n 2 -n ∧ d x n , π n (x n+1 ) .
Let ε > 0, and choose N ∈ N large enough depending on ε, and δ > 0 small enough depending on both. Let a ∈ ∏ D n , and assume that ϕ(a) < δ. Since the maps are surjective, there exists b ∈ D such that b N = a N . This determines b n for all n ≤ N, and having chosen δ small enough, we have d(a n , b n ) as small as desired for all n ≤ N. Having chosen N large enough, this yields

d(a, D) ≤ d(a, b) < ε.
In other words, we have found a formula ϕ(x) that vanishes on D, such that satisfies ϕ(x) < δ = δ(ε) implies ϕ(x, D) < ε. This implies that D is a definable subset (see [START_REF] Itaï | Model theory for metric structures, Model theory with applications to algebra and analysis[END_REF]).

Proposition 1.6. Assume that (D n ) is a sequence of sorts, equipped with isometric definable embeddings D n ֒→ D n+1 . For convenience, let us pretend these embeddings are the identity map, so

D 0 ⊆ D 1 ⊆ • • • ⊆ D n ⊆ • • • is a chain.
Assume moreover that the sequence is Cauchy in the Hausdorff distance. In other words, assume that if n is large enough and n ≤ m, then

d H (D n , D m ) = sup x∈D m inf y∈D n d(x, y)
is as small as desired.

Then the completion E = D k is a sort (with definable isometric embedding D n ⊆ E). If ϕ(x, y) is a formula on E × F, for some sort (or product of sorts) F, and ϕ n is its restriction to D n × F, then (ϕ n ) is an equicontinuous compatible family (by compatible, we mean that each ϕ n is the restriction of ϕ n+1 ). Conversely, every such family arises from a unique formula on E × F.

Proof. Assume first that we have a large ambient sort E 1 and compatible isometric embeddings

D n ⊆ E 1 . Since each D n is a sort, the distance d(x, D n ) = inf y∈D n d(x, y) is definable in E 1 .
By hypothesis, these formulas converge uniformly, and their limit is d(x, E). Then E is a definable subset of E 1 , and therefore a sort.

In the general case, we are going to construct E 1 as a quotient of E 0 = ∏ D n , whose members we may view as sequences in E. We may freely pass to a sub-sequence, and assume that d

H (D n , D n+1 ) < 2 -n-1 . Say that a ∈ E 0 converges quickly if d(a n , a m ) ≤ 2 -n + 2 -m , or equivalently, if d(a n , b) ≤ 2 -n
where a n → b in E. By our hypothesis regarding the rate of convergence of (D n ), every b ∈ E is the limit of a quickly converging sequence.

Recall the forced limit construction from [START_REF] Itaï | Continuous first order logic and local stability[END_REF]. Formally, it consists of a continuous function lim F : R N → R, which is monotone, 1-Lipschitz in the supremum norm on R N , and most importantly, if t n → s fast enough, say |t n -s| ≤ 2 -n , then lim F (t n : n ∈ N) = s. We render the expression lim F (t n : n ∈ N) as lim F n→∞ t n , considering it a limit construct. Since lim F is continuous, we may apply it to formulas.

Let us fix n, and define on D n × E 0 a formula

ρ n (x, y) = lim F m→∞ d(x, y m ). If b ∈ E 0 converges quickly to c ∈ E, then ρ n (a, b) = d(a,
d ρ n (b, c) = sup x∈D n |ρ(x, b) -ρ(x, c)| = sup x∈D n |d(x, a) -ρ(x, c)| = ρ(a, c), so d ρ (b, c) = ρ(a, c) = ρ k (a, c).
If follows that the class of b in E 1 only depends on a. Moreover, the map σ k : D k → E 1 , that sends a to the class of any b ∈ E 0 that converges quickly to a, is definable, by

d ρ σ k (x), y = ρ k (x, y).
If b, b ′ ∈ E 0 both converge quickly to a, a ′ ∈ D k , respectively, then the same reasoning as above yields

d ρ n (b, b ′ ) = d(a, a ′ ) for every n ≥ k, and therefore d ρ (b, b ′ ) = d(a, a ′ ). Therefore, σ k : D k → E 1 is
an isometric embedding for each k. Since the ρ k are restrictions of one another, these embeddings are compatible, and we have successfully reduced to the special case treated in the beginning of the proof.

Regarding formulas, the only thing we need to prove is that any compatible equicontinuous family of formulas ϕ n (x, y) on D n × F, is the restriction of a formula on E × F. Notice that our hypotheses imply that the formula ϕ n are uniformly bounded, say |ϕ n | ≤ M. We may now construct an inverse modulus of continuity, namely a continuous function [BU10]; since the family is equicontinuous, we can do this simultaneously for all ϕ n ). Define on E × F formulas

∆ -1 : (0, ∞) → (0, ∞) such that |ϕ n (x, y) -ϕ n (x ′ , y)| ≤ ∆ -1 • d(x, x ′ ) (see
ψ n (x, y) = inf x ′ ∈D n ϕ n (x ′ , y) + ∆ -1 • d(x, x ′ ) .
Then ψ n agrees with ϕ n on D n × F, and equicontinuity together with the convergence of (D n ) in d H implies that (ψ n ) converge uniformly to a formula ψ(x, y) on E × F, that must extend each ϕ n , as claimed.

It was pointed out by James Hanson that our Proposition 1.6 already appeared in his Ph.D. thesis [Han20, Proposition 3.4.8]. Similarly, in [Han20, Remark 3.5.7] he asserts (without proof) something that, to the extent that we understand it (terminology and notation being somewhat non-standard), is related to our Proposition 2.1.

CODING SORTS IN OTHER SORTS

If a and b are two elements in sorts E and D in some structure (model of T), then a is definable from b, or lies in the definable closure of b, in symbols a ∈ dcl(b), if a is the unique realisation of tp(a/b) in that structure, as well as in any elementary extension. This implies, and indeed, is equivalent to, the predicate d(x, a) being definable with b as parameter, say by a formula ϕ(x, b) (see [START_REF] Itaï | Definability of groups in ℵ 0 -stable metric structures[END_REF]).

Let us consider two sorts D and E. In what sense(s) can E be coded in D? A fairly uniform fashion for this to happen is if E is interpretable in D, i.e., if it embeds definably in a quotient of D N , or, at the very worst, D N × 2 N . This would imply a non-uniform version: for every a ∈ E there exists b ∈ D N such that that a ∈ dcl(b). In fact, the converse implication holds as well -this follows fairly easily from Proposition 2.1 below, together with the presentation of D n as a subset of a quotient of ∏ D n .

In any case, we want to explore a stronger condition of "non-uniform coding", by singletons in D.

Proposition 2.1. Let E and D be sorts of a theory T. Assume that for every a ∈ E (in a model of T) there exists b ∈ D (possibly in an elementary extension) such that a ∈ dcl(b). Then E can be embedded in a limit sort of the form D n , as per Proposition 1.6, where each D n is a quotient of D × 2 N .

Proof. Consider a type p ∈ S E (T), so p = tp(a) for some a ∈ E in a model of T. We may assume that b ∈ D in the same model is such that a ∈ dcl(b), as witnessed by d(x, a) = ϕ p (x, b).

Let (with ε > 0)

ψ p (x, y) = sup x ′ |d(x, x ′ ) -ϕ p (x ′ , y)|, χ p,ε (y) = 1 -. inf x ψ p (x, y)/ε -. 1 .
The formula ψ p (x, y) measures the extent to which ϕ p (x ′ , y) fails to give us the distance to x. The formula χ p,ε (y) tells us whether x ′ → ϕ p (x ′ , y) is close to being the distance to some x ∈ E: χ p,ε (y) = 1 if y codes some x quite well (error less than ε), vanishes if y does not code anything well enough (error at least 2ε), and in all cases its value lies in [0, 1]. Of course, ψ p (a, b) = 0, so inf y ψ p (x, y) < ε defines an open neighbourhood of p.

Let us fix ε > 0 and let p vary. Then the conditions inf y ψ p (x, y) < ε define an open covering of S E (T). By compactness, there exists a family (p i : i < n) such that for every q ∈ S E (T), inf y ψ p i (q, y) < ε for at least one i < n. Repeating this, with smaller and smaller ε, we may construct a sequence of types (p n ), as well as ε n → 0 such that for every n 0 , the open conditions inf y ψ p n (x, y) < ε n for n ≥ n 0 cover S E (T).

Let n ∈ N. We may view n = {0, . . . , n -1} as a quotient of 2 N , and similarly for [0

, 1]. Therefore, D × n × [0, 1] is a quotient of D × 2 N . For (x, y, k, t) ∈ E × D × n × [0, 1], define ρ n (x, y, k, t) = t • χ p k ,ε k (y) • ϕ p k (x, y).
This is indeed a formula, giving rise to a pseudo-distance on D × n × [0, 1]:

d ρ n (y, k, t, y ′ , k ′ , t ′ ) = sup x∈E |ρ n (x, y, k, t) -ρ n (x, y ′ , k ′ , t ′ )|.
In fact, we may drop n and just write ρ and d ρ : the only role played by n is being greater than k.

Let D n be the quotient

D × n × [0, 1], d ρ (which is, in turn, a quotient of D × 2 N ). The inclusion D × n × [0, 1] ⊆ D × (n + 1) × [0, 1] induces an isometric embedding D n ֒→ D n+1
. Therefore, in order to show that the hypotheses of Proposition 1.6 are satisfied, all we need to show is that for n ≤ m large enough, every member of D m is close to some member of D n .

Let ε > 0 be given. Find n 0 such that ε n < ε for n ≥ n 0 . Then, by compactness, find

n 1 > n 0 such that inf y ψ p n (x, y) < ε n for n 0 ≤ n < n 1 cover S E (T). Assume now that n 1 ≤ m, and let [b, k, t] be some class in D m . If k < n 1 , then [b, k, t] ∈ D n 1 . If inf x ψ p k (x, b) ≥ 2ε k , then ρ n (x, b, k, t) = 0 regardless of x, so [b, k, t] = [b, 0, 0] ∈ D n 1 .
We may therefore assume that n 1 ≤ k < m and there exists a ∈ E such that

ψ p k (a, b) < 2ε k .
By our hypothesis regarding the covering of S E (T), there exists

n 0 ≤ ℓ < n 1 such that inf y ψ p ℓ (a, y) < ε ℓ . Let c ∈ D be such that ψ p ℓ (a, c) < ε ℓ , and let s = t • χ p k ,ε k (b). Then inf x ψ p ℓ (x, c) < ε ℓ , χ p ℓ ,ε ℓ (c) = 1, ρ(x, c, ℓ, s) = s • ϕ p ℓ (x, c), so d ρ (b, k, t, c, ℓ, s) = s • sup x ϕ p k (x, b) -ϕ p ℓ (x, c) ≤ sup x ϕ p k (x, b) -d(x, a) + sup x d(x, a) -ϕ p ℓ (x, c) = ψ p k (a, b) + ψ p ℓ (a, c) < 2ε k + ε ℓ < 3ε. Then [c, ℓ, s] ∈ D n 1 is close enough to [b, k, t]. By Proposition 1.6, a limit sort F = D n exists.
Now let us embed E ֒→ F. We have already constructed a family (ρ n ) of formulas on E × D n , let us write them as ρ n (x, z). Each is 1-Lipschitz in z by definition of the distance on D n , and they are compatible, so they extend to a formula ρ(x, z) on E × F.

Consider a ∈ E, and let ε > 0. As above, there exists ℓ such that ε ℓ < ε, and

c ∈ D such that ψ p ℓ (a, c) < ε ℓ . Let a ′ = [c, ℓ, 1] ∈ D ℓ+1 ⊆ F. Again, as above, χ p ℓ ,ε ℓ (c) = 1, so ρ(x, a ′ ) = ϕ p ℓ (x, c), and sup x |d(x, a) -ρ(x, a ′ )| = sup x |d(x, a) -ϕ p ℓ (x, c)| = ψ p ℓ (a, c) < ε ℓ < ε.
Doing this with ε → 0 we obtain a sequence (a n ) in F such that ρ(x, a n ) converges uniformly to d(x, a). By definition of the distance on F as d ρ , this sequence is Cauchy, with limit ã ∈ F, say, and ρ(x, ã) = d(x, a). In particular, for z ∈ F,

d(z, ã) = sup x |ρ(x, z) -ρ(x, ã)| = sup x |ρ(x, z) -d(x, a)|, so a → ã is definable. By the same reasoning, if a, a ′ ∈ E, then d( ã, ã′ ) = sup x |ρ(x, ã) -ρ(x, ã′ )| = sup x |d(x, a) -d(x, a ′ )| = d(a, a ′ ),
so the embedding is isometric, completing the proof.

Remark 2.2. A closer inspection of the proof can yield a necessary and sufficient condition (but we shall not use this): A sort E can be embedded in a limit sort of the form D n , where each D n is a quotient of D × 2 N , if and only if, for every a ∈ E and ε > 0, there exists b ∈ D and a formula ϕ(x, b) that approximates d(x, a) with error at most ε.

In Proposition 2.1, we cannot replace D × 2 N with just D (if D is a singleton, then any increasing union of quotients of D is a singleton, and yet E = {0, 1} satisfies the hypothesis of Proposition 2.1). Instead, let us prove that this does not change much, in the sense that formulas on D × 2 N or on just D are almost the same thing.

Lemma 2.3. Let D and E be sorts, and let ϕ(x, t, y) be a formula on D × 2 N × E. Then ϕ can be expressed as a uniform limit of continuous combinations of formulas on D × E and on 2 N separately (where we recall that formulas on 2 N are just continuous functions 2 N → R).

Proof. For n ∈ N and k ∈ 2 n , let δ n,k (t) = 1 if t extends k, and 0 otherwise. Let also k ∈ 2 N be the extension of k by zeros, and

ϕ n,k (x, y) = ϕ(x, k, y).
Then ϕ n,k is a formula on D × E and δ n,k is a formula on 2 N , so we may define a formula

ϕ n (x, t, y) = ∑ k∈{0,1} n δ n,k (t)ϕ n,k (x, y). Since ϕ(x, t, y) is uniformly continuous in t, ϕ n → ϕ uniformly.
Definition 2.4. Let T be a theory, D a sort, and D 0 ⊆ D a definable subset (or even type-definable, namely, the zero-set of a formula). We say that D is a coding sort, with exceptional set D 0 , if the following holds:

(i) Coding models: if M T and a ∈ D(M) D 0 (M), then there exists N M such that dcl(a) = dcl(N).
We then say that a codes N.

(ii) Density: if M T is separable, then the set of a ∈ D(M) D 0 (M) that code M is dense in D(M).
We may denote a coding sort by D alone, considering D 0 as implicitly given together with D.

The need for an exceptional set will arise at a later stage -for the time being, we are simply going to ensure that its presence does not cause any trouble. Definition 2.5. Let T be a theory, say in a language L, and let D be a coding sort for T.

We define a single-sorted language L 2D to consist of a binary predicate symbol for each formula on D × D (possibly restricting this to a dense family of such formulas). We define T 2D as the L 2D -theory of D -namely, the theory of all D(M), viewed naturally as an L 2D -structure, where M varies over models of T.

Clearly, T 2D is interpretable from T. The 2 is there to remind us that only binary predicates on D are named in the language.

Our aim, in the end, is to recover from a groupoid the theory of some coding sort D, and show that is biinterpretable with T. In particular we need to recover the definable predicates on D from the groupoid. In [START_REF]Reconstruction of non-ℵ 0 -categorical theories[END_REF] we managed to recover predicates of all arities, at the price of some additional work. In the present paper we choose to follow a different path, recovering only binary predicates (i.e., only T 2D ), and instead show that these suffice. Proposition 2.6. Let T be a theory, say in a language L, and let D be a coding sort for T. Then T 2D is bi-interpretable with T.

Proof. Consider T ′ , obtained from T by adjoining D as a new sort, and naming the full induced structure. It is, by definition, an interpretational expansion of T, and it will suffice to show that it is also an interpretational expansion of T 2D .

By Lemma 2.3, every formula on

D × 2 N × D × 2 N is definable in T 2D .
In particular, every quotient of

D × 2 N is interpretable in T 2D , as is every embedding of one such quotient in another. Therefore, if (D n ) is an increasing chain of quotients of D × 2 N , that converges in the sense of Proposition 1.6, then E = D n is interpretable in T 2D .
Consider now a sort E of T. Every member of E belongs to a separable model of T and is therefore definable from a member of D. By Proposition 2.1, we may embed E in a sort Ẽ which is of the form D n , for appropriate quotients of D × 2 N , as in the previous paragraph. This presentation of E need not be unique, so let us just fix one such. Say E ′ is another sort of T, so E ′ ⊆ Ẽ′ = D ′ n as above. Any formula on Ẽ × Ẽ′ is, by Proposition 1.6, coded by a sequence of formulas on D n × D ′ n (its restrictions), i.e., by formulas on D × 2 N 2 . It is therefore definable in T 2D . In particular, the distance to (the copy of) E in Ẽ is definable in T 2D , so each sort E of T can be interpreted in T 2D (or at least, some isometric copy of E is interpretable). Similarly, every formula on E × E ′ , can be extended to a formula on Ẽ × Ẽ′ , so it is definable in T 2D (on the copies of E and E ′ ).

Consider now a finite product E = ∏ i<n E i of sorts of T. We have already chosen embeddings E ⊆ Ẽ and E i ⊆ Ẽi as above. The projection map π i : E → E i can be coded by a formula on E × E i , namely

Γ π i (x, y) = d E i (x i , y),
where Γ stands for "Graph". We have already observed that such a formula is definable in T 2D . It follows that the structure of E as a product of the E i is definable in T 2D . Finally, any formula on E 0 × • • • × E n-1 can be viewed as a unary formula on the product E, which is, again, definable in T 2D .

In conclusion, we can interpret every sort of T in T 2D , and recover the full structure on these sorts. In other words, T ′ is indeed an interpretational expansion of T 2D , completing the proof.

GROUPOID CONSTRUCTIONS AND RECONSTRUCTION STRATEGIES

In this section we propose a general framework for "reconstruction theorems". To any coding sort D (see Definition 2.4) we associate a topological groupoid G D (T) from which the theory T 2D of Proposition 2.6 can be reconstructed. Since T is bi-interpretable with T 2D , the groupoid G D (T) determines the bi-interpretation class of T. If the coding sort is moreover determined by the bi-interpretation class of T (up to definable bijection), then the groupoid is a bi-interpretation invariant. Various previously known constructions fit in this framework, as well as the one towards which aims the present paper.

For a general treatment of topological groupoids, we refer the reader to Mackenzie [START_REF] Kirill | Lie groupoids and Lie algebroids in differential geometry[END_REF], or, for the bare essentials we shall need here, to [START_REF]Reconstruction of non-ℵ 0 -categorical theories[END_REF]. We recall that a groupoid G is defined either as a small category in which all morphisms are invertible, or algebraically, as a single set (of all morphisms), equipped with a partial composition law and a total inversion map, satisfying appropriate axioms. When viewed as a category, the set of objects can be identified with the set of identity morphisms, and we call it the basis B of G. In the algebraic formalism, which we follow here, the basis is B = {e ∈ G : e 2 = e} ⊆ G. If g ∈ G, then s(g) = g -1 g and t(g) = gg -1 are both defined, and belong to B, being the source and target of g, respectively. The domain of the composition law is

dom(•) = (g, h) : s(g) = t(h) ⊆ G 2 .
A topological groupoid is a groupoid equipped with a topology in which the partial composition law and total inversion map are continuous. In a topological groupoid the source and target maps s, t : G → B are continuous as well, B is closed in G, and dom(

•) closed in G 2 . A topological groupoid G is open if, in addition, the composition law • : dom(•) → G is open, or equivalently, if the source map s : G → B (or target map t : G → B) is open.
A (topological) group is a (topological) groupoid whose basis is a singleton. Such a topological groupoid is always open. Definition 3.1. Let T be a theory in a countable language, and D a coding sort. We let S D×D (T) denote the space of types of pairs of elements of D. We define the following two subsets of S D×D (T):

G 0 D (T) = tp(a, a) : a ∈ D 0 , G D (T) = G 0 D (T) ∪ tp(a, b) : a, b ∈ D D 0 & dcl(a) = dcl(b)
, where a and b vary over all members of D (or D 0 ) in models of T. We equip G D (T) with the induced topology, as well as with the following inversion law and partial composition law:

tp(a, b) -1 = tp(b, a), tp(a, b) • tp(b, c) = tp(a, c).
We also write B D (T) for S D (T), and identify tp(a) ∈ B D (T) with tp(a, a) ∈ G D (T). This identifies B 0 D (T) = S D 0 (T) with G 0 D (T). Notice that the density hypothesis in Definition 2.4 implies that G D (T) is dense in S D×D (T). Proof. It is easy to check that G is a topological groupoid with basis B and the stated source and target. Since the language is countable, the space S D×D (T) is compact metrisable, and therefore Polish. It is left to show that the target map t :

G → B is open. First, consider g ∈ G G 0 ⊆ S D×D (T). Let [x ∈ D 0 ] ⊆ S D×D (T)
be the set of types p(x, y) that imply x ∈ D 0 , and similarly for y, observing that g

/ ∈ [x ∈ D 0 ] ∪ [y ∈ D 0 ]. Since this union is a closed set, g admits a basis of neighbourhoods in S D×D (T) that are disjoint from [x ∈ D 0 ] ∪ [y ∈ D 0 ]
. By Urysohn's Lemma and the identification of formulas with continuous functions on types, g admits a basis of neighbourhoods of the form ϕ(x, y) > 0 where ϕ(x, y) vanishes if x ∈ D 0 or y ∈ D 0 . The family of sets ϕ(x, y) > 0 ∩ G for such ϕ is a basis of neighbourhoods for g in G.

Assume we are given such a neighbourhood g

∈ U = ϕ(x, y) > 0 ∩ G (so ϕ(x, y) vanishes if x ∈ D 0 or y ∈ D 0 ). Let V = sup y ϕ(x, y) > 0 ⊆ S D (T) = B.
Then V is open, and clearly t(U) ⊆ V. Conversely, assume that tp(a) ∈ V, where a ∈ D(M) for some M T. Then there exists b ∈ D(M) such that ϕ(a, b) > 0. By hypothesis on ϕ, it follows that a, b / ∈ D 0 . In particular, a codes a separable N M, and we may assume that b ∈ D(N). Now, by the density property and the uniform continuity of ϕ, we may assume that b also codes N, so tp(a, b) ∈ U. This proves that t(U) = V. Now let g = tp(a, a) ∈ G 0 . We have a basis of neighbourhoods of g in G consisting of sets of the form

U = ϕ(x) > 0 ∩ d(x, y) < r ∩ G,
where ϕ(a) > 0. It is then easily checked that t(U) = ϕ(x) > 0 , since we may always take y = x as witness. This completes the proof.

Definition 3.4. Let G be a topological groupoid. Say that a function ϕ : G → R is uniformly continuous and continuous (UCC) if it is continuous on G, and in addition satisfies the following uniform continuity condition: for every ε > 0 there exists an open neighbourhood U of the basis B such that for every g ∈ G,

h ∈ UgU =⇒ |ϕ(g) -ϕ(h)| < ε
Notice that unlike the situation for groups, the uniform continuity condition does not imply continuity (it is very well possible that g n → h while h / ∈ Gg n G for any n).

Proposition 3.5. Assume that D is a coding sort for T, and let G = G D (T). Let ϕ(x, y) be a formula on D × D, and let ϕ G : G → R be the naturally induced function

g = tp(a, b) =⇒ ϕ G (g) = ϕ(a, b).
Then the map ϕ → ϕ G defines a bijection between formulas on D × D, up to equivalence, and UCC functions on G.

Proof. Let us first check that if ϕ is a formula, then ϕ G is UCC. It is clearly continuous. The uniform continuity condition follows from the fact that ϕ is uniformly continuous in each argument, together with the fact that for any δ > 0 we may take choose

U = d(x, y) < δ ∩ G.
Conversely, assume that ψ : G → R is UCC. By density, the function ψ admits at most one continuous extension to S D×D (T), and we need to show that one such exists. In other words, given p ∈ S D×D (T) and ε > 0, it will suffice to find a neighbourhood p ∈ V ⊆ S D×D (T) such that ψ varies by less than ε on V ∩ G. If p ∈ G this is easy, so we may assume that p / ∈ G. Let us fix ε > 0 first. By uniform continuity of ψ and Lemma 3.3(iii), there exists δ > 0 such that |ψ(g) -

ψ(ugv)| < ε whenever g ∈ G, u, v ∈ d(x, y) < δ ∩ G,
and ugv is defined.

Given p = tp(a 0 , b 0 ), we may assume that a 0 , b 0 ∈ D(M) for some separable model M. Since p / ∈ G, we must have a 0 = b 0 , and (possibly decreasing δ) we may assume that d(a 0 , b 0 ) > 2δ. By the density property, there exist

a 1 , b 1 ∈ D(M) that code M, with d(a 0 , a 1 ) + d(b 0 , b 1 ) < δ, so d(a 1 , b 1 ) > δ. Let g 1 = tp(a 1 , b 1 ) ∈ G.

By continuity, there exists an open neighbourhood g

1 ∈ V 1 ⊆ S D×D (T) such that |ψ(g 1 ) -ψ(h)| < ε for every h ∈ V 1 ∩ G. Possibly decreasing V 1 , we may further assume that tp(a, b) ∈ V 1 implies d(a, b) > δ We may even assume that V 1 is of the form [χ < δ], where χ(x, y) ≥ 0 is a formula and χ(a 1 , b 1 ) = χ(g 1 ) = 0. Define χ ′ (x, y) = inf x ′ ,y ′ d(x, x ′ ) + d(y, y ′ ) + ψ(x ′ , y ′ ) , V = χ ′ (x, y) < δ ⊆ S D×D (T). Then V is open, p ∈ V, and tp(a, b) ∈ V implies a = b (in other words, V ∩ B = ∅).
In order to conclude, consider any

g 2 = tp(a 2 , b 2 ) ∈ V ∩ G.
Since a 2 = b 2 , they cannot belong to the exceptional set, so both code some separable model N. By definition of V, there exist a 3 , b 3 ∈ D(N) such that χ(a 3 , b 3 ) + d(a 2 , a 3 ) + d(b 2 , b 3 ) < δ. By the density property, and uniform continuity of χ, we may assume that a 3 and b 3 code N as well. Let

g 3 = tp(a 3 , b 3 ), u = tp(a 3 , a 2 ), v = tp(b 2 , b 3 ). Then g 3 = ug 2 v ∈ V 1 , so |ψ(g 2 ) -ψ(g 1 )| ≤ |ψ(g 2 ) -ψ(g 3 )| + |ψ(g 3 ) -ψ(g 1 )| ≤ 2ε.
Therefore ψ varies by less than 4ε on V ∩ G, which is good enough. • ρ↾ B = 0, and • ρ(g) = ρ(g -1 ), and

• ρ(gh) ≤ ρ(g) + ρ(h), when defined. It is a norm if ρ(g) = 0 implies g ∈ B.
A norm ρ is compatible with a topology on G if it is continuous, and the sets {ρ < r} = g ∈ G : ρ(g) < r , for r > 0, form a basis of neighbourhoods for B.

Corollary 3.8. The correspondence of Proposition 3.5 restricts to a one-to-one correspondence between definable distances d on D and compatible norms on G = G D (T).

Proof. Let d be a definable distance on D × D and ρ d the corresponding UCC function on G. Then ρ d is clearly a continuous norm, and it is a compatible norm by Lemma 3.3(iii).

The converse is more delicate. Let ρ be a compatible norm. Then it is continuous, and it is easy to see that every continuous semi-norm is UCC, so ρ = ϕ G (in the notations of Proposition 3.5) for some formula ϕ(x, y). If a, b, c ∈ D all code the same separable model, then ϕ(a, a) = 0 and ϕ(a, b) ≤ ϕ(a, c) + ϕ(b, c). The set of types of such triplets is dense in S D×D×D (T), by the density property, so the same holds throughout and ϕ defines a pseudo-distance.

It is left to show that ϕ defines a distance (and not merely a pseudo-distance). Let d be any definable distance on D, say the one distinguished in the language. We already know that ρ d is a compatible norm. Therefore, for every ε > 0 there exists δ > 0 such that {ρ < δ} ⊆ {ρ d < ε}. As in the previous paragraph, this means that the (closed) condition ϕ(a, b) < δ =⇒ d(a, b) ≤ ε holds on a dense set of types, and therefore throughout. In particular, if ϕ(a, b) = 0, then a = b, and the proof is complete.

Let T be a theory, D a coding sort for T, and G = G D (T). Then from G, given as a topological groupoid, we can essentially recover the language L D and the theory T 2D , as follows.

(i) We choose, arbitrarily, a compatible norm ρ on G (which exists, by Corollary 3.8).

(ii) We let L G consists of a single sort, also named D, together with a binary predicate symbol P ψ for each UCC function ψ on G. We know that ψ is bounded (Corollary 3.6), and we impose the same bound on P ψ . We also know that for every ε > 0 there exists a neighbourhood U of B such that h ∈ UgU implies |ψ(g)ψ(h)| < ε, and since ρ is compatible, there exists δ = δ ψ (ε) > 0 such that the same holds when U = {ρ < δ}. We then impose the corresponding modulus of uniform continuity on P ψ , namely, requiring that

d(x, x ′ ) ∨ d(y, y ′ ) < δ ψ (ε) =⇒ |P ψ (x, y) -P ψ (x ′ , y ′ )| ≤ ε.
We also use the bound on ρ as bound on the distance predicate. (iii) Let us fix e ∈ B, and consider the set

eG = {g ∈ G : t g = e}.
If g, h ∈ eG, then g -1 h is defined, and for any UCC ψ we let:

P ψ (g, h) = ψ(g -1 h).
In particular, d(g, h) = P ρ (g, h) = ρ(g -1 h) is a distance function on eG.

Assume now that g ′ , h ′ ∈ eG as well, and

d(g, g ′ ) ∨ d(h, h ′ ) < δ = δ ψ (ε). Let u = g ′-1 g and v = h -1 h ′ . Then g ′-1 h ′ = ug -1 hv, and u, v ∈ {ρ < δ}, so indeed |P ψ (g, h) -P ψ (g ′ , h ′ )| ≤ ε,
as required. The bounds are also respected, so eG, equipped with the distance and interpretations of P ψ , is an L G -pre-structure, and its completion eG is an L G -structure. (iv) We define T G as the theory of the collection of all L G -structures of this form:

T G = Th L G eG : e ∈ B .
By "essentially recover", we mean the following. Theorem 3.9. Let T be a theory, D a coding sort for T, and G = G D (T). Let L G and T G be constructed as in the preceding discussion. Then T G and T 2D are one and the same, up to renaming the binary predicate symbols, and up to an arbitrary choice of the distance on the sort D (from among all definable distances).

In particular, this procedure allows us to recover from G a theory T G that is bi-interpretable with T.

Proof. By Corollary 3.8, step (i) consists exactly of choosing a definable distance d on D, and the corresponding norm ρ = d G . This choice is irremediably arbitrary. By Proposition 3.5, in step (ii) there is a natural bijection between symbols of L D (corresponding to formulas ϕ(x, y) on D × D, up to equivalence) and symbols of L G : to ϕ we associate the UCC function ψ ϕ = ϕ G , to which in turn we associate the symbol P ψ ϕ .

Finally, let M T be separable, let a ∈ D(M) be a code for M, and let e = tp(a

) ∈ B. Let D(M) 1 denote the set of b ∈ D(M) that also code M. If b ∈ D(M) 1 , then g b = tp(a, b) ∈ eG. Moreover, if b, c ∈ D(M) 1 and ϕ is a formula on D × D, then tp(b, c) = g -1 b g c ∈ G, so ϕ(b, c) = ψ ϕ (g -1 b g c ) = P ψ ϕ (g b , g c ).
In particular, d(b, c) = d(g b , g c ) (where the first is the distance we chose on D, and the second the distance we defined on eG in step (iii)). Thus, up to representing ϕ by the symbol P ψ ϕ , the map b → g b defines an isomorphism of the L D -pre-structure D(M) 1 with the L G -pre-structure eG. This extends to an isomorphism of the respective completions: D(M) ≃ eG.

It follows that, up to this change of language (and choice of distance), the theory T G defined in step (iv) is the theory of all separable models of T 2D . Since T is in a countable language, T 2D is in a "separable language", so it is equal to the theory of all its separable models.

By Proposition 2.6, T is bi-interpretable with T 2D , and therefore also with T G .

Having achieved this, we are ready to start producing reconstruction theorems: all we need is a coding sort that only depends (up to definable bijection) on the bi-interpretation class of T.

Example 3.10. Let T be an ℵ 0 -categorical theory. Let M be its unique separable model, and let a be any sequence (possibly infinite, but countable), in any sort or sorts, such that dcl(a) = dcl(M) (for example, any dense sequence will do). Let D T,0 be the set of realisations of p = tp(a). Since T is ℵ 0 -categorical, D T,0 is a definable set, i.e., a sort. It is easy to check that it is a coding sort (with no exceptional set).

If b is another code for M, and D ′ T,0 is the set of realisations of tp(b), then dcl(a) = dcl(b) and tp(a, b) defines the graph of a definable bijection D T,0 ≃ D ′ T,0 . Therefore, D T,0 does not depend on the choice of a. Moreover, assume that T ′ is an interpretational expansion of T. Then it has a model M ′ that expands M accordingly. But then dcl(M ′ ) = dcl(M) = dcl(a) (as calculated when working in T ′ ), so D T ′ ,0 = D T,0 . It follows that D T,0 only depend on the bi-interpretation class of T.

Since S D T,0 (T) = {p} is a singleton, the groupoid

G(T) = G D T,0 (T)
is in fact a group. It only depends on the bi-interpretation class of T (since D T,0 only depends on it) and by Theorem 3.9, it is a complete bi-interpretation invariant for T.

We leave it to the reader to check that

G(T) ≃ Aut(M),
and that the reconstruction result is just a complicated restatement of those of [START_REF] Gisela | Quasi-finitely axiomatizable totally categorical theories[END_REF][START_REF] Itaï | Reconstruction of separably categorical metric structures[END_REF].

Example 3.11. Let T be a theory in classical logic. In [START_REF]Reconstruction of non-ℵ 0 -categorical theories[END_REF], using an arbitrary parameter Φ, we gave an explicit construction of a set of infinite sequences D Φ . We showed that it is a definable set in the sense of continuous logic, and that its interpretation in models of T only depend on the bi-interpretation class of T (up to a definable bijection). It also follows from what we showed that it is a coding sort (without exceptional set). Since it is unique, let us denote it by D T (in fact, we could also just denote it by D: its construction only depends on the language, and then we simply restrict our consideration of it to models of T). We then proved that the groupoid G(T) = G D T (T) is a complete bi-interpretation invariant for T. This is a special case of Theorem 3.9.

Example 3.12. Let T be a (complete) theory in continuous logic. In [START_REF]Reconstruction of non-ℵ 0 -categorical theories[END_REF] we defined when a sort D T is a universal Skolem sort, and proved that if such a sort exists, then it is unique, and only depends on the biinterpretation class of T (in contrast with the previous example, here we do not have a general construction for such a sort, let alone a uniform one, so it really does depend on T). We proved that if T admits a universal Skolem sort D T , then

G(T) = G D T (T) is a complete bi-interpretation invariant for T.
Again, we also proved that D T is a coding sort, so this is a special case of Theorem 3.9.

Remark 3.13. Example 3.12 encompasses the two previous examples in the following sense.

• If T is classical, then the sort D T of Example 3.11 is a universal Skolem sort, so Example 3.11 is a special case of Example 3.12.

• If T is ℵ 0 -categorical, then D T = D T,0 × 2 N is a universal Skolem sort, so G(T) ≃ 2 N × G(T) × 2 N , with groupoid law (α, g, β) • (β, h, γ) = (α, gh, γ).
Consequently, B(T) = 2 N , and if e ∈ B(T), then G(T) ≃ eG(T)e. Therefore, the reconstruction of Example 3.10 can be recovered from a special case of Example 3.12. In both Example 3.11 and Example 3.12, the basis S D T (T) is homeomorphic to the Cantor space 2 N . However, in [START_REF]Reconstruction of non-ℵ 0 -categorical theories[END_REF] we also gave an example of a continuous theory which does not admit a universal Skolem sort. In particular, the explicit construction of D T as D Φ in the case of a classical theory simply does not extend, as is, to continuous logic. The rest of this article is dedicated to presenting a modified version of this construction, giving rise to a coding sort that does have an exceptional set (a very simple one, consisting of a single point), allowing us to prove a reconstruction theorem for every first order theory in a countable language (in continuous logic, or classical one).

STAR SPACES

Before we can construct our coding sort, we require technical detour, where we introduce star sets in general, and, in the model-theoretic context, star sorts. For the time being, we must ask the reader to bear with us -the usefulness of these notions for our goal is explained in some detail at the beginning of Section 6. Definition 4.1. A retraction set is a set X equipped with an action of the multiplicative monoid [0, 1]. In particular, 1 • x = x for all x ∈ X, and α(βx) = (αβ)x (so this is a little stronger than a homotopy).

It is a star set if 0 • x does not depend on x. We then denote this common value by 0 ∈ X, and call it the root of X.

A topological retraction (star) space is one equipped with a topology making the action [0, 1] × X → X continuous.

A metric star space is one equipped with a distance function satisfying d(αx, αy) ≤ αd(x, y) and d(αx, βx) = |α -β| x , where x = d(x, 0). Notice that a retraction set X can be fibred over 0 • X, with each fibre a star set. We could also define a metric retraction space by putting infinite distance between fibres.

Example 4.2. The real half line R + is naturally a topological and metric star space. The interval [0, 1] (or [0, r] for any r > 0) is a compact topological and bounded metric star space.

Example 4.3. If X and Y are two star sets, then X × Y, equipped with the diagonal action α(x, y) = (αx, αy), is again a star set. If both are metric star spaces, then equipping the product with the maximum distance makes it a metric star space as well (here the maximum distance is preferable to the sum distance, since it preserves bound hypotheses on the diameter).

Example 4.4. Let X be a set, and equip [0, 1] × X with the equivalence relation

(α, x) ∼ (β, y) ⇐⇒ (α, x) = (β, y) or α = β = 0.
The cone of X is the quotient space * X = [0, 1] × X /∼.

A member of * X will be denoted [α, x]. We equip it with the action α • [β, x] = [αβ, x]. This makes it a star set, with [0, x] = 0 regardless of x.

We shall tend to identify x ∈ X with [1, x] ∈ * X, so [α, x] may also be denoted by αx.

When X is a compact Hausdorff space, the relation ∼ is closed, * X is again compact and Hausdorff, and the identification X ⊆ * X is a topological embedding. When X is a bounded metric space, say diam(X) ≤ 2, we propose to metrise * X by

d(αx, βy) = |α -β| + (α ∧ β)d(x, y). (2)
In particular, if either α or β vanishes, then the right hand side does not depend on either x or y, so d is well defined, and d(0, x) = 1 for all x ∈ X.

The only property that is not entirely obvious is the triangle inequality, namely

|α -γ| + (α ∧ γ)d(x, z) ≤ |α -β| + (α ∧ β)d(x, y) + |β -γ| + (β ∧ γ)d(y, z). (3) We may assume that α ≥ γ, so α ∧ γ = γ. If β ≥ γ, then (3) holds trivially since α ∧ β ≥ γ = β ∧ γ. If β ≤ γ, then the right hand side evaluates to (α -γ) + 2(γ -β) + βd(x, y) + βd(y, z).
Applying the triangle inequality for X and the hypothesis that 2 ≥ d(x, z), we obtain (3) in this case as well.

We conclude that ( * X, d) is a metric space. The embedding X ⊆ * X is isometric, and diam( * X) = 1 ∨ diam(X). If X is complete, then so is * X.

A special instance of this is the cone of a singleton, which can be identified with the interval [0, 1] equipped with the natural star, topological or metric structures.

Example 4.5. More generally, let S be a star set, X an arbitrary set, and define

(s, x) ∼ (t, y) ⇐⇒ (s, x) = (t, y) or s = t = 0, S * X = S × X /∼.
As in the definition of a cone, a member of S * X will be denoted [s, x] or s * x (in analogy with the notation αx). We make S * X into a star set by defining α • (s * x) = (αs) * x. This indeed generalises the cone construction, with * X = [0, 1] * X.

When S and X are compact Hausdorff spaces, the relation ∼ is closed, and S * X is again compact and Hausdorff. When S and X are bounded metric spaces, say diam(X) ≤ 2 and s ≤ 1 for all s ∈ S, we equip S * X with the distance function d(s * x, t * y) = d(s, t) ∨ d s x, t y , where d s x, t y is calculated in * X. Notice that s * x = s , and the distance functions on [0, 1] * X and * X agree.

Remark 4.6. The generalised cone construction of Example 4.5 can be easily iterated: S * (X × Y) = (S * X) * Y, identifying s * (x, y) = s * x * y. In the metric case, assume that X and Y are both of diameter at most two.

Equipping products with the maximum distance, diam(X × Y) ≤ 2 as well, and the obvious map

* (X × Y) → * X × * Y sending α(x, y) → (αx, αy) is isometric. It follows that the identification S × (X × Y) = (S * X) * Y is isometric: d(s * x * y, t * u * v) = d(s * x, t * u) ∨ d s * x y, t * u v = d(s, t) ∨ d s x, t u ∨ d s y, t v = d(s, t) ∨ d s (x, y), t (u, v) = d s * (x, y), t * (u, v) .
In particular, * (X × Y) = ( * X) * Y.

Definition 4.7. Let X and Y be two retraction (star) spaces. A map f :

X → Y is homogeneous if f (αx) = α f (x). It is sub-homogeneous if f (αx) = β f (x) for some β ≤ α.
The latter will be mostly used when Y = R + , in which sub-homogeneity becomes f (αx) ≤ α f (x).

We may also equip a retraction space with a partial order defined by αx ≤ x whenever α ∈ [0, 1]. This induces the usual partial order on R + , and sub-homogeneity can be stated as f (αx) ≤ α f (x) for arbitrary maps between retraction spaces. Notice also that our definition of a metric retraction space X simply requires the distance function to be sub-homogeneous on X × X.

STAR SORTS

Definition 5.1. A star sort is a sort equipped with a definable structure of a metric star space. In particular, this means that the map (α, x) → αx is definable (and not just x → αx for each α). Star sorts will usually be denoted by D * , E * , and so on. Definition 5.2. Let D * be a star sort and ϕ(u, y) a formula on D * × E. We say that ϕ is sub-homogeneous if it satisfies αϕ(u, y) ≥ ϕ(αu, y) ≥ 0.

We may specify that it is sub-homogeneous in the variable u, especially if u is not the first variable. More generally, we may say that ϕ(u, v, . . .) is sub-homogeneous in (u, v) if αϕ(u, v, . . .) ≥ ϕ(αu, αv, . . .) ≥ 0, and similarly for any other tuple of variables.

If it is sub-homogeneous in the tuple of all its variables, we just say that ϕ is jointly sub-homogeneous.

Example 5.3.

• If D is any sort (of diameter at most two), then the cone * D, equipped with the distance proposed in Example 4.4, is a star sort. More generally, if D * is a star sort and E an arbitrary sort, then D * * E, as per Example 4.5, is a star sort.

• Any finite product of star sorts, equipped with the diagonal action of [0, 1] and the maximum or sum distance, is again a star sort. Similarly, any countable product of star sorts, equipped with

d(u, v) = ∑ n d n (u n ,v n ) 2 n diam(d n )
, is again a star sort, and the same holds with supremum in place of sum. Notice that ϕ(u, y) is sub-homogeneous in u if for every fixed parameter b, the formula ϕ(u, b) (in u alone) is sub-homogeneous.

For an alternate point of view, notice that a sub-homogeneous formula ϕ(u, y) does not depend on y when u = 0. It can therefore be viewed as a formula ϕ(u * y) in the sort D * * E (see Example 4.5). Since α(u * y) = (αu) * y, a sub-homogeneous (in u) formula ϕ(u, y) is the same thing as a sub-homogeneous formula ϕ(u * y) in a single variable from the sort D * * E.

Similarly, a formula ϕ(u, v) on D * × E * is jointly sub-homogeneous if and only if it is sub-homogeneous as a formula on the product star sort.

Question 5.4. We ordered the clauses of Example 5.3 in order to reflect the three operations by which we construct sorts in general. Still, something more probably needs to be said regarding the construction of subhomogeneous pseudo-distance functions. In the usual context of plain sorts (and plain pseudo-distances), to every formula ϕ(x, t) on D × E we can associate a formula on D × D, defined by

d ϕ (x, y) = sup t |ϕ(x, t) -ϕ(y, t)|.
This is always a definable pseudo-distance on D. Moreover, in the case where E = D and ϕ already defines a pseudo-distance, d ϕ agrees with ϕ.

Can something analogous be done in the present context as well?

The following essentially asserts that we can retract continuously (with Lipschitz constant one, even) all formulas into sub-homogeneous ones. The analogous result for a formula in several variables, with respect to joint sub-homogeneity in some of them, follows.

Proposition 5.5. Let D * be a star sort and ϕ(u, y) ≥ 0 a positive formula on D * × E. For k ∈ N, define

(SH k ϕ)(u, y) = inf u ′ ,α αϕ(u ′ , y) + kd(αu ′ , u) , where u ′ ∈ D * , α ∈ [0, 1].
(i) For any ϕ ≥ 0 and k, the formula (SH k ϕ)(u, y) is k-Lipschitz and sub-homogeneous in u, and SH k ϕ ≤ ϕ.

(ii) For any two formulas ϕ, ψ ≥ 0 and r ≥ 0,

if ϕ ≤ ψ + r, then SH k ϕ ≤ (SH k ψ) + r. Consequently, |(SH k ϕ) -(SH k ψ)| ≤ |ϕ -ψ|. (iii) If ϕ is sub-homogeneous, then (SH k ϕ) → ϕ uniformly,

at a rate that only depends on the bound and uniform continuity modulus of ϕ.

Proof. Clearly, (SH k ϕ)(u, y) is k-Lipschitz in u. If (SH k ϕ)(u, y) < r and β ∈ [0, 1], then there exist u ′ and α such that αϕ(u ′ , y) + kd(αu ′ , u) < r. Then αβϕ(u ′ , y) + kd(αβu ′ , βu) < βr, showing that (SH k ϕ)(βu) < βr. This proves sub-homogeneity. We also always have

(SH k ϕ)(u, y) ≤ 1 • ϕ(u, y) + d(1 • u, u) = ϕ(u, y).
The second item is immediate.

For the third item, we assume that ϕ is sub-homogeneous, in which case

(SH k ϕ)(u, y) = inf u ′ ϕ(u ′ , y) + kd(u ′ , u) ≤ ϕ(u, y). Say that |ϕ| ≤ M and d(u, u ′ ) < δ implies |ϕ(u, y) -ϕ(u ′ , y)| < ε, and let k > 2M/δ. If d(u ′ , u) ≥ δ, then ϕ(u ′ , y) + kd(u ′ , u) ≥ ϕ(u)
, so such u ′ may be ignored. Restricting to those where d(u ′ , u) < δ, we see that

(SH k ϕ) ≥ ϕ -ε.
Definition 5.6. We say that a formula ϕ(x, y) is witness-normalised (in x, unless another variable is specified explicitly) if inf y ϕ = 0 (equivalently, if ϕ ≥ 0 and sup x inf y ϕ = 0). More generally, for ε > 0, we say that ϕ(x,

y) is ε-witness-normalised (in x) if 0 ≤ inf y ϕ ≤ ε.
Witness-normalised formulas are analogous to formulas ϕ(x, y) in classical logic for which ∃yϕ is valid: in either case, we require that witnesses exist. If ϕ(x, y) is any formula, then ϕ(x, y) -inf z ϕ(x, z) is witnessnormalised (we may say that it is syntactically witness normalised), where we subtract a "normalising" term.

By definition, a sub-homogeneous or a witness-normalised formula is positive. If ϕ is witness-normalised in any of its arguments and ϕ ≥ ψ ≥ 0, then so is ψ. This applies in particular to the formulas SH k ϕ constructed in Proposition 5.5, assuming ϕ is witness-normalised. Definition 5.7. Let D * and E * be two star sorts. A star correspondence between D * and E * is a formula ϕ(u, v) on D * × E * that is sub-homogeneous in (u, v) and witness-normalised in each of u and v.

Similarly, an ε-star correspondence is a jointly sub-homogeneous formula that is ε-witness-normalised in each argument.

Remark 5.8. If ϕ is ε-witness-normalised (in one of its variables), then ϕ ′ = ϕ -. ε is witness-normalised (in the same), and |ϕ -

ϕ ′ | ≤ ε. If ϕ is sub-homogeneous, then so is ϕ -. ε, Therefore, if ϕ is an ε-star correspondence, then ϕ ′ = ϕ -. ε is a star correspondence, and |ϕ -ϕ ′ | ≤ ε.
Say that a definable map σ : D → E is densely surjective if it is surjective in every sufficiently saturated model of the ambient theory, or equivalently, if σ has dense image in every model. Recall that a definable map σ : D * → E * between star sorts is homogeneous if σ(αu) = ασ(u).

Notice that a definable map σ : D * → E * is homogeneous if and only if the formula d(σu, v) is subhomogeneous in (u, v), and it is always witness-normalised in u. If σ is densely surjective, then it is homogeneous if and only if d(σu, v) is a star correspondence. If σ is bijective, then this is further equivalent to if d(u, σ -1 v) being a star correspondence. Definition 5.9. Say that a star sort D * is universal (as a star sort) if for every star sort E * , every star correspondence ϕ between D * and E * , and every ε > 0, there exists a 1/2-star correspondence ψ such that, in addition, if

ψ(u, v i ) < 1 for i = 0, 1, then ϕ(u, v i ) < ε and d(v 0 , v 1 ) < ε.
This just says that condition (ii) of Proposition 5.10, which may be easier to parse, holds "approximately". The choice of one and one half is quite arbitrary, and any two constants 0 < r 1 < r 2 would do just as well (in the proof of Proposition 5.10(i) below, replace 2ψ -. 1 with (ψ -. r 1 )/(r 2r 1 )).

Proposition 5.10. Let D * and E * be star sorts, ϕ(u, v) a star correspondence on D * × E * , and ε > 0.

(i) If D * is a universal star sort, then there exists ψ as in Definition 5.9 that is a star correspondence (rather than a mere ε-star correspondence). (ii) If D * is a universal star sort, then there exists a densely surjective homogeneous definable map σ : D * → E * such that ϕ(u, σu) ≤ ε. (iii) If both D * and E * are both universal star sorts, then the same can be achieved with σ bijective.

Proof. For (i), let ψ be as in the conclusion of Definition 5.9. Then 2ψ -. 1 will do.

For (ii), define a sequence of formulas ϕ n (u, v) as follows. We start with ϕ 0 = ϕ, and we may assume that 0 < ε < 1. Then, assuming that ϕ n is a star correspondence, we find a star correspondence ϕ n+1 such that

ϕ n+1 (u, v i ) < 1 implies ϕ n (u, v i ) ≤ ε and d(v 0 , v 1 ) < ε/2 n . Let X n ⊆ D * × E *
be the (type-definable) set defined by ϕ n ≤ ε and X = X n . By hypothesis, for every u ∈ D * and n, there exists v ∈ E * such that (u, v) ∈ X n . We also have X n+1 ⊆ X n , so in a sufficiently saturated model there exists v ∈ E * such that (u, v) ∈ X. By the second hypothesis on ϕ n , such v is unique, so X is the graph of a definable map σ (and v belongs to any model that contains u). By the same reasoning as above, for every v ∈ E * there exists u ∈ D * (not necessarily unique, so potentially only in a sufficiently saturated model) such that (u, v) ∈ X, so σ is densely surjective.

Assume now that v = σu, i.e., (u, v) ∈ X. Since each ϕ n is sub-homogeneous, (αu, αv) ∈ X for every α ∈ [0, 1], i.e., αv = σ(αu), and σ is homogeneous. Finally, since ϕ 0 = ϕ, we have (u, σu) ∈ X ⊆ X 0 , so ϕ(u, σu) ≤ ε.

For (iii) we use a back-and-forth version of the previous argument, with the roles of D * and E * reversed at odd steps.

Notice that the zero formula is (trivially) a star correspondence on any two star sorts. Therefore, if a universal star sort exists, then it is unique, up to a homogeneous definable bijection. n and E * . (iii) In order for D * to be a universal star sort, it is enough for it to satisfy the condition of Definition 5.9 for star-correspondences ϕ that factor through D * n × E * for some n. Proof. The first two assertions are fairly evident. In what follows, we are going to identify a formula ϕ(u n , v) on D * n × E * with the formula ϕ π n (u), v on D * × E * , which is essentially what the second point says. For the last one, say that ϕ is a star correspondence between D * and E * , and let ε > 0. For n large enough we may find a formula ϕ 1 (u n , v) on D * n × E * such that ϕ ≥ ϕ 1 ≥ ϕ -. ε (with the identification proposed in the previous paragraph). Since ϕ is jointly sub-homogeneous, so is ϕ -. ε. Using the construction of Proposition 5.5, this implies that for large enough k we have

ϕ ≥ SH k ϕ ≥ SH k ϕ 1 ≥ SH k (ϕ -. ε) ≥ ϕ -. 2ε.
Since ϕ ′ = SH k ϕ 1 is jointly sub-homogeneous, it a star correspondence, and it factors through D * n × E * . Assume now that ψ(u, v) exists, as per Definition 5.9, for ϕ ′ and ε. In particular, if ψ(u, v) < 1, then ϕ ′ (u, v) < ε, so ϕ(u, v) < 3ε, which is good enough.

SORTS WITH WITNESSES

In this section, we provide an explicit construction of a universal star sort. We follow a path similar to the construction of D Φ in [START_REF]Reconstruction of non-ℵ 0 -categorical theories[END_REF], seeking a sort that contains "all witnesses".

Let us consider first the case of a single formula ϕ(x, y) on D × E, which we assume to be witness-normalised (namely, such that inf y ϕ = 0, see Definition 5.6). The sort D is viewed as the sort of parameters, and E is the sort of potential witnesses. One may then wish to consider the set of "parameters with witnesses", namely the collection of all pairs (x, y) such that ϕ(x, y) = 0, but this may be problematic for several reasons.

First of all, in a fixed (non-saturated) structure, for all a there exist b such that ϕ(a, b) is arbitrarily small, but not necessarily such that ϕ(a, b) = 0. This can be overcome by allowing an error, e.g., by considering all the solution set of ϕ(x, y) ≤ ε for some ε > 0. In fact, it is enough to consider the solution set of ϕ(x, y) ≤ 1: if we want a smaller error, we need only replace ϕ with ϕ/ε.

A second, and more serious issue, is that the resulting set(s) need not be definable. That is to say that it may happen that 1 < ϕ(a, b) < 1 + ε for arbitrarily small ε > 0 without there existing a pair (a

′ , b ′ ) close to (a, b) such that ϕ(a ′ , b ′ ) ≤ 1.
We can solve this by allowing a variable error, considering triplets (r, x, y) where r ∈ R and ϕ(x, y) ≤ r. Now, if ϕ(x, y) < r + ε, then the triplet (r, x, y) is very close to (r + ε, x, y), which does belong to our set.

This may seem too easy, and raises some new issues. For example, if we allow errors greater than the bound for ϕ, then the condition ϕ(x, y) ≤ r becomes vacuous. This is not, in fact, a real problem, since soon enough we are going to let ϕ vary (or more precisely, consider an infinite family of formulas simultaneously), and any finite bound r will be meaningful for some of the formulas under consideration. However, in order for the previous argument to work, r cannot be bounded (we must always be able to replace it with r + ε). By compactness, r = +∞ must be allowed as well -and now there is no way around the fact that ϕ(x, y) ≤ ∞ is vacuous, regardless of ϕ.

We seem to be chasing our own tail, each time shovelling the difficulty underneath a different rug -indeed, a complete solution is impossible, or else we could construct a universal Skolem sort, which was shown in [START_REF]Reconstruction of non-ℵ 0 -categorical theories[END_REF] to be impossible in general. What we propose here is a "second best": allow infinite error, but use the formalism of star sorts to identify all instances with infinite error as the distinguished root element. Thus, at the root, all information regarding the (meaningless) witnesses will be lost, while every point outside the root will involve finite error, and therefore meaningful witnesses. Since we want the root to be at zero, rather than at infinity, we replace r ∈

[1, ∞] with α = 1/r ∈ [0, 1].
Let D * be a star sort, E a sort. The set D * * E = {u * y : u ∈ D * , y ∈ E}, as per Example 4.5, is again a star sort, in which 0 * y = 0 regardless of y. Lemma 6.1. Let D * be a star sort, E a sort, and let ϕ(u, y) a formula on D * × E, witness-normalised and subhomogeneous in u. Then D * ϕ = u * y : u ∈ D * and ϕ(u, y) ≤ 1 ⊆ D * * E is again a star sort, and the natural projection map D * ϕ → D * , sending u * y → u, is surjective.

Proof. We may view ϕ as a formula on D * * E, since, by sub-homogeneity, ϕ(0, y) = 0 regardless of y. The set

D * ϕ is the zero-set in D * * E of the formula ϕ -. 1. Assume now that a * b ∈ D * * E and ϕ(a, b) -. 1 < δ. Then (1 -δ)a * b ∈ D *
ϕ , and it is as close as desired (given δ small enough) to a * b. Therefore, D * ϕ is definable. Since ϕ is sub-homogeneous, D * ϕ is closed under multiplication by α ∈ [0, 1] and is therefore a star sort. Since ϕ is witness-normalised, the projection is onto.

Let us iterate this construction. Recall from Remark 4.6 that ( * D) * E = * (D × E), identifying (αx) * y = α(x, y). Therefore, if D * ⊆ * D (with the induced star structure), then D * * E ⊆ * (D × E). Definition 6.2. Fix a sort D, as well as a sequence of formulas Φ = (ϕ n ), where each ϕ n (x <n , y) is a witnessnormalised formula on D n × D. Since Φ determines the sort D, we shall say that Φ is a sequence on D. We then define Definition 6.3. We say that the sequence Φ on a sort D is rich if D admits a definable projection onto any countable product of basic sorts, and for every witness-normalised formula ϕ(x <n , y) in D n × D and every ε > 0 there exist arbitrarily big k ≥ n such that |ϕ k (x <k , y)ϕ(x <n , y)| < ε (so ϕ is viewed as a formula in x <k , y through the addition of dummy variables). Lemma 6.4. Under our standing hypothesis that the language is countable, with countably many basic sorts, there exists a rich sequence Φ (on an appropriate sort D). Moreover, we may construct Φ (and D) in a manner that only depends on the language and not on the theory of any specific structure.

D * n = αx <n : αϕ k (x <k , x k ) ≤ 1 for all k < n ⊆ * (D n ), D * Φ = αx : αϕ n (x <n , x n ) ≤ 1 for all n ⊆ * (D N ). In other words, D * 0 = [0, 1] = * (singleton), D * n+1 = (D * n ) ϕ ′ n , D * Φ = lim ← - D *
Proof. For D we may take the (countable) product of all infinite countable powers of the basic sorts. For each k we may choose a countable dense family of formulas on D k × D, call them ψ k,m (x <k , y). Replacing them with χ k,m (x <k , y) = ψ k,m (x <k , y) -inf z ψ k,m (x <k , z), we obtain a countable dense family of witness-normalised (in x <k ) formulas on D k × D. We may now construct a rich sequence Φ in which each χ k,m occurs infinitely often (with additional dummy x variables).

Let Φ = (ϕ n ) (and D) be fixed, with Φ rich. We define a formula on D n by

ρ n (x <n ) = 1 1 ∨ k<n ϕ k (x <k , x k ) .
In other words, ρ n (x <n ) is the maximal α ∈ [0, 1] such that αx <n ∈ D * n , or equivalently, such that x <n can be extended to x with αx ∈ D * Φ . Lemma 6.5. Let Φ = (ϕ n ) be rich. Let E * be another star sort, ψ(u n , v) a star correspondence on D * Φ × E * that factors through D * n × E * , and ε > 0. Then ψ factors through D * k × E * for every k ≥ n, and for every large enough k the formula

ψ k 1 (x <k , v) = ψ ρ k (x <k )x <n , v is ε-witness-normalised in either argument. Proof. If k ≥ n, then ρ k (x <k ) ≤ ρ n (x <n ), so ρ k (x <k )x <n ∈ D * n . Since ψ(u n , v) is witness-normalised in u n , ψ k 1 (x <k , v) is witness-normalised in x <k .
It is left to show that for k large enough, it is also ε-witness-normalised in v.

Our hypothesis regarding D implies, among other things, that there exists a surjective definable map χ : D → [0, 1] (namely, a surjective formula). Therefore, for a constant C that we shall choose later, there exists m ≥ n such that Cχ(y) ≥ ϕ m (x <m , y) ≥ Cχ(y) -1/C. Assume that k > m. For every possible value of v ∈ E * , which we consider as fixed, there exists αx <n ∈ D * n such that ψ(αx <n , v) < ε. We can always extend x <n to x <m in such a manner that ρ m (x <m ) = ρ n (x <n ) ≥ α, so αx <m ∈ D * m . We choose x m so χ(x m ) = (αC ∨ 1) -1 , and extend x ≤m to x <k so ρ k (x <k ) = ρ m+1 (x ≤m ).

If αC ≥ 1, then 1/α ≥ ϕ m (x <m , x m ) ≥ 1/α -1/C, so α ≤ ρ m+1 (x ≤m ) ≤ α(1 -α/C) -1 . Having chosen C large enough, ρ k (x <k ) = ρ m+1 (x ≤m
) is as close to α as desired. If αC < 1, then 0 ≤ α ≤ 1/C and 0 < ρ k+1 (x ≤k ) ≤ 1/(C -1/C), so the same conclusion holds.

Either way, having chosen C large enough, ψ k 1 (x <k , v) is as close as desired to ψ(αx <n , v), and in particular ψ k 1 (x <k , v) < 2ε, which is good enough. Given our hypothesis regarding D, every sort can be expressed as a definable subset of a quotient of D by a pseudo-distance. Such a quotient will be denoted (D, d) (which includes an implicit step of identifying points at d-distance zero). Convention 6.6. From this point, and through the proof of Lemma 6.8, we fix a star sort E * . By the preceding remark, we may assume that (E * , d E * ) ⊆ (D, d) isometrically, where d is a definable pseudo-distance on D which we also fix. In particular, the distance on E * will also be denoted by d. If y ∈ D, we denote its image in the quotient (D, d) by y.

It is worthwhile to point out that if αx ∈ D * Φ , then for every k ∈ N and δ > 0, (αδ/2)

ϕ k (x <k , x k ) + 1 = (δ/2) αϕ k (x <k , x k ) + α ≤ δ. (4)
Given n ≤ k and δ > 0, let us define for αx ∈ D * Φ , v ∈ E * and y ∈ D:

χ n (αx, y, v) = inf w∈E * d αρ n (x <n ) -1 w, v + αd(y, w) , χ n,k (αx, v) = χ n (αx, x k , v) = inf w∈E * d αρ n (x <n ) -1 w, v + αd(x k , w
) . Let us explain this. First of all, since αx ∈ D * Φ , we must have α ≤ ρ n (x <n ), so the expression αρ n (x <n ) -1 w makes sense. Also, if α = 0, then χ n (αx, y, v) = v does not depend on x, so this is well defined. Now, let y ∈ D (possibly, y = x k for some k ≥ n, but this will happen later). We want v to be equal to αρ n (x <n ) -1 y, and in particular, we want y to belong to E * . We may not multiply by αρ n (x <n ) -1 outside E * , but we may quantify over E * . Therefore, we ask for y to be very close to some w ∈ E * , and for αρ n (x <n ) -1 w, which always makes sense, to be close to v. Lemma 6.7. The formula χ n,k (u, v) has the following properties:

(i) It is jointly sub-homogeneous in its arguments.

(ii) For every n, ε > 0 there exists

δ = δ(n, ε) > 0 such that, if χ n (u, y, v i ) ≤ δ for i = 0, 1, then d(v 0 , v 1 ) < ε. In particular, for any k, if χ n,k (u, v i ) ≤ δ for i = 0, 1, then d(v 0 , v 1 ) < ε. (iii) Assuming that ϕ k (x <k , y) ≥ 2d(y, E * )/δ -1, the formula χ n,k (u, v) is δ-witness-normalised in u.
Proof. Item (i) is immediate (among other things, we use the fact that d is sub-homogeneous on E * ).

For (ii), assume that χ n (αx, y, v i ) = 0. Then either α = 0, in which case v i = 0, or α > 0, in which case we have y ∈ E * and v i = αρ n (x <n ) -1 y. Either way, v 0 = v 1 , and in particular d(v 0 , v 1 ) < ε. The conclusion follows by compactness.

For (iii), let u = αx ∈ D * Φ . By (4) we have αd(x k , E * ) ≤ δ. Choose w ∈ E * such that αd(x k , w) ≤ δ, and let v = αρ n (x <n ) -1 w. Then χ n,k (u, v) ≤ δ. Lemma 6.8. Let Φ = (ϕ n ) be rich. Let E * ⊆ (D, d) be a star sort, as per Convention 6.6, ψ(u, v) a star correspondence on D * Φ × E * , and ε > 0. Then there exist n ≤ k and δ > 0 such that χ n,k (u, v) is a δ-star correspondence between D * Φ and E * , and in addition, if χ n,k (u, v i ) ≤ 2δ for i = 0, 1, then ψ(u, v i ) ≤ ε and d(v 0 , v i ) < ε.

Proof. By Lemma 5.11 and Lemma 6.5, for some n (in fact, any n large enough), we may assume that ψ is a star correspondence that factors as ψ(u n , v) through D * n × E * , and that ψ 1 (x <n , v) = ψ ρ n (x <n )x <n , v is ε-witness-normalised in either argument. In particular, ψ 1 -. ε is witness-normalised.

We may extend ψ 1 -. ε to D n × (D, d), obtaining a formula ψ 2 (x <n , y) on D n × D, which is uniformly dcontinuous in y. Since ψ 1 ≥ 0, we may assume that ψ 2 ≥ 0, and even that ψ 2 (x <n , y) ≥ d(y, E * ). Let us choose δ > 0 small enough, based on choices made so far. Since ψ 2 (x <n , y) is witness-normalised in x <n (choosing witnesses y ∈ E * ), there exists k ≥ n such that |ϕ k -2ψ 2 /δ| ≤ 1. By Lemma 6.7, having chosen δ small enough, the formula χ n,k (u, v) is jointly sub-homogeneous, δ-witness-normalised in u, and χ n,k (u, v i ) ≤ 2δ implies d(v 0 , v i ) < ε. There are two more properties we need to check.

First, we need to check that χ n,k (u, v) is δ-witness-normalised in v. Indeed, given v = y ∈ E * , we know that there exists a sequence x <n ∈ D n such that ψ 1 (x <n , v) -. ε = 0. Let α = ρ n (x <n ), so αx <n ∈ D * n , and extend the sequence x <n to x <k keeping αx <k ∈ D * k . We now choose x k = y, so ψ 2 (x <n , x k ) = 0 and ϕ k (x <k , x k ) ≤ 1. Therefore, αx ≤k ∈ D * k+1 , and we may complete the sequence to x ∈ D N such that αx ∈ D * Φ . Then χ n,k (αx, v) = 0, as witnessed by w = v (recalling that we chose α = ρ n (x <n )).

Second, we need to check that, having chosen δ appropriately, χ n,k (αx, v) ≤ 2δ implies ψ(αx, v) ≤ ε. Indeed, following a path similar to the proof of Lemma 6.7(ii), assume that

χ n (αx, y, v) = αψ 2 (x <n , y) = 0.
If α = 0, then v = 0 and ψ(αx, v) = ψ(0, 0) = 0. If α > 0, then y ∈ E * , and v = αρ n (x <n ) -1 y, and ψ ρ n (x <n )x, y -. ε = ψ 2 (x <n , y) = 0. Since (αx, v) = αρ n (x <n ) -1 ρ n (x <n )x, y , it follows that ψ(αx, v) ≤ ε in this case as well. By compactness, for δ small enough, if χ n (αx, y, v) ≤ 2δ and αψ 2 (x <n , y) ≤ δ, then ψ(αx, v) < 2ε. This last argument does not depend on k, so we may assume that δ was chosen small enough to begin with. By (4), the inequality αψ 2 (x <n , x k ) ≤ δ is automatic when αx ∈ D * Φ . If, in addition, we assume that χ n,k (αx, v) = χ n (αx, x k , v) ≤ 2δ, then ψ(αx, v) < ε, completing the proof. Theorem 6.9. Let Φ be a rich sequence. Then D * Φ is universal. In particular, a universal star sort exists.

Proof. Immediate from Lemma 6.8, using the formula 2χ n,k /δ.

FURTHER PROPERTIES OF THE UNIVERSAL STAR SORT

In Section 5 we showed that the universal star sort, if it exists, is unique up to a homogeneous definable bijection, and in Section 6 we showed that one exists as D * Φ for any rich sequence Φ. Let us prove a few additional properties of this special sort.

Convention 7.1. From now on, D * denotes any universal star sort. Since it is unique up to a homogeneous definable bijection, multiplication by α ∈ [0, 1] is well defined regardless of the construction we choose for D * . In particular, its root is well defined.

Notice that we can construct it as D * Φ in a manner that only depends on the language (and not on T): we obtain a universal star sort for T simply by restricting our consideration of this sort to models of T.

The uniqueness of D * means that we may choose it to be D * Φ for any rich Φ, and in particular, that we are allowed some leverage in choosing a convenient sequence Φ, as in the proof of the following result.

Theorem 7.2. The universal star sort D * is a coding sort for any theory T (see Definition 2.4), with the exceptional set being the root D 0 = {0}.

Proof. Being a coding sort (with some exceptional set) is invariant under definable bijections (that preserve the exceptional set). Therefore, despite the fact that D * is only well defined up to a homogeneous definable bijection, our statement makes sense. We may choose a rich sequence Φ on a sort D, as per Definition 6.3, and take D * = D * Φ . Let M T and αa ∈ D * Φ (M) {0}, and let N = dcl(αa) ⊆ M, necessarily a closed set (if M is multi-sorted, closed in each sort separately). Then α = 0, and N = dcl(a). In order to show that N M, it will suffice to show that it satisfies the Tarski-Vaught criterion: for every formula ϕ(x, y), where x is in the sort D N and y in one of the basic sorts, where the truth values are calculated in M. Since D projects, by hypothesis, onto any basic sort, we replace ϕ with its pull-back and assume that it is a formula on D N × D. Replacing ϕ with ϕ(x, y) -inf z ϕ(x, z), we may assume that ϕ is witness-normalised and the left hand side vanishes. Then it is enough to show that for every ε > 0 there exists b ∈ N such that ϕ(a, b) < ε, and replacing ϕ with an appropriate multiple, it is enough to require ϕ(a, b) ≤ 1 + 1/α. Choosing n such that ϕ n is a good-enough approximation of ϕ, it is enough to find b ∈ D(N) such that ϕ n (a <n , b) ≤ 1/α. For this, b = a n will do. This proves the coding models property of Definition 2.4.

For the density property, assume that M is separable, and let αa ∈ D(M). Assume first that α > 0. We may freely assume that ϕ k = 0 infinitely often. Let us fix n 0 , and define a sequence b ∈ D N as follows.

• We start with b <n 0 = a <n 0 .

• This argument shows, in particular, that there exists αa ∈ D(M) that codes M. Let α n = α/2 n . Then α n a ∈ D(M) codes M for each n, and α n a → 0, so the root can also be approximated by codes for M. Definition 7.3. Let T be any theory in a countable language, and D * its universal star sort. View it as a coding sort, as per Theorem 7.2, with exceptional set D 0 = {0}, and define the corresponding groupoid, as per Definition 3.1:

G * (T) = G D * (T).
We already know that this is an open Polish topological groupoid, with basis B * (T) ≃ S D * (T).

Theorem 7.4. The groupoid G * (T) is a complete bi-interpretation invariant for the class of theories in countable languages.

Proof. On the one hand, we have seen that D * , and therefore G * (T), only depends on the bi-interpretation class of T. Conversely, by Theorem 3.9, a theory bi-interpretable with T (namely, the theory T 2D * , up to some arbitrary choices of definable distance and symbols for the language) can be recovered from G * (T).

Our last task is to calculate the basis S D * (T) explicitly, and show how Theorem 7.4 extends previous results, in a style similar to that of Remark 3.13.

Let us fix a rich sequence Φ on a sort D, so we may take D * = D * Φ . We also fix a formula χ(y) on D that is onto [0, 1]. Finally, we may assume that ϕ n (x <n , y) = nχ(y) for infinitely many n.

Let X = S D N (T) and Y = S D * Φ (T). We may identify S * D N (T) with * X, identifying tp(αx) with α tp(x) (here we need to assume that T is complete, so there exists a unique possible complete type for 0 ∈ D * Φ ). This identifies Y with a subset of * X, namely that of all αp where p(x) implies that αx ∈ D * Φ , or equivalently, such that αϕ n (p) ≤ 1 for all n.

For α ∈ [0, 1], let

X α = {p ∈ X : αp ∈ Y}. In particular, X 0 = X. Define ρ : X → [0, 1] by ρ(p) = sup {α : αp ∈ Y} = sup {α : p ∈ X α }.
Lemma 7.5. Let α > 0. Then for every p ∈ X we have α ≤ ρ(p) if and only if p ∈ X α , and X α is compact, totally disconnected. In particular, ρ : X → [0, 1] is upper semi-continuous.

Proof. For the first assertion, it is enough to notice that by compactness, the supremum is attained, namely, p ∈ X ρ(p) . It follows that the condition ρ(p) ≥ α is equivalent to p ∈ X α , so it is closed, and ρ is upper semi-continuous.

Assume that αq i ∈ Y and q 0 = q 1 . Then for some finite n, there exists a formula ψ(x <n ) that separates q 0 from q 1 , say ψ(q i ) = i. We may also find a [0, 1]-valued formula χ(y) on D that attains (at least) the values 0 and 1. By Urysohn's Lemma, there exists a formula ϕ(x <n , y) ≥ 0 such that

|ψ(x <n ) + χ(y) -1| ≥ 1/3 =⇒ ϕ(x <n , y) = 0, |ψ(x <n ) + χ(y) -1| ≤ 1/6
=⇒ ϕ(x <n , y) = 17/α + 42. Since the formula χ attains both 0 and 1, the formula ϕ(x <n , y) is witness-normalised, so there exists k ≥ n with |ϕϕ k | ≤ 1.

Assume now that αp ∈ Y. Then ϕ k (x <k , x k ) p ≤ 1/α, so ϕ(x <n , x k ) p ≤ 1/α + 1 < 17/α + 42 and |ψ(x <n ) + χ(x k ) -1| > 1/6. This splits the set X α in two (cl)open sets, defined by ψ(x <n ) + χ(x k ) > 7/6 and ψ(x <n ) + χ(x k ) < 5/6, respectively. Since χ is [0, 1]-valued, q 0 must belong to the latter and q 1 to the former, so they can be separated in X α by clopen sets, completing the proof.

Lemma 7.6. The set X >0 = p ∈ X : ρ(p) > 0 = α>0 X α is totally disconnected, admitting a countable family of clopen sets (U n : n ∈ N) that separates points. Proof. We may write X >0 as k X 2 -k . Each X 2 -k is compact, totally disconnected, and it is metrisable by countability of the language. Therefore, it admits a basis of clopen sets.

The inclusion X 2 -k ⊆ X 2 -k-1 is a topological embedding of compact totally disconnected spaces. Therefore, if U ⊆ X 2 -k is clopen, then we may find a clopen U ′ ⊆ X 2 -k-1 such that U ′ ∩ X 2 -k = U. Proceeding in this fashion, we may find a clopen U ⊆ X >0 such that U ∩ X 2 -k = U.

We can therefore produce a countable family of clopen sets (U n : n ∈ N) in X >0 such that for each k, U n ∩ X 2 -k : n ∈ N is a basis of clopen sets for X 2 -k , and in particular separates points. It follows that (U n ) separates points in X >0 .

Given this family (U n ), we may define a map θ 0 : X >0 → 2 N , where θ 0 (p) n = 0 if p ∈ U n and θ 0 (p) n = 1 otherwise. It is continuous by definition, and injective since the sequence (U n ) separates points. If αp ∈ Y, then either α = 0 or p ∈ X >0 (or possibly both), and we may define θ(αp) = αθ 0 (p) ∈ * 2 N , where θ(0) = θ(0 • p) = 0 regardless of p. It is clearly continuous at 0, and at every point of Y (since θ 0 is continuous). It is also injective on Y. Since Y is compact, θ : Y → * 2 N is a topological embedding.

Lemma 7.7. The set of ρ(p)p for p ∈ X >0 is dense in Y.

Proof. We already know that ρ(p)p ∈ Y. Assume now that U ⊆ Y is open and non-empty, so it must contain some point αp with α > 0.

We may assume that

U = βq ∈ Y : |β -α| < ε, q ∈ V ,
where V is an open neighbourhood of p in X. The set V may be taken to be defined by a condition ψ > 0, where ψ(x <n ) only involves finitely many variables. By hypothesis on Φ, possibly increasing n, we may assume that ϕ n (x <n , y) = nχ(y), and we may further assume that α > 1/n. Choose a realisation a of p. Let b <n = a <n and choose b n so χ(b n ) = 1/nα. Then ϕ n (b <n , b n ) = 1/α, so ρ n+1 (b ≤n ) = α, and we may extend b ≤n to a sequence b such that ρ(x ′ ) = α. In particular, q = tp(b) ∈ V ∩ X >0 and αq = ρ(q)q ∈ U.

Let us recall from Charatonik [START_REF] Włodzimierz | The Lelek fan is unique[END_REF] a few definitions and facts regarding fans. The Cantor fan is the space * 2 N . It is a connected compact metrisable topological space. More generally, a fan F is a connected compact space that embeds in the Cantor fan. An endpoint of F is a point x ∈ F such that F {x} is connected (or empty, in the extremely degenerate case where F is reduced to a single point). If the set of endpoints is dense in F, then F is a Lelek fan. By the main theorem of Charatonik [START_REF] Włodzimierz | The Lelek fan is unique[END_REF], the Lelek fan is unique up to homeomorphism. Proposition 7.8. Let T be a complete theory. Then S D * (T), the type-space of the universal star sort D * in T, is homeomorphic to the Lelek fan.

Proof. By Lemma 7.5 to Lemma 7.7, the space S D * (T) is a Lelek fan. This gives us a hint as to how to relate the universal star sort with previously known coding sorts referred to in the examples of Section 3. Theorem 7.9. Assume T admits a universal Skolem sort D in the sense of [START_REF]Reconstruction of non-ℵ 0 -categorical theories[END_REF], and let L denote the Lelek fan. Then L * D is a universal star sort.

Proof. We may assume that L ⊆ * 2 N , and moreover, that for every non-empty open subset U ⊆ 2 N there exists α > 0 and t ∈ U such that αt ∈ L (otherwise, we may replace 2 N with the intersection of all clopen subsets for which this is true).

For each n ∈ N there is a natural initial projection 2 N → 2 n . This induces in turn a projection * 2 N → * 2 n . Let L n ⊆ * 2 n be the image of L under this projection, so L = lim ← -L n . Consequently, L * D = lim ← -(L n * D). Our hypotheses regarding L implies that the enpoints of L n can be enumerated as {α t t : t ∈ 2 n }, with α t > 0. If m ≥ n, then we have a natural projection L m → L n . If t ∈ 2 n , s ∈ 2 m-n , and ts ∈ 2 m is the concatenation, then α ts ts gets sent to α ts t ∈ L n , so α ts ≤ α t , and α ts = α t for at least one s. For any δ > 0, we may always choose m large enough such that for every t ∈ 2 n , the set {α ts : s ∈ 2 m-n } is δ-dense in the interval [0, α t ].

Let ϕ(u, v) be a star correspondence between L n * D and some other star sort E * , and let ε > 0. Choose δ > 0 appropriately, and a corresponding m as in the previous paragraph. Define a formula on 2 n × 2 m-n × D × E * by ϕ ′ (ts, x, v) = ϕ(α ts t * x, v).

On the one hand, since ϕ is witness-normalised in the first argument, ϕ ′ is witness-normalised in (ts, x). On the other hand, if v ∈ E * , then there exist αt ∈ L n (so α ≤ α t ) and x ∈ D (possibly in an elementary extension) such that ϕ(αt * x, v) = 0. Having chosen δ small enough to begin with, and m large enough accordingly, we may now find s ∈ 2 m-n such that α ts is close to α, sufficiently so that ϕ ′ (ts, x, v) = ϕ(α ts t * x, v) < ε. It follows that ϕ ′ -. ε is witness-normalised in either (ts, x) or v.

Let us now evoke a few black boxes from [START_REF]Reconstruction of non-ℵ 0 -categorical theories[END_REF]. First, 2 m × D is again a universal Skolem sort (and therefore stands in definable bijection with D). Second, since ϕ ′ -. ε is witness-normalised in either group of arguments, there exists a surjective definable function σ : 2 m × D → E * that satisfies (ϕ ′ -. ε) ts, x, σ(ts, x) ≤ ε, i.e., ϕ ′ ts, x, σ(ts, x) ≤ 2ε. Define on L m * D × E * (keeping in mind that if αts ∈ L m , then α ≤ α ts ):

ψ(αts * x, v) = d v, αα -1
ts σ(ts, x) . This formula is jointly sub-homogeneous (since d is, on E * ). It is also witness-normalised in αts * x (just choose v = αα -1 ts σ(ts, x)), and in v (since σ is surjective, and we may always choose α = α ts ). By construction, ϕ α ts t * x, σ(ts, x) ≤ 2ε, so multiplying all arguments by αα -1 ts : ϕ αt * x, αα -1 ts σ(ts, x) ≤ 2ε. Therefore, if ψ(αts * x, v) is small enough, ϕ αt * x, v ≤ 3ε, and by definition, if ψ(αts * x, v i ) is small for i = 0, 1, then d(v 0 , v 1 ) is small. Replacing ψ with a multiple, we may replace "small enough" with "smaller than one", and now, by Lemma 5.11, L * D is a universal star sort.

Corollary 7.10. Assume that T is ℵ 0 -categorical and let D 0 be as in Example 3.10. In other words, let M T be the separable model, a ∈ M N a dense sequence, and D 0 the collection of realisations of tp(a). Then D 0 is a definable set, i.e., a sort, and L * D 0 is a universal star sort.

Proof. In an ℵ 0 -categorical theory, every type-definable set is definable. By [Ben22, Proposition 4.17], 2 N × D 0 is a universal Skolem sort. Now, L * 2 N ⊆ ( * 2 N ) * 2 N = * (2 N × 2 N ) is easily checked to be a fan, whose set of endpoints is dense, so it is homeomorphic to L. Therefore L * (2 N × D 0 ) = (L * 2 N ) * D 0 ≃ L * D 0 . By Theorem 7.9, this is a universal star sort.

Define L (2) ⊆ L 2 as the set of pairs (x, y) such that either both x = y = 0, or both are non-zero. This is a Polish, albeit non-compact, star space, with root (0, 0). When G is a topological groupoid, we may equip L (2) * G with a groupoid composition law

  Convention 3.2. We usually consider the theory T and the coding sort D to be fixed and drop them from notation, so G = G D (T), B = B D (T), and so on. Lemma 3.3. Let D be a coding sort for T. (i) As defined above G = G D (T) is a Polish open topological groupoid with basis B = B D (T).

(

  ii) If g = tp(a, b) ∈ G, then s(g) = tp(b) ∈ B is its source, and t(g) = tp(a) ∈ B its target. (iii) If d is a definable distance on D, then the family of sets U r = tp(a, b) ∈ G : d(a, b) < r , for r > 0, forms a basis of open neighbourhoods for B in G.

  As a condition on tp(a, b), the property dcl(a) = dcl(b) is G δ by [Ben22, Lemma 5.1], and a, b / ∈ D 0 is open. Therefore G is Polish, as the union of a closed subset and a G δ subset of a Polish space. Each set U r is open and contains B. On the other hand, if U is any open neighbourhood of B in G, then it must be of the form W ∩ G, where W is an open neighbourhood of B in S D×D (T). Since B is defined there by the condition d(x, y) = 0, and by compactness, W must contains d(x, y) < r for some r > 0, so U contains U r .

Corollary 3. 6 .

 6 Every UCC function on G D (T) is bounded. Definition 3.7. Let G be a groupoid. A semi-norm on G is a function ρ : G → R + that satisfies

Lemma 5 .

 5 11. Let (D * n ) be an inverse system of star sorts, where each π n : D * n+1 → D * n is surjective and homogeneous. (i) The inverse limit D * = lim ← -D * n is a star sort, with the natural action α(u n ) = (αu n ) and the distance proposed in Example 5.3. (ii) A star correspondence between D * and E * that factors through D * n × E * is the same thing as a star correspondence between D *

  inf y ϕ(a, y) = inf b∈N ϕ(a, b),

  Having chosen b <k (for k ≥ n 0 ) such that αb <k ∈ D * k , we can always choose b k ∈ D(M) so αb ≤k ∈ D * k+1 . • If ϕ k = 0, then we may choose any b k ∈ D(M) that we desire. Since this happens infinitely often, we may ensure that dcl(b) = M. In the end, αb ∈ D * Φ and dcl(αb) = dcl(b) = M, so αb codes M. Taking n 0 large enough, αb is as close as desired to αa.

  [x, y, g] • [y, z, h] = [x, z, gh]. If B is the basis of G, then L * B is the basis of L (2) * G. Corollary 7.11. Let T be a continuous theory admitting a universal Skolem sort D, and let G(T) = G D (T), as in Example 3.12. Then G * (T) ≃ L (2) * G(T). If T is ℵ 0 -categorical, and G(T) is the automorphism group of its unique separable model, then G * (T) ≃ L (2) * G(T). Proof. Just put the identities D * = L * D and D * = L * D 0 through the groupoid construction.

  c) for every a ∈ D n . When b ∈ E 0 does not converge quickly (or possibly, at all), the value ρ n (a, b) is well defined, but potentially meaningless. If n ≤ k, then ρ n is the restriction of ρ k , so we may just denote all of them by ρ.The sequence of formulas(d ρ n ) is increasing. Moreover, if x, y ∈ D n and z ∈ E 0 , then so d ρ n ≤ d ρ n+1 ≤ d ρ n + 2 -n .Therefore the sequence (d ρ n ) converges uniformly to a formula d ρ on E 0 × E 0 , which must define a pseudo-distance as well. Let E 1 = (E 0 , d ρ ) be the quotient sort. By definition, each ρ n (x, y) is 1-Lipschitz in y with respect to d ρ , so it may be viewed as a formula on D n × E 1 . It is also 1-Lipschitz in x with respect to the distance on D n .Consider a ∈ D k and b, c ∈ E 1 , and assume that b n → a quickly (but c may be quite arbitrary). We have already observed that ρ(x, b) = d(x, a) for every x ∈ D n , for every n. Then, for every n ≥ k:

	As in Remark 1.2, we define pseudo-distances on E 0 by
	d ρ n (y, y ′ ) = sup	|ρ(x, y) -ρ(x, y ′ )|.
	x∈D n
	|ρ(x, z) -ρ(y, z)| ≤ sup	|d(x, z m ) -d(y, z m )| ≤ d(x, y),
	m

  • If D * is a star sort and d ′ (u, v) a jointly sub-homogeneous definable pseudo-distance on D * , then the quotient (D * , d ′ ) can be equipped with an induced star structure, making it again a star sort.• Let D * be a star sort and E * ⊆ D * a definable subset. Then the distance d(u, E * ) is sub-homogeneous if and only if E

* is closed under multiplication by α ∈ [0, 1], in which case E * is again a star sort.

  n , where ϕ ′ n (αx <n , y) = αϕ(x <n , y). By Lemma 6.1, each D * n is a star sort, and the natural projection D * n+1 → D * * n will be denoted by u n or αx <n (where x <n ∈ D n ), and similarly, variables in D * Φ will be denoted by u or αx.

	n Φ , via k for any k ≥ n, or even in D * n is also a sort, and therefore a star sort by Lemma 5.11. D * n can be viewed, implicitly, as a formula in D * Φ = lim is onto. By Lemma 1.5, D * ← -Notice that any formula in D * the projections D * k ։ D * n or D * Φ ։ D * n (this is, essentially, an addition of dummy variables). In what follows, variables in D

Author supported by ANR project AGRUME (ANR-17-CE40-0026).