1 Introduction

The main topic of our paper is the boundary structure of convex semi-algebraic sets. The faces in the boundary of such a set come in semi-algebraic families which cover the boundary. Our goals are first to make precise what the geometrically meaningful notions of families are in this setup and second to study the basic topological properties of the covering of the boundary. We propose a definition of a patch and discuss its properties and variations, also with a view to computations.

There are many natural examples of convex semi-algebraic sets coming from a variety of different sources. When we think about the facial structure, we might first look at polytopes, which exhibit a finite number of faces in every intermediate dimension, the structure of which is encoded in a finite lattice. On the other end of the spectrum are convex bodies with a smooth, positively curved boundary made up entirely of extreme points. But many convex bodies in convex algebraic geometry and applications fall somewhere in between these two extremes. This is especially true for many examples arising as convex sets of matrices, like spectrahedra, or sets that are presented as the convex hull of some lower dimensional set. Spectrahedra (and more generally hyperbolicity cones) are central objects at the intersection of convex algebraic geometry and optimization (Blekherman et al. 2013; Renegar 2006). Convex hulls of real algebraic sets appear, for instance, in the context of attainable regions of dynamical systems (Ciripoi et al. 2019) and in the study of quantum systems (Plaumann et al. 2021) and have been studied in classical projective geometry (Ranestad and Sturmfels 2011, 2012).

A computational approach to identify families of faces for convex hulls of curves was presented in Ciripoi et al. (2019) where the authors introduce the concept of a patch and give a numerical algorithm to compute the boundary structure. We propose a definition of a patch based on semi-algebraic geometry rather than using analytical notions and derive the main analytical features from our geometric definition.

The fact that the boundary of a convex semi-algebraic set is covered by (semi-)algebraic families of faces follows essentially from duality theory in convex geometry combined with quantifier elimination (or, more generally, cylindrical algebraic decomposition). Our approach exploits these elements to define a patch geometrically. A (primal) patch is a primal-dual object that encodes a (exposed) face as the set of points given by a supporting hyperplane and a family of faces by varying the supporting hyperplane in a connected semi-algebraic set, see Definition 3.4. This all takes place in the normal cycle from convex geometry—a notion that is quite similar to conormal varieties from classical projective geometry. As a general reference for duality in convex algebraic geometry, in particular the interplay of convex duality and projective duality theory, see (Sinn 2015). We discuss the relevant features of the normal cycle in Sect. 2. We then turn our attention to geometric and topological properties (in both the euclidean and the Zariski topology) of the covering of the boundary of the convex sets by the family of faces in a patch. The first general result is Theorem 3.16, connecting patches to projective duality. The first step towards Hausdorff continuity of faces varying in a patch is Lemma 3.20. There is a technical issue with Hausdorff continuity of the family of “faces” in a patch that we illustrate by example (see Example 3.6 and Example 3.19). In fact, patches can cut faces into parts and produce a family of subsets of faces, and the subset in each face is not even necessarily connected.

The main reason for our distinction between patches (which are contained in the biregular locus of the appropriate conormal varieties) and their closures which we call closed patches is Theorem 3.16: The dimension of the faces in the family corresponding to a patch is constant. However, by taking closure, we might get faces of higher dimension in the family corresponding to the closed patch (as illustrated for instance by the elliptope in Example 3.8). The family of faces corresponding to a patch is Hausdorff continuous under the additional assumption that for every patch the interior of a face is either entirely contained in it or disjoint to it. This is proved in Sect. 5, along with the fact that this assumption is always satisfied for hyperbolicity cones.

The normal cycle as a tool to study families of faces relies on duality, which is technically simpler and less prone to exceptions in the homogeneous setup, that is to say, for convex cones and projective varieties. On the other hand, some of our geometric intuition, as well as metric questions like convergence in the Hausdorff metric, are more easily phrased for compact convex sets. We will therefore adopt both points of view and go back and forth as needed.

2 The normal cycle

In this section, we discuss the basics of the normal cycle in convex geometry from our point of view motivated by convex algebraic geometry. For basics in convex geometry, we refer to Barvinok (2002). For basics in (projective) algebraic geometry, we refer to Harris (1992), and for semi-algebraic geometry to Bochnak et al. (1998).

We denote by \(({\mathbb {R}}^n)^*\) the dual space of \({\mathbb {R}}^n\). For a linear functional \(\ell \in ({\mathbb {R}}^n)^*\) and \(x\in {\mathbb {R}}^n\), we write \(\langle \ell ,x \rangle =\ell (x)\).

Let \(K\subset {\mathbb {R}}^n\) be a compact convex semi-algebraic set. We usually assume that the origin is an interior point of K. The (polar) dual of K, denoted by \(K^\circ \), is the convex set \(\{\ell \in ({\mathbb {R}}^n)^*\ |\ \langle \ell ,x \rangle \ge -1 \text { for all }x\in K\}\). The polar dual of K is semi-algebraic by quantifier-elimination. It is compact if the origin is an interior point of K. In fact, the separation theorem implies that \((K^\circ )^\circ = \overline{{\text {conv}}(K\cup \{{\mathbf {0}}\})}\).

We use the same definition of the normal cycle as Ciripoi, Kaihnsa, Löhne, Sturmfels in Ciripoi et al. (2019), namely

$$\begin{aligned} {\mathcal {N}}(K)= & {} \bigl \{(x,\ell )\in \partial K \times \partial K^\circ \ |\ \langle \ell ,x-x' \rangle \le 0 \text { for all }x'\in K\bigr \} \subset {\mathbb {R}}^n\times {\mathbb {R}}^n. \end{aligned}$$

Thus the normal cycle consists of all pairs of points \((x,\ell )\), where x is in the boundary of K and \(\ell \) corresponds to an inward normal vector of a supporting hyperplane to K containing x. The normal cycle comes with the two projections \(\pi _1\) and \(\pi _2\) onto the first and second factor.

Usually, we work with convex cones, especially in proofs, and further pass from affine to projective space: By a proper cone \(C\subset {\mathbb {R}}^n\), we will mean a closed convex cone with the tip at the origin, with non-empty interior and not containing any lines. The latter condition is equivalent to \(C\cap -C=\{{\mathbf {0}}\}\). The polar dual of a convex cone coincides with the usual notion of the dual cone \(C^\vee =\{\ell \in ({\mathbb {R}}^n)^*\ |\ \ell (x) \ge 0\text { for all }x\in C\}\). The dual of a proper cone is again proper and satisfies biduality \((C^\vee )^\vee =C\).

Given a compact convex semi-algebraic set \(K\subset {\mathbb {R}}^n\) with non-empty interior, we may homogenize and obtain the proper cone

$$\begin{aligned} \widehat{K} = \{ (\lambda x, \lambda )\ |\ x\in K, \lambda \ge 0\} \subset {\mathbb {R}}^n\times {\mathbb {R}}. \end{aligned}$$

Every proper cone can be obtained as such a homogenization with an appropriate choice of coordinates.

We use \({\mathbb {P}}^n({\mathbb {R}})\) to denote n-dimensional real projective space and \({\mathbb {P}}^n({\mathbb {R}})^*\) for the dual projective space. For any proper cone C in \({\mathbb {R}}^{n+1}\), we may take the image of \(C\setminus \{{\mathbf {0}}\}\) in \({\mathbb {P}}^n({\mathbb {R}})\) under the canonical surjection \({\mathbb {R}}^{n+1}\setminus \{{\mathbf {0}}\}\rightarrow {\mathbb {P}}^n({\mathbb {R}})\) and obtain a semi-algebraic subset with non-empty interior in \({\mathbb {P}}^n({\mathbb {R}})\). We will usually not distinguish between C as a subset of \({\mathbb {R}}^{n+1}\) and C as a subset of \({\mathbb {P}}^n({\mathbb {R}})\), and likewise for the dual cone. Note that in passing to projective space in this way, the dimension of a semi-algebraic proper cone C drops from \(n+1\) to n.

Definition 2.1

Let \(C\subset {\mathbb {R}}^{n+1}\) be a proper cone. The (conic) normal cycle of C is the set

$$\begin{aligned} {\mathcal {N}}_+(C)=\bigl \{(x,\ell )\in \partial C\times \partial C^\vee \ |\ \ell (x)=0\bigr \}\subset {\mathbb {P}}^n({\mathbb {R}})\times ({\mathbb {P}}^n({\mathbb {R}}))^*. \end{aligned}$$

Remark 2.2

The normal cycle of a convex body K (i.e., a compact convex set containing the origin in its interior) and the conic normal cycle of its homogenization \(\widehat{K}\) are essentially the same. More precisely, we have \({\mathcal {N}}_+(\widehat{K}) = \widehat{{\mathcal {N}}(K)}\), where \(\widehat{{\mathcal {N}}(K)}\) is the image of \({\mathcal {N}}(K)\subset {\mathbb {R}}^n\times {\mathbb {R}}^n\) under the embedding \({\mathbb {R}}^n\times {\mathbb {R}}^n \rightarrow {\mathbb {P}}^n({\mathbb {R}})\times ({\mathbb {P}}^n({\mathbb {R}}))^*\), \((x,\ell )\mapsto ( (x:1),(\ell :1))\).

Lemma 2.3

Let \(C\subset {\mathbb {R}}^{n+1}\) be a proper convex cone. The normal cycle is self-dual, i.e., \({\mathcal {N}}_+(C) = {\mathcal {N}}_+(C^\vee )\subset {\mathbb {R}}^{n+1} \times ({\mathbb {R}}^{n+1})^*\) (after appropriate permutation of the factors).

Proof

This follows from the biduality theorem in convex geometry, which, in our case, implies that \((C^\vee )^\vee = C\) holds .

Of course, the same holds for the normal cycle \({\mathcal {N}}(K)\) of a compact convex set K containing the origin in its interior (by Remark 2.2 or with the same proof using biduality for convex bodies).

Next, we show that the normal cycle \({\mathcal {N}}_+(C)\) of a proper semi-algebraic cone \(C\subset {\mathbb {R}}^{n+1}\), regarded as a subset of \({\mathbb {P}}^n({\mathbb {R}})\times {\mathbb {P}}^n({\mathbb {R}})^*\), has pure dimension \(n-1\). To show this, we restrict to a compact base and show that the normal cycle \({\mathcal {N}}(K)\) of a compact convex set containing the origin in its interior is semi-algebraically homeomorphic to the boundary of the Minkowski sum of K with the unit ball \(B(0,1) = \{x\in {\mathbb {R}}^n\ |\ \Vert x\Vert \le 1\} \subset {\mathbb {R}}^n\).

Notation 2.4

Let \(K\subset {\mathbb {R}}^n\) be a compact convex semi-algebraic set containing the origin in its interior. Since K is compact, the function \(K\rightarrow {\mathbb {R}}\), \(y\mapsto \Vert x-y\Vert \) achieves its minimum for every \(x\in {\mathbb {R}}^n\). Moreover, the convexity of K implies that this minimum is achieved at a unique point for every x. For these two functions, we fix the notation

  1. (1)

    \(d_K :{\mathbb {R}}^n \rightarrow {\mathbb {R}}\), \(x \mapsto \underset{y \in K}{\mathrm {min}} \Vert x-y\Vert \)

  2. (2)

    \(p_K :{\mathbb {R}}^n \rightarrow K\), \(x \mapsto \underset{y \in K}{\mathrm {argmin}} \, \Vert x-y\Vert \)

The map \(p_K\) is called the “metric projection”.

Proposition 2.5

Let K be a compact convex set containing the origin in its interior. The functions \(d_K:{\mathbb {R}}^n \rightarrow {\mathbb {R}}\) and \(p_K:{\mathbb {R}}^n \rightarrow K\) are semi-algebraic and continuous. Moreover, the function \(u_K :{\mathbb {R}}^n \setminus K \rightarrow \partial K^\circ \), \(x \mapsto \frac{x - p_K(x)}{\langle p_K(x) - x, p_K(x) \rangle }\) is well-defined, semi-algebraic, and continuous as well.

Proof

The map \(d_K\) is semi-algebraic and continuous, see for example (Bochnak et al. 1998, Proposition 2.2.8) (by quantifier elimination and the triangle inequality). By Schneider (2013, Theorem 1.2.1) the map \(p_K\) is contracting and hence continuous. The map \(p_K\) is semi-algebraic by quantifier elimination because its graph is the set \(\{(x,y)\in ({\mathbb {R}}^n\setminus K) \times K \ |\ \forall \, z\in K\ |\ \Vert x-y\Vert \le \Vert x-z\Vert \}\).

We simply write d and p for \(d_K\) and \(p_K\) for the remainder of the proof.

Clearly \(p(x) \in \partial K\) for any \(x \in {\mathbb {R}}^n \setminus K\). It remains to show that for every \(x \in {\mathbb {R}}^n \setminus K\) we have

$$\begin{aligned} \langle p(x)-x,p(x) \rangle \not = 0 \quad \text {and} \quad \frac{x - p(x)}{\langle p(x)- x, p(x) \rangle } \in \partial K^\circ . \end{aligned}$$

We first show that

$$\begin{aligned} \forall y \in K: \; \langle x-p(x),y \rangle \le \langle x-p(x),p(x) \rangle . \end{aligned}$$

Let \(y \in K\). Set \(f(t) := \Vert x - \big (p(x)+t(y-p(x))\big )\Vert ^2\). Since f has a minimum at 0 on [0, 1], we have

$$\begin{aligned} 0 \le f'(0) = 2 \langle x-p(x),p(x)-y \rangle . \end{aligned}$$

Since the origin is an interior point of K, we can choose a point \(y\in K\) such that \(\langle x-p(x),y \rangle > 0\). This implies that \(\langle p(x)-x,p(x) \rangle < 0\) for all \(x\in {\mathbb {R}}^n\setminus K\). Computing \(\langle u_K(x),p(x) \rangle = -1\) shows that \(\frac{x - p(x)}{\langle p(x) - x, p(x) \rangle }\) lies in the boundary of \(K^\circ \) as claimed.

The map \(u_K\) is continuous and semi-algebraic as the composition of continuous and semi-algebraic functions.

Lemma 2.6

Let \(K\subset {\mathbb {R}}^n\) be a compact semi-algebraic set containing the origin in its interior. The set \(d_K^{-1}([0,1])\) is the Minkowski sum of K and the unit ball B(0, 1) and therefore a compact convex semi-algebraic set containing K. Its boundary is the preimage of 1 under \(d_K\).

Proof

Write \(K_1\) for \(d_K^{-1}([0,1])\). It is semi-algebraic as the preimage of a semi-algebraic set with respect to a semi-algebraic function. The set \(K_1\) contains \(K = d_K^{-1}(\{0\})\). It is convex because \(d_K\) is a convex function by the triangle inequality. It is closed because \(d_K\) is continuous and it is bounded and hence compact.

So we only have to show that \(\partial K_1 \supset d_K^{-1}(\{1\})\), as we get \(\partial K_1 \subset d_K^{-1}(\{1\})\) from continuity. Let \(x \in d_K^{-1}(\{1\})\) and \(y \in K\). We consider the function \(g(t) = \Vert y - \big (x+t(x-p(x))\big )\Vert ^2\). We saw in the proof of Proposition 2.5 that \(\langle x-p(x),y \rangle \le \langle x-p(x),p(x) \rangle \) holds for all \(y\in K\). Hence

$$\begin{aligned} g'(0)&= \langle y-x,p(x)-x \rangle \\&= \langle y-p(x),p(x)-x \rangle + \langle p(x)-x,p(x)-x \rangle \\&\ge 0 + \Vert p(x)-x\Vert ^2 = 1. \end{aligned}$$

Therefore \(d_K(x+t(x-p(x))>1\) for all sufficiently small \(t>0\), which shows that x is in the boundary of \(K_1\).

Theorem 2.7

Let \(K\subset {\mathbb {R}}^n\) be a compact semi-algebraic convex set containing the origin in its interior and let \(K_1\) be the Minkowski sum of K and the unit ball B(0, 1). Let \(p_K\) be the metric projection onto K and let \(u_K\) be the map \(u_K :{\mathbb {R}}^n \setminus K \rightarrow \partial K^\circ \), \(x \mapsto \frac{x - p_K(x)}{\langle p_K(x) - x, p_K(x) \rangle }\) The map

$$\begin{aligned} \varphi :\partial K_1\longrightarrow & {} {\mathcal {N}}(K),\\ x\longmapsto & {} (p_K(x),u_K(x)) \end{aligned}$$

is a semi-algebraic homeomorphism. In particular, the normal cycle \({\mathcal {N}}(K)\) is a compact semi-algebraic set of pure dimension \(n-1\).

Proof

The map \(\varphi \) is a semi-algebraic and continuous function. Let

$$\begin{aligned} \psi :{\mathcal {N}}(K)\longrightarrow & {} \partial K_1, \\ (x,\ell )\longmapsto & {} x - \frac{\ell }{\Vert \ell \Vert } \end{aligned}$$

The map \(\psi \) is well defined by Lemma 2.6 because \(\psi (x,\ell )\) has distance 1 from x and \(\Vert y - \psi (x,\ell )\Vert ^2 \ge 1\) for all \(y\in K\). It is clearly semi-algebraic and continuous. For every \(y\in K\)

$$\begin{aligned} \Vert \psi (x,\ell ) - y\Vert ^2&= \Vert y \Vert ^2 - 2 \langle y, \psi (x,\ell ) \rangle + \Vert \psi (x,\ell ) \Vert ^2\\&= \Vert y \Vert ^2 - 2 \langle y,x \rangle + \frac{2}{\Vert \ell \Vert } \underbrace{\langle y, \ell \rangle }_{\ge -1} + \Vert x \Vert ^2 - \frac{2}{\Vert \ell \Vert } \underbrace{\langle x,\ell \rangle }_{= -1} + 1\\&\ge \Vert y \Vert ^2 - 2 \langle y,x \rangle + \Vert x \Vert ^2 + 1 = \Vert x-y\Vert ^2 + 1, \end{aligned}$$

showing that \(p_K(\psi (x,\ell )) = x\). Now

$$\begin{aligned}&u_K(\psi (x,\ell ))\\&\quad =\frac{x - \frac{\ell }{\Vert \ell \Vert }-x}{\langle x - x + \frac{\ell }{\Vert \ell \Vert }, x \rangle }\\&\quad = -\frac{\ell }{\langle \ell ,x \rangle } = \ell . \end{aligned}$$

Therefore \(\varphi \circ \psi = \mathrm {id}_{{\mathcal {N}}(K)}\). Next

$$\begin{aligned} \psi (\varphi (x))&= p_K(x) - \frac{u_K(x)}{\Vert u_K(x) \Vert }\\&= p_K(x) - \frac{(x - p_K(x))|\langle p_K(x) - x, p_K(x) \rangle |}{\underbrace{\langle p_K(x)-x,p_K(x) \rangle }_{<0\text { by proof of } 1.5} \Vert x - p_K(x) \Vert }\\&= p_K(x) + \frac{x-p_K(x)}{\underbrace{\Vert x - p_K(x) \Vert }_{=1}} = x . \end{aligned}$$

Hence \(\psi \circ \varphi = \mathrm {id}_{\partial K_1}\). Therefore \(\psi = \varphi ^{-1}\) and we are done.

3 The conormal variety and patches

We use \({\mathbb {P}}^n\) to denote complex projective n-space, containing real projective space \({\mathbb {P}}^n({\mathbb {R}})\) as a subset. A real projective variety is a projective variety defined over \({\mathbb {R}}\). Such a variety is the common zero set \({\mathcal {V}}(f_1,\dots ,f_r)\) of real homogeneous polynomials \(f_1,\dots ,f_r\) in \(n+1\) variables. For a real projective variety X, we denote the real locus of X by \(X({\mathbb {R}})\) and the regular locus of X by \(X_{\mathrm{reg}}\). The (projective) tangent space of X at a regular point \(x\in X_{\mathrm{reg}}\), regarded as a linear subspace of \({\mathbb {P}}^n\), is denoted by \({\mathbb {T}}_x(X)\).

For a subset S of \({\mathbb {P}}^n\), we denote the closure of S in the (real) Zariski topology by \(\mathrm{cl}_{\mathrm{Zar}}(S)\), i.e., the smallest (real) projective variety containing S. The notation \(\overline{S}\) is reserved for the euclidean closure of S in real or complex projective space.

Definition 3.1

Let \(S\subset {\mathbb {P}}^n({\mathbb {R}})\) be a semi-algebraic set. The algebraic boundary of S is the Zariski-closure of the euclidean boundary \(\partial S\) and is denoted by \(\partial _a S\).

The algebraic boundary of S is therefore a projective variety in \({\mathbb {P}}^n\), typically with both real and complex points. For any open semi-algebraic subset S of \({\mathbb {P}}^n({\mathbb {R}})\), the algebraic boundary is a real hypersurface, i.e., it is of pure algebraic dimension \(n-1\). By our usual abuse of notation, the algebraic boundary \(\partial _a C\) of a proper cone \(C\subset {\mathbb {R}}^{n+1}\) is the algebraic boundary of C regarded as a subset of \({\mathbb {P}}^n({\mathbb {R}})\). As C is the closure of its interior, its algebraic boundary is thus a hypersurface, possibly with several irreducible components.

Definition 3.2

Let X be a real projective variety embedded into \({\mathbb {P}}^n\). The conormal variety of X is the projective variety

$$\begin{aligned} \mathrm{CN}(X)=\mathrm{cl}_{\mathrm{Zar}}\bigl (\bigl \{(x,\ell )\in {\mathbb {P}}^n\times ({\mathbb {P}}^n)^*\ |\ x\in X_{\mathrm{reg}}\text { and }\ell \equiv 0\text {on}{\mathbb {T}}_x(X)\bigr \}\bigl ). \end{aligned}$$

The image of \(\mathrm{CN}(X)\) under the projection onto the second factor is called the projective dual of X and is denoted by \(X^*\). We will refer to the open subvariety

$$\begin{aligned} \mathrm{CN}_{\mathrm{bireg}}(X)=\bigl \{(x,\ell )\in \mathrm{CN}(X)\ |\ x\in X_{\mathrm{reg}}\text { and }\ell \in (X^*)_{\mathrm{reg}}\bigr \} \end{aligned}$$

as the biregular locus of \(\mathrm{CN}(X)\).

Remark 3.3

If \(X \subset {\mathbb {P}}^n\) is an irreducible hypersurface defined by the vanishing of an irreducible real homogeneous polynomial f, and if x is a regular point of X, then \((x,\nabla f(x))\in \mathrm{CN}(X)\) and moreover \(\pi _1^{-1}(x) = \{(x,\nabla f(x))\}\), where \(\pi _1\) is the projection of \(\mathrm{CN}(X) \subset {\mathbb {P}}^n\times {\mathbb {P}}^n\) onto the first factor.

Definition 3.4

Let \(C\subset {\mathbb {R}}^{n+1}\) be a proper cone and let Y be an irreducible component of \(\partial _a C\). A (primal) patch of C (over Y) is a connected component of the semi-algebraic subset of \({\mathcal {N}}_+(C)\cap \mathrm{CN}_{\mathrm{bireg}}(Y)\) consisting of pairs \((x,\ell )\) such that x is not contained in any irreducible component of \(\partial _a C\) other than Y. The euclidean closure of a patch (in \({\mathbb {P}}^n({\mathbb {R}})\times {\mathbb {P}}^n({\mathbb {R}})^*\)) is called a closed (primal) patch of C (over Y). The finite family of all primal patches of C is denoted by \({\mathscr {P}}(C)\). A dual patch of C is a patch of the dual cone of C.

While this definition certainly looks complicated, we will now examine a series of examples that should help to visualize it and to explain why we settled on these exact terms. Our examples will be convex bodies \(K\subset {\mathbb {R}}^n\), regarded as affine sections of their homogenizations \(\widehat{K} = \{(\lambda x, \lambda )\in {\mathbb {R}}^n\times {\mathbb {R}}\ |\ \lambda \ge 0, x\in K\}\), as explained in the previous section. As the normal cycle \({\mathcal {N}}(K)\) of K viewed as a subset of \({\mathbb {P}}^n({\mathbb {R}})\times {\mathbb {P}}^n({\mathbb {R}})^*\) is the same as the normal cycle \({\mathcal {N}}_+(\widehat{K})\) (see Remark 2.2), we can interpret the homogeneous Definition 3.4 of a patch for \(\widehat{K}\) in the affine chart containing K.

Remark 3.5

Let \(K\subset {\mathbb {R}}^n\) be a compact convex set containing the origin in its interior and let X be an irreducible component of the algebraic boundary of K. We write \(C = \widehat{K}\) for its homogenization, which is a cone in \({\mathbb {R}}^n\times {\mathbb {R}}\). We saw in Remark 2.2 that the normal cycle \({\mathcal {N}}(K)\) of K and the projective normal cycle \({\mathcal {N}}_+(C)\) of C are semi-algebraically homeomorphic. The algebraic cone over X embedded into \({\mathbb {C}}^n\times {\mathbb {C}}\) as \(\{(x,1)\ |\ x\in X\}\) is an irreducible component of the algebraic boundary of C if we interpret it as a subvariety Y of \({\mathbb {P}}^n\). As such, Y is the projective closure of X with respect to the embedding \({\mathbb {A}}^n \rightarrow {\mathbb {P}}^n\), \(x\mapsto (x:1)\). So by a (primal) patch of K (over X) we mean a connected component of the semi-algebraic set \({\mathcal {N}}_+(C)\cap \mathrm{CN}_{\mathrm{bireg}}(Y)\) identified with a subset of \({\mathcal {N}}(K)\) via the semi-algebraic homeomorphism in Remark 2.2.

Example 3.6

(Circle and a stick) Let \(K \subset {\mathbb {R}}^3\) be the convex hull of the following set

$$\begin{aligned} \{ (-1,0,-1), (-1,0,1)\} \cup \{ (x,y,0) \in {\mathbb {R}}^3 \ |\ x^2+y^2=1\}, \end{aligned}$$

a unit circle in the (xy)-plane and an interval parallel to the z-axis. Then K is a convex body, its algebraic boundary consists of two quadratic cones

$$\begin{aligned} (x-z)^2 +y^2 - (z+1)^2, \quad (x+z)^2+y^2-(z-1)^2 . \end{aligned}$$

The singular locus of \(\partial _a K\) in \(\partial K\) is the circle and the “stick”

$$\begin{aligned} {\mathrm{conv}} \{(-1,0,-1),(-1,0,1)\} \end{aligned}$$

attached to it. The dual convex body \(K^\circ \) is a “bellows” (Fig. 1), it is the convex hull of the two ovals

$$\begin{aligned}&\{ (x,y,x-1) \in {\mathbb {R}}^3 \ |\ x^2+y^2 = 1\} \text { in the hyperplane } \{\ell \ |\ \langle (-1,0,1),\ell \rangle = -1 \}\\&\quad \{ (x,y,1-x) \in {\mathbb {R}}^3 \ |\ x^2+y^2=1\} \text { in the hyperplane } \{\ell \ |\ \langle (-1,0,-1),\ell \rangle = -1 \} \end{aligned}$$

which meet in the point (1, 0, 0).

Fig. 1
figure 1

The convex body K and its dual body \(K^\circ \) from Example 3.6

There are two primal patches of K, one for each quadratic cone. The patch for each cone contains the points in the intersection of the cone with the boundary of K that are neither on the circle nor the stick, together with the unique supporting hyperplane at each such point, which is equal to the tangent hyperplane to the quadratic cone. The closed patches also contain the circle and the upper or respectively the lower half of the stick with the appropriate supporting hyperplane at these points .

Note that both cones are smooth at the points in the relative interior of the stick. By demanding in our definition of patch that the points x lie on only one irreducible component of \(\partial _a K\), we ensure pure dimensionality of the closed patch and that the protruding half of the stick is excluded. By taking the closure, only a subset of the face that is the stick is added, namely the part that makes it continuous in the Hausdorff metric.

While the condition that a point \(x\in \partial K\) lies on only one irreducible component of \(\partial _a K\) is sufficient for the boundary of K to locally coincide with one of the irreducible components of \(\partial _a K\), it is not essential. Let Y be an irreducible component of \(\partial _a C\). Then a necessary and sufficient condition for \(\partial K\) to coincide locally with Y at a \(x \in \partial K \cap Y_{\mathrm{reg}}\) would be that Y is the only irreducible component of the algebraic boundary such that its intersection with \(\partial K\) has local dimension \(n-1\) at x. This condition also distinguishes the two halves of the stick and puts them in separate patches. Apart from the algebraic structure of the boundary, this separation of the stick into two halves also reflects the convex geometric fact that the stick is not the Hausdorff limit of either family of edges.   \(\Diamond \)

Most of the theory below could be developed with the property “only one irreducible component of \(\partial _a K\) has local dimension \(n-1\) at x” substituting the condition that “x lies on only one irreducible component of \(\partial _a K\)”. In some ways, this might even be considered more intuitive. On the other hand, it is a much more difficult condition to check in practice, because it is semi-algebraic in nature. We have therefore decided to choose the algebraic, second condition in this paper for the definition of a patch. To further illustrate this point, let us take a look at a further example.

Example 3.7

(Circle and three tangents) Let \(K \subset {\mathbb {R}}^2\) be the convex hull of the unit circle, centered at the origin, and the points \((-1,-1)\) and \((-1,1)\).

The components of the algebraic boundary are given by the circle \(x^2+y^2-1\) and three tangent lines \(y+1\), \(y-1\) and \(x+1\) to the circle. The singular locus of \(\partial _a K\) in \(\partial K\) consists of the points of tangency of the lines to the circle, and the two vertices in which two of the three lines intersect:

$$\begin{aligned} \begin{pmatrix} -1\\ 0 \end{pmatrix}, \begin{pmatrix} 0\\ -1 \end{pmatrix}, \begin{pmatrix} 0\\ 1 \end{pmatrix}, \begin{pmatrix} -1\\ 1 \end{pmatrix}, \begin{pmatrix} -1\\ -1 \end{pmatrix}. \end{aligned}$$

The primal patches of K are

$$\begin{aligned}&\{ ((t,-1),(0,1)) \in {\mathbb {R}}^2\times {\mathbb {R}}^2 \ |\ -1< t< 0 \}\\&\quad \{ ((t,1),(0,-1)) \in {\mathbb {R}}^2\times {\mathbb {R}}^2 \ |\ -1< t< 0 \}\\&\quad \{ ((-1,t),(1,0)) \in {\mathbb {R}}^2\times {\mathbb {R}}^2 \ |\ -1< t< 0 \}\\&\quad \{ ((-1,t),(1,0)) \in {\mathbb {R}}^2\times {\mathbb {R}}^2 \ |\ 0< t < 1 \}\\&\quad \{ ((x,y),\ell ) \in {\mathbb {R}}^2\times {\mathbb {R}}^2 \ |\ x^2+y^2 =1 , x > 0,\\&\quad \ell \text { unit normal of the tangent line at } (x,y) \} \end{aligned}$$

Note that the line \(\{x=-1\}\) and \(\partial K\) coincide locally at \((-1,0)\). While \((-1,0)\) also lies in the unit circle, its intersection with \(\partial K\) has local dimension 0 at \((-1,0)\).

So here, the condition that x should only lie on one irreducible component in order for \((x,\ell )\) to be in a patch reflects the algebraic structure of the boundary, rather than the convex geometric structure.   \(\Diamond \)

The next example motivates our usage of the biregular locus, namely the desire for a patch to project into the regular locus of the dual variety. Using biduality we show that a patch is a parameterized system of exposed faces of a fixed dimension. If we were to drop the requirement of biregularity, the dimension of the faces might vary.

Example 3.8

(The elliptope) Let \(K \subset {\mathbb {R}}^3\) be the connected component of \({\mathbf {0}}\) in \(\{ (x,y,z) \in {\mathbb {R}}^3 \ |\ f(x,y,z) \le 0 \}\) where \(f = x^2 + y^2 + z^2 - 2x y z - 1\) is the Cayley cubic so that K is an “inflated tetrahedron”. The set K is a convex body with algebraic boundary given by f, an affine part of Cayley’s nodal cubic surface. The singular locus of \(\partial _a K\) in \(\partial K\) consists of the four points

$$\begin{aligned} a=(1,1,1), b=(1,-1,-1), c=(-1,1,-1), d=(-1,-1,1) .\end{aligned}$$

Intersecting the four half-spaces

$$\begin{aligned} \{\ell \ |\ \langle x,\ell \rangle \le 3\}, \quad x \in \{a,b,c,d\} \end{aligned}$$

with \(\{f\le 0\}\) gives us K. For every pair of distinct points \(v,w \in \{a,b,c,d\}\) the edge \({\mathrm{conv}}\{v,w\}\) is an exposed face of K. Every other proper face of K is an exposed point. The dual convex body \(K^\circ \) is the convex hull of an affine part of the Roman surface, which is given by \(g = x^2 y^2 + y^2 z^2 + x^2 z^2 - 2 x y z\). When moving on K towards the interior of one of the edges the face dimension jumps from 0 to 1 despite the interior of the edge being regular in \(\partial _a K\). But the singular locus of g in \(\partial K^\circ \) are the pinch points of the roman surface, which expose the six edges of K and hence the edges of K are not included in any patch.

The primal patches of K are in fact the four areas resembling the interiors of the sides of a tetrahedron. Each is parameterized by the portion of the respective “lobe” of the roman surface, which lies in \(\partial K^\circ \) (Fig. 2).

Fig. 2
figure 2

The elliptope and its dual body from Example 3.8. The part of the dual boundary in blue is contained in the Roman surface, while the green part is added by taking the convex hull

If we dropped the condition of biregularity in the definition of a patch and rather considered the connected components of the set \(\{(x,\ell )\in \mathrm{CN}(X)\ |\ x\in (\partial _a K)_{\mathrm{reg}}\}\), then we would get only one patch in this example of the Cayley cubic and the dimension of the faces is then not constant over a patch. Indeed, most points in the boundary of K are exposed points but some points lie on the edges joining the four vertices abcd of the tetrahedron. The biregularity condition ensures that the face dimension is constant, as we will see below.   \(\Diamond \)

Remark 3.9

While our definition of a patch is similar to the one given by Ciripoi et al. (2019), it differs in several regards. Their definition is as follows: For any convex body \(K\subset {\mathbb {R}}^n\), a patch is a subset P of the normal cycle \({\mathcal {N}}(K)\) with the following properties: (1) P is a connected differentiable manifold; (2) the first projection \(\pi _1(P)\) has dimension \(n-1\); (3) the projection \(\pi _2(P)\) of P to the dual side is contained in the set of exposed extreme points of \(K^\circ \); (4) the fibers of \(\pi _2\) vary continuously in the Hausdorff metric; (5) P is maximal with these properties.

Our patches, too, are differentiable, and since we only consider semialgebraic convex sets, they are in fact Nash manifolds. In addition, our patches are explicitly defined, semialgebraic and always cover a dense part of the boundary (Lemma 3.12). Also, they are connected by definition but not necessarily maximal in the sense above (c.f. Examples 3.7 and 3.19). Another difference is that we work in the conic resp. projective setup, but this is mostly a technicality. Properties (2) and (3) are satisfied by our patches. The most significant trade-off regards Hausdorff continuity, which we do not build into the definition but rather wish to deduce under favorable circumstances. We point out that for hyperbolicity bodies (and therefore spectrahedra), each of our patches is contained in a unique patch in the sense of Ciripoi et al. (2019). This follows from Corollary 5.4, which implies property (4).   \(\Diamond \)

Even though the closed primal patches cover \(\partial K\) and the closed dual patches cover \(\partial K^\circ \), the union of all closed patches—primal and dual—may not be dense in the normal cycle (Fig. 3).

Example 3.10

(Cylinder over nodal cubic) For example consider the convex region K bounded by the plane cubic \(y^2 - (x+1)(x-1)^2 = 0\) and take the cylinder \(K\times [-1,1]\subset {\mathbb {R}}^3\) over it. The dual convex set is the bipyramid over the dual set \(K^\circ \), which is bounded by a quartic and a line. The 1-dimensional face of \(K^\circ \) is dual to the node of the cubic curve. So the 1-dimensional face of the bipyramid over \(K^\circ \) is dual to the 1-dimensional face \((1,0)\times [-1,1]\) of \(K\times [-1,1]\). The product of these two 1-dimensional faces is a 2-dimensional subset of the normal cycle of K that is not in the closure of the union of all closed patches.   \(\Diamond \)

Fig. 3
figure 3

The convex body and its dual from Example 3.10

Remark 3.11

Let \(X \subset {\mathbb {P}}^n\) be an irreducible projective variety. The restriction of the first projection \( \pi _1 : \mathrm{CN}(X) \rightarrow X\) to \(\pi _1^{-1}(X_{\mathrm{reg}})\) is an open map in the Zariski topology, since \(\pi _1^{-1}(X_{\mathrm{reg}})\) is a complex vector bundle over \(X_{\mathrm{reg}}\) and therefore locally trivial. In particular, \(X_{\mathrm{bireg}} := \pi _1(\mathrm{CN}_{\mathrm{bireg}}(X))\) is open in X. Using the biduality theorem (see e.g. Flenner et al. 1999, Theorem 4.4.6) we get the same conclusion for the dual variety, i.e., \(X^*_{\mathrm{bireg}} := \pi _2(\mathrm{CN}_{\mathrm{bireg}}(X))\) is open in \(X^*\). Since \(\mathrm{CN}_{\mathrm{bireg}}(X)\) is dense in \(\mathrm{CN}(X)\), both \(X_{\mathrm{bireg}}\) as a subset of X and \(X^*_{\mathrm{bireg}}\) as a subset of \(X^*\) are dense.

The boundary of a convex cone is covered by its closed patches:

Lemma 3.12

For any proper convex cone C, we have

$$\begin{aligned} \partial C = \bigcup _{P \in {\mathscr {P}}(C)} \pi _1(\overline{P}) \end{aligned}$$

Proof

The boundary of C is covered by the intersections \(X\cap \partial C\), where X ranges over the irreducible components of the algebraic boundary \(\partial _a C\). Applying Remark 3.11 to the intersections \(X\cap \partial C\) implies the claim because every boundary point of C has full local dimension in the semi-algebraic set \(X\cap \partial C\) for some irreducible component \(X\subset \partial _a C\).

Proposition 3.13

Let C be a proper convex cone, then

$$\begin{aligned} C^\vee = {\mathrm{conv}}\;\; \bigcup _{P \in {\mathscr {P}}(C)} \pi _2(\overline{P}). \end{aligned}$$

Proof

Denote the set on the right hand side as B which is clearly a convex cone and contained in \(C^\vee \). Since \(C^\vee \) is proper, B is also closed. The other inclusion follows from duality. If \(B \subsetneqq C^\vee \) then \(C = (C^\vee )^\vee \subsetneqq B^\vee \) by duality. Hence there exists \(x \in \partial C \cap {\text {int}}B^\vee \). Let \(U \subset B^\vee \) be an open set with \(x \in U\). Since \(\bigcup _{P \in {\mathscr {P}}(C)} \pi _1(P)\) is euclidean-dense in \(\partial C\) by Lemma 3.12, there is a \((y,\ell ) \in \bigcup _{P \in {\mathscr {P}}(C)} P\) with \(y \in U\). Furthermore, \(y- \varepsilon \ell \in U\) holds for a sufficiently small \(\varepsilon >0 \). Hence \(\langle \ell , y- \varepsilon \ell \rangle < 0\), but \(\ell \in B\), a contradiction.

Lemma 3.14

Let \(A\subset {\mathbb {R}}^n\) be a closed semi-algebraic set. Let x be a point in the boundary of the interior of A. Assume that x is a regular point on an irreducible component Y of \(\partial _a A\) and, moreover, that there exists an open neighborhood U of x in \({\mathbb {R}}^{n}\) such that \(\partial A\cap U\subset Y({\mathbb {R}})\cap U\). Then there exists an open subset \(V\subset U\) for which \(x \in V\) and

$$\begin{aligned} \partial A\cap V= Y({\mathbb {R}})\cap V. \end{aligned}$$

The following proof is a careful application of the implicit function theorem.

Proof

Let \({\mathcal {I}}(Y) = \langle f \rangle \). We can assume, by shrinking the neighborhood U if necessary, that \(Y \cap U \subset Y_{\mathrm{reg}}\) and \(\langle \nabla f(x), \nabla f(y) \rangle \not = 0\) for all \(y \in Y \cap U\).

By the implicit function theorem (Bochnak et al. 1998, Corollary 2.9.8) there exists an open semi-algebraic set \(V_1 \subset T := x +T_x Y\) with \(x \in V_1\) and an open semi-algebraic set \(V_2 \subset {\mathbb {R}}\) with \(0 \in V_2\) such that \(V := \{ y + \lambda \nabla f(x) : y \in V_1, \lambda \in V_2 \} \subset U\) and an injective Nash-function

$$\begin{aligned} \varphi : V_1 \rightarrow V \end{aligned}$$

with \({\text {im}}\varphi = Y \cap V\) and \(\mathrm{id}_{V_1} = \pi \circ \varphi \), where \(\pi \) is the orthogonal projection onto T, the affine tangent space to Y at x.

Let \(U_1 \subset V_1\) be the connected component containing x and let \(U_2 \subset V_2\) be the connected component of 0. Then there are \(\varepsilon _-, \varepsilon _+ >0\) with \(U_2 = (-\varepsilon _-,\varepsilon _+)\). Now put \(U' := \{ y + \lambda \nabla f(x) : y \in U_1, \lambda \in U_2 \}\). Since \(\varphi (x) = x \in U'\) we have, by continuity, that \(\varphi (U_1) \subset U'\). Hence the restriction \(\widetilde{\varphi } : U_1 \rightarrow U'\) is a well-defined, injective Nash-function with \({\text {im}}\widetilde{\varphi } = Y \cap U'\) and \(\mathrm{id}_{U_1} = \pi \circ \widetilde{\varphi }\).

Let \(\lambda _y \in {\mathbb {R}}\) with \(\widetilde{\varphi }(y) = y + \lambda _y \nabla f((x)\) for each \(y \in U_1\). Then \(\lambda _y \in (-\varepsilon _-,\varepsilon _+)\). Let \(\widetilde{\pi }\) be the restriction of \(\pi \) onto \(\{z \in U' : f(z)>0\}\).

Now f assumes a constant sign \(\sigma _1\) on \(\{y + \lambda \nabla f(x): \varepsilon _+> \lambda > \lambda _y\}\) and a constant sign \(\sigma _2\) on \(\{ y + \lambda \nabla f(x): \varepsilon _-< \lambda < \lambda _y\}\). Since \(\langle \nabla f(x) , \nabla f(y) \rangle \not = 0\) we have \(\sigma _1 = - \sigma _2\). Hence a fiber of \(\widetilde{\pi }\) is of the form \(\{ y + \lambda \nabla f(x): \varepsilon _-< \lambda < \lambda _y\}\) or \(\{ y + \lambda \nabla f(x): \varepsilon _+> \lambda > \lambda _y\}\). In any case the fibers of \(\widetilde{\pi }\) are connected. Further \({\text {im}}\widetilde{\pi } = U_1\), \(\widetilde{\pi }\) is open and \(U_1\) is connected. Hence \(U' \cap \{f>0\}\) is connected and by the same argument \(U' \cap \{f<0\}\), too.

Since \(x \in \partial {\text {int}}A\), we get \({\text {int}}(A \cap U') \not = \emptyset \). Hence there is a \(y \in A \cap U'\) with \(f(y) \not = 0\). By changing the sign of f if necessary, we can assume that \(f(y) > 0\). Now

$$\begin{aligned} U' \cap \{f>0\} = (U' \cap \{f>0\} \cap A) \cup (U' \cap \{f>0\} \cap \overline{{\mathbb {R}}^n \setminus A}) \end{aligned}$$

and since \(U' \cap A \cap \overline{{\mathbb {R}}^n \setminus A} = U' \cap \partial A \subset Y\) this is a disjoint union. Because the first set in the union is nonempty and \(U' \cap \{f>0\}\) is connected, we have \(U' \cap \{f>0\} \subset A\).

By the same argument \(U' \cap \{f<0\} \subset A\) or \(U' \cap \{f<0\} \cap A = \emptyset \). But in the first case we would have \(U' \subset A\), since A is closed, and hence the contradiction \(x \in {\text {int}}A\). Hence \(U' \cap A = U' \cap \{f\ge 0\}\). In particular, \(\partial A \cap U' = Y \cap U'\) (due to \(\sigma _1 = - \sigma _2\) for each \(y \in U_1\)).

We will mostly use this result in its homogeneous form, which we may state as follows:

Corollary 3.15

Let C be a proper cone in \({\mathbb {R}}^{n+1}\) and let \(x\in \partial C\), \(x\ne {\mathbf {0}}\). Assume that x is a regular point on an irreducible component Y of \(\partial _a(C)\) and, moreover, that there exists an open neighborhood U of x in \({\mathbb {R}}^{n+1}\) such that \(\partial C\cap U\subset Y({\mathbb {R}})\cap U\). Then there exists an open neighborhood V of x in U satisfying

$$\begin{aligned} \partial C\cap V= Y({\mathbb {R}})\cap V. \end{aligned}$$

 \(\square \)

Theorem 3.16

Let C be a proper cone in \({\mathbb {R}}^{n+1}\) and let P be a patch of C over an irreducible component Y of \(\partial _a C\).

  1. (1)

    P is of pure projective dimension \(n-1\).

  2. (2)

    \(\pi _1(P)\) is open in \(\partial C\subset {\mathbb {P}}^n({\mathbb {R}})\) and of pure projective dimension \(n-1\).

  3. (3)

    \(\pi _2(P)\) is an open semi-algebraic subset of \(Y^*_{\mathrm{reg}}({\mathbb {R}})\). In particular, it is of pure dimension d with \(d=\dim (Y^*)\).

  4. (4)

    For \(\ell \in C^\vee \), let \(H_\ell =\{x\in {\mathbb {R}}^{n+1}\ |\ \langle \ell ,x \rangle =0\}\). Then

    $$\begin{aligned} \dim (C\cap H_\ell )=n-d \end{aligned}$$

    as a cone in \({\mathbb {R}}^{n+1}\) for all \(\ell \in \pi _2(P)\). Furthermore, \(\pi _1(P)\cap H_\ell \) is Zariski-dense in the face \(C\cap H_\ell \), for all \(\ell \in \pi _2(P)\).

  5. (5)

    In the situation of (4), the union of \(\pi _1(P)\cap H_\ell \) taken over all patches P of C over Y is dense in \(C\cap H_\ell \) in the euclidean topology.

Proof

For (1), we use Corollary 3.15: For \((x,\ell )\) to be in a patch P over \(Y = {\mathcal {V}}(f)\), x needs to be a regular point of Y and not lie on any other irreducible component of \(\partial _a C\), implying \(\ell = \nabla f(x)\) (see Remark 3.3). So Corollary 3.15 shows that \((y,\nabla f(y)) \in P\) for all y in \(U\cap Y\) for an open neighborhood U of x, hence P has local dimension \(n-1\) at x. This also proves (2).

For (3), we show the following: If \(U \subset \partial C\) is open (in the euclidean topology) and contained in \(Y_{\mathrm{bireg}}({\mathbb {R}})\cap (\partial _a C)_{\mathrm{reg}}({\mathbb {R}})\), then \(\pi _2 (\pi _1^{-1}(U))\) (via the normal cycle) is open in \(Y^*_{\mathrm{reg}}({\mathbb {R}})\) in the euclidean topology.

Note that \(B := \{ (x,\ell )\in {\mathbb {R}}^{n+1} \times {\mathbb {R}}^{n+1} | \ell \in Y^*_{\mathrm{reg}} \text { and } x \equiv 0 \text { on } {\mathbb {T}}_\ell (X)\}\) is a real vector bundle over \(Y^*_{\mathrm{reg}}({\mathbb {R}})\) since Y is a real variety. Let \(y \in {\text {int}}C\). Since \(U \subset Y_{\mathrm{reg}}\), we have \(\pi _1^{-1}(U) = \pi _{B,1}^{-1}(U) \cap \{(x,\ell )| \langle y,\ell \rangle >0\}\) by the biduality theorem, where \(\pi _{B,1}\) is the projection of B onto the first factor. This implies the claim.

To show (4), pick \(\ell \in \pi _2(P)\subset Y^*\). Let \(F_\ell = H_\ell \cap C\) be the face of C exposed by \(\ell \) and let \(V_\ell = \mathrm{cl}_{\mathrm{Zar}}(F_\ell ) = \mathrm{span}(F_\ell )\). We know that \(\pi _1(P)\cap H_\ell \ne \emptyset \) and since \(\pi _1(P)\) is open relative to \(\partial C\), it follows that \(\pi _1(P)\cap H_\ell \) is Zariski-dense in \(F_\ell \).

To finish claim (4), we show that \(\dim (C\cap H_\ell ) = n-d\) as a subset of \({\mathbb {R}}^{n+1}\), where \(d = \dim (Y^*)\) as a projective variety. We know that \(\dim (C\cap H_\ell ) = \dim (V_\ell )\) so it suffices to show that \(\dim (V_\ell ) = n-d\). Let L be the real annihilator of \({\mathbb {T}}_\ell Y^*\), which has dimension \(n-d\) as a linear space in \({\mathbb {R}}^{n+1}\), since \(Y^*\) is a real variety, and is contained in \(H_\ell \). Note also that \(L \subset Y\). We show that \(L = V_\ell \) by showing that \(\pi _1(P) \cap H_\ell \) is Zariski-dense in L.

First, \(\pi _1(P)\cap H_\ell \) is contained in L because \(\ell \) defines the supporting hyperplane to C at \(F_\ell \) and for every point in \(\pi _1(P)\) the local tangent hyperplane to Y is the unique supporting hyperplane to C at that point (by Corollary 3.15). Since \(\pi _1(P)\) is open relative to \(\partial C\) and \(\partial C \cap U = Y({\mathbb {R}})\cap U\) in an open neighborhood of any x with \((x,\ell ) \in P\) (again by Corollary 3.15), we conclude that \(\pi _1(P)\) is open relative to \(Y({\mathbb {R}})\) (in the euclidean topology) and therefore open (and non-empty) in L. Therefore, \(\pi _1(P)\cap L\) is Zariski-dense in L. This shows that the dimension of \(F_\ell \) is \(n-d\) as claimed.

For (5) assume that there is an open, nonempty \(U \subset F_\ell = H_\ell \cap C\) such that no patch over Y intersects U. Then

$$\begin{aligned} U \subset \bigcup _{i=2}^r Y_i \cup (Y \setminus Y_{\mathrm{bireg}}), \end{aligned}$$

where \(Y = Y_1, \dots , Y_r\) are the irreducible components of \(\partial _a C\). Since U is Zariski-dense in \(V_\ell \) and the union above is closed it follows that \(V_\ell \) is included in the union. Hence no patch over Y intersects \(F_\ell \), which contradicts our assumption. Hence the claim follows.

Remark 3.17

This theorem shows that we can determine the family of patches \({\mathscr {P}}(C)\) from a cylindrical algebraic decomposition of \({\mathcal {N}}_+(C)\). Theoretically speaking, the set of patches is therefore computable. Practically speaking, such computations require careful thinking and specialized approaches, already for examples of moderate dimension and complexity. We discuss some aspects of computation in more detail in Sect. 4.

The following statement shows that faces inside a patch vary continuously in a certain sense inspired by flat families in algebraic geometry. Morally speaking, if we remove a face from a patch, we may recover the full face by taking the euclidean closure of the remainder.

Corollary 3.18

Under the assumptions of Theorem 3.16, we have

$$\begin{aligned} \pi _1(P)\cap H_\ell \subset \overline{\pi _1(P)\setminus H_\ell }, \end{aligned}$$

unless \(H_\ell =Y\).

Proof

If \(\dim \pi _1(P) \cap H_\ell = n-1\), then \(H_\ell \subset Y\) and hence \(Y = H_\ell \).

Now we can assume \(\dim \pi _1(P) \cap H_\ell < n-1\). Define A to be the euclidean closure of \(\pi _1(P) \setminus H_\ell \). Suppose \(\pi _1(P) \cap H_\ell \) is not contained in A and pick a point \(p \in \pi _1(P) \cap H_\ell \setminus A\). Then \(p \in \pi _1(P) \setminus A\), which is an open semi-algebraic subset of \(\pi _1(P)\) and hence has dimension \(n-1\) by Theorem 3.16. Since we have \(\pi _1(P) \setminus A \subset \pi _1(P) \cap H_\ell \) by construction, we get the contradiction \(\dim (\pi _1(P) \cap H_\ell ) \ge n-1\).

The following example illustrates that the (partial) faces in an open patch need not vary continuously in the Hausdorff metric (Fig. 4).

Example 3.19

(The helmet) Let \(\overline{B}\) be the closed unit ball centered at the origin, \(a = \sqrt{1-(7/10)^2}\) and \(f = 1/2 x^2+y-7/10\) and let K be the intersection of the two sets

$$\begin{aligned}&\overline{B} \cup \{ (x,y,z) \in {\mathbb {R}}^3 \ |\ y \ge 0 \text { and } x^2+z^2=1\} \text { and}\\&\{(x,y,z) \in {\mathbb {R}}^3 \ |\ z \le a \text { and } f(x,y,z)\le 0 \}. \end{aligned}$$

Figure 5 shows the part of the boundary of K that is cut out by f. The visible oval indicates the intersection with the sphere. Since the sphere is part of the algebraic boundary, this oval is in the singular locus of \(\partial _a K\). Indeed, there are two open patches associated to f. Let P denote the open patch outside of the oval. Consider the face in the middle, namely the face cut out by \(l=(0,-10/7,0)\in K^\circ \). This is exactly the face at which the oval touches the upper edge and hence the portion of P in this face is the open interval under the oval. In every neighborhood of this face, however, there is a face, in which P has a portion below and, more importantly, a portion above the oval. So the “faces” of P, i.e., the portions of P in respective faces, do not vary continuously in the Hausdorff metric.   \(\Diamond \)

Fig. 4
figure 4

The “helmet” and its dual (Example 3.19)

Fig. 5
figure 5

The “helmet” (Example 3.19) from a different viewpoint

Note that the discontinuity in Example 3.19 disappears if we pass over to the closed patch \(\overline{P}\). In fact, this holds in general.

Since we now want to argue about Hausdorff limits, we switch to the affine setup. We discussed above in Remark 3.5 what a patch means exactly here.

Lemma 3.20

Let \(K \subset {\mathbb {R}}^n\) be a compact, convex, semi-algebraic set containing the origin in its interior. Let P be an open patch of K over an irreducible component Y of \(\partial _a K\). Suppose \(\ell _n \in \pi _2(P)\) is a convergent sequence whose limit \(\ell \) is also in \(\pi _2(P)\), and put \(Q_n = \pi _1(\overline{P}) \cap H_{\ell _n}\) and \(Q = \pi _1(\overline{P}) \cap H_\ell \). Then the sequence of sets \(Q_n\) converges to the set Q of K in the Hausdorff metric.

Before we prove this claim, we want to point out that the sets \(Q_n\) as defined in the claim do not need to be faces of K because we intersect \(\pi _1(\overline{P})\) with the supporting hyperplane \(H_{\ell _n}\) of K and not all of the boundary of K.

Proof

For Hausdorff convergence, we need to show that both

$$\begin{aligned}&d_n = \sup \{\inf \{\Vert a-b\Vert :b\in Q\} :a\in Q_n\}, \text { and} \\&\delta _n = \sup \{ \inf \{\Vert a-b\Vert :a \in Q_n\} :b \in Q\} \end{aligned}$$

converge to zero.

Suppose \(d_n\) does not converge to 0. Then we can find an \(\varepsilon > 0\) and pass to a subsequence such that \(d_n > \varepsilon \) for all n. Hence there is a sequence \(a_n \in Q_n\) such that \(\inf \{\Vert a_n-b\Vert :b \in Q\} > \varepsilon \). Since \(\partial K\) is compact, we may pass to a convergent subsequence \(a_n\). Its limit, which we call a, is necessarily contained in the supporting hyperplane \(H_\ell \). By compactness of the normal cycle, the projection of the closed patch \(\overline{P}\) is closed and therefore contains a, hence \(a \in Q\). This is a contradiction because \(0< \varepsilon < \inf \{\Vert a_n-b\Vert \ :\ b \in Q\} \le \Vert a_n-a\Vert \) but the sequence \((a_n)\) converges to a.

Next we show that \(\delta _n\) goes to 0 as well. Fix \(\varepsilon > 0\) and \(b \in Q\) and let U be the ball around b with radius \(\varepsilon \). We can push this neighborhood U of b to the dual space via the normal cycle to get the subset \(U' = \pi _2 (\pi _1^{-1}(U) \cap P)\) of \(Y^*({\mathbb {R}})\) which is open as a subset of \(Y^*({\mathbb {R}})\) in the euclidean topology. Since the sequence \(\ell _n\) lies inside \(Y^*({\mathbb {R}})\) and converges to \(\ell \) which is in \(U'\) we get that \(\ell _n \in U'\) for sufficiently large n. On the primal side this condition means that \(Q_n \cap U \not = \emptyset \). So we have \(\inf \{\Vert a-b\Vert \ :\ a \in Q_n\} < \varepsilon \) and therefore \(\delta _n \le \varepsilon \) for sufficiently large n because b was arbitrary and by compactness of Q. This proves the claim.

Observe that Lemma 3.20 is in general false if the limit \(\ell \) lies in \(\pi _2(\overline{P}) \setminus \pi _2(P)\), as the face-dimension may jump up, see Example 3.8.

4 Computational aspects

We discuss certain challenges for computing patches in the case of pointed convex cones \(C\subset {\mathbb {R}}^{n+1}\), which means that, algebraically, we are dealing with real projective varieties \(\partial _a C\subset {\mathbb {P}}^n\) and homogeneous vanishing ideals.

Our definition of a patch in Definition 3.4 uses connected components of the real part of the biregular locus of the conormal variety, which is difficult to compute. Let \(X\subset \partial _a C\subset {\mathbb {P}}^n\) be an irreducible component of the algebraic boundary of C. The naive approach to computing (the Zariski closure of) \(\mathrm{CN}(X)\setminus \mathrm{CN}_{\mathrm{bireg}}(X)\) is to add the ideal of the union \(X_{\mathrm{sing}}\cup X^{*}_{\mathrm{sing}}\) of the singular loci to that of the conormal variety.

Let us return to the Cayley cubic (see Example 3.8) to illustrate the computation.

Example 4.1

Here, the algebraic boundary of K is irreducible and equal to the Cayley cubic \({\mathcal {V}}(f)\) for \(f = x^2 + y^2 + z^2 - 2xyz - 1\). The conormal variety of the projective closure is in \({\mathbb {P}}^3\times ({\mathbb {P}}^3)^*\), the dual variety is Steiner’s Roman Surface \({\mathcal {V}}(X^2Y^2 + X^2Z^2 + Y^2Z^2 - 2WXYZ)\), in dual coordinates (WXYZ) with \(wW+xX+yY+zZ = 0\). The singular locus of the Cayley cubic consists of the four points abcd shown in Example 3.8. The singular locus of the Roman Surface consists of three lines, namely the line spanned by (1 : 0 : 0 : 0) and (0 : 1 : 0 : 0), the line spanned by (1 : 0 : 0 : 0) and (0 : 0 : 1 : 0), as well as the line spanned by (1 : 0 : 0 : 0) and (0 : 0 : 0 : 1).

To compute \({\mathcal {V}}(f)\setminus {\mathcal {V}}(f)_{\mathrm{bireg}}\), we take the conormal variety of X together with the above ideals and eliminate the dual coordinates. For the Cayley cubic X, the closure of \(X\setminus X_{\mathrm{bireg}}\) is the union of 9 lines: the six lines that are the Zariski closures of the six edges of the tetrahedron given by the four singular points on the Cayley cubic, and three lines at infinity.   \(\Diamond \)

To compute the patches, we have to output descriptions of connected components of the semi-algebraic set of points in \({\mathcal {N}}_+(C) \cap \mathrm{CN}_{\mathrm{bireg}}(X)\) that lie over a single irreducible component X of \(\partial _a C\). One advantage here is that \(\partial _a C\) has pure codimension 1, so that we can use the Gauss map to the dual variety. Yet the projective dual varieties might be defective, i.e., it may have lower dimension than \(\partial _a C\). This happens if the boundary of C contains an open, non-empty part of points that lie in faces of dimension at least 1, see Theorem 3.16(4) and Example 3.6.

Proposition 4.2

Let \(C\subset {\mathbb {R}}^{n+1}\) be a pointed and closed semi-algebraic convex cone and let X be an irreducible component of its algebraic boundary, as above. Let S be a connected component of the real part of

$$\begin{aligned} \mathrm{CN}_{\mathrm{bireg}}(X)\mathbin {\big \backslash } \bigcup _{Y\ne X}\mathrm{CN}(Y), \end{aligned}$$

where the union is taken over irreducible components Y of \(\partial _a C\). Hence S is the set of pairs \((x,\ell )\) such that \(x\in X_{\mathrm{reg}}\), \(\ell \in X^*_{\mathrm{reg}}\) and x lies on only one irreducible component of \(\partial _a C\). Then either S is a patch or \(S\cap {\mathcal {N}}_+(C) = \emptyset \).

Proof

Suppose \(S\cap {\mathcal {N}}_+(C)\) is nonempty. It is a closed subset of S. It is also open, because for any point \((x,\ell )\in S\cap {\mathcal {N}}_+(C)\) the boundary of C is locally equal to \(X_{\mathrm{bireg}}({\mathbb {R}})\) around x. Thus restricting to a sufficiently small neighborhood U of x in \(X_{\mathrm{bireg}}({\mathbb {R}})\), the inverse image \(\pi ^{-1}(U)\) is contained in \(S\cap {\mathcal {N}}_+(C)\). Since S is connected, we conclude \(S\subset {\mathcal {N}}_+(C)\), which shows that S is a patch.

In particular, one can try to compute a sample point in every connected component of the real part of the quasi-projective variety \(\mathrm{CN}_{\mathrm{bireg}}(X)\setminus \bigcup _{Y\ne X}\mathrm{CN}(Y)\) and test this sample point for membership in \({\mathcal {N}}_+(C)\) to obtain a description of the patches for C.

4.1 Comparison with previous work

In Ciripoi et al. (2019), the authors suggest an algorithm in Section 5 (Algorithm 5.4) to detect the number of patches for the convex hull of a sufficiently nice curve which they call simplicial. First of all, their definition of a patch is slightly different from ours. Secondly, they consider convex hulls of curves \(C\subset {\mathbb {R}}^n\), and require the following properties.

  1. (H1)

    Every point on the curve C that is in the boundary of \({\text {conv}}(C)\) is an extreme point of \(K = {\text {conv}}(C)\).

  2. (H2)

    Every polytopal face of K is a simplex.

  3. (H3)

    Every hyperplane meets the curve C in finitely many points.

Assumptions (H2) and (H3) are easily satisfied by irreducible curves because (H2) is implied by the General Position Theorem and (H3) follows from irreducibility of the curve if it is not contained in a hyperplane. However, (H1) is an assumption that fails more often.

Their proposed algorithm (Ciripoi et al. 2019, Algorithm 5.4) can be viewed as a way to sample from \({\mathcal {N}}({\text {conv}}(C))\) and the patches without knowing the algebraic boundary of \(K = {\text {conv}}(C)\). Starting with a finite sample of points on C, they first compute the convex hull of these finitely many points and record the incidences of this polytope (step 1). Facets that have normal vectors that are close to each other and intersect along a ridge are guessed to belong to a continuously varying family of facets, which is encoded in a graph on the vertex set of facet normals (step 2). The connected components of this graph are taken as proxys for the connected components of \({\mathcal {N}}(C)\cap \mathrm{CN}(X)\), after a pruning subroutine (steps 4 to 10). The irreducible component X of \(\partial _a K\) that contains the family of faces is not computed but rather the constancy of face dimensions is substituted for local irreducibility of the boundary of \({\text {conv}}(C)\).

Sampling from the primal patches of the normal cycle numerically is an interesting problem for convex hulls of sets: In this case, it is not clear how to sample boundary points of the convex hull in order to find primal patches in the normal cycle. Sampling boundary points by optimizing in randomly chosen directions is not helpful because this samples only from dual patches. Indeed, by sampling random directions, we end up (with probability 1 given a reasonable distribution for our sampling of directions) in subsets of \({\mathcal {N}}(K)\subset {\mathbb {R}}^n\times ({\mathbb {R}}^n)^*\) that have dimension \(n-1\) after projection on the second factor which therefore are dense in irreducible components of the algebraic boundary of the polar \(K^\circ \) and this is a dual patch associated to families of faces of \(K^\circ \). However, on the primal side, we cannot be sure that we cover a full-dimensional family of faces. In the example of the convex hull of a curve, we expect (with probability 1) to have a unique optimum for a random direction and that optimum will lie on the curve so that we do not sample from the families of faces that make up the boundary of the convex hull.

To get to primal patches, we have to identify open subsets of the boundary of the convex hull itself, which could be done by stabbing the boundary with random lines—yet it is not immediately clear in this case how to identify the face containing the sampled boundary point (which we expect to be unique with probability 1) or even its dimension.

5 Hyperbolicity cones

Hyperbolicity cones are a well-behaved class of semi-algebraic convex cones. A polynomial \(p\in {\mathbb {R}}[x_0,x_1,\ldots ,x_n]\) is hyperbolic with respect to a point \(e\in {\mathbb {R}}^{n+1}\) if \(p(e)\ne 0\) and if for every \(x\in {\mathbb {R}}^{n+1}\) the univariate polynomial \(p(x+te)\in {\mathbb {R}}[t]\) is real-rooted. For every hyperbolic polynomial p, the connected component of e in the set \({\mathbb {R}}^{n+1}\setminus {\mathcal {V}}(p)\) is a convex cone. The facial structure at a boundary point x of this cone is related to the multiplicity of the root \(t=0\) of the univariate polynomials \(p(x+te)\), by Renegar’s work (Renegar 2006). In particular, the dimension of the smallest face containing x (which is the unique proper face containing x in case x is a regular point) is determined by the rank of the Hessian matrix of p at x, see Renegar (2006, Theorem 10).

Theorem 5.1

(Renegar) Let \(p\in {\mathbb {R}}[x_0,x_1,\ldots ,x_n]\) of degree \(g\ge 2\) be hyperbolic with respect to e and let \(C\subset {\mathbb {R}}^{n+1}\) be the corresponding hyperbolicity cone. Suppose that C is a proper convex cone and let \(x \in \partial C\) be a regular point of \(\partial _a C\). Let d be the dimension of the unique proper face of C containing x and denote the Hessian matrix of p at x by H. Let r be the rank of \(H|_{T_x{\mathcal {V}}(p)}\), then \(r = \mathrm{rank}\,H -1\) and \(d+r = n+1\).

Proof

By Renegar (2006, Theorem 10) for every \(v \in T_x {\mathcal {V}}(p)\) we have either

  1. (1)

    \(p(x + tv) = 0\) for all \(t \in {\mathbb {R}}\), and there exists an \(\varepsilon >0\) such that \(x + t v \in \partial C\) for every \(-\varepsilon<t<\varepsilon \), or

  2. (1)

    \(v^\top H v < 0\).

This implies that \(W := \{v \in T_x {\mathcal {V}}(p) | v^\top H v = 0 \}\) is a vector space, namely the span of the face containing x. Since H is orthogonally diagonalizable, we may choose an orthogonal decomposition \({\mathbb {R}}^{n+1} = V_+ \oplus V_- \oplus V_0\), where \(v^\top H v >0\) for every \(v \in V_+ \setminus \{0\}\), \(v^\top H v <0\) for every \(v \in V_- \setminus \{0\}\) and \(V_0 = \mathrm{Ker}\, H\). Note that \( V_0 \subset T_x{\mathcal {V}}(p)\) since \(\langle \nabla p_x, v \rangle = v^\top \nabla p_x = \frac{1}{g-1} v^\top H x = \frac{1}{g-1} x^\top H v = 0\) for \(v \in V_0\).

Since \(V_+^\bot = V_- \oplus V_0\), we arrive at \(V_0 = W \cap V_+^\bot \). Note that \(V_+\) has at most dimension 1. Now \(x^\top H x =(g-1) x^\top \nabla p_x = 0\), but \(H x = (g-1) \nabla p_x \not = 0\). Hence \(x \in W \setminus V_0\). This implies \(\mathrm{dim}\, V_+ =1\) and \(\mathrm{dim}\, W = \mathrm{dim}\, V_0 + 1\). We conclude

$$\begin{aligned} \qquad \qquad \qquad \qquad d + r = \mathrm{dim}\, W + \dim \,T_x{\mathcal {V}}(p) - \mathrm{dim}\,V_0 = n+1.\qquad \qquad \qquad \quad \end{aligned}$$

\(\square \)

In the situation of the above theorem, the local dimension of the image of the Gauss map around such a point x is r. So the Hessian matrix being of maximal rank means that the derivative of the Gauss map has maximal rank. However, having a Hessian matrix of maximal rank at a point \(x \in \partial C\) does not imply that x is in the biregular locus and it does not imply Hausdorff continuity of the faces either (even in the spectrahedral case) as the following examples show.

We have already observed the non-continuity in the Hausdorff metric, even for constant face dimension and spectrahedra, in Example 3.6. The Hessian matrix of the two quadratic cones has rank 3 everywhere (here, we take the \(4\times 4\) Hessian matrix of the homogenization).

Example 5.2

Let \(f \in {\mathbb {Q}}[x_0, \dots , x_3]\) be given by the definite determinantal representation \(f = \mathrm{det}(x_0 M_0 + \dots +x_3 M_3)\), where \(M_0 = I\), the identity matrix, \(M_1 = \mathrm{diag}(1,1,1,0)\),

$$\begin{aligned} M_2&= \left( \begin{array}{cccc} 0 &{}\quad 1 &{}\quad 0 &{}\quad -3 \\ 1 &{}\quad \frac{4}{9} &{}\quad 0 &{}\quad -\frac{4}{3} \\ 0 &{}\quad 0 &{}\quad -\frac{1}{4} &{}\quad 1 \\ -3 &{}\quad -\frac{4}{3} &{}\quad 1 &{}\quad 0 \\ \end{array} \right) \text { and}\\ M_3&= \left( \begin{array}{cccc} 0 &{}\quad 0 &{}\quad 0 &{}\quad 0 \\ 0 &{}\quad -\frac{10}{3} &{}\quad 0 &{}\quad 5 \\ 0 &{}\quad 0 &{}\quad 0 &{}\quad 0 \\ 0 &{}\quad 5 &{}\quad 0 &{}\quad 0 \\ \end{array} \right) . \end{aligned}$$

This calculates to:

$$\begin{aligned} f&=x_0^4+3 x_0^3 x_1+3 x_0^2 x_1^2+x_0 x_1^3+\frac{7}{36} x_0^3 x_2+\frac{7}{18} x_0^2 x_1 x_2+\frac{7}{36} x_0 x_1^2 x_2-\frac{116}{9} x_0^2 x_2^2\\&\quad -\frac{74}{3} x_0 x_1 x_2^2-\frac{106}{9} x_1^2 x_2^2+\frac{13}{2} x_0 x_2^3+\frac{25}{4} x_1 x_2^3-\frac{10}{3} x_0^3 x_3-\frac{20}{3} x_0^2 x_1 x_3\\&\quad -\frac{10}{3} x_0 x_1^2 x_3+\frac{85}{6} x_0^2 x_2 x_3+\frac{55}{2} x_0 x_1 x_2 x_3+\frac{40}{3} x_1^2 x_2 x_3\\&\quad -25 x_0^2 x_3^2-50 x_0 x_1 x_3^2-25 x_1^2 x_3^2+\frac{25}{4} x_0 x_2 x_3^2+\frac{25}{4} x_1 x_2 x_3^2 \end{aligned}$$

Then f is hyperbolic with respect to \(e_0\). Now f is irreducible (over \({\mathbb {C}}\)) and the point \(p = e_1\) lies on the boundary of the hyperbolicity cone \(C\subset {\mathbb {R}}^4\) corresponding to (fe). The Hessian matrix at p is

$$\begin{aligned} \left( \begin{array}{cccc} 6 &{}\quad 3 &{}\quad \frac{7}{36} &{}\quad -\frac{1}{3} \\ 3 &{}\quad 0 &{}\quad 0 &{}\quad 0\\ \frac{7}{36} &{}\quad 0 &{}\quad -\frac{212}{9} &{}\quad \frac{40}{3} \\ -\frac{10}{3} &{}\quad 0 &{}\quad \frac{40}{3} &{}\quad -50 \\ \end{array} \right) \end{aligned}$$

and has rank 4. Furthermore \(\partial _a C = {\mathcal {V}}(f) =: X\) and \(p \in X_{\mathrm{reg}}\) with \(\ell := \nabla f_p = e_0\). Hence, as noted above, the image of the Gauss map on an open neighborhood of p in C (resp. in X) is a real (resp. complex), smooth manifold of dimension 3. If the dual variety \(X^*\) were to agree locally with this complex manifold at \(\ell \), then \(\ell \in X^*_{\mathrm{reg}}\) by Milnor (1969, pp. 13f.) and hence \(p \in X_{\mathrm{bireg}}\). We will see that this is not the case and that in fact \(\ell \in X^*_{\mathrm{sing}}\).

Consider the point \(a = (0,0,1,i)\). This point satisfies

$$\begin{aligned} f(a) = 0 \quad \text {and}\quad \nabla f_a = \frac{1}{4} e_0 . \end{aligned}$$

But this means that \((p,\ell ) \in \mathrm{CN}(X)\) and \((a,\ell ) \in \mathrm{CN}(X)\). Since \(p \not = a\) we have \(\ell \in X^*_{\mathrm{sing}}\) by biduality. Alternatively one can check that \(\nabla g(\ell ) = 0\), where \({\mathcal {I}}(X^*) = \langle g \rangle \).

In primitive form, g has degree 8, 127 terms and

$$\begin{aligned} -56099859565230000000 \; X_0^2 X_1^4 X_3^2 \end{aligned}$$

is the term with the coefficient of highest absolute value.

Figure 6 shows the affine portion of \(X_{\mathbb {R}}\) in the hyperplane \(x_0 + \frac{1}{2} x_1 = 1\) with coordinates \(x = x_1\), \(y = x_2\) and \(z = x_3\), and the corresponding affine portion of \(X^*_{\mathbb {R}}\) in the hyperplane \(X_0 = 1\) with coordinates \(x = X_1 - \frac{1}{2}\), \(y = X_2\) and \(z = X_3\). Note that Fig. 6 does not show components of codimension greater one and in the case of the dual does not show the dual convex body.

In this setting, p translates to the point (2, 0, 0) and \(\ell \) translates to \((-\frac{1}{2},0,0)\). Indeed, \(X^*\) is not a smooth manifold at \(\ell \), as the x-axis in Fig. 6 is part of \(X^*\).

Fig. 6
figure 6

An affine portion of \(X_{\mathbb {R}}\) from (Example 5.2) and the respective affine portion of \(X^*_{\mathbb {R}}\)

   \(\Diamond \)

For hyperbolicity cones, patches capture families of faces both in their algebraic structure as well as their convex geometric structure, see Corollary 5.4. The main reason for this is the following special property.

Lemma 5.3

Let C be the hyperbolicity cone of \(p\in {\mathbb {R}}[x_0,x_1,\ldots ,x_n]\) in \({\mathbb {R}}^{n+1}\) and suppose that C is proper. Then for every face F of C either there is exactly one open patch P with \(\mathrm{relint}\, F \subset \pi _1(P)\), or there is no open patch intersecting F at all.

Proof

Let e be an interior point of C and write \(\mathrm{mult}(x)\) for the multiplicity of 0 as a root of \(p(x+te)\) for \(x \in {\mathbb {R}}^{n+1}\). Note that for a point \(x \in \partial C \cap (\partial _a C)_{\mathrm{reg}}\) we have \(\langle \nabla f_x, e \rangle > 0\) since \(\partial _a C = {\mathcal {V}}(p)\) and \(e \in {\text {int}}C\). This implies the equivalence \(\mathrm{mult}(x) \ge 2 \iff x \in (\partial _a C)_{\mathrm{sing}}\) for \(x \in \partial C\).

By Renegar (2006, Theorem 24) the multiplicity is constant on the relative interior of any face F. Hence either there is a biregular point in the interior of a face and the face is covered by exactly one open patch, or there is no biregular point in the interior and no open patch intersects the face.

General theory of hyperbolic polynomials implies the following useful facts for homogenization: Let \(p\in {\mathbb {R}}[x_0,x_1,\ldots ,x_n]\) be hyperbolic with respect to e in \({\mathbb {R}}^{n+1}\) and let C be its hyperbolicity cone. Suppose C is pointed and let \(K=\{x\in C\ |\ \langle x,e \rangle = \Vert e\Vert ^2\}\). Then K is a compact convex set containing e in its interior and \(C = \widehat{K}\) with properly chosen coordinates. We refer to K as the hyperbolic body of p. For hyperbolic bodies, the (partial) faces of an open patch already vary continuously in the Hausdorff metric.

Corollary 5.4

Let \(p\in {\mathbb {R}}[x_0,x_1,\ldots ,x_n]\) be hyperbolic with respect to e and let K be the associated hyperbolic body. Let P be an open patch of K and let \((\ell _n)_{n\in {\mathbb {N}}}\subset \pi _2(P)\) be a convergent sequence with limit \(\ell \) that is also in \(\pi _2(P)\). Write \(H_{\ell _n}\) (and \(H_\ell \) respectively) for the supporting hyperplanes corresponding to \(\ell _n\in ({\mathbb {R}}^n)^*\) (and \(\ell \) respectively) and put \(Q_n = \pi _1(P)\cap H_{\ell _n}\) and \(Q=\pi _1(P)\cap H_\ell \). Then \(Q_n\) converges to Q in the Hausdorff metric.

Proof

Again, put \(d_n = \sup \{\inf \{ \Vert a-b\Vert :b\in Q\} :a\in Q_n\}\) and, symmetrically, \(\delta _n = \sup \{ \inf \{ \Vert a-b\Vert :a\in Q_n\} :b\in Q\}\).

Showing that \(\delta _n\) goes to 0 is analogous to the argument given in the proof of Lemma 3.20. Assume for contradiction that \(d_n\) does not go to 0. As in Lemma 3.20 we can find an \(\varepsilon >0\) and pass to a subsequence such that there is a sequence \(a_n \in Q_n\) with \(\inf \{ \Vert a_n-b\Vert :b\in Q\} > \varepsilon \). Since \(\partial K\) is compact we can choose a convergent subsequence, if necessary, so that \((a_n)_{n\in {\mathbb {N}}}\) converges to a, which is then necessarily in \(F_\ell = \partial K \cap H_\ell \). Now Lemma 5.3 says that \(Q = \mathrm{relint}(\partial K \cap H_\ell )\), which is dense in \(F_\ell \). This leads to a contradiction because \(0< \varepsilon < \inf \{ \Vert a_n-b\Vert :b\in Q\} \le \Vert a_n-a\Vert + \inf \{ \Vert a-b\Vert :b\in Q\} = \Vert a_n-a\Vert \) but the sequence \((a_n)\) converges to a.