Skip to main content
NIHPA Author Manuscripts logoLink to NIHPA Author Manuscripts
. Author manuscript; available in PMC: 2020 Mar 1.
Published in final edited form as: Discrete Comput Geom. 2018 Dec 13;61(2):247–270. doi: 10.1007/s00454-018-00050-1

On open and closed convex codes

JOSHUA CRUZ 1, CHAD GIUSTI 2, VLADIMIR ITSKOV 3, BILL KRONHOLM 4
PMCID: PMC6768430  NIHMSID: NIHMS1516662  PMID: 31571705

Abstract

Neural codes serve as a language for neurons in the brain. Open (or closed) convex codes, which arise from the pattern of intersections of collections of open (or closed) convex sets in Euclidean space, are of particular relevance to neuroscience. Not every code is open or closed convex, however, and the combinatorial properties of a code that determine its realization by such sets are still poorly understood. Here we find that a code that can be realized by a collection of open convex sets may or may not be realizable by closed convex sets, and vice versa, establishing that open convex and closed convex codes are distinct classes. We establish a non-degeneracy condition that guarantees that the corresponding code is both open convex and closed convex. We also prove that max intersection-complete codes (i.e. codes that contain all intersections of maximal codewords) are both open convex and closed convex, and provide an upper bound for their minimal embedding dimension. Finally, we show that the addition of non-maximal codewords to an open convex code preserves convexity.

Keywords: convex codes, intersection-complete codes, neural codes, combinatorial codes, embedding dimension

MSC codes: 52A37, 92B20, 54H99

1. Introduction.

The brain represents information via patterns of neural activity. Often, one can think of these patterns as strings of binary responses, where each neuron is “on” or “off” according to whether or not a given stimulus lies inside its receptive field. In this scenario, the receptive field UiX of a neuron i is simply the subset of stimuli to which it responds, with X being the entire stimulus space. A collection U={U1,,Un} of receptive fields for a population of neurons [n]=def{1,,n} gives rise to the combinatorial code1

code(U,X)=def{σ[n]such thatAσU}2[n],

where 2[n] is the set of all subsets of [n], and the atoms AσU correspond to regions of the stimulus space carved out by U:

AσU=def(iσUi)\jσUjX.

Here every stimulus xAσU gives rise to the same neural response pattern, or codeword, σ ⊆ [n]. By convention, iUi=X and thus AU=X\(i=1nUi), so that code(U,X) if and only if i=1nUiX. Note that code(U,X) may fail to be an abstract simplicial complex; see e.g. Figure 1.1.

Figure 1.1.

Figure 1.1.

An example of a cover U={Ui} and its code, C=code(U,X)={,2,3,12,23,34,123}, where X=R2. Here we denote a codeword {i1,i2,,ik}C by the string i1i2ik; for example, {1,2,3} is abbreviated to 123. Since 13C but 13 ⊂ 123, C is not a simplicial complex.

Definition 1.1. We say that a combinatorial code C2[n] is open convex if C=code(U,X) for a collection U={Ui}i=1n of open convex subsets UiXRd for some d ≥ 1. Similarly, we say that C is closed convex if C=code(U,X) for a collection of closed convex subsets UiXRd. For an open convex code C, the embedding dimension odim C is the minimal d for which there exists an open convex realization of C as code(U,X). Similarly, for a closed convex code cdim C is the minimal d that admits a closed convex realization of C.

Note that if the condition that all sets are open, or alternatively all sets are closed, is relaxed, then there are no known obstructions for a code to arise as a code of a convex cover. In particular, it has been proved in [5] that any code can be realized as a code of a cover by arbitrary convex sets. For this reason, we only consider either open or closed convex codes.

Open and closed convex codes have special relevance to neuroscience because neurons in a number of areas of mammalian brains possess convex receptive fields. A paradigmatic example is that of hippocampal place cells [12], a class of neurons in the hippocampus that act as position sensors. Here the relevant stimulus space XRd is the animal’s environment [14], with d ∈ {1,2,3}. Receptive fields can be easily computed when both the neuronal activity data and the relevant stimulus space are available. However, in many situations the relevant stimulus space for a given neural population may be unknown. This raises the natural question: how can one determine from the intrinsic properties of a combinatorial code whether or not it is an open (or closed) convex code? What is the embedding dimension of a code – that is, what is the dimension of the relevant stimulus space? How are open and closed convex codes related?

The code of a cover carries more information about the geometry/topology of the underlying space than the nerve of the cover. For example, it imposes more constraints on the embedding dimension than what is imposed by the nerve [3]. Arrangements of convex sets are ubiquitous in applied and computational topology, however all the standard constructions (e.g. the Čech complex) rely only on the nerve of the cover, and do not carry any information about the arrangement beyond the nerve. While the properties of nerves of convex covers were previously studied in [8, 9, 13], codes of convex covers are much less understood. Moreover, although any simplicial complex can be realized as the nerve of an open or closed convex cover (in high enough dimension), not all combinatorial codes can be realized from arrangements of open or closed convex sets in Euclidean space.

There is currently little understanding of what makes a code open or closed convex beyond ‘local obstructions’ to convexity [6, 2]. Furthermore, local obstructions can only be used to show that a code is not open or closed convex, and the absence of local obstructions does not guarantee open or closed convexity of the code [11]. To show that a code is open or closed convex, one must produce a realization, and there are few results that guarantee such an open or closed convex realization exists. Our first main result makes significant progress in this regard, as it provides a general condition for determining that a code is convex from combinatorial properties alone. Specifically, we show that max intersection-complete codes – i.e., codes that contain all intersections of their maximal2 codewords – are both open convex and closed convex.

Theorem 1.2. Suppose C2[n] is a max intersection-complete code. Then C is both open convex and closed convex. Moreover, the embedding dimensions satisfy odim Cmax{2,(k1)} and cdim Cmax{2,(k1)}, where k is the number of maximal codewords of C.

The fact that max intersection-complete codes are open convex was first hypothesized in [2], where it was shown that these codes have no local obstructions. In our proof we provide an explicit construction of the convex realizations and the upper bound for the corresponding embedding dimensions. This dimension bound is tight. It is achieved on the “deleted simplex code” C=2[k]\[k], since Helly’s theorem forbids a realization of this code by convex sets in Rd for any d < k – 1.

Our next main result shows that open convex codes exhibit a certain type of monotonicity, in the sense that adding non-maximal codewords to an open convex code preserves convexity.

Theorem 1.3. Assume that a code C2[n] is open convex. If DC has the same maximal codewords as C, then D is also open convex and has embedding dimension DodimC+1.

It is currently unknown if the monotonicity property holds for the closed convex codes.

It has been recently shown in [5] that any code can be realized by a convex cover in the absence of any other constraints imposed on the convex sets in the cover. This highlights the importance of the “open” or “closed” conditions in Definition 1.1 and raises a natural question: what is the relationship of the open and the closed convex codes?

Here we establish that open convex codes and closed convex codes are indeed distinct classes of codes, that is, one class is not a sub-class of the other. This result suggests that combinatorial properties of convex codes are richer than previously believed. This finding motivates us to find a non-degeneracy condition on the cover that guarantees that the corresponding code is both open convex and closed convex. Theorem 2.12 in Section 2.3 establishes that this condition is sufficient. It is also used as one of the main ingredients in the proof of Theorem 1.2. We propose that codes that are both open convex and closed convex are the most relevant to neuroscience, as the intrinsic noise in neural responses makes the difference between open and closed receptive fields unobservable [10] .

2. Convex codes.

We begin with observing that without sufficiently strong assumptions about the cover U={Ui}, any code can be realized as code (U,X).

Lemma 2.1. Every code C2[n] can be obtained as C=code(U,X) for a collection of (not necessarily convex) UiR1.

Proof. It suffices to consider the case where each i ∈ [n] appears in some codeword σC. For each σC, choose points xσR1 such that xσxτ if στ. Define Ui = {xσiσ} and U={Ui}i[n]. If C, then C=code(U,R1). Otherwise, C=code(U,X), where X=σC{xσ}. □

The sets Ui in the above proof are finite subsets of R1. However, even if one requires that the sets Ui be open and connected, almost all codes can still arise as the code of such cover.

Lemma 2.2. Any code C2[n] that contains all singleton codewords, i.e. ∀i ∈ [n], {i}C, can be obtained as C=code(U,X) for a collection of open connected subsets UiR3.

Proof. Similar to the proof of Lemma 2.1, one can place disjoint open balls BσR3 for each σC and define Ui=(iσBσ)Ti, where each TiR3 is a collection of open “narrow tubes” that connect all the balls Bσ with σi. Because these sets are embedded in R3, the “tubes” Ti can always be arranged so that for each ij the intersections TiTj are contained in the union of the balls Bσ. Take X=(i=1nUi)B if C, or X=i=1nUi if not. By construction, the Ui are connected and open, and C=code(U,X). □

The condition of having all singleton words can not be relaxed without any further assumptions. For example, it can be easily shown that the code C={,1,2,13,23}, previously described in [3, 6] cannot be realized as a code of a cover by open connected sets3.

2.1. Known local obstructions to convexity.

Any combinatorial code C2[n] can be completed to an abstract simplicial complex Δ(C), the simplicial complex of the code, which is the minimal simplicial complex containing C 4 Note that Δ(C) is determined solely by the maximal codewords of C (facets of Δ(C)). A code can thus be thought of as a simplicial complex with some of its non-maximal faces “missing”. Moreover, given a collection of sets U and X, one can easily see that the simplicial complex of code(U,X) is equal to the usual nerve of the cover U:

Δ(code(U,X))=nerve(U)=def{σ[n]such thatiσUi}.

For example, Figure 1.1 depicts a code of the form C=code(U,X) that differs from its simplicial complex Δ(C) because the subset {1, 3} is missing. This results from the fact that U1U3U2, a set containment that is not encoded in nerve(U).

Not every code arises from a closed convex or open convex cover. For example, the code C={,1,2,13,23} above cannot be an open (or closed) convex code. The failure of this code to be open or closed convex is “local” in that it is missing the codeword 3, and adding new codewords which do not include i = 3 would not make this code open or closed convex.

In the setting of simplicial complexes, such locality is often characterized by studying an auxiliary simplicial complex called the link of a simplex. This notion can be directly generalized for codes.

Definition 2.3. For any σ ⊂ [n] the link of C at σ is the code linkσC2[n]\σ2[n] on the same set of neurons, defined as

linkσC=def{τ2[n]\στσCandτσ=}.

For codes, the link is typically not a simplicial complex, but because both linkσC and linkσΔ(C) have the same set of maximal elements,

Δ(linkσC)=linkσΔ(C).

Moreover, it is easy to see that if C=code(U,X), then for every non-empty σΔ(C)

linkσC=code({UjUσ}j[n]\σ,Uσ),whereUσ=iσUi.

Since any intersection of convex sets is convex, we thus observe

Lemma 2.4. If C is an open (or closed) convex code, then for any σΔ(C), linkσC is also an open (or closed) convex code.

Lemma 2.4 provides a framework for studying how local features of a code can obstruct realization by open or closed convex sets. Consider those faces σΔ(C)\C, which we refer to as the simplicial violators of C. Suppose C is an open or closed convex code realized as code(U,X), σ is a simplicial violator, and write Vj = UjUσ. Then the code linkσC=code({Vi},Uσ) is special in that the convex sets Vj cover another convex set Uσ. This appearance of a good cover suggests a topological approach, via a special case of the nerve lemma.

Lemma 2.5 (Nerve Lemma, [1, 4]). For any finite cover V={Vi}i[n] by convex sets ViRd that are either all open or all closed5, the abstract simplicial complex

nerve(V)=def{σ[n]such thatiσVi}2[n],

known as the nerve of the cover is homotopy equivalent to the underlying space X=i[n]Vi.

Since all convex sets are contractible, a simple corollary of Lemma 2.4 and the nerve lemma is the following observation (which first appeared in [6]), that provides a class of local obstructions to a code being open (or closed) convex.

Proposition 2.6. Let σ ≠ ∅ be a simplicial violator of a code C. If linkσΔ(C) is not a contractible simplicial complex, then C is not an open (or closed) convex code.

Proof. Assume the converse, i.e. C is open (or closed) convex and σ a simplicial violator of C. Then the sets UjUσ cover a convex and open (or closed) set Uσ, and thus by the nerve lemma the simplicial complex

nerve({UjUσ}j[n]\σ)=Δ(linkσC)=linkσΔ(C)

is contractible. □

As an example, consider C={,1,2,3,4,123,124}. Then σ = 12 is a simplicial violator of C and linkσC={3,4}. Since Δ(linkσC) is not contractible, the code C is not the code of an open (or closed) convex cover. This is perhaps the minimal example of a code that cannot be realized by open or closed convex sets but can be realized by an open cover by connected sets. In fact, all the codes which are neither open nor closed convex on three neurons (these were classified in [3]) cannot be realized by open (or closed) connected sets. This is because the only obstruction to open or closed convexity is the “disconnection” of one set, similar to the case of the code C={,1,2,13,23}.

2.2. Do truly “non-local” obstructions via nerve lemma exist?

The local obstructions to open or closed convexity in Proposition 2.6 equally apply to any open or closed good cover, i.e. a cover where each non-empty intersection Uσ=iσUi is contractible. Since this property stems from applying the nerve lemma to the cover of Uσ by the other contractible sets, it is natural to define a more general non-local obstruction to convexity that also stems from the nerve lemma.

Definition 2.7. We say that a subset σ ⊆ [n] covers a code C2[n] if for every τC, τσ ≠ ∅.

Note that any code covered by at least one set σ does not contain the empty set. Moreover, σ covers C=code({Ui}i[n],i[n]Ui) if and only if i[n]Ui=jσUj; that is, {Uj}jσ is a cover of i[n]Ui.

Lemma 2.8. If there exist two non-empty subsets σ1, σ2 ⊆ [n] that both cover the code C2[n], but the codes Cσa=def{τσaτC}2σa for a ∈ {1, 2} have simplicial complexes Δ(Cσa) that are not homotopy equivalent, then C is not a code of a convex cover by open (or closed) sets in Rd.

This type of obstruction to open or closed convexity can be thought as non-local, as it is conditioned on the homotopy type of a complex which covers the entire code. The proof is a simple extension of the proof of Proposition 2.6, without foreknowledge of the homotopy type of the covered space.

Proof. Suppose C=code(U,i[n]Ui) for some open (or closed) convex sets U. The condition that each of the non-empty subsets σa covers the code C implies that that i[n]Ui=jσaUj for each a ∈ {1, 2}. Thus, by the nerve lemma, Δ(C) has the same homotopy type as each of the complexes Δ(Cσa), and in particular they are homotopy equivalent to one another. This yields a contradiction. □

While it is straightforward to produce combinatorial codes with such non-local obstructions, every such code that we have considered6 also possesses a local obstruction for open or closed convexity. Perhaps the smallest such example is the code C={23,14,123}. This code meets the conditions of Lemma 2.8 with σ1 = {12}, and σ2 = {34}, but also has a local obstruction for the simplicial violator σ = {1}. This provides some evidence for the conjecture that any code C2[n] that has a non-local obstruction to open or closed convexity of the type described in Lemma 2.8 must also have a local obstruction.

2.3. The difference between open and closed convex codes.

The homotopy type obstructions via the nerve lemma are obstructions to being a code of a good cover (as opposed to convex sets) and equally apply to both open and closed versions of the Definition 1.1. However, it turns out that the open and the closed convex codes are distinct classes of codes. Perhaps a minimal example of an open convex code that is not closed convex is the code

C={123,126,156,456,345,234,12,16,56,45,34,23,}2[6]. (1)

This code is realizable by an open convex cover (Figure 2.1a) and also by an open or closed good cover (Figure 2.1b).

Figure 2.1.

Figure 2.1.

Two different realizations of the code C in (1). In both cases, the ambient space is X=R2. (a) The open realization in consists of six open half-disks (or half-spaces), with opposite pairs sharing their linear boundary components. Three-element codewords correspond to the six open “pie slices”, while two-element words lie in the boundaries between these. (b) The closed good realization consists of closed annular sections. Two-element codewords correspond to the interior of pairwise intersections, while three-element codewords arise from the 1-dimensional triple intersections.

Lemma 2.9. The code (1) is not closed convex.

The proof is given in the Appendix, Section 5.1. A different example,

C={2345,124,135,145,14,15,24,35,45,4,5}2[5], (2)

was originally considered in [11], where it was proved that it is not open convex and possesses a realization by a good open cover (Figure 2.2b), thus does not have any “local obstructions” to convexity. However, it turns out that this code is closed convex (see a closed realization in Figure 2.2a).

Figure 2.2.

Figure 2.2.

Two different realizations of the code in (2). In both examples, the ambient space is the union of the sets, and the four-element codeword is realized in the bottom-center in both cases.

The examples in (1) and (2) show that open convex and closed convex are distinct classes of codes. Moreover, they illustrate that one cannot generally “convert” an open convex realization into a closed convex realization or vice versa by simply taking closures or interiors of sets in a cover: realizations of these codes by convex sets require fine-tuned intersections of boundaries, which results in a change in the code when closures or interiors are taken. Nevertheless, it is intuitive that open and closed versions of a “sufficiently non-degenerate” cover should yield the same code.

A natural candidate for such a condition would be that the sets in the cover U are in general position, i.e. there exists ε > 0 such that any cover V={Vi} whose sets Vi are no further than ε from Ui in the Hausdorff distance7, has the same code: code(U,Rd)=code(V,Rd). However, being in general position is too strong a condition; there are covers of interest that are not in general position, yet yield the same code after taking the closure or interior. For example, in the proof of Lemma 3.1, the “chipping away” process which introduces new codewords requires that the boundaries of the sets involved partially coincide in specified patterns. We wish to apply this result to construct both open and closed realizations in the proof of Theorem 1.2, so require the following weaker condition.

Definition 2.10. A cover U={Ui}i[n], with UiRd, is non-degenerate if the following two conditions hold:

  • (i)
    For all σcode(U,Rd), the atoms AσU are top-dimensional, i.e. any non-empty intersection with an open set BRd has non-empty interior:
    Bis open andAσUBint(AσUB).
  • (ii)

    For all non-empty σ ⊆ [n], iσUi(iσUi).

Note that if a cover U is open, convex and in general position, then it is non-degenerate (see Lemma 5.3 in the Appendix), while an open convex and non-degenerate cover need not be in general position. On the other hand, a closed, convex cover in general position consisting of sets need not be non-degenerate: take any of the sets Ui to have empty interior. We should also note that the two seemingly separate conditions (i) and (ii) in Definition 2.10 are motivated by the following observation.

Lemma 2.11. Assume that U={Ui} is a finite cover by convex sets. Then,

  • (a)

    if all Ui are open and U satisfies Definition 2.10 (ii), then it also satisfies Definition 2.10 (i);

  • (b)

    if all Ui are closed and U satisfies Definition 2.10 (i), then it also satisfies Definition 2.10 (ii).

The proof is given in the Appendix (Section 5.2, Lemmas 5.2 and 5.4). Note that if the sets Ui are open and convex, then Definition 2.10 (i) does not imply Definition 2.10 (ii), similarly if the sets Ui are closed and convex then Definition 2.10 (ii) does not imply Definition 2.10 (i)8.

For an open cover U={Ui}, we denote by cl(U) the cover by the closures Vi = cl(Ui). Similarly, for a closed cover U={Ui} we denote by int(U) the cover by the interiors Vi = int(Ui). Recall that if a set is convex, then both its closure and its interior are convex.

Theorem 2.12. Assume that U={Ui} is a convex and non-degenerate cover, then

Uiare opencode(U,Rd)=code(cl(U),Rd);Uiare closedcode(U,Rd)=code(int(U),Rd).

That is, all codes which admit a realization by a convex, non-degenerate cover are both open and closed convex.

The proof is given in the Appendix (Section 5.3). This theorem guarantees that if an open convex code is realizable by a non-degenerate cover, then it is also closed convex; similarly if a closed convex code is realizable by a non-degenerate cover, then it is also open convex. Non-degenerate covers are thus natural in the neuroscience context, where receptive fields (i.e. the sets Ui) should not change their code after taking closure or interior, since such changes in code would be undetectable in the presence of standard neuronal noise. This suggests that convex codes that arise from non-degenerate covers should serve as the standard model for convex codes in neuroscience-related contexts. Note that the existence of a non-degenerate convex cover realization is extrinsic in that it is not defined in terms of the combinatorics of the code alone. A combinatorial description of such codes is unknown at the time of this writing.

3. Monotonicity of open convex codes.

The set of all codes C2[n] with a prescribed simplicial complex K = Δ(C) forms a poset. It is easy to see that if C is an open or closed convex code then its sub-codes can be non-convex. For example any non-convex code is a sub-code of its simplicial complex, and every simplicial complex is both an open and closed convex code (this follows from Theorem 1.2 in Section 4). It turns out that open convexity is a monotone increasing property.

Theorem 1.3. Assume that a code C2[n] is open convex. Then every code D that satisfies CDΔ(C) is also open convex with open embedding dimension DodimC+1.

Note that the above bound on the embedding dimension is sharp. For example, the open convex code C={123,12,1} has embedding dimension odimC=1, but its simplicial complex D=Δ(C) has embedding dimension D=2. To prove this theorem we shall use the following lemma. Let M(C) denote the facets9 of the simplicial complex Δ(C).

Lemma 3.1. Let U={Ui} be an open convex cover in Rd, d ≥ 2, and XRd with C=code(U,X). Assume that there exists an open Euclidean ball BRd such that code({BUi},BX)=C, and for every αM(C), its atom has non-empty intersection with the boundary of B:BAαU. Then for every D such that CDΔ(C), there exists an open convex cover V={Vi} with ViUi, such that D=code(V,BX). Moreover, if the cover U is non-degenerate, then the cover V can also be chosen to be non-degenerate.

The proof of this lemma is given in Section 5.4. Intuitively, the reason why this lemma holds is that one can “chip away” small pieces from the ball B inside some atoms AαU to uncover only the atoms corresponding to the codewords in D\C.

Proof of Theorem 1.3. Assume that U is an open convex cover in Rd with C=code(U,X). Since there are only finitely many codewords, there exists a radius r > 0 and an open Euclidean ball BrdRd, of radius r, centered at the origin, that satisfy code({BrdUi},BrdX)=C. Let π:Rd+1Rd be any linear projection. Let B=defBrd+1 denote the open ball in Rd+1, centered at the origin and of the same radius r. Define U~i=π1(Ui). By construction, U~={U~i} is an open, convex cover, such that each of its atoms has non-empty intersection with the sphere ∂B. Moreover, code({BU~i},Bπ1(X))=C. Thus the conditions of Lemma 3.1 are satisfied for the cover U~, and D is an open convex code with DodimC+1. □

Note that the proof of Lemma 3.1 (see Section 5.4) breaks down if one assumes that the convex sets Ui are closed. Moreover, it is currently not known if the monotonicity property holds in the setting of the closed convex codes. The differences between the open convex and the closed convex codes (described in the previous section) leave enough room for either possibility.

4. Max intersection-complete codes are open and closed convex.

Here we introduce max intersection-complete codes and prove that they are open convex and closed convex. The open convexity of max intersection-complete codes was first hypothesized in [2].

Definition 4.1. The intersection completion of a code C is the code that consists of all non-empty intersections of codewords in C:

C^={σσ=νCνfor some non-empty subcodeCC}.

Note that the intersection completion satisfies CC^Δ(C).

Definition 4.2. Let C2[n] be a code, and denote by M(C)C the subcode consisting of all maximal codewords10 of C. A code C is said to be

  • intersection-complete if C^=C;

  • max intersection-complete if M(C)^C.

Note that any simplicial complex (i.e. C=Δ(C)) is intersection-complete and any intersection-complete code is max intersection-complete. Intersection-complete codes allow a simple construction of a closed convex realization that we describe in Section 5.5 (see Lemma 5.9). However, in order to prove that max intersection-complete codes are both open and closed convex, we need the following.

Proposition 4.3. Let C2[n] be a code with k maximal elements. Then there exists an open convex and non-degenerate cover U in d = (k – 1)-dimensional space whose code is the intersection completion of the maximal elements in C:code(U,Rd)=M(C)^.

Proof. Denote the maximal codewords as M(C)={σ1,σ2,σk}. If k = 1 this statement is trivially true. Assume k2 and consider a regular geometric (k – 1)-simplex Δk–1 in Rk1 constructed by evenly spacing vertices [k] on the unit sphere Sk2Rk1. Construct a collection of hyperplanes {Pa}a=1k in Rk1 by taking Pa to be the plane through the facet of Δk−1 which does not contain vertex a. Denote by Ha+ the closed half-space containing the vertex a bounded by Pa and by Ha the complementary open half-space. Observe that this arrangement splits Rk1 into 2k – 1 disjoint, non-empty, convex chambers

Hρ=aρHa+bρHb,

indexed by all non-empty11 subsets ρ ⊆ [k].

For every i ∈ [n] consider ρ(i)=def{a[k]σai}[k], i.e. the collection of indices of the maximal codewords σa that contain i, and construct a collection of convex open sets U={Ui}

Ui=defρρ(i)Hρ.

To show that the sets Ui are convex and open, observe that the above construction implies that we have the disjoint unions

Rk1=ρHρandHb+=ρbHρ,

thus

Rk1\Ui=(ρHρ)\(ρρ(i)Hρ)=ρρ(i)Hρ=bρ(i)(ρbHρ)=bρ(i)Hb+.

Therefore, by de Morgan’s Law,

Ui=Rk1\(bρ(i)Hb+)=bρ(i)Hb. (3)

This is an intersection of open convex sets, and therefore open and convex. Note that if ρ(i) = [k], this is an intersection over an empty index, and we interpret this set as all of Rk1.

To show that code(U,Rk1)=M(C)^, observe that because the chambers of the hyperplane arrangement satisfy HρHν ≠ ∅ iff ρ = ν, we have the following identities:

iσUi=iσρρ(i)Hρ=νiσρ(i)Hν,jσUj=jσνρ(j)Hν.

Thus, for a subset σ ⊆ [n], the atom AσU of the cover U={Ui} is non-empty if and only if there exists a non-empty subset ν ⊆ [k] that satisfies the following two conditions:

νiσρ(i); (4)
νρ(j),jσ. (5)

Note that the first condition (4) can be re-written as ∀aν, ∀iσ, iσa, which is equivalent to σaνσa. Similarly, the second condition (5) can be re-interpreted as

jσ,bν,jσb[n]\σbν[n]\σbσbνσb.

Thus AσUσ=bνσb, for some non-empty ν ⊆ [k]. This proves that code({Ui},Rk1)=M(C)^.

Lastly, we show that the cover U is non-degenerate. By construction, the half-spaces Ha are open, convex and in general position. Thus Lemma 5.3 guarantees that the cover H={Ha} is non-degenerate and using Lemma 5.5 in the Appendix we conclude that for any non-empty τ ⊆ [k], aτcl(Ha)=cl(aτHa). For any non-empty subset σ ⊆ [n] we can combine this with the equality (3) to obtain

cl(iσUi)=cl(iσaρ(i)Ha)=iσaρ(i)cl(Ha)=iσcl(aρ(i)Ha)=iσcl(Ui).

Since Ui are open we obtain

iσUi=iσ(cl(Ui)\Ui)iσ(cl(Ui)\iσUi)=(iσcl(Ui))\iσUi=cl(iσUi)\iσUi=(iσUi).

Therefore by Lemma 2.11 (a) the open and convex cover U is also non-degenerate. □

As a corollary we obtain the main result of this section:

Theorem 1.2. Suppose C2[n] is a max intersection-complete code. Then C is both open convex and closed convex with the embedding dimension d ≤ max {2, (k – 1)}, where k is the number of facets of the complex Δ(C).

Note that the case of k = 1, i.e. M(C)={[n]}, was proved in [2].

Proof. We first consider the case when the number of maximal codewords is k ≥ 3 and begin by constructing convex regions {Hρ}ρ∈2[k]\∅ and the open convex cover {Ui}i=1n as in the proof of Proposition 4.3 (see Figure 4.1). In this cover, every atom that corresponds to a maximal codeword is unbounded, therefore we can apply Lemma 3.1 using the open ball of radius 2 centered at the origin. This yields an open convex and non-degenerate cover, thus by Theorem 2.12 the code C is both open convex and closed convex.

Figure 4.1.

Figure 4.1.

The oriented hyperplane arrangement {Pa} and its chambers Hρ.

For the case k = 1, we note that the proof given in [2] is equivalent to assigning each Ui to be the open ball of radius 2 centered at the origin in R2, and applying Lemma 3.1 to modify this cover to produce codewords properly contained in the unique maximal codeword. If k = 2, formally add γ = ∅ as an element of M(C) and apply the same construction given above. As all intersections involving γ are empty, the sets Ui are contained entirely in Hγ, but no other modifications are necessary to perform the construction as described in the case of k ≥ 3. □

Acknowledgments

VI was supported by Joint NSF DMS/NIGMS grant R01GM117592, and NSF IOS-155925. CG and VI also gratefully acknowledge the support of SAMSI, under grant NSF DMS-1127914. We also thank Carina Curto for numerous discussions.

5. Appendix: supporting proofs

5.1. Proof of Lemma 2.9.

Proof. Consider the code C in (1) and assume that there exists a closed convex cover U={Ui} in Rd, with code(U,Rd)=C. Without loss of generality, we can assume that the Ui are compact12. Because Ui are compact and convex one can pick points x123, x345, and x156 in the closed atoms A123U, A345U and A156U respectively so that for every aA123U, its distance to the closed line segment M=x345x156¯ satisfies13 dist(a, M) ≥ dist(x123, M) ≠ 0, i.e. x123 minimizes the distance to the line segment M. Moreover, the points x123, x156, x345 cannot be collinear. For the rest of this proof we will consider only the convex hull of these three points (Figure 5.1).

Figure 5.1.

Figure 5.1

Consider the closed line segment L=x123x156¯. Because U1 is convex, LU1, therefore the code (1) of the cover imposes that

LA123UA12UA126UA16UA156U.

Because each of the atoms above is contained in either U2 or U6, LU2U6. Since L is connected and the sets U2L and U6L are closed and non-empty, we conclude that U2U6LA126U must be non-empty, thus there exists a point x126A126UL that lies in the interior of L. By the same argument, there also exist points

x234A234Uin the interior ofx123x345¯U3,covered byU2andU4,y123A123Uin the interior ofx234x126¯U2,covered byU1andU3,

and these points must lie on the interiors of their respective line segments (Figure 5.1).

Finally we observe that because the point y123A123U lies in the interior of a line segment x234x126¯, it also lies in the interior of the closed triangle ∆(x123, x156, x345), and thus d(y123, M) < d(x123, M). This yields a contradiction, since we chose x123A123U to have the minimal distance to the line segment M. □

5.2. Proofs of lemmas, related to the non-degeneracy condition.

We shall need the following several lemmas. The following lemma is well-known (see e.g. [7], exercises in Chapter 1), nevertheless we give its proof for the sake of completeness.

Lemma 5.1. For any finite cover U={Ui}i=1n and a subset σ ⊆ [n], the following hold:

cl(iσUi)=iσcl(Ui), (6)
cl(iσUi)iσcl(Ui), (7)
int(iσUi)=iσint(Ui), (8)
int(iσUi)iσint(Ui). (9)

Proof. Observe that since Ui ⊆ cl(Ui), we have iσUiiσcl(Ui) and thus

cl(iσUi)cl(iσcl(Ui))=iσcl(Ui). (10)

Similarly, we find the inclusion (7). Using Ui ⊇ int(Ui), one also obtains the inclusion (9) and the inclusion

int(iσUi)iσint(Ui). (11)

Observe that for any jσ, cl(Uj)cl(iσUi) and int(Uj)int(iσUi), thus we obtain iσcl(Ui)cl(iσUi) and iσint(Ui)int(iσUi). These combined with (10) and (11) yield (6) and (8) respectively. □

Lemma 5.2 (Lemma 2.11(a)). Suppose U={Ui}i[n] is an open and convex cover such that for every non-empty subset τ ⊆ [n], iτUi(iτUi). Then every atom of U is top-dimensional.

Proof. Assume the converse, i.e. there exists non-empty σ ⊂ [n] and an open subset BRd such that that AσUB and int(AσUB)=. Let xAσUB, and denote by τ ⊂ [n] \ σ, the maximal subset such that xjτUj. Note that τ is non-empty14 and therefore (using the assumption of the lemma) x(jτUj). Denote by ε0 > 0 the maximal radius such that the open ball Bε0(x) satisfies (a) Bε0(x)BiσUi and (b) for every l ∉ (στ), Bε0(x) ∩ Ul = ∅.

Observe that for every point yjτUj and every ε ∈ (0, ε0), the point zϵ(y)=x+εxyxy satisfies zϵ(y) ∉ Uj for every jσ. This is because for every jτ, the open set Uj is convex, thus if x∂Uj, and yUj, then zϵ(y) ∉ Uj, as in Figure 5.2. We thus conclude that zϵ(y)AσUB. Since the intersection jτUj is open, the totality of all such points zϵ(y) form an open cone CxAσUB. Therefore int(AσUB)int(Cx), a contradiction. □

Figure 5.2.

Figure 5.2.

Construction of points in int(AσUB) from the proof of Lemma 5.2.

Lemma 5.3. Suppose U is an open and convex cover in general position, then U is a non-degenerate cover.

Proof. Assume U is in general position, open, convex, yet not non-degenerate. Then, by Lemma 5.2 there exists a non-empty subset σ ⊆ [n] so that iσUi(iσUi). Let us choose x(iσUi)\(iσUi). Suppose there exists ziσUi, then the open line segment between x and z is contained in iσUi, and thus x(iσUi), a contradiction. Therefore, iσUi=, and for every τσ, τcode(U,Rd).

For any ε > 0, define an open cover V(ε)={Vi(ε)} by Vi(ε) = UiBε(x) for iσ and Vj(ε) = Uj otherwise. Notice that iσVi(ε)=Bε(x). Thus for any ε > 0, there exists τσ with τcode(V(ε),R). Because x lies in the boundary of Ui for each iσ, each Vi(ε) is no more than ε away from Ui w.r.t. the Hausdorff distance. Therefore U is not in general position, a contradiction. □

Lemma 5.4 (Lemma 2.11(b)). Assume that every atom of the cover U={Ui} is top-dimensional, i.e. any non-empty intersection with an open set BRd has non-empty interior, and the subsets Ui are closed and convex, then for any non-empty τ ⊆ [n],

iτUi(iτUi), (12)
iτUi(iτUi). (13)

Proof. To show (12) assume the converse. Then there exist a point x(iτUi)int(iτUi) at the interior, and an open ball Bx, such that BiτUi. First, let us show that these assumptions imply that

Biτint(Ui)=. (14)

Indeed, if there existed a point yBiτint(Ui), then for every ε > 0 such that z = x+ε(xy) ∈ B and every iτ, zUi by convexity of Ui15. This implies BiτUi, a contradiction, thus (14) holds.

Denote by ρτ the element of code({Ui},Rd) such that xAρU=iρUi\jρUj. Because the sets Uj are closed, we can choose the open ball Bx, that satisfies (14) so that it is disjoint from jρUj. Therefore, using (8), we obtain

int(BAρU)=int(BiρUi)int(BiτUi)=Biτint(Ui)=.

Since xBAρU, this contradicts the non-degeneracy of U, and thus finishes the proof of (12).

To prove (13), consider xiτUiiτUi. Because of (12), any open neighborhood Ox satisfies OiτUi and thus OiτUi. Therefore x(iτUi). □

Note that if the condition that the sets Ui are convex is violated, then the conclusions of the above lemma may not hold. For example, the sets U1={(x,y)R2yx2} and U2={(x,y)R2yx2} do not satisfy the inclusion (12).

Lemma 5.5. If the cover U={Ui}i[n] is non-degenerate, then for every non-empty subset σ ⊆ [n]

Uiare closed and convexint(iσUi)=iσint(Ui), (15)
Uiare open and convexcl(iσUi)=iσcl(Ui). (16)

Proof. First, we show that if the cover U is non-degenerate and closed convex, then

int(iσUi)iσint(Ui). (17)

It suffices to show that if xiσint(Ui), then x(iσUi)(Rd\iσUi). If xiσUi, then this is true, thus we can assume that the set τ=def{iσxUi} is non-empty, and since xiσint(Ui), we conclude that xiτUi. Thus by Lemma 5.4 ((12)), x(iτUi). Now observe that iσUi=AB with A=defiτUi and B=defjσ\τUj. Since xB, and B is closed, there exists an open neighborhood Ox with OB = ∅. Therefore, using (8) we obtain that

Oint(A)=int(OA)=int(O(AB))=Oint(AB),

and thus we conclude

xAO=(A\intA)O=((AB)\(int(AB)O))O=(AB)O.

Thus, x(AB)=(iσUi), which proves (17). Combined with (9) in Lemma 5.1, this finishes the proof of (15).

To prove (16), taking into account (7), we need to show that cl(iσUi)iσcl(Ui). Assume the converse, then there exists xiσcl(Ui) and r > 0 such that

ε(0,r)the openεballBε(x)satisfiesBε(x)iσUi=. (18)

Denote τ=def{iσxUi}; we can assume that τ is non-empty (otherwise, xcl(iσUi)). Using the condition (ii) of Definition 2.0 we conclude xiτUi(iτUi), thus for every open ε-ball Bε(x) centered at x, Bε(x)iτUi. Because xjσ\τUj, and Uj are open, for a sufficiently small ε, Bε(x)jσ\τUj. Thus Bε(x)iσUi, which contradicts (18). This finishes the proof of (16). □

5.3. Proof of Theorem 2.12.

Proof. We need to show that if U is convex and non-degenerate, then the cover of closures cl(U)=def{cl(Ui)} and the cover of interiors int(U)=def{int(Ui)} have the same code as U. First, we show that code(U)=code(cl(U)). Let AσU denote an atom of U and Aσcl(U) denote the corresponding atom of cl(U). If AσU=, then using (16) and (6) we conclude that

iσUijσUjcl(iσUi)cl(jσUj)iσcl(Ui)jσcl(Uj),

and thus Aσcl(U)=. Therefore, code(cl(U))code(U). On the other hand, using (6) we obtain

Aσcl(U)=iσcl(Ui)\jσcl(Uj)=iσcl(Ui)\cl(jσUj)=(iσcl(Ui)\jσUj)\(cl(jσUj)\jσUj)AσU\(jσUj).

Thus, if AσU is non-empty, since it is top-dimensional while (iσUi) is of codimension one, AσU(jσUj), implying Aσcl(U), and thus, code(U)=code(cl(U)).

Next, we show that code(int(U))=code(U). Let AσU be an atom of U and Aσint(U) be the corresponding atom of int(U). If AσU=, then using (8) and (15) we conclude that

iσUijσUjint(iσUi)int(jσUj)iσint(Ui)jσint(Uj),

which implies Aσint(U)=. Therefore, code(int(U))code(U). On the other hand, using (8) we obtain

Aσint(U)=iσint(Ui)\jσint(Uj)int(iσUi)\jσUj==(iσUi\jσUj)\(iσUi)=AσU\(iσUi).

Thus, if AσU is non-empty, since it is top-dimensional while (iσAi) is of codimension one, Aσint(U). Therefore, code(U)=code(int(U)).□

5.4. Proof of Lemma 3.1.

In order to prove Lemma 3.1 we will need the following two lemmas.

Lemma 5.6. Let W={Wi} be a collection of sets, WiX, and C=code(W,X). Assume that Q is a proper subset of some atom of W, i.e. QAαW, for a non-empty αC. Then for any σ0α, the cover V={Vi} by the sets

Vi={Wi,ifiσ0,Wi\Q,ifiσ0} (19)

adds the codeword σ0 to the original code, i.e. code(V,X=code(W,X){σ0}.

Proof. Since QAαW, code({Vi(X\Q)},X\Q)=code(W,X). Moreover, because σ0α, code({ViQ}, Q) = {σ0} by construction. Finally, observe that if X = YZ, then code(V,X)=code({ViY},Y)code({ViZ},Z), therefore we obtain

code(V,X)=code({Vi(X\Q)},X\Q)code({ViQ},Q)=code(W,X){σ0}.

Recall that M(C)C denotes the set of maximal codewords of C. A subset AB of a topological space is called relatively open in B if it is an open set in the induced topology of the subset B.

Lemma 5.7. Let U={Ui} be an open convex cover in Rd, d ≥ 2, and XRd with C=code(U,X). Assume that there exists an open Euclidean ball BRd such that code({BUi},BX)=C, and for every maximal set αM(C), the set Bcl(iαUi) is non-empty and is relatively open in ∂B. Then for any simplicial violator σ0Δ(C)\C, there exists an open convex cover V={Vi} with ViUi, so that code(V,BX)=Cσ0, and the cover V satisfies the same condition above with the same open ball B. Moreover, if the cover U={Ui} is non-degenerate, then the cover V can also be chosen to be non-degenerate.

Proof. Choose a facet αM(C) such that ασ0. Because α is a facet of Δ(C), the atom AαU=iαUi is convex open and (by assumption) has a non-empty relatively open intersection with the Euclidean sphere ∂B. This implies that we can always select an oriented and closed half-space P+Rd such that P+BAαU, and (AαUB)\P+ has relatively open intersection with the sphere ∂B (see Figure 5.3).

Figure 5.3.

Figure 5.3.

The oriented half space P+ is chosen to intersect the ball B inside AαU.

We define two open covers, W={Wi}, with Wi=defUiB and V={Vi} via the equation (19), with Q = P+B. We thus can use Lemma 5.6, and conclude that code(V,XB)=code({BUi},BX)σ0=Cσ0. Note that by construction the sets Vi are open and convex, moreover, the cover V automatically satisfies the same condition on the atoms of facets of Δ(C).

Finally, if U is non-degenerate, then V is also non-degenerate. Indeed, becauseAαU is open, the only two atoms that were changed, AαV=(AαUB)\P+ and Aσ0V=P+B are also top-dimensional. Moreover, since the only new pieces of boundaries of ViUi are introduced on the chord ∂P+B and on the sphere ∂B, if the condition that for all σ ⊆ [n], iσUi(iσUi) holds then the same condition should hold for the sets Vi. □

A consecutive application of the above lemma to all the codewords in D\C for any supra-code D with the same simplicial complex yields Lemma 3.1.

Proof of Lemma 3.1. Let U={Ui} be an open convex cover in Rd, d ≥ 2, and XRd with code(U,X)=C. Assume that there exists an open Euclidean ball BRd such that code({BUi},BX)=C, and for every αM(C), its atom has non-empty intersection with ∂B. Let CDΔ(C) and denote D\C={σ1,σ2,,σl}. Let σ1αM(C). Because αM (C), AαU=iαUi is open, and thus Bcl(AαU) is relatively open in ∂B. We can now apply Lemma 5.7 to the “missing” codeword σ1, and obtain a new cover V(1) that again satisfies the condition of Lemma 5.7. Consecutively applying Lemma 5.7 with σ0 = σj, j = 2, 3, … , l, we obtain covers V(j), so that the last cover, V=defV(l) is the desired cover of Lemma 3.1. □

5.5. A closed convex realization for an intersection-complete code.

Here we provide an explicit construction of a closed convex cover of an intersection-complete code. Intersection-complete codes are max intersection-complete, and thus Theorem 1.2 ensures that intersection-complete codes are both open convex and closed convex. Nevertheless, a different construction below may be useful for applications due to its simplicity.

Definition 5.8. The potential cover of the code C, is a collection V={Vi}i[n] of closed convex sets ViRC, defined as follows. For each non-empty codeword σC let eσ be a unit vector in RC so that {eσ} is a basis for RC. For each i ∈ [n], we define Vi as the convex hull

Vi=defconv{eσσC,σi}.

Since this is a cover by convex closed sets, the code of the potential cover is closed convex. Note however, that this cover is not non-degenerate (Definition 2.10), and cannot be easily extended to an open convex cover.

Lemma 5.9. Let V={Vi} denote the potential cover of C, and X=defconv{eσσC,σ}. Then the code of the potential cover of C is the intersection completion of that code: code(V,X)=C^.

Proof. Note that because the vectors eσ are linearly independent,

C^i[n],Vi=XX=i[n]Vicode(V,X).

Moreover,

iσVi=conv{eττC,τσ}, (20)

in particular, code(V,X)Δ(C). To show that code(V,X)C^, assume that a non-empty σcode(V,X), i.e. AσV=(iσVi)\jσVj is non-empty. If there exists an index j(στCτ)\σ, then by (20), iσViVj, which contradicts σcode(V,X). Hence σ=CτστC^. Conversely, assume that a non-empty σC^ and let σ1,,σkC be code elements such that σ==1κσ. Then the point 1k=1keσ(iσVi)\jσVj. Hence σcode(V,X). □

An immediate corollary is that any intersection-complete code is a closed convex code.

Footnotes

1

A combinatorial code is any collection of subsets C2[n]. Each σC is called a codeword.

2

A codeword in σC is maximal if, as a subset σ ⊆ [n], it is not contained in any other codeword of C.

3

Indeed, assuming the converse, it follows that U3 = (U1U3) ∪ (U2U3) and, since this code does not contain a codeword σ ⊇ 12, we conclude that U1U2 = ∅ and U3 is a union of two disjoint open sets, which yields a contradiction.

4

Throughout, we assume that ∅ is an element of every abstract simplicial complex.

5

A formulation of the nerve lemma which applies to finite collections of closed, convex subsets of Euclidean space appears in [4], and follows from [1, Theorem 10.7].

6

This included computer-assisted search among random codes.

7
Recall that the Hausdorff distance between two subsets U and V of a Euclidean space is defined as
dH(U,V)=max{supxU{infyVxy},supyV{infxUxy}}.
.
8

For example, the cover by the open convex sets U1={(x,y)R2y>x2} and U2={(x,y)R2y<x2} satisfies Definition 2.10 (i), but does not satisfy Definition 2.10 (ii). Similarly, the closed subsets of the real line, U1 = {x ≤ 0}, U2 = {x ≥ 0} satisfy Definition 2.10 (ii), but do not satisfy Definition 2.10 (i).

9

The facets of a simplicial complex those faces which are maximal under inclusion.

10

Equavalently, the facets of Δ(C).

11

The empty set is not included because under this definition, H = ∅.

12

If Ui are not compact, then one can intersect them with a closed ball of large enough radius to obtain the same code.

13

Because, U5 is convex and contains the endpoints of M, x123M. Moreover, since both M and A123U are compact, the function f(a) = dist(a, M) achieves its minimum on A123U.

14

If x∂Ujjσ, then (because Ui are open) there exists a small open ball B′ ∋ x such that BAσU, thus int(AσUB)int(AσUBB), a contradiction.

15

This is because y ∈ int(Ui), x∂Ui and Ui is convex, thus for every ε > 0, z = x + ε(xy) ∉ Ui.

Contributor Information

JOSHUA CRUZ, Department of Mathematics, Duke University joshua.cruz@duke.edu.

CHAD GIUSTI, Department of Mathematical Sciences, University of Delaware cgiusti@udel.edu.

VLADIMIR ITSKOV, Department of Mathematics, The Pennsylvania State University vladimir.itskov@math.psu.edu.

BILL KRONHOLM, Department of Mathematics, Whittier College wkronholm@whittier.edu.

References

  • [1].Björner A: Topological methods In: Graham RL, Grötschel, Lovász L (eds.) Handbook of Combinatorics, vol. 2, pp. 1819–1872. MIT Press, Cambridge: (1995) [Google Scholar]
  • [2].Curto C, Gross E, Jeffries J, Morrison K, Omar M, Rosen Z, Shiu A, Youngs N: What makes a neural code convex? SIAM J. Appl. Algebra Geom 1(1), 222–238 (2017) [Google Scholar]
  • [3].Curto C, Itskov V, Veliz-Cuba A, Youngs N: The neural ring: an algebraic tool for analyzing the intrinsic structure of neural codes. Bull. Math. Biol 75(9), 1571–1611 (2013) [DOI] [PubMed] [Google Scholar]
  • [4].Edelsbrunner H, Harer JL: Computational Topology: An Introduction. American Mathematical Society, Providence (2010) [Google Scholar]
  • [5].Franke M, Muthiah S: Every binary code can be realized by convex sets. Adv. Appl. Math 99, 83–93 (2018) [Google Scholar]
  • [6].Giusti C, Itskov V: A no-go theorem for one-layer feedforward networks. Neural Comput. 26(11), 2527–2540 (2014) [DOI] [PubMed] [Google Scholar]
  • [7].Hatcher A: Notes on Introductory Point-Set Topology (2005). Lecture notes, https://www.math.cornell.edu/~hatcher/Top/TopNotes.pdf
  • [8].Kalai G: Characterization of f-vectors of families of convex sets in Rd. I. Necessity of Eckhoff’s conditions. Israel J. Math 48(2–3), 175–195 (1984) [Google Scholar]
  • [9].Kalai G: Characterization of f-vectors of families of convex sets in Rd. II. Sufficiency of Eckhoff’s conditions. J. Combin. Theory Ser. A 41(2), 167–188 (1986) [Google Scholar]
  • [10].Kandel ER, Schwartz JH, Jessell TM: Principles of Neural Science. 4th edn. McGraw-Hill Medical, New York: (2000) [Google Scholar]
  • [11].Lienkaemper C, Shiu A, Woodstock Z: Obstructions to convexity in neural codes. Adv. Appl. Math 85, 31–59 (2017) [Google Scholar]
  • [12].O’Keefe J, Dostrovsky J: The hippocampus as a spatial map. Preliminary evidence from unit activity in the freely-moving rat. Brain Research 34(1), 171–175 (1971) [DOI] [PubMed] [Google Scholar]
  • [13].Tancer M: d-representability of simplicial complexes of fixed dimension. J. Comput. Geom. 2(1), 183–188 (2011) [Google Scholar]
  • [14].Yartsev MM, Ulanovsky N: Representation of three-dimensional space in the hippocampus of flying bats. Science 340(6130), 367–372 (2013) [DOI] [PubMed] [Google Scholar]

RESOURCES