Locally a product, globally maybe twisted
Everything in this rung grows from one picture, so let us draw it slowly. A fiber bundle is a smooth surjection pi: E -> M, where E is the total space, M the base (a smooth manifold you already command from the earlier rungs), and the catch is a local condition: every point of M has an open neighborhood U such that the slab pi^(-1)(U) sitting over U looks exactly like the boring product U x F, for one fixed manifold F called the fiber. The set pi^(-1)(p) over a single point p is then a copy of F, the fiber over p. So locally a bundle is nothing but a product; the entire content of the subject is whether those local products can be honestly glued into one global product — or whether they refuse.
The local identification has a name: a local trivialization is a diffeomorphism phi: pi^(-1)(U) -> U x F that is fiber-preserving, meaning it sends the fiber over p into {p} x F — it does not scramble which point of M you are sitting over, it only chooses coordinates inside each fiber. A bundle that admits a single global trivialization over all of M is called trivial: it really is M x F and nothing interesting happens. The cylinder S^1 x R over the circle is trivial. The Mobius strip, also a line-bundle-like object over the circle, is the smallest example that is locally a product yet globally is not — and that gap is the seed of the entire theory.
Transition functions: the entire twist, written down
Here is the central move, and it is worth slowing right down for. Cover M with open sets U_i, each carrying a local trivialization phi_i: pi^(-1)(U_i) -> U_i x F. On an overlap U_i cap U_j you have two different rulers for the same fibers, phi_i and phi_j, so compare them: the composite phi_i after phi_j^(-1) is a self-map of (U_i cap U_j) x F that fixes the base point and only re-coordinatizes the fiber. It therefore has the form (p, v) -> (p, g_ij(p) . v), where for each p the map g_ij(p) is a symmetry of the fiber F. These g_ij are the transition functions, and they are the whole story: they record, point by point, exactly how much the i-th and j-th local pictures disagree about the fiber.
The transition functions are not free — they must be mutually consistent, and the consistency is one beautiful equation. On a triple overlap U_i cap U_j cap U_k, going from picture k to picture j and then j to i must equal going straight from k to i. Symbolically g_ij(p) g_jk(p) = g_ik(p) for every p in the triple overlap; this is the cocycle condition. Two free consequences fall out by setting indices equal: g_ii = identity (a picture agrees with itself) and g_ji = g_ij^(-1) (comparing the other way around inverts). The symmetries g_ij(p) all live in one group G, the structure group of the bundle, which acts on the fiber F; for the bundles we care about G is one of the classical matrix groups like GL(n), O(n), or U(n).
phi_i o phi_j^(-1) : (U_i n U_j) x F -> (U_i n U_j) x F
(p, v) |-> (p, g_ij(p) . v)
cocycle condition (on U_i n U_j n U_k): g_ij g_jk = g_ik
set k = i : g_ij g_ji = g_ii = id => g_ji = (g_ij)^(-1)
set j = i = k : g_ii = id
g_ij : U_i n U_j -> G (structure group, e.g. GL(n,R), O(n), U(n))Reconstruction: the cocycle is enough to rebuild the bundle
Now the payoff that makes the formalism worth its weight: you can throw away the total space E and keep only the cover {U_i}, the fiber F, the group G acting on F, and the transition functions g_ij — and from that bare data rebuild E uniquely. The recipe is a gluing. Take the disjoint union of all the local slabs U_i x F, and declare a point (p, v) in U_j x F to be the same point as (p, g_ij(p) . v) in U_i x F whenever p lies in the overlap. The cocycle condition is exactly what makes this identification an equivalence relation (it gives transitivity), so the quotient is a well-defined manifold, and it is E. A bundle and a cocycle on a cover are two presentations of one object.
This is liberating in practice. To construct or recognize a bundle you never need to picture the whole curved total space; you write down a cover and consistent transition functions, and the bundle exists. It also pins down the right notion of sameness: two cocycles on the same cover give isomorphic bundles exactly when they differ by a change of local trivialization, g_ij -> h_i g_ij h_j^(-1) for some G-valued functions h_i on the U_i. Cocycles modulo this equivalence are precisely the isomorphism classes of bundles with structure group G — a fact that, pushed to its limit in a later guide, becomes the classification of bundles by maps into a classifying space.
Vector bundles: the fiber is a vector space
Specialize the fiber to a vector space and you get the workhorse of differential geometry. A vector bundle of rank n is a fiber bundle whose fiber is R^n (or C^n) and whose transition functions take values in the general linear group GL(n, R) — so each g_ij(p) is an invertible linear change of basis on the fiber. The extra demand over a generic fiber bundle is exactly that the gluing be linear fiber-by-fiber, which is what makes each fiber E_p into a genuine vector space in a way independent of the trivialization you used. You can add sections, scale them, and the operations agree on overlaps precisely because the g_ij are linear.
The example you have secretly known all along is the tangent bundle TM. Its fiber over p is the tangent space T_p M, an n-dimensional vector space, so TM is a rank-n vector bundle over M. Where do its transition functions come from? From the manifold's own atlas: on the overlap of two charts the tangent vectors transform by the Jacobian of the change of coordinates, and the Jacobian matrices are exactly the g_ij, living in GL(n, R). So the tangent bundle is not an extra structure you bolt on — it is the cocycle of Jacobians that your atlas was carrying the whole time. The cotangent bundle T*M, all the tensor bundles, and the exterior-form bundles are built the same way, with the fiber replaced by the corresponding linear-algebra construction and the g_ij replaced by the induced matrices.
Principal bundles: the fiber is the group itself
There is one more specialization, and it is the most important for the gauge theory at the end of this rung. Take the fiber to be the structure group G itself, and let G act on its own fiber by left multiplication. The result is a principal G-bundle: a fiber bundle P -> M whose fiber is a copy of G, equipped with a free, fiber-preserving right action of G on P that is transitive on each fiber. The right action is the key feature — it lets you slide along a fiber by group elements, yet, crucially, there is no preferred identity element in the fiber. A fiber of P is a G-torsor: it looks like G but has forgotten where e is, exactly as an affine space looks like a vector space that has forgotten its origin.
The cleanest principal bundle to hold in mind is the frame bundle of a rank-n vector bundle. Its fiber over p is the set of all ordered bases (frames) of the fiber E_p — and GL(n) acts on frames on the right by changing basis, freely and transitively, because exactly one matrix carries any frame to any other. The transition functions of the frame bundle are the very same g_ij as the original vector bundle; only the fiber has changed, from R^n to GL(n). This is the recurring trade you must internalize: a vector bundle and its frame bundle carry identical cocycle data and are two faces of one geometric object — one wears a vector space, the other wears the group.
The associated-bundle dictionary, and where we go next
The frame-bundle observation generalizes into the single most useful organizing principle here: the associated bundle construction. Fix a principal G-bundle P, and feed it any space F on which G acts. Then P x_G F — the product P x F quotiented by the diagonal relation (u . g, v) ~ (u, g . v) — is a fiber bundle over M with fiber F and the same transition functions as P. The point is that one principal bundle manufactures a whole family of associated bundles, all sharing its cocycle: feed it R^n with the defining GL(n) action and you recover the vector bundle; feed it a different representation and you get tensor or spinor bundles; the group G is the single source and the representations are the menu.
- Pick a base manifold M and an open cover {U_i}; choose the fiber F and a structure group G acting on F.
- Specify transition functions g_ij : U_i cap U_j -> G that satisfy the cocycle condition g_ij g_jk = g_ik on every triple overlap.
- Glue the slabs U_i x F by (p, v) ~ (p, g_ij(p) . v) to build the total space E; the cocycle condition guarantees a consistent quotient.
- Reduce G to a subgroup (O(n), GL(n)^+, U(n), ...) to add a metric, an orientation, or a complex structure for free.
Let us close by being honest about what this guide did and did not do. We have set up the static skeleton of bundle theory — what a bundle is, how transition functions encode its global twist, and how vector, principal and associated bundles are three dialects of one cocycle language. What is completely missing is any notion of differentiation along the base: given a section, there is as yet no canonical way to take its derivative, because comparing fibers over different points requires a choice. That choice is a connection, and supplying it is the entire subject of Guide 2. Its curvature, the failure of that comparison to be path-independent, will be Guide 3 — and from curvature, Chern-Weil theory in Guides 4 and 5 will read off topological invariants. Keep the cocycle picture close; everything ahead is built on it.