## 1 Introduction

### 1.1 Context and problem statement

The notion of *fiber bundle* is fundamental in mathematics and physics [Reference Husemöller, Joachim, Jurčo, Schottenloher, Echterhoff, Fredenhagen and Krötz33, Reference Luke and Mishchenko43, Reference Balachandran, Marmo, Skagerstam and Stern3, Reference Bott6]. Informally, a fiber bundle with fiber *F* consists of a continuous function
$p: Y \to X$
from the *total space Y* to the *base space X*, that, locally, looks like a projection
$U \times F \to U$
, in the following sense: *X* can be covered by open sets
$U \subseteq X$
, each equipped with a homeomorphism
$i : U \times F \to p^{-1}(U)$
such that
$(p\circ i)(x,f) = x$
for every
$(x,f) \in U\times F$
. In particular,
$p^{-1}(x)$
is homeomorphic to *F* for every
$x \in X$
. *Vector bundles* are fiber bundles for which *F* is a vector space, and a key example is the tangent bundle
$T\mathcal {M} \to \mathcal {M}$
of a *d*-dimensional differentiable manifold
$\mathcal {M}$
. The fiber of this bundle is
$\mathbb {R}^d$
, as the tangent space at each point of
$\mathcal {M}$
is *d*-dimensional. The Möbius band
$\mathsf {Mob} \to S^1$
is another example of a vector bundle, interpreted as a collection of one-dimensional real vector spaces that change orientation as one goes around the equatorial circle
$S^1$
. Of particular interest are fiber bundles for which the fiber *F* is only allowed to ‘twist’ according to a certain group *G* of automorphisms of *F*; these correspond to *principal G-bundles*. Vector bundles can be identified with principal *G*-bundles with *G* the general linear group, while *Euclidean vector bundles* arise when *G* is the orthogonal group.

Many problems in mathematics and physics can be reduced to finding sections of a fiber bundle (that is, maps $s : X\to Y$ for which $p \circ s = \mathsf {id}_X$ ) satisfying certain properties. For this reason, one is interested in finding computable obstructions to the existence of certain sections and, more generally, in defining computable invariants of fiber bundles that can aid in their classification up to isomorphism.

*Characteristic classes* are examples of such invariants [Reference Milnor and Stasheff47]. Indeed, any principal bundle determines a collection of elements in the cohomology of its base space, called the characteristic classes of the bundle. This is done in such a way that isomorphic bundles have the same characteristic classes. The *Stiefel–Whitney classes* of a vector bundle are a particular type of characteristic class, which provide obstructions to solving several geometric problems. For instance, the first Stiefel–Whitney class determines whether or not the vector bundle is orientable, while, for a differentiable manifold
$\mathcal {M}$
, the Stiefel–Whitney classes of its tangent bundle provide obstructions to embedding
$\mathcal {M}$
in
$\mathbb {R}^n$
for small *n*. Similarly, the *Euler class* of an oriented vector bundle is yet another characteristic class, which provides an obstruction to the existence of a nowhere vanishing section.

Part of the ubiquity of principal bundles stems from the fact that they can be defined in several, a posteriori, equivalent ways. Of particular interest to us are: (1) the definition of principal *G*-bundles by means of *G*-valued *Čech cocycles*, which, roughly speaking, consist of local data on the base space specifying how the fibers must be glued to reconstruct the total space, and (2) the definition of principal *G*-bundles by means of *classifying maps*, which are continuous functions from the base space to a certain *classifying space*
$\mathcal {B} G$
.

Principal bundles and their characteristic classes appear also in practical applications. Many synchronization problems, in which independent, local measurements need to be assembled into a global quantity, can be interpreted as the problem of trivializing a Čech cochain of pairwise alignments. Dimensionality reduction problems, where a high-dimensional point cloud concentrated around a low-dimensional manifold needs to be represented with low distortion in a low-dimensional space, can be interpreted as an embedding problem for which estimates of the tangential characteristic classes can provide obstructions. Although it is informally clear that vector bundles are relevant for these kinds of problems, the discrete and noisy nature of the input data makes it unclear whether the data actually determine a true vector bundle and whether topological information of this bundle can be extracted from the noisy and incomplete input.

We identify two main difficulties for working with vector bundles in a practical setting. One comes from a discrete aspect: Mathematically, vector bundles are continuous entities specified, for instance, by (continuous) cocycles or by classifying maps. How can one specify arbitrary vector bundles on, say, the geometric realization of a finite simplicial complex using a finite amount of data? The other difficulty comes from the fact that, in practical applications, nothing is exact (e.g., cocycle conditions from noisy pairwise alignments), so one needs a notion of vector bundle that is robust to some degree of noise. Although the results in this paper are mainly theoretical, they are motivated by problems in applied topology. In the rest of this introduction, we describe some of these problems in more detail.

#### 1.1.1 Synchronization and cocycles

Consider a synchronization problem with input a set *V* of local measurements that are pairwise aligned by elements
$\{g_{ij}\}_{i,j \in V}$
of a group *G*. One instance of this problem arises in cryogenic electron microscopy (cryo-EM), where, broadly speaking, one seeks to reconstruct the three-dimensional (3D) shape of a molecule from several two-dimensional (2D) projections taken from unknown viewing directions [Reference Frank18, Reference van Heel, Gowen, Matadeen, Orlova, Finn, Pape, Cohen, Stark, Schmidt, Schatz and Patwardhan28]. Here, the measurements are the 2D pictures, which are pairwise aligned by elements of the rotation group
$SO(2)$
. Figure 1 shows examples of the input data for this kind of problem.

Letting *K* be the graph with vertex set *V* and an edge
$(ij)$
if
$g_{ij}$
aligns *i* and *j* sufficiently well, one expects the family of elements
$\{g_{ij}\}_{(ij) \in K}$
to satisfy an *approximate cocycle condition*. This means that if
$(ij)$
,
$(jk)$
and
$(ik)$
are edges of *V*, then
$\|g_{ij} g_{jk} - g_{ik}\| < \varepsilon $
for some sufficiently small
$\varepsilon> 0$
. This condition indicates that the measurements can be approximately locally synchronized: In the case of cryo-EM, this implies that sets of 2D projections with very similar viewing directions can be aligned simultaneously; this is key for averaging and thus denoising images with similar viewing directions. Global synchronization is a different matter: In the case of cryo-EM, we do not expect to be able to align all 2D projections simultaneously. This is justified in [Reference Singer, Zhao, Shkolnisky and Hadani58] by observing that the pairwise alignments
$\{g_{ij}\}$
approximate an
$SO(2)$
-cocycle representing the tangent bundle of the
$2$
-sphere, which is nontrivial. We will demonstrate in Section 7.4 how a data-derived estimate of the associated Euler class yields a nontrivial obstruction to globally aligning the data from Figure 1.

In the general case, if the approximate cocycle
$\{g_{ij}\}$
does indeed determine a true principal *G*-bundle, then global synchronization corresponds to the bundle being trivial. This view of synchronization is studied in-depth in [Reference Gao, Brodzki and Mukherjee19] for the case of flat principal *G*-bundles (i.e., bundles determined by a group morphism from
$\pi _1$
of the base to *G*). However, as it is observed in [Reference Ye and Lim69], the bundles underlying the cryo-EM problem are not flat.

To our knowledge, the problem of determining when an arbitrary approximate $O(d)$ -valued cocycle defines a true vector bundle has not yet been addressed in the literature. This is one of the goals of this paper. Possible applications of a general theory of approximate $O(d)$ -cocycles are the usage of characteristic classes of the underlying true vector bundle for model validation, detecting nonsynchronizability in data and for guiding local synchronization and averaging algorithms.

#### 1.1.2 Local trivializations and dimensionality reduction

Consider a point cloud
$X \subseteq \mathbb {R}^D$
concentrated around a *d*-dimensional embedded manifold
$\mathcal {M}$
and the ensuing problem of extracting information about the tangent bundle
$T \mathcal {M} \to \mathcal {M}$
from the sample *X*. Possible applications of this include using the tangential characteristic classes as computable obstructions for local-to-global dimensionality reduction on *X*.

Here is an example of such an approach. Fix
$k \in \mathbb {N}$
, and let
$N_x$
denote the set of the *k* closest neighbors of *x* in *X*. The application of principal component analysis (PCA) to each
$N_x$
with target dimension *d* yields an ordered orthonormal basis
$\Phi (x)$
of the *d*-dimensional linear subspace that best approximates
$N_x$
. This method, or variations thereof, is sometimes known as *local PCA* [Reference Singer59] and can be used, for instance, to estimate the local dimension of the data [Reference Little, Lee, Jung and Maggioni41].

The aforementioned process defines a function
$\Phi : X \to \mathsf {V}(d,D)$
from the data to the Stiefel manifold of orthonormal *d*-frames in
$\mathbb {R}^D$
, which can be interpreted as an approximate vector bundle given by local trivializations. One expects this construction to approximate the tangent bundle of the manifold
$\mathcal {M}$
. Our goal here is to formalize this intuition and, in particular, to quantify the extent to which an approximate local trivialization induces a true vector bundle and whether topological information of the bundle can be extracted from the approximation.

We apply these ideas in Section 7.2 to the problem of distinguishing nonhomeomorphic but homotopy equivalent attractors in the double-gyre dynamical system. Indeed, we do so by combining local trivializations and data-driven estimates of the first tangential Stiefel–Whitney class. Moreover, we also demonstrate in Section 7.3 how the first two Stiefel–Whitney classes can be estimated from data to yield nontrivial obstructions to dimensionality reduction and parallelization.

### 1.2 Contributions

In this paper, we introduce relaxations and discretizations of the notion of vector bundle, we determine the extent to which these approximate representations determine true vector bundles and we give algorithms for the effective computation of low-dimensional characteristic classes of the true vector bundle directly from approximate and discrete representations. We run these algorithms on examples to illustrate their usage.

The notions of vector bundle we focus on correspond to Euclidean vector bundles, that is, to vector bundles endowed with a compatible, fiberwise inner product, or, equivalently, vector bundles whose structure group is an orthogonal group. To avoid cumbersome nomenclature, we drop the modifier ‘Euclidean’ in our main definitions.

#### Approximate notions of vector bundle

Let
$\varepsilon \geq 0$
. For a topological space *B* with an open cover
$\mathcal {U}$
, we define the set of
$\varepsilon $
-approximate
$O(d)$
-valued
$1$
-cocycles
$\mathsf {Z}^{1}_{\varepsilon }\left ( \mathcal {U}; O(d) \right )$
(Definition 3.3), which we use to define the
$\varepsilon $
-approximate cohomology set
$\check {\mathsf {H}}^{1}_{\varepsilon }\left ( \mathcal {U}; O(d) \right )$
(Definition 3.5). We also introduce the set of
$\varepsilon $
-approximate classifying maps
$\mathsf {Maps}\left ( {B}, {\mathsf {Gr}(d)^\varepsilon } \right )$
(Definition 3.9), which consists of continuous maps with codomain a thickened Grassmannian (Section 2.1.3), and the set of
$\varepsilon $
-approximate classifying maps up to homotopy
$\left \lbrack {B}, {\mathsf {Gr}(d)^\varepsilon } \right \rbrack $
. In order to relate these notions, we define the set of
$\varepsilon $
-approximate local trivializations
$\mathsf {T}_{\varepsilon }\left ( \mathcal {U}; d \right )$
(Definition 3.8). We introduce metrics on these sets, the most relevant of which being the metric
$\mathsf {d}_{\check {\mathsf {H}}}$
on
$\check {\mathsf {H}}^{1}_{\varepsilon }\left ( \mathcal {U}; O(d) \right )$
, which we use to state stability results, below.

When *B* is a paracompact topological space and
$\mathcal {U}$
is a countable open cover, we define maps between the sets, as follows:

Here, a sub- or superscript with a constant *c* at an arrow tip indicates that the map sends one kind of
$\varepsilon $
-approximate vector bundle to another kind of
$c\varepsilon $
-approximate vector bundle. The maps
$\mathsf {triv}$
and
$\mathsf {w}$
are defined in Section 4.1, the map
$\mathsf {av}$
is defined in Construction 4.15 and the map
$\mathsf {cl}$
is defined in Theorem 4.21, which, in particular, also implies that the diagram above commutes when going from top left to bottom right. In Section 4.11, we describe a way in which
$\mathsf {triv}$
and
$\mathsf {w}$
are approximate inverses of each other.

By a result of Tinarrage [Reference Tinarrage63, Lemma 2.1], there is a bijection $\pi _* : \left \lbrack {B}, {\mathsf {Gr}(d)^{\varepsilon }} \right \rbrack \to \left \lbrack {B}, {\mathsf {Gr}(d)} \right \rbrack $ whenever $\varepsilon \leq \sqrt {2}/2$ . In particular, when $\varepsilon \leq 1/2$ , the composite

assigns a true (classical) vector bundle to every $\varepsilon $ -approximate cohomology class. In this sense, an $\varepsilon $ -approximate cocycle determines a true vector bundle, as long as $\varepsilon $ is sufficiently small.

The following result, which appears as Theorem 4.21 and Theorem 4.27, says in particular that the map $\mathsf {cl}$ is stable.

Theorem A. For any $\varepsilon \geq 0$ , the map $\mathsf {cl} : \check {\mathsf {H}}^{1}_{\varepsilon }\left ( \mathcal {U}; O(d) \right ) \to \left \lbrack {B}, {\mathsf {Gr}(d)^{\sqrt {2}\varepsilon }} \right \rbrack $ is independent of arbitrary choices, such as a choice of a partition of unity subordinate to $\mathcal {U}$ or a choice of enumeration of the opens of $\mathcal {U}$ , and is such that, if $\mathsf {d}_{\check {\mathsf {H}}}\left ( \Omega , \Lambda \right ) < \delta $ in $\check {\mathsf {H}}^{1}_{\varepsilon }\left ( \mathcal {U}; O(d) \right )$ , then $\mathsf {cl}(\Omega )$ and $\mathsf {cl}(\Lambda )$ become equal in $\left \lbrack {B}, {\mathsf {Gr}(d)^{\sqrt {2}(\varepsilon + \delta )}} \right \rbrack $ . Moreover, if $\Omega \in \check {\mathsf {H}}^{1}_{\varepsilon }\left ( \mathcal {U}; O(d) \right )$ and $\varepsilon \leq \sqrt {2}/4$ , then there exists $\Lambda \in \check {\mathsf {H}}^{1}_{}\left ( \mathcal {U}; O(d) \right )$ such that $\pi _*(\mathsf {cl}(\Omega )) = \mathsf {cl}(\Lambda ) \in \left \lbrack {B}, {\mathsf {Gr}(d)} \right \rbrack $ and $\mathsf {d}_{\check {\mathsf {H}}}\left ( \Omega , \Lambda \right ) \leq 9\varepsilon $ .

Theorem 4.21 also addresses refinements of covers and their action on approximate cohomology classes; see also Remark 4.22 for a notion of approximate Čech cohomology independent of a cover.

#### Discrete approximate notions of vector bundle

For a simplicial complex *K*, we introduce discrete analogues of approximate cocycles, approximate cohomology and approximate local trivializations. Most importantly, we introduce the discrete approximate cohomology set
$\mathsf {DH}^{1}_{\varepsilon }\left ( K; O(d) \right )$
and the set of discrete approximate local trivializations
$\mathsf {DT}_{\varepsilon }\left ( K; d \right )$
. These are useful in practice, as specifying elements of these sets requires a finite amount of data when *K* is finite. To highlight their simplicity, we give here the notion of discrete approximate cocycle over a simplicial complex *K*:

so that a discrete approximate cocycle consists of a set of orthogonal matrices indexed by the ordered
$1$
-simplices of *K*, which satisfies an approximate cocycle condition. The definition of discrete approximate local trivialization is equally simple.

We motivate the introduction of these constructions by showing that, when
$\varepsilon \leq 1/2$
, any discrete
$\varepsilon $
-approximate cocycle and any discrete
$\varepsilon $
-approximate local trivialization represent a true vector bundle on the geometric realization of *K*. Moreover, we prove a completeness result (Proposition 5.7), which says that any vector bundle over a compact triangulable space can be represented by a discrete approximate cocycle on a sufficiently fine triangulation of the space.

We remark here that the map $\mathsf {w}$ restricts to an algorithmic map from discrete approximate local trivializations to discrete approximate cocycles (Remark 5.6).

#### Reconstruction from finite samples

Building on a result of Niyogi, Smale and Weinberger [Reference Partha Niyogi49], we prove a reconstruction result for vector bundles on compact, embedded manifolds. For readability, we give here a version of the result using big-
$\mathcal {O}$
notation and an informal notion of
$(\varepsilon ,\delta )$
-closeness; a formal statement with precise bounds is given in Theorem 5.15. In the statement,
$\mathsf {Gr}(d,n)$
is the Grassmannian of *d*-planes in
$\mathbb {R}^n$
, which we metrize using the Frobenius distance (Section 2.1.1).

Theorem B. Let $\mathcal {M} \subseteq \mathbb {R}^N$ be a smoothly embedded compact manifold with reach $\tau> 0$ , and let $f : \mathcal {M} \to \mathsf {Gr}(d,n)$ be $\ell $ -Lipschitz. Let $P \subseteq \mathbb {R}^N$ be a finite set, and let $g : P \to \mathsf {Gr}(d,n)$ be a function such that $(P,g)$ is $(\varepsilon ,\delta )$ -close to $(\mathcal {M},f)$ . If $\alpha \in \left (\mathcal {O}(\varepsilon ), \tau - \mathcal {O}(\varepsilon )\right ) \cap \left (0,\sqrt {2}/4 \ell ^{-1} - 2\delta \ell ^{-1} - \varepsilon \right )$ , then there exists a homotopy commutative diagram as follows, in which the vertical maps are homotopy equivalences:

Moreover, the map $\check{\mathsf{C}}(g)$ can be represented by a discrete local trivialization $\Phi \in \mathsf {DT}_{2\ell \varepsilon + \delta }\left ( \check{\mathsf{C}}(P)(\varepsilon ); d \right )$ , in the sense that $\check{\mathsf{C}}(g) = \mathsf {av}(\Phi )$ .

Applying
$\mathsf {w}$
to the discrete local trivialization of Theorem B, we get an approximate cocycle that can be used to compute low-dimensional characteristic classes of the true vector bundle using the algorithms of Section 6, which we describe next. The extent to which the approximate cocycle
$\mathsf {w}(\Phi )$
recovers the true vector bundle *f* is made precise in Lemma 5.10; see also Remark 5.17.

#### Effective computation of characteristic classes

Our last main contribution is the definition of algorithms for the stable and consistent computation of the one- and two-dimensional characteristic classes of a vector bundle given by an approximate $O(d)$ -cocycle.

The algorithms are based on well-known results which say that the characteristic classes we consider are obstructions to lifting the structure group of the cocycle from an orthogonal group to certain other Lie groups. In this sense, the algorithms are classical and most of our work goes into adapting them to the approximate setting and into giving precise bounds for their stability and consistency. The following theorem is a summary of the results in Section 6. In the theorem, $\check {\mathsf {H}}$ denotes Čech cohomology.

Theorem C. Let
$\mathcal {U}$
be a cover of a topological space *B* with the property that nonempty binary intersections are locally path connected and simply connected. There are maps

The map $\mathsf {sw}_1$ is $2$ -stable, in the sense that, if $\Omega , \Omega ' \in \check {\mathsf {H}}^{1}_{\varepsilon }\left ( \mathcal {U}; O(d) \right )$ with $\varepsilon \leq 2$ , and $\mathsf {d}_{\check {\mathsf {H}}}\left ( \Omega , \Omega ' \right ) < 2$ , then $\mathsf {sw}_1(\Omega ) = \mathsf {sw}_1(\Omega ') \in \check {\mathsf {H}}^{1}_{}\left ( \mathcal {U}; \mathbb {Z}/2 \right )$ . In this same sense, the maps $\mathsf {sw}_2$ and $\mathsf {eu}$ are $1$ -stable.

Assume that
$\mathcal {U}$
is countable and that *B* is paracompact and locally contractible. The map
$\mathsf {sw}_1$
is
$2/9$
-consistent, in the sense that, if
$\Omega \in \check {\mathsf {H}}^{1}_{\varepsilon }\left ( \mathcal {U}; O(d) \right )$
with
$\varepsilon < 2/9$
, then
$\mathsf {sw}_1(\Omega )$
is the first Stiefel–Whitney class of the vector bundle classified by
$\pi _*(\mathsf {cl}(\Omega )) : B \to \mathsf {Gr}(d)$
. In this same sense, the map
$\mathsf {sw}_2$
is
$1/9$
-consistent and computes the second Stiefel–Whitney class, and the map
$\mathsf {eu}$
is
$1/9$
-consistent and computes the Euler class of an oriented vector bundle of rank
$2$
.

We show that the maps of Theorem C are algorithmic when the input approximate cocycles are discrete approximate cocycles on a finite simplicial complex (see Tables 1-3). The time and space complexity of the algorithms is polynomial in the number of vertices of the simplicial complex. For
$\mathsf {sw}_1$
, the complexity is also polynomial in *d*, while, for
$\mathsf {sw}_2$
, the complexity is exponential in *d* and depends on calculating geodesic distances on the Spin group. In Section 6.4, we explain how to perform these calculations for small values of *d*.

#### Computational examples

We demonstrate our algorithms on data and show how they can be combined with persistent cohomology computations to obtain cohomological as well as bundle-theoretical information of the data; this is done in Section 7. A proof-of-concept implementation of our algorithms, together with code to replicate the examples, can be found at [Reference Scoccola and Perea56].

### 1.3 Related work

#### Cohomology of synchronization problems

Cohomological aspects of synchronization problems are discussed in [Reference Ye and Lim69, Reference Gao, Brodzki and Mukherjee19, Reference Hansen and Ghrist25].

In [Reference Gao, Brodzki and Mukherjee19], Gao, Brodzki and Mukherjee describe a general framework for studying cohomological obstructions to synchronization problems using principal *G*-bundles. Although useful in many practical applications, the approach is limited by the fact that it only encompasses so-called *flat* principal *G*-bundles, namely, bundles over a space *B* classified by group homomorphisms
$\pi _1(B) \to G$
. To see that this is indeed a limitation, note that no nontrivial vector bundle over
$S^2$
can be represented by a group homomorphism
$\pi _1(S^2) \to O(d)$
since
$\pi _1(S^2) = 0$
. As mentioned previously, vector bundles over
$S^2$
are central in the cryo-EM synchronization problem.

The fact that the cryo-EM bundles cannot be represented by discrete and exact $SO(2)$ -cocycles on a triangulation of $S^2$ is observed by Ye and Lim in [Reference Ye and Lim69], where a solution to this problem is proposed in the special case of $SO(2)$ -cocycles over a two-dimensional simplicial complex.

#### Vector bundles over simplicial complexes

In [Reference Knöppel, Pinkall and Bobenko37], Knöppel and Pinkall give a method for describing arbitrary complex line bundles over finite simplicial complexes using a finite amount of data. They also describe applications to physics and computer graphics. Their theory relies on the fact that, up to isomorphism, a complex line bundle over a simplicial complex can be described exactly using a finite amount of data consisting of an angle $\eta _{ij} \in S^1$ (encoded as a complex number of absolute value $1$ ) for each edge $(ij)$ of the simplicial complex as well as a real number $\Omega _{ijk} \in \mathbb {R}$ for each $2$ -simplex $(ijk)$ of the simplicial complex, which satisfy $\eta _{ki} \eta _{jk} \eta _{ij} = e^{\iota \Omega _{ijk}}$ for every $2$ -simplex $(ijk)$ , where $\iota $ denotes the imaginary unit. This fact does not seem to generalize in a direct way to vector bundles of higher rank.

In [Reference Hansen and Ghrist25], Hansen and Ghrist discuss synchronization on networks and describe a framework based on cellular sheaves. The framework specializes to encompass flat vector bundles over a simplicial complex. This application of their theory has the same limitation as [Reference Gao, Brodzki and Mukherjee19]: By having the vector bundles be described by a family of matrices $\{\Omega _{ij}\}$ indexed by the edges of the simplicial complex, subject to the restriction that $\Omega _{jk} \Omega _{ij} = \Omega _{ik}$ for every 2-simplex $(ijk)$ of the simplicial complex, only flat vector bundles can be described.

These two approaches require a certain equality to hold for each $2$ -simplex of the simplicial complex. The main difference between these approaches and the approach described in this paper is that we do not require an equality to hold for each $2$ -simplex; instead, we keep track of how much a certain equality does not hold.

#### Computation of characteristic classes

In [Reference Singer59], Singer and Wu describe an algorithm for the consistent estimation of the orientability of an embedded manifold. This can be interpreted as estimating whether $\mathsf {sw}_1(\Omega )$ is zero or not, where $\Omega $ is the approximate cocycle given by the transition functions of the approximate local trivialization defined using a local PCA computation, as sketched in Section 1.1.2. Their approach is robust to outliers, a property not enjoyed by the approach presented in this paper. But the algorithm does not provide the user with an actual cocycle and thus, in the case $\mathsf {sw}_1(\Omega )$ is deemed to be nonzero by the algorithm, it is not clear how one can write it in a basis of the cohomology of a simplicial complex built from the data.

In [Reference Tinarrage63], Tinarrage presents a framework for the consistent estimation of characteristic classes of vector bundles over embedded compact manifolds. The input data of the framework consist of the value of a sufficiently tame classifying map on a sufficiently dense sample of the manifold. Theoretical algorithms are given for the stable and consistent computation of arbitrary characteristic classes. The characteristic classes are computed in a geometric way, as the algorithm uses explicit triangulations of the Grassmannians and pulls back the universal characteristic classes to a simplicial complex built from the sample. The practicality of the algorithms is limited by the fact that the number of simplices required to triangulate a Grassmannian
$\mathsf {Gr}(d,n)$
is exponential in both *d* and *n* [Reference Govc, Marzantowicz and Pavešić21] and the fact that the algorithm often requires iterated subdivisions of the simplicial complex built from the data.

#### Vector bundles from finite samples

As mentioned above, in [Reference Tinarrage63] Tinarrage presents a framework for the consistent estimation of characteristic classes of a vector bundle, given a sample.

In [Reference Rieffel53], Rieffel addresses the problem of giving a precise correspondence between vector bundles on metric spaces *X* and *Y* that are at small Gromov–Hausdorff distance. In particular, one can use Rieffel’s framework to extend a vector bundle on a sample of a manifold to the entire manifold.

### 1.4 Structure of the paper

In Section 2, we give basic background. In Section 3, we present our three notions of approximate vector bundle, and in Section 4, we relate them to each other and to classical vector bundles. In particular, we prove Theorem 4.21 and Theorem 4.27. In Section 5, we introduce our notions of discrete approximate vector bundles and show that they can be used to represent vector bundles over triangulable spaces and to reconstruct vector bundles from finite samples. In Section 6, we give algorithms for the stable and consistent computation of low-dimensional characteristic classes starting from a discrete and approximate cocycle. In Section 7, we run our algorithms on examples. In Section 8, we discuss open questions.

## 2 Background

In this section, we introduce the basic background needed to state and prove the results in this paper. Some more technical definitions and results are in Appendix A. In Section 2.1, we introduce orthogonal groups, Grassmannians and Stiefel manifolds and fix notation. In Section 2.2, we recall some of the basics of the theory of principal bundles and vector bundles. We assume familiarity with the very basics of algebraic topology, including cohomology.

### 2.1 Orthogonal groups, Grassmannians and Stiefel manifolds

#### 2.1.1 Main definitions

We start by recalling the definition of the Frobenius norm. Let
$l,m \in \mathbb {N}_{\geq 1}$
, and let
$\mathbb {R}^{l \times m}$
denote the set of
$l \times m$
matrices with real coefficients. Let
$A \in \mathbb {R}^{l \times m}$
. The **Frobenius norm** of *A* is defined by

where
$A^t \in \mathbb {R}^{m \times l}$
denotes the transpose of *A*. The Frobenius norm, as any norm, induces a distance on
$\mathbb {R}^{l \times m}$
defined by
$\mathsf {d}_{\mathsf {Fr}}\left ( A, B \right ) = \|A - B\|$
. We refer to this distance as the **Frobenius distance**.

We now introduce the spaces of matrices we are most interested in. Let $n\geq d \geq 1 \in \mathbb {N}$ .

The **Grassmannian**
$\mathsf {Gr}(d,n)$
has as elements the
$n \times n$
real matrices *A* that satisfy
$A = A^t = A^2$
and have rank equal to *d* and is thus a subset of
$\mathbb {R}^{n \times n}$
. We metrize and topologize
$\mathsf {Gr}(d,n)$
using the Frobenius distance. Note that the elements of
$\mathsf {Gr}(d,n)$
are canonically identified with the orthogonal projection operators
$\mathbb {R}^n \to \mathbb {R}^n$
of rank *d*. Since these orthogonal projections are completely determined by the subspace of
$\mathbb {R}^n$
which they span, it follows that the elements of
$\mathsf {Gr}(d,n)$
correspond precisely to the *d*-dimensional subspaces of
$\mathbb {R}^n$
.

The (compact) **Stiefel manifold**
$\mathsf {V}(d,n)$
has as elements the set of
$n \times d$
real matrices with orthonormal columns. We metrize
$\mathsf {V}(d,n)$
with the Frobenius distance. Note that the elements of
$\mathsf {V}(d,n)$
can be identified with the *d*-dimensional subspaces of
$\mathbb {R}^n$
equipped with an ordered orthonormal basis. The elements of a Stiefel manifold are sometimes referred to as **frames**.

When
$d = n$
, the Stiefel manifold
$\mathsf {V}(d,n)$
coincides with the **orthogonal group**
$O(d)$
, which consists of real
$d \times d$
matrices
$\Omega $
such that
$\Omega \Omega ^t = \mathsf {id}$
. We metrize
$O(d)$
using the Frobenius distance. With this definition,
$O(d)$
is a topological group, as matrix multiplication and inversion are continuous.

We remark here that, although we shall encounter other metrics for $O(d)$ and $\mathsf {Gr}(d,n)$ , our main results are stated using the Frobenius distance. The relevant results about other metrics on the orthogonal group can be found in Appendix A.4, and the ones about other metrics on the Grassmannian are in Appendix A.4.

#### 2.1.2 Infinite-dimensional Grassmannians and Stiefel manifolds

Let
$n\geq d \geq 1 \in \mathbb {N}$
. There is an inclusion
$\mathsf {Gr}(d,n) \subseteq \mathsf {Gr}(d,n+1)$
given by adding a row and a column of zeros at the bottom and right, respectively. This inclusion is norm-preserving and thus metric-preserving. We define the infinite-dimensional Grassmannian as
$\mathsf {Gr}(d) = \bigcup _{n \in \mathbb {N}} \mathsf {Gr}(d,n)$
. We topologize
$\mathsf {Gr}(d)$
using the direct limit topology; recall that the direct limit topology on a union
$X = \bigcup _{n \in \mathbb {N}} X_n$
of topological spaces
$\{X_n\}_{n \in \mathbb {N}}$
, where
$X_n$
is a subspace of
$X_{n+1}$
for all
$n \in \mathbb {N}$
, is the topology where
$A \subseteq X$
is open if and only if
$A \cap X_n$
is open in
$X_n$
for all
$n \in \mathbb {N}$
. Note that this topology is *finer* (i.e., has more opens) than the topology induced by the metric inherited by
$\mathsf {Gr}(d)$
by virtue of it being an increasing union of metric spaces.

Similarly, we have an inclusion
$\mathsf {V}(d,n) \subseteq \mathsf {V}(d,n+1)$
given by taking the matrix representation of a *d*-frame in
$\mathbb {R}^n$
and adding a row of zeros at the bottom of the matrix. Again, these inclusions are metric preserving, and we define
$\mathsf {V}(d) = \bigcup _{n \in \mathbb {N}} \mathsf {V}(d,n)$
, with the direct limit topology induced by the inclusions
$\mathsf {V}(d,n) \to \mathsf {V}(d)$
.

There is a principal
$O(d)$
-bundle
$\mathsf {Proj} : \mathsf {V}(d,n) \to \mathsf {Gr}(d,n)$
, defined by mapping a *d*-frame *M* to the matrix
$MM^t$
(see Section 2.2.2 for the notion of principal bundle). Note that the maps
$\mathsf {Proj} : \mathsf {V}(d,n) \to \mathsf {Gr}(d,n)$
for each
$n \geq 1$
assemble into a map

It is clear that $\mathsf {Proj}$ is continuous, as it restricts to a continuous map $\mathsf {Proj} : \mathsf {V}(d,n) \to \mathsf {Gr}(d,n)$ for each $n \geq d$ .

#### 2.1.3 Thickenings of Grassmannians

For the general notion of thickening and some basic properties, we refer the reader to Appendix A.1; here, we briefly introduce the thickenings of Grassmannians, as they play an important role in our results.

We will be interested in thickenings of Grassmannians, and for that we need to include Grassmannians into a larger metric space. A natural candidate is to let $\mathsf {Gr}(d,n) \subseteq \mathbb {R}^{n\times n}$ , which is metric preserving if we metrize $\mathbb {R}^{n\times n}$ using the Frobenius distance. Similarly, we have $\mathsf {V}(d,n) \subseteq \mathbb {R}^{n \times d}$ . Analogously to what we did for Grassmannians and Stiefel manifolds, we define $\mathbb {R}^{\infty \times \infty } := \bigcup _{n \in \mathbb {N}} \mathbb {R}^{n\times n}$ and $\mathbb {R}^{\infty \times d} := \bigcup _{n \in \mathbb {N}} \mathbb {R}^{n \times d}$ .

The elements of
$\mathbb {R}^{\infty \times \infty }$
thus consist of infinite matrices with rows and columns indexed by the positive natural numbers, which have finite support, meaning that they have only finitely many nonzero entries. Similarly, the elements of
$\mathbb {R}^{\infty \times d}$
are matrices with finite support, with *d* columns and rows indexed by the positive natural numbers. Again, although
$\mathbb {R}^{\infty \times \infty }$
and
$\mathbb {R}^{\infty \times d}$
inherit natural metrics, we use instead the direct limit topologies induced by inclusions
$\mathbb {R}^{n \times n} \to \mathbb {R}^{\infty \times \infty }$
and
$\mathbb {R}^{n \times d} \to \mathbb {R}^{\infty \times d}$
, respectively.

Let
$\varepsilon> 0$
. The
$\boldsymbol {\varepsilon }$
**-thickening** of
$\mathsf {Gr}(d,n)$
, denoted
$\mathsf {Gr}(d,n)^\varepsilon \subseteq \mathbb {R}^{n \times n}$
, consists of all matrices in
$\mathbb {R}^{n \times n}$
at Frobenius distance strictly less than
$\varepsilon $
from a matrix in
$\mathsf {Gr}(d,n)$
. Similarly, we define
$\mathsf {Gr}(d)^\varepsilon \subseteq \mathbb {R}^{\infty \times \infty }$
. Clearly, we have
$\mathsf {Gr}(d,n)^\varepsilon \subseteq \mathsf {Gr}(d,n+1)^\varepsilon \subseteq \mathsf {Gr}(d)^\varepsilon $
. The
$\varepsilon $
-thickenings
$\mathsf {Gr}(d,n)^\varepsilon \subseteq \mathbb {R}^{n\times n}$
and
$\mathsf {Gr}(d)^\varepsilon \subseteq \mathbb {R}^{\infty \times \infty }$
are open subsets. If
$\varepsilon = 0$
, it is convenient to define
$\mathsf {Gr}(d,n)^\varepsilon = \mathsf {Gr}(d,n)$
and
$\mathsf {Gr}(d)^\varepsilon = \mathsf {Gr}(d)$
.

The main result about thickenings of Grassmannians we will need is Proposition A.12. The result follows directly from a result of Tinarrage (Lemma A.11) and says that, if $\varepsilon \leq \sqrt {2}/2$ , then $\mathsf {Gr}(d,n)^\varepsilon $ deformation-retracts onto $\mathsf {Gr}(d,n)$ .

### 2.2 Principal bundles and vector bundles

We recall the main notions and results that are relevant to this article. For a thorough exposition, we refer the reader to, for example, [38, Appendices A and B], [Reference Steenrod61], [Reference Husemöller34] and [Reference Husemöller, Joachim, Jurčo, Schottenloher, Echterhoff, Fredenhagen and Krötz33]. The classic book [Reference Milnor and Stasheff47] contains all of the standard results on vector bundles we need; see also [Reference Hatcher27] for a modern exposition.

#### 2.2.1 Covers and nerve

A **cover**
$\mathcal {U} = \{U_i\}_{i \in I}$
of a topological space *B* consists of an indexing set *I* together with, for every
$i \in I$
, an open subset
$U_i \subseteq B$
such that
$B = \cup _{i \in I} U_i$
. The **nerve** of
$\mathcal {U}$
, denoted
$N(\mathcal {U})$
, is the simplicial complex with underlying set *I* and simplices consisting of finite, nonempty subsets
$J \subseteq I$
such that
$\cap _{j \in J} U_j \neq \emptyset $
. An **ordered simplex** of
$N(\mathcal {U})$
consists of a list
$(i_0 i_1 \dots i_n)$
such that
$U_{i_n} \cap U_{i_{n-1}} \cap \dots \cap U_{i_0} \neq \emptyset $
. When quantifying over ordered
$1$
-simplices of
$N(\mathcal {U})$
, we will write
$(ij) \in N(\mathcal {U})$
, and, similarly, when quantifying over ordered
$2$
-simplices of
$N(\mathcal {U})$
we will write
$(ijk) \in N(\mathcal {U})$
.

#### 2.2.2 Principal bundles

Let *B* and *F* be topological spaces. A **fiber bundle** over *B* with fiber *F* consists of a continuous map
$p : E \to B$
such that, for every
$y \in B$
, there exists an open neighborhood
$U \subseteq B$
of *y* and a homeomorphism
$\rho _U : U \times F \to p^{-1}(U)$
such that
$p \circ \rho _U = \pi _1 : U \times F \to U$
, where
$\pi _1$
denotes projection onto the first factor. Let
$\mathcal {U} = \{U_i\}_{i \in I}$
be a cover of *B*. A collection of maps
$\{\rho _i : U_i \times F \to p^{-1}(U_i)\}_{i \in I}$
with the property above is referred to as a **local trivialization** of *p*. By definition, any fiber bundle admits some local trivialization.

Let *G* be a topological group. A **principal**
$\boldsymbol {G}$
**-bundle** over *B* consists of a fiber bundle
$p : E \to B$
with fiber *G* together with a continuous, fiberwise right action
$- \cdot - : E \times G \to E$
such that there exists a cover
$\mathcal {U} = \{U_i\}_{i \in I}$
and a local trivialization
$\{\rho _i : U_i \times G \to p^{-1}(U_i)\}_{i \in I}$
that is equivariant, meaning that, for every
$g,h \in G$
and
$y \in U_i$
, we have
$\rho _i(y,g h) = \rho _i(y,g) \cdot h \in E$
.

Two principal *G*-bundles
$p : E \to B$
and
$p' : E' \to B$
are **isomorphic** if there exists a *G*-equivariant map
$m : E \to E'$
such that
$p' \circ m = p$
. Denote by
$\mathsf {Prin}_G(B)$
the set of isomorphisms classes of principal *G*-bundles over *B* (this is a set and not a proper class).

We remark that the definitions we have given are sometimes referred to as *locally trivial* fiber bundle and *locally trivial* principal bundle.

#### 2.2.3 Čech cocycles

Let *B* be a topological space, *G* a topological group and
$\mathcal {U}$
a cover of *B*. A Čech
$1$
-**cocycle** subordinate to
$\mathcal {U}$
with coefficients in *G* consists of a family of continuous maps
$\{\rho _{ij} : U_j \cap U_i \to G\}_{(ij) \in N(\mathcal {U})}$
indexed by the ordered
$1$
-simplices of
$N(\mathcal {U})$
, which satisfies the **cocycle condition**, meaning that for every
$(ijk) \in N(\mathcal {U})$
and
$y \in U_k \cap U_j \cap U_i$
, we have

We remark that we are using a convention for defining
$\rho _{ij}$
so that
$\rho _{ij}$
and
$\rho _{jk}$
can be composed from left to right. The opposite convention is also common. The set of
$1$
-cocycles subordinate to
$\mathcal {U}$
with coefficients in *G* is denoted by
$Z^1(\mathcal {U};G)$
.

The following construction associates a cocycle to any principal *G*-bundle and motivates the notion of cocycle. Given a principal *G*-bundle over *B*, there exists, by definition, a cover
$\mathcal {U} = \{U_i\}_{i \in I}$
and a family of *G*-equivariant local trivializations
$\{\rho _i : U_i \times G \to p^{-1}(U_i)\}_{i \in I}$
. Note that, whenever
$i,j \in I$
are such that
$U_j \cap U_i \neq \emptyset $
, the map
$\rho _j^{-1} \circ \rho _i : (U_j \cap U_i) \times G \to (U_j \cap U_i) \times G$
is *G*-equivariant. It follows that
$\rho _j^{-1} \circ \rho _i$
induces a continuous map
$\rho _{ij} : U_j \cap U_i \to G$
satisfying
$(\rho _j^{-1}\circ \rho _i)(y,g) = (y, g \cdot \rho _{ij}(y))$
for all
$(y,g) \in (U_j \cap U_i) \times G$
, and that the family
$\{\rho _{ij} : U_j \cap U_i \to G\}_{(ij) \in N(\mathcal {U})}$
satisfies the cocycle condition.

#### 2.2.4 Čech cohomology

Let
$\mathcal {U} = \{U_i\}_{i \in I}$
be a cover of *B*. A Čech
$\boldsymbol {0}$
**-cochain** subordinate to
$\mathcal {U}$
with values in *G* consists of a family of continuous maps
$\Theta = \{\Theta _i : U_i \to G\}_{i \in I}$
. Let
$C^0(\mathcal {U};G)$
denote the set of
$0$
-cochains subordinate to
$\mathcal {U}$
with values in *G*. There is an action
$C^0(\mathcal {U};G) \curvearrowright Z^1(\mathcal {U};G)$
with
$\Theta = \{\Theta _i : U_i \to G\}_{i \in I}$
acting on a cocycle
$\rho = \{\rho _{ij} : U_j \cap U_i \to G\}_{(ij) \in N(\mathcal {U})}$
by
$\Theta \cdot \rho = \{\Theta _i \rho _{ij} \Theta _j^{-1} : U_j \cap U_i \to G\}_{(ij) \in N(\mathcal {U})}$
. The quotient of
$Z^1(\mathcal {U};G)$
by the action of
$C^0(\mathcal {U};G)$
is denoted by
$\check {\mathsf {H}}^{1}_{}\left ( \mathcal {U}; G \right )$
.

Let
$\mathcal {U} = \{U_i\}_{i \in I}$
and
$\mathcal {V} = \{V_j\}_{j \in J}$
be two covers of a common topological space *B*. A **refinement**
$\nu : \mathcal {U} \to \mathcal {V}$
consists of a function
$\nu : I \to J$
such that for every
$i \in I$
we have
$U_i \subseteq V_{\nu (i)}$
. Given a refinement
$\nu : \mathcal {U} \to \mathcal {V}$
and
$\rho \in Z^1(\mathcal {V};G)$
, define a cocycle
$\nu (\rho ) \in Z^1(\mathcal {U};G)$
by
$\nu (\rho )_{ij} = \rho _{\nu (i)\nu (j)}$
. It is not hard to check that any two refinements
$\nu , \nu ' : \mathcal {U} \to \mathcal {V}$
induce the same map
$\check {\mathsf {H}}^{1}_{}\left ( \mathcal {V}; G \right ) \to \check {\mathsf {H}}^{1}_{}\left ( \mathcal {U}; G \right )$
. One then defines the **Čech cohomology** of *B* with coefficients in *G* as

where the colimit is indexed by the poset whose objects are covers of *B* and where
$\mathcal {V} \preceq \mathcal {U}$
if there exists a refinement
$\mathcal {U} \to \mathcal {V}$
.

As we saw previously, any principal *G*-bundle over *B* can be trivialized over some cover of *B* and induces a cocycle over that cover. It is well known, and easy to see, that this construction induces a bijection

For a description of principal *G*-bundles from this point of view, see [Reference Lawson and Michelsohn38, Appendix A].

#### 2.2.5 Vector bundles

Let
$d \in \mathbb {N}_{\geq 1}$
. A **vector bundle** of rank *d* over *B* consists of a fiber bundle
$p : E \to B$
with fiber
$\mathbb {R}^d$
, where each fiber comes with the structure of a real vector space of dimension *d* and such that *p* admits a local trivialization that is linear on each fiber.

It follows that
$\rho _j^{-1} \circ \rho _i$
induces a well-defined continuous map
$\rho _{ij} : U_j \cap U_i \to GL(d)$
satisfying
$(\rho _j^{-1}\circ \rho _i)(y,g) = (y, g \cdot \rho _{ij}(y))$
for all
$(y,g) \in (U_j \cap U_i) \times \mathbb {R}^d$
. So every vector bundle of rank *d* over *B* that trivializes over a cover
$\mathcal {U}$
gives a cocycle in
$Z^1(\mathcal {U};GL(d))$
.

An isomorphism between vector bundles
$p : E \to B$
and
$p' : E' \to B$
consists of a fiberwise map
$m : E \to E'$
that is a linear isomorphism on each fiber. The family of isomorphism classes of rank-*d* vector bundles over *B* is denoted by
$\mathsf {Vect}_d(B)$
.

A partition of unity argument shows that, if *B* is paracompact (in the sense of [Reference Milnor and Stasheff47, Section 5.8]), the trivialization of a vector bundle on *B* can be taken so that the associated cocycle takes values in the orthogonal group. When *B* is paracompact, this gives a bijection

In particular, $\mathsf {Vect}_d(B) \cong \check {\mathsf {H}}^{1}_{}\left ( B; O(d) \right ) \cong \mathsf {Prin}_{O(d)}(B)$ .

#### 2.2.6 Classifying maps

For details about the claims in this section, see [Reference Milnor45, Theorem 3.1] for the existence of classifying spaces of topological groups and [Reference Lawson and Michelsohn38, Appendix B] for an account of classifying spaces of Lie groups.

For every topological group *G*, there exists a **classifying space**
$\mathcal {B} G$
, which consists of a topological space with the property that, for every paracompact topological space *B*, there is a natural bijection

The classifying space of the orthogonal group $O(d)$ is the Grassmannian $\mathsf {Gr}(d)$ , and thus

The map
$\left \lbrack {B}, {\mathsf {Gr}(d)} \right \rbrack \to \mathsf {Prin}_{O(d)}(B)$
is constructed as follows. Given
$[f] \in \left \lbrack {B}, {\mathsf {Gr}(d)} \right \rbrack $
, let
$f : B \to \mathsf {Gr}(d)$
be a representative. Then, the pullback of
$\mathsf {Proj} : \mathsf {V}(d) \to \mathsf {Gr}(d)$
along *f* is a principal
$O(d)$
-bundle over *B*, whose isomorphism type is independent of the choice of representative for
$[f]$
.

#### 2.2.7 Characteristic classes

Let *G* be a topological group, *B* a paracompact topological space and *p* be a principal *G*-bundle over *B*. Fix an abelian group *A*, and let
$n \in \mathbb {N}$
. The bundle *p* can be represented by a continuous map
$f : B \to \mathcal {B} G$
, which can then be used to pull back any cohomology class
$x \in H^n(\mathcal {B} G; A)$
to a class
$f^*(x) \in H^n(B; A)$
. The cohomology classes
$f^*(x)$
obtained in this way are the **characteristic classes** of the principal *G*-bundle *p*, and they are invariant under isomorphism of principal *G*-bundles. For a presentation of characteristic classes from this point of view, see [Reference Lawson and Michelsohn38, Appendix B].

The cohomology ring
$H^\bullet (\mathsf {Gr}(d); \mathbb {Z}/2)$
is isomorphic to a polynomial ring
$(\mathbb {Z}/2)[\sigma _1, \dots , \sigma _d]$
with
$\sigma _i \in H^i(\mathsf {Gr}(d); \mathbb {Z}/2)$
[Reference Milnor and Stasheff47, Section 7]. For
$p : E \to B$
a rank-*d* vector bundle over a paracompact topological space *B*, one defines the *i*th **Stiefel–Whitney class** of *p* as the characteristic class corresponding to
$\sigma _i \in H^i(\mathsf {Gr}(d); \mathbb {Z}/2)$
.

For any even
$d \geq 1$
, there is a distinguished element
$e_d \in H^d(\mathcal {B} SO(d); \mathbb {Z})$
, the *universal Euler class* [Reference Milnor and Stasheff47, Section 9],[Reference Feshbach17, Theorem 1]. For
$p : E \to B$
an oriented, rank-*d* vector bundle over a paracompact topological space *B*, which corresponds, up to isomorphism, to an principal
$SO(d)$
-bundle, one defines the **Euler class** of *p* as the characteristic class corresponding to
$e_d \in H^d(\mathcal {B} SO(d); \mathbb {Z})$
. We remark that the Euler class can be defined for odd *d* too, but in this case it is often less useful as, for odd *d*, we have
$2 e_d = 0$
[Reference Milnor and Stasheff47, Property 9.4].

## 3 Three notions of approximate vector bundle

In this section, we introduce relaxations of three standard definitions of vector bundle. The base space of our bundles will be denoted by *B* and a typical element will usually be denoted by
$y \in B$
.

The classical notions of vector bundle that we consider are those of a vector bundle given by an
$O(d)$
-valued Čech cocycle, a vector bundle given by a family of compatible maps from opens of a cover of *B* to the Stiefel manifold
$\mathsf {V}(d)$
, which we interpret as a local trivialization; and a vector bundle given by a continuous map from *B* to the Grassmannian
$\mathsf {Gr}(d)$
.

The reader may be more familiar with the notion of vector bundle given by a
$GL(d)$
-valued cocycle. Being able to lift the structure group from
$GL(d)$
to
$O(d)$
corresponds to endowing the vector bundle with a compatible, fiberwise inner product. Vector bundles endowed with this extra structure are sometimes referred to as *Euclidean vector bundles*. Any vector bundle over a paracompact space can be endowed with an inner product in an essentially unique way [Reference Milnor and Stasheff47, Problems 2-C and 2-E], and thus is isomorphic to the underlying vector bundle of a Euclidean vector bundle. The main reason for working with Euclidean vector bundles is that, for many choices of distance on the orthogonal group
$O(d)$
, the group acts on itself by isometries. This is not the case for
$GL(d)$
.

### 3.1 Approximate cocycles

The notion of approximate cocycle makes sense for any metric group, which we define next. This extra generality makes some arguments clearer and will be of use in Section 6.1.

Definition 3.1. A **metric group** consists of a group *G* endowed with the structure of a metric space such that left and right multiplication by any fixed element
$g \in G$
, and taking inverse are all isometries
$G \to G$
.

The main example of metric group to keep in mind is that of the orthogonal group $O(d)$ endowed with the Frobenius distance. Other relevant examples include all connected Lie groups endowed with the geodesic distance induced by a bi-invariant Riemannian metric; recall that all compact Lie groups, such as the orthogonal groups, the unitary groups and the compact symplectic groups, admit a bi-invariant Riemannian metric (see, e.g., [Reference Milnor46, Corollary 1.4]). It is also relevant to note that the Frobenius distance on $O(d)$ does not arise as the geodesic distance induced by a Riemannian metric; Section A.4 deals with some of the relationships between the Frobenius distance and the (usual) geodesic distance on $O(d)$ .

Let *G* be a metric group and let us denote its distance by
$d_G : G \times G \to \mathbb {R}$
. Let *B* be a topological space and let
$\mathcal {U} = \{U_i\}_{i \in I}$
be a cover of *B*.

Definition 3.2. A
$\boldsymbol {1}$
**-cochain** on *B* subordinate to
$\mathcal {U}$
with values in *G* consists of a family of continuous maps
$\Omega = \{\Omega _{ij} : U_j \cap U_i \to G\}_{(ij) \in N(\mathcal {U})}$
indexed by the ordered
$1$
-simplices of
$N(\mathcal {U})$
that is **symmetric**, that is, such that for all
$(ij) \in N(\mathcal {U})$
and
$y \in U_j \cap U_i$
we have
$\Omega _{ij}(y) = \Omega _{ji}(y)^{-1}$
.

We denote the set of all
$1$
-cochains on *B* subordinate to
$\mathcal {U}$
with values in *G* by
$C^1(\mathcal {U};G)$
. If there is no risk of confusion, we may refer to an element of
$C^1(\mathcal {U};G)$
simply as a cochain subordinate to
$\mathcal {U}$
.

Definition 3.3. Let
$\varepsilon \in (0,\infty ]$
. A cochain
$\Omega $
subordinate to
$\mathcal {U}$
is an
$\boldsymbol {\varepsilon }$
**-approximate cocycle** if for every
$(ijk) \in N(\mathcal {U})$
and every
$y \in U_k \cap U_j \cap U_i$
we have
$d_G\left (\Omega _{ij}(y) \Omega _{jk}(y), \Omega _{ik}(y)\right ) < \varepsilon $
, and an **exact cocycle** if we have
$\Omega _{ij}(y) \Omega _{jk}(y) = \Omega _{ik}(y)$
.

We denote the set of $\varepsilon $ -approximate cocycles by $\mathsf {Z}^{1}_{\varepsilon }\left ( \mathcal {U}; G \right ) \subseteq C^1(\mathcal {U};G)$ , and the set of exact cocycles by either $\mathsf {Z}^{1}_{0}\left ( \mathcal {U}; G \right )$ or simply $\mathsf {Z}^{1}_{}\left ( \mathcal {U}; G \right )$ . Of course, when $\varepsilon = \infty $ , $\varepsilon $ -approximate cocycles are merely cochains, so to keep notation uniform, we denote $C^1(\mathcal {U};G)$ by $\mathsf {Z}^{1}_{\infty }\left ( \mathcal {U}; G \right )$ . We endow the set $\mathsf {Z}^{1}_{\infty }\left ( \mathcal {U}; G \right )$ with the metric given by

for $\Omega ,\Lambda \in \mathsf {Z}^{1}_{\infty }\left ( \mathcal {U}; G \right )$ . This induces a metric on all spaces of approximate and exact cocycles. In particular, for $\varepsilon \leq \varepsilon '$ , we have metric embeddings

Definition 3.4. A
$\boldsymbol {0}$
**-cochain** subordinate to
$\mathcal {U}$
with values in *G* consists of a family of continuous maps
$\Theta = \{\Theta _i : U_i \to G\}_{i \in I}$
.

We denote the set of all $0$ -cochains by $C^0(\mathcal {U};G)$ . The set $C^0(\mathcal {U};G)$ forms a group, by pointwise multiplication. There is an action $C^0(\mathcal {U};G) \curvearrowright \mathsf {Z}^{1}_{\infty }\left ( \mathcal {U}; G \right )$ with $\Theta $ acting on $\Omega $ by

for every
$y \in U_j \cap U_i$
. Since *G* acts on itself by isometries, the above action restricts to an action on
$\mathsf {Z}^{1}_{\varepsilon }\left ( \mathcal {U}; G \right )$
for every
$\varepsilon \geq 0$
.

Definition 3.5. Let
$\varepsilon \in [0,\infty ]$
. Define the
$\boldsymbol {\varepsilon }$
**-approximate cohomology set**
$\check {\mathsf {H}}^{1}_{\varepsilon }\left ( \mathcal {U}; G \right )$
as the quotient of
$\mathsf {Z}^{1}_{\varepsilon }\left ( \mathcal {U}; G \right )$
by the action of
$C^0(\mathcal {U};G)$
.

Notation 3.6. We denote a typical element of
$\check {\mathsf {H}}^{1}_{\varepsilon }\left ( \mathcal {U}; G \right )$
by
$\Omega $
, or by
$[\Omega ]$
if we want to refer to the equivalence class of an approximate cocycle
$\Omega \in \mathsf {Z}^{1}_{\varepsilon }\left ( \mathcal {U}; G \right )$
. In the latter case, we say that the approximate cocycle
$\Omega \in \mathsf {Z}^{1}_{\varepsilon }\left ( \mathcal {U}; G \right )$
is a **representative** of the approximate cohomology class
$[\Omega ] \in \check {\mathsf {H}}^{1}_{\varepsilon }\left ( \mathcal {U}; G \right )$
.

Since the action $C^0(\mathcal {U};G) \curvearrowright \mathsf {Z}^{1}_{\infty }\left ( \mathcal {U}; G \right )$ is by isometries, the set $\check {\mathsf {H}}^{1}_{\varepsilon }\left ( \mathcal {U}; G \right )$ inherits a metric $\mathsf {d}_{\check {\mathsf {H}}}$ from $\mathsf {Z}^{1}_{\varepsilon }\left ( \mathcal {U}; G \right )$ , given as follows. For $\Omega ,\Lambda \in \check {\mathsf {H}}^{1}_{\varepsilon }\left ( \mathcal {U}; G \right )$ , we have

where $\overline {\Omega }$ and $\overline {\Lambda }$ range over all representatives of $\Omega $ and $\Lambda $ , respectively.

Remark 3.7. Although we will not use this in what follows, we remark that, for
$\mathcal {U}$
a cover of a topological space and *G* a metric group, we have constructed a filtered (or persistent) metric space
$\check {\mathsf {H}}^{1}_{\varepsilon }\left ( \mathcal {U}; G \right )$
, parametrized by
$\varepsilon \in [0,\infty ]$
, which one can interpret as a functor
$\check {\mathsf {H}}^{1}_{-}\left ( \mathcal {U}; G \right ) : ([0,\infty ], \leq ) \to \mathbf {Met}$
.

### 3.2 Approximate local trivializations

We start with some considerations about the notion of local trivialization of a vector bundle (Section 2.2.5), which motivate our notion of approximate local trivialization. Any rank-*d* Euclidean vector bundle
$p : E \to B$
admits an isometric local trivialization, that is, a local trivialization over an open cover
$\mathcal {U} = \{U_i\}_{i \in I}$
of *B* given by a family of homeomorphisms
$\{U_i \times \mathbb {R}^d \to p^{-1}(U_i) \}_{i \in I}$
with the property that, given
$y \in U_i$
, we obtain an orthonormal basis of the vector space
$p^{-1}(y)$
by evaluating the map
$U_i \times \mathbb {R}^d \to p^{-1}(U_i)$
on
$(y,e_j)$
for
$1 \leq j \leq d$
, where
$e_j$
is the *j*th canonical basis vector of
$\mathbb {R}^d$
. Recall that any vector bundle over a paracompact base *B* is classified by some continuous map
$B \to \mathsf {Gr}(d)$
(Section 2.2.6). This implies, in particular, that, up to isomorphism of vector bundles, any vector bundle
$p : E \to B$
over a paracompact base is a Euclidean vector bundle whose fibers
$p^{-1}(y)$
that are not just abstract vector spaces, but *d*-dimensional subspaces of
$\mathbb {R}^\infty $
.

With the above in mind, any isometric local trivialization of a Euclidean vector bundle over a paracompact base *B* gives us maps
$\{\Phi _i : U_i \to \mathsf {V}(d)\}$
, where, as in Section 2.1.1, the space
$\mathsf {V}(d)$
stands for the Stiefel manifold of *d*-frames in
$\mathbb {R}^\infty $
. One can check that a family of maps
$\{\Phi _i : U_i \to \mathsf {V}(d)\}_{i \in I}$
comes from a vector bundle over *B* precisely when, for every intersection
$U_j \cap U_i \neq \emptyset $
and every
$y \in U_j \cap U_i$
, we have that
$\Phi _i(y)$
and
$\Phi _j(y)$
span the same subspace of
$\mathbb {R}^\infty $
and thus, equivalently, when there exist continuous maps
$\{\Omega _{ij} : U_j \cap U_i \to O(d)\}_{(ij) \in N(\mathcal {U})}$
such that
$\Phi _i(y) \Omega _{ij}(y) = \Phi _j(y)$
for all
$y \in U_j \cap U_i$
. Our notion of approximate local trivialization is based on this last equivalent characterization of local trivializations and, specifically, on relaxing this last equality.

Let
$\mathcal {U} = \{U_i\}_{i \in I}$
be a cover of a topological space *B*.

Definition 3.8. Let
$\varepsilon \in (0,\infty ]$
. An
$\boldsymbol {\varepsilon }$
**-approximate local trivialization** subordinate to
$\mathcal {U}$
consists of a family of continuous maps
$\Phi = \{\Phi _i : U_i \to \mathsf {V}(d)\}_{i \in I}$
such that, for every
$(ij) \in N(\mathcal {U})$
, there exists a continuous map
$\Omega _{ij} : U_j \cap U_i \to O(d)$
such that, for every
$y \in U_j \cap U_i$
, we have
$\| \Phi _i(y) \Omega _{ij}(y) - \Phi _j(y)\| < \varepsilon $
. An **exact local trivialization** is an approximate local trivialization for which
$\Phi _i(y) \Omega _{ij}(y) = \Phi _j(y)$
.

We say that the family
$\Omega = \{\Omega _{ij}\}_{(ij) \in N(\mathcal {U})}$
in Definition 3.8 is a **witness** of the fact that
$\Phi $
is an
$\varepsilon $
-approximate (or exact) local trivialization. We remark that this witness is not part of the data of an
$\varepsilon $
-approximate local trivialization and that we merely require that a witness exists.

An **approximate local trivialization** consists of an
$\varepsilon $
-approximate local trivialization for some
$\varepsilon \in [0,\infty ]$
. We denote the set of
$\varepsilon $
-approximate local trivializations subordinate to
$\mathcal {U}$
by
$\mathsf {T}_{\varepsilon }\left ( \mathcal {U}; d \right )$
. We define a metric on
$\mathsf {T}_{\varepsilon }\left ( \mathcal {U}; d \right )$
by

An approximate local trivialization
$\{\Phi _i\}_{i \in I}$
is **nondegenerate** if, for every
$(ij) \in N(\mathcal {U})$
and every
$y \in U_j \cap U_i$
, the
$d\times d$
matrix
$\Phi _i(y)^t \Phi _j(y)$
has full rank.

### 3.3 Approximate classifying maps

Recall from Section 2.1.3 the definition of the thickened Grassmannians, and recall, in particular, that the topology of
$\mathsf {Gr}(d)^\varepsilon $
is the direct limit topology and not the one induced by the Frobenius metric. Let *B* be a topological space.

Definition 3.9. An
$\boldsymbol {\varepsilon }$
**-approximate classifying map** consists of a continuous map
$B \to \mathsf {Gr}(d)^\varepsilon $
.

The set of $\varepsilon $ -approximate classifying maps is denoted by $\mathsf {Maps}\left ( {B}, {\mathsf {Gr}(d)^\varepsilon } \right )$ . We define a metric on this set by

We are also interested in the set of classifying maps up to homotopy, which we denote by $\left \lbrack {B}, {\mathsf {Gr}(d)^\varepsilon } \right \rbrack $ . Although we will not make use of this fact, we mention that one can interpret this as a persistent set $\left \lbrack {B}, {\mathsf {Gr}(d)^{-}} \right \rbrack : ([0,\infty ], \leq ) \to \mathbf {Set}$ , in the sense of [Reference Curry15, Definition 2.2]. The following result is easily proven using a linear homotopy.

Lemma 3.10. Let $f,g \in \mathsf {Maps}\left ( {B}, {\mathsf {Gr}(d)^\varepsilon } \right )$ , and let $[f]$ and $[g]$ denote their images in $\left \lbrack {B}, {\mathsf {Gr}(d)^\varepsilon } \right \rbrack $ . Let $\delta> 0$ . If $\|f(y) - g(y)\| < \delta $ for all $y \in B$ , then $[f]$ and $[g]$ become equal in $\left \lbrack {B}, {\mathsf {Gr}(d)^{\varepsilon + \delta }} \right \rbrack $ . In particular, if $\mathsf {d}_{\mathsf {C}}\left ( f, g \right ) < \delta $ , then $[f]$ and $[g]$ become equal in $\left \lbrack {B}, {\mathsf {Gr}(d)^{\varepsilon + \delta }} \right \rbrack $ .

## 4 Relationships between the notions

We now consider the problem of going back and forth between the different notions of approximate vector bundle. As a consequence of this study, we relate approximate vector bundles to true (exact) vector bundles. In particular, this lets us extract a true vector bundle from an $\varepsilon $ -approximate vector bundle when $\varepsilon $ is sufficiently small.

There are two main results in this section. Theorem 4.21 associates an approximate classifying map to any approximate cocycle and lets us, in particular, assign a true vector bundle to any $\varepsilon $ -approximate cocycle as long as $\varepsilon \leq 1/2$ . This is done in a way that is stable and independent of arbitrary choices. Theorem 4.27 gives an upper bound for the distance from an $\varepsilon $ -approximate cocycle to an exact cocycle representing the same true vector bundle when $\varepsilon \leq \sqrt {2}/4$ . This is used in Section 6 to prove the consistency of algorithms to compute characteristic classes.

Many proofs in this section rely on various results stated and proven in Appendix A.

### 4.1 Cocycles and local trivializations

In this section, we relate approximate cocycles and approximate local trivializations. We give constructions (Construction 4.2 and Construction 4.8) to go back and forth between the notions, and we show that, in a sense, these constructions are approximate inverses of each other (Remark 4.11). The construction to go from approximate local trivializations to approximate cocycles is in general not canonical; we conclude the section by showing that, when $\varepsilon \leq 1$ , the construction can be made canonical.

To motivate the assumptions made in the following construction, recall that a set *I* is **countable** if there exists an injection
$\iota : I \to \mathbb {N}_{\geq 1}$
. Recall also that any vector bundle on a paracompact topological space can be trivialized on a countable open cover [Reference Milnor and Stasheff47, Lemma 5.9], and that every open cover of a paracompact topological space admits a subordinate partition of unity.

We start with a simplification. Given
$\mathcal {V} = \{V_i\}_{i \in I}$
a countable open cover of a topological space *B* and an injection
$\iota : I \to \mathbb {N}_{\geq 1}$
, consider a new open cover
$\mathcal {U} = \iota _*(\mathcal {V})$
of *B* indexed by
$\mathbb {N}_{\geq 1}$
with
$U_n = V_i$
if
$\iota (i) = n$
or
$U_n = \emptyset $
if there is no
$i \in I$
such that
$\iota (i) = n$
.

Remark 4.1. Note that, using $\iota $ , one can construct a canonical bijection between the set of partitions of unity subordinate to $\mathcal {V}$ and the set of partitions of unity subordinate to $\mathcal {U}$ . The same is true for the sets of approximate cocycles subordinate to $\mathcal {V}$ and $\mathcal {U}$ and for the sets of approximate local trivializations subordinate to $\mathcal {V}$ and $\mathcal {U}$ .

We give the main constructions of this section for covers indexed by $\mathbb {N}_{\geq 1}$ , and we will later generalize them to arbitrary countable covers, as this simplifies exposition.

Construction 4.2. Let *B* be a paracompact topological space and let
$\mathcal {V} = \{V_i\}_{i \in \mathbb {N}_{\geq 1}}$
be a cover of *B*. Let
$\varphi $
be a partition of unity subordinate to
$\mathcal {V}$
. Given a cochain
$\Omega $
subordinate to
$\mathcal {V}$
define, for each
$i \in \mathbb {N}_{\geq 1}$
, a map
$\Phi _i : V_i \to \mathsf {V}(d)$
, where the rows of
$\Phi _i(y)$
from
$d\times j$
to
$d \times (j+1)-1$
are given by

$\vartriangleleft $

Note that the maps $\Phi _i$ of Construction 4.2 are continuous and are well defined since, if $y \not \in V_j$ , then $\varphi _j(y) = 0$ .

Lemma 4.3. Let $\varepsilon \in [0,\infty ]$ and let $\Omega $ be an $\varepsilon $ -approximate cocycle subordinate to an open cover $\mathcal {V} = \{V_i\}_{i \in \mathbb {N}_{\geq 1}}$ of a paracompact topological space. The maps $\Phi _i$ of Construction 4.2 form an $\varepsilon $ -approximate local trivialization.

Proof. We give the proof for $\varepsilon \in (0,\infty ]$ , the case $\varepsilon = 0$ being similar. Let $(ij) \in N(\mathcal {V})$ . We claim that the original $\varepsilon $ -approximate cocycle $\Omega $ is a witness that the family $\Phi $ is an $\varepsilon $ -approximate local trivialization. To prove this, we must show that, for all $y \in V_j \cap V_i$ , the Frobenius distance between $\Phi _i(y) \Omega _{ij}(y)$ and $\Phi _j(y)$ is less than $\varepsilon $ . Carrying out the product $\Phi _i(y) \Omega _{ij}(y)$ , we get an element of $\mathsf {V}(d)$ with rows from $d\times k$ to $d \times (k+1)-1$ given by

So $\|\Phi _i(y) \Omega _{ij}(y) - \Phi _j(y)\| = \left (\sum _{k \geq 1} \| \sqrt {\varphi _k(y)} \left (\Omega _{ik}(y)^t \Omega _{ij}(y) - \Omega _{kj}(y)\right )\| ^2\right )^{1/2} < \varepsilon $ , as required.

We have thus constructed a map

for any cover
$\mathcal {V}$
of a paracompact topological space *B* that is indexed by
$\mathbb {N}_{\geq 1}$
. It is important to note that this map depends on the choice of partition of unity
$\varphi $
. Nevertheless, using two different partitions of unity gives homotopic local trivializations, in the following sense.

Lemma 4.4. Let $\Omega $ be an $\varepsilon $ -approximate cocycle subordinate to $\mathcal {V} = \{V_i\}_{i \in \mathbb {N}_{\geq 1}}$ . If $\varphi $ and $\varphi '$ are two partitions of unity subordinate to $\mathcal {V}$ , then $\mathsf {triv}^\varphi (\Omega )$ and $\mathsf {triv}^{\varphi '}(\Omega )$ are homotopic through a family of $\varepsilon $ -approximate local trivializations that admit $\Omega $ as a witness.

Proof. For any $\alpha \in [0,1]$ , the formula $\varphi _i^\alpha = \alpha \varphi _i + (1-\alpha ) \varphi ^{\prime }_i$ gives a partition of unity. Now observe that the family of $\varepsilon $ -approximate local trivializations $\mathsf {triv}^{\varphi ^\alpha }(\Omega )$ admit $\Omega $ as a witness.

Next, we show that the construction assigning an approximate local trivialization to an approximate cocycle is stable.

Lemma 4.5. Let
$\mathcal {V} = \{V_i\}_{i \in \mathbb {N}_{\geq 1}}$
be a cover of a paracompact topological space *B*, and let
$\varphi $
be a partition of unity subordinate to
$\mathcal {V}$
. For
$\Omega $
and
$\Lambda\ \varepsilon $
-approximate cocycles subordinate to
$\mathcal {V}$
,

Proof. Let $\mathsf {d}_{\mathsf {Z}}\left ( \Omega , \Lambda \right ) = \delta $ , $\Phi := \mathsf {triv}^\varphi (\Omega )$ , and $\Psi := \mathsf {triv}^\varphi (\Lambda )$ . For $y \in V_i$ , we have

which proves the claim.

Let
$\mathcal {U} = \{U_i\}_{i \in I}$
be a countable open cover of a paracompact topological space *B*, and let
$\iota : I \to \mathbb {N}_{\geq 1}$
be an injection. Using Remark 4.1, we can generalize Construction 4.2, Lemma 4.3, Lemma 4.4 and Lemma 4.5 to
$\mathcal {U}$
.

In particular, we have a map $\mathsf {triv}^{\varphi ,\iota } : \mathsf {Z}^{1}_{\varepsilon }\left ( \mathcal {U}; O(d) \right ) \to \mathsf {T}_{\varepsilon }\left ( \mathcal {U}; d \right )$ that now also depends on the choice of injection $\iota $ . We now prove that, up to homotopy, $\mathsf {triv}$ is independent of the choice of $\iota $ . In order to show this, we prove a more general lemma that will be of use later.

Lemma 4.6. Given an injection
$\iota : \mathbb {N}_{\geq 1} \to \mathbb {N}_{\geq 1}$
define
$\chi ^\iota : \mathsf {V}(d) \to \mathsf {V}(d)$
by mapping a frame
$\Phi \in \mathsf {V}(d)$
to the frame whose
$\iota (k)$
th row is the *k*th row of
$\Phi $
and whose other rows are identically
$0$
. If
$\iota , \iota ' : \mathbb {N}_{\geq 1} \to \mathbb {N}_{\geq 1}$
are injections, then
$\chi ^\iota $
and
$\chi ^{\iota '} : \mathsf {V}(d) \to \mathsf {V}(d)$
are homotopic.

The proof of the lemma is standard, but we give it here for completeness.

Proof. Assume that $\iota $ and $\iota '$ have disjoint images. Then, there is a homotopy between $\chi ^\iota $ and $\chi ^{\iota '}$ given by $\sqrt {\alpha } \chi ^{\iota } + \sqrt {1-\alpha } \chi ^{\iota '}$ for $\alpha \in [0,1]$ . Let $2\iota : \mathbb {N}_{\geq 1} \to \mathbb {N}_{\geq 1}$ be given by $2\iota (k) = 2 \times \iota (k)$ and define $2\iota ' + 1$ in an analogous way. Since $2\iota $ and $2\iota '+1$ have disjoint images, our previous reasoning reduces the problem to showing that $\chi ^{\iota }$ and $\chi ^{2\iota }$ are homotopic and that $\chi ^{\iota '}$ and $\chi ^{2\iota ' - 1}$ are homotopic. Since the two proofs are entirely analogous, we give the details only for the case of $\iota $ . Moreover, since $2\iota : \mathbb {N}_{\geq 1} \to \mathbb {N}_{\geq 1}$ is the composite of $\iota $ with multiplication by $2$ , it is enough to give the proof for $\iota = \mathsf {id}$ , which we now do.

We must show that the identity
$\mathsf {V}(d) \to \mathsf {V}(d)$
is homotopic to
$\chi ^2 : \mathsf {V}(d) \to \mathsf {V}(d)$
. Informally, the proof works by moving each row of
$\Phi $
at a time. To simplify exposition, in the rest of this proof, the notation
$\Phi _m$
will be used to refer to the *m*th row of a frame
$\Phi \in \mathsf {V}(d)$
. Consider the family of functions
$f^\alpha : \mathsf {V}(d) \to \mathsf {V}(d)$
indexed by
$\alpha \in [0,1]$
defined as follows. For
$\alpha = 0$
, let
$f^\alpha = \mathsf {id}$
. For
$n \in \mathbb {N}_{\geq 1}$
,
$\alpha \in [1/(n+1), 1/n]$
, and
$m \in \mathbb {N}_{\geq 1}$
, define

where $\beta = (1/n - \alpha ) \times (1/n - 1/(n+1))$ . By inspection, we see that $f^\alpha $ gives a homotopy between the identity and $\chi ^2$ , using that $\mathsf {V}(d)$ has the direct limit topology.

Lemma 4.7. Let $\Omega $ be an $\varepsilon $ -approximate cocycle subordinate to a countable open cover $\mathcal {U} = \{U_i\}_{i \in I}$ and let $\iota ,\iota ' : I \to \mathbb {N}_{\geq 1}$ be injections. Let $\varphi $ be a partition of unity subordinate to $\mathcal {U}$ . Then $\mathsf {triv}^{\varphi ,\iota }(\Omega )$ and $\mathsf {triv}^{\varphi ,\iota '}(\Omega )$ are homotopic through a family of $\varepsilon $ -approximate local trivializations that admit $\Omega $ as a witness.

Proof. The result follows at once from Lemma 4.6 by noticing that, for any two injections
$\iota ,\iota ' : I \to \mathbb {N}_{\geq 1}$
, there exists a bijection *b* of
$\mathbb {N}_{\geq 1}$
such that
$\iota ' = b \circ \iota $
.

We now consider the problem of assigning an approximate cocycle to an approximate local trivialization.

Construction 4.8. Let $\Phi {\kern-1pt}={\kern-1pt} \{\Phi _i\}_{i \in I}$ be an $\varepsilon $ -approximate local trivialization subordinate to $\mathcal {U} {\kern-1pt}={\kern-1pt} \{U_i\}_{i \in I}$ . By definition, there exists a witness that $\Phi $ is an $\varepsilon $ -approximate local trivialization. Choose, arbitrarily, such a witness $\Omega $ . Without loss of generality, we may assume that $\Omega $ is symmetric and thus that it is a cochain.

Lemma 4.9. Let $\varepsilon \in [0,\infty ]$ . Let $\Phi $ be an $\varepsilon $ -approximate local trivialization. Then, the cochain described in Construction 4.8 is a $3 \varepsilon $ -approximate cocycle. Thus, Construction 4.8 gives a map $\mathsf {w} : \mathsf {T}_{\varepsilon }\left ( \mathcal {U}; d \right ) \to \mathsf {Z}^{1}_{3\varepsilon }\left ( \mathcal {U}; O(d) \right )$ .

Proof. We address the case $\varepsilon \in (0,\infty ]$ , the case $\varepsilon = 0$ being similar. Let $(ijk) \in N(\mathcal {U})$ and let $y \in U_k \cap U_j \cap U_i$ . Since $\| \Phi _i(y) \Omega _{ik}(y) - \Phi _k(y)\| < \varepsilon $ , we have that $\| \Phi _k(y)^t \Phi _i(y) \Omega _{ik}(y) - \mathsf {id}\| < \varepsilon $ , by Lemma A.5. This implies that $\| \Phi _i(y)^t \Phi _k(y) - \Omega _{ik}(y)\| < \varepsilon $ .

A similar computation shows that
$\| \Phi _i(y)^t \Phi _j(y) \Omega _{jk}(y) - \Phi _i(y)^t \Phi _k(y)\| < \varepsilon $
. Using the triangle inequality and the first bound in the proof, we get that
$\| \Phi _i(y)^t \Phi _j(y) \Omega _{jk}(y) - \Omega _{ik}(y) \| < 2\varepsilon $
. By Lemma A.5 and the first bound in this proof but for *i* and *j*, we have that
$\| \Phi _i(y)^t \Phi _j(y) \Omega _{jk}(y) - \Omega _{ij}(y) \Omega _{jk}(y)\| < \varepsilon $
. The triangle inequality then finishes the proof.

Although we can associate a $3\varepsilon $ -approximate cocycle to every $\varepsilon $ -approximate local trivialization, this choice is not canonical, as an approximate local trivialization can have many distinct witnesses. Nonetheless, the following result says that any two witnesses cannot be too far apart.

Lemma 4.10. Let $\Omega $ and $\Lambda $ be witnesses that $\Phi $ and $\Psi $ are, respectively, $\varepsilon $ - and $\delta $ -approximate local trivializations. Then $\mathsf {d}_{\mathsf {Z}}\left ( \Omega , \Lambda \right ) \leq \varepsilon + \delta + \sqrt {2} \mathsf {d}_{\mathsf {T}}\left ( \Phi , \Psi \right )$ .

Proof. We address the case in which $\varepsilon ,\delta>0$ , the case in which any of them is $0$ being similar. Let $(ij) \in N(\mathcal {U})$ and $y \in U_j \cap U_i$ . We have $\| \Omega _{ij}(y) - \Phi _i(y)^t \Phi _j(y)\| < \varepsilon $ and $\| \Lambda _{ij}(y) - \Psi _i(y)^t \Psi _j(y)\| < \delta $ , so it suffices to show that $\| \Phi _i(y)^t \Phi _j(y) - \Psi _i(y)^t \Psi _j(y)\| \leq \sqrt {2} \| \Phi _i(y) - \Psi _i(y)\| $ , which follows from Lemma A.6.

Remark 4.11. From Lemma 4.10, it follows that, if $\Omega $ and $\Lambda $ are witnesses that $\Phi $ is an $\varepsilon $ -approximate local trivialization, then $\mathsf {d}_{\mathsf {Z}}\left ( \Omega , \Lambda \right ) \leq 2\varepsilon $ , and thus $\mathsf {w}$ is, approximately, a left inverse of $\mathsf {triv}^\varphi $ , in the sense that $\mathsf {d}_{\mathsf {Z}}\left ( \Omega , \mathsf {w}(\mathsf {triv}^\varphi (\Omega )) \right ) \leq 2\varepsilon $ for every $\varepsilon $ -approximate cocycle $\Omega $ . The following result can be interpreted as saying that $\mathsf {w}$ is also a right inverse of $\mathsf {triv}^\varphi $ since it implies, in particular, that $\mathsf {triv}^\varphi (\mathsf {w}(\Phi ))$ is homotopic to $\Phi $ through $3\varepsilon $ -approximate local trivializations, whenever $\Phi $ is an $\varepsilon $ -approximate local trivialization.

Lemma 4.12. Let $\varepsilon \geq 0$ . Let $\Omega $ be a witness that $\Phi $ and $\Psi $ are $\varepsilon $ -approximate cocycles. Then $\Phi $ and $\Psi $ are homotopic through $\varepsilon $ -approximate local trivializations subordinate to $\mathcal {U} = \{U_i\}_{i \in I}$ that admit