Skip to content

Commit

Permalink
Wrote the definition of a general fiber bundle.
Browse files Browse the repository at this point in the history
  • Loading branch information
iamazadi committed Apr 9, 2024
1 parent fbf2e2e commit a866e23
Showing 1 changed file with 31 additions and 0 deletions.
31 changes: 31 additions & 0 deletions docs/src/hopffibration.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,37 @@ Description = "How the Hopf fibration works."

The Hopf fibration is a fiber bundle with a two-dimensional sphere as the base space and circles as the fiber space. It is the geometrical shape that relates Einstein's spacetime to quantum fields. In this model, we visualize the Hopf fibration by first calculating its points via a bundle chart and then rendering the points in 3D space via stereographic projection. The projection step is necessary because the Hopf fibration is embedded in a four-space, yet it has only three degrees of freedom as a three-dimensional shape. The idea that makes this model more special and interesting than a typical visualization is the idea of [Planet Hopf](http://drorbn.net/AcademicPensieve/Projects/PlanetHopf/), due to Dror Bar-Natan (2010). So, if the base space is a two-dimensional sphere much like the skin of the globe, then we can model the Earth as a sphere and skin the horizontal sections of the bundle. Into the bargain, the Earth rotates about its axis every 24 hours. That spinning transformation of the Earth, together with the non-trivial product space of the Hopf bundle, can be encoded naturally into the visualization. It makes a lot of sense no matter how ridiculous, especially when we try to visualize differential operators in the Minkowski space-time and investigate the properties of spin-transformations. The following explains how the source code for generating animations of the Hopf fibration works (alternative views of Planet Hopf).

First, let ``E`` and ``M`` be smooth manifolds. Then, ``\pi: E \to M`` is a surjective and differentiable map between smooth manifolds. Meaning, every element in ``M`` has some corresponding element in ``E`` via the map ``\pi``. Now, let ``x \in M`` be a point. A *fiber* of ``\pi`` over point ``x`` is called ``E_x`` and defined as a non-empty subset of ``E`` as follows: ``E_x = \pi^{-1}(x) = \pi^{-1}(\{x\}) \subset E``. The singleton of ``x`` is taken to the manifold ``E`` by the inverse of the map ``\pi``. However, to have a set of more than one point let ``U`` be a subset of ``M``, ``U \subset M``. Then, we have ``E_U = \pi^{-1}(U) \subset E``. In this case, ``E_U`` is the part of ``E`` above the subset ``U``.

Next, define a global section of the map ``pi`` like this: ``s: M \to E``. Considering the definition of ``pi: E \to M``, the definition of the global section implies that the composition of ``pi`` and ``s`` is the identity map ``\pi o s = Id_M`` over ``M``. A section such as ``s`` can be a local one if we take a subset of ``M`` in the domain, ``U \subset M``. Then, a local section is defined as ``s: U \to E``. In a similar way the definition of the local section implies that the composition of ``pi`` with it is the idenity map over the subset: ``\pi o s = Id_U``. For all points ``x`` in subset ``U``, the section ``s(x)`` is in the fiber ``E_x`` of ``\pi`` above ``x``, if and only if ``s`` is a local section of ``pi``. In this pointwise case, the map ``\pi`` is restricted to subset ``U``. In other words ``\pi: E \to U``, where ``U \subset M``.

In general, for two points ``x \not = y \in M`` that are not equal, the fibers ``E_x`` and ``E_y`` of ``\pi`` over ``x`` and ``y`` may not be embedded submanifolds of ``E``, or even be diffeomorphic. That means, there may not be a differentiable and invertible map that takes fiber ``E_x`` into fiber ``E_y``, and the tangent spaces of ``E_x`` and `` E_y`` over points ``x`` and ``y`` may not be naturally linear subspaces of the tangent space of ``E``. But, it is different in the special instance where manifold ``E = M \times F`` is the product of ``M`` and the general fiber ``F`` and ``pi`` as a map is the projection onto the first factor ``\pi: M \times F \to M``. If that is the case, then fibers ``E_x, E_y \in F`` of ``pi`` over the two distinct points ``x \not = y \in M`` are embedded submanifolds of ``E`` and diffeomorphic. To explain it more clearly, given that condition, there exists an invertible and smooth map taking one fiber to the other, and the tangent spaces of the fibers are directly summed with their respective dual subspaces at points in the fibers to span the whole tangent space of manifold ``E`` at points of ``\pi`` over ``x`` and ``y``. Fiber bundles are the generalization of products ``E = M \times F`` as twisted products.

Before we define the Hopf action, first describe a scalar multiplication rule between vectors and numbers. Let ``\R`` denote real numbers, ``\Complex`` complex numbers, and ``\mathbb{H}`` quaternionic numbers. On top of that, take a subset of these sets of numbers such that zero is not allowed to be in them, and denote the subsets as ``\R^*``, ``\Complex^*``, and ``\mathbb{H}^*`` respectively. Now, define the linear right action by scalar multiplication for ``\mathbb{K} = \mathbb{R}, \mathbb{C}, \mathbb{H}`` as the following: ``\mathbb{K^{n+1}}\setminus\{0\} \times \mathbb{K}^* \to \mathbb{K}^{n+1}\setminus\{0\}``. For example, ``5 \in \mathbb{R}^*`` is a non-zero scalar number, whereas ``[1, 0, 0]^T \in \mathbb{R}^3\setminus\{0\}`` is a non-zero vector quantity. Per our definition, ``5`` acts on ``[1, 0, 0]^T`` on the right and yields ``[5, 0, 0] \in \mathbb{R}^3\setminus\{0\}`` as another vector. This rule works the same for fileds ``\mathbb{K}`` even when the vectorial numbers are represented by matrices.

The linear right action by multiplication is called a *free* action, because for ``x \in \mathbb{K}^{n+1}\setminus\{0\}`` and ``y \in \mathbb{k}^*`` the multiplication ``x \times y`` yields ``x`` if and only if ``y = Id``, as the identity element. For example, if we let ``x = [0, 1, 0]^T, y = 1``, then the result of the scalar multiplication is ``[0, 1, 0]^T \times 1 = [0, 1, 0]^T``.

In addition, we define the unit n-sphere, for the Hopf action works on spheres. So, the unit sphere of dimension ``n`` is defined as: ``S^n:\{(w_1, w_2, ..., w_{n+1}) \in \mathbb{R}^{n+1} | \sum_{\substack{1<i<n+1}}{w_i}^2 = 1\}``. As an example, the unit circle ``S^1 \in \mathbb{C}`` is a one-dimensional sphere with ``n = 1``, and ``{w_1}^2 + {w_2}^2 = 1``, where ``w_1`` and ``w_2`` are the horizontal and vertical axes in the complex plane, respectively.

Now, Hopf actions are defined as free actions:
``\\ S^n \times S^0 \to S^n \\``
``S^{2n+1} \times S^1 \to S^{2n+1} \\``
``S^{4n+3} \times S^3 \to S^{4n+3} \\``
given by ``(x, \lambda) \mapsto x\lambda``.

An example of a Hopf action is the multiplication of the three-sphere ``S^3 \cong SU(2) \subset \mathbb{C}^2`` on the right by the unit circle ``S^1 \cong U(1) \subset \mathbb{C}``. Define the Hopf action as the map ``\Phi: S^3 \times S^1 \to S^3`` given by ``(v, w, \lambda) \mapsto (v, w) \sdot \lambda = (v\lambda, w\lambda)``, for all points in the unit 3-sphere ``(v, w) \in S^3`` and the unit 1-sphere ``\lambda \in S^1``. What's more, the Hopf action has two properties:
1. ``(v, w) \sdot (\lambda \sdot \mu) = ((v, w) \sdot \lambda) \sdot \mu``
2. ``(v, w) \sdot 1 = (v, w)``
``\forall (v, w) \in S^3, \ \lambda, \mu \in S^1``.

The next idea is about the *orbit* of a point in the 3-sphere ``S^3`` under the Hopf action. The orbit map is defined as ``\phi: S^1 \to S^3`` given by ``\lambda \mapsto (v_0, w_0) \sdot \lambda``, ``\forall (v_0, w_0) \in S^3``. The orbit map ``\phi`` is injective and free, meaning that a point in ``S^3`` can not have many points in ``S^1`` and also there exists an identity element such that the action stabalizes a point in ``S^3`` such as ``(v_0, w_0)``. Furthermore, the Hopf action ``\Phi: S^1 \to Diff(S^3)`` is a homomorphism. It preserves ``S^3``. The Hopf action being a free action implies that the orbit of every point ``(v_0, w_0) \in S^3`` is an embedded circle ``S^1``.

Back to the topic of fiber bundles, we recall that the part of manifold ``E`` over subset ``U`` equals: ``E_U = \pi^{-1}(U) \subset E``, where ``U \subset M``. Here, there is an equivalence relation in the fiber ``E_x`` of ``\pi`` over ``x``, since the orbit of a point in fiber ``E_x`` by ``\phi`` collapses onto a single point ``x \in U`` via the projection map ``\pi: S^3 \to S^3/\text{\textasciitilde}``. After the collapse of every fiber in manifold ``E``, the quotient space ``S^3/S^1`` is seen to be the projective complex line ``\mathbb{CP}^1 \cong S^2``. The projective complex line is the ratio of two complex numbers. To see how the space of ``S^3`` is connected compared to ``S^1``, note that every closed loop in ``S^3`` is shrinkable to a single point in a continous way, tracing a local section. However, a closed loop in ``S^1`` is not shrinkable to a single point. This fact makes ``S^3`` a simply-connected space and ``S^1`` a not simply-connected space.

We are now almost equipped with the tools to define a fiber bundle in a formal way. Let ``E, F, M`` be manifolds. The projection map ``\piL E \to M`` is a surjective and differentiable map (Every element in ``M`` has some element in ``E``). Then, ``(E, \pi, M, F)`` is called a fiber bundle, (or a locally trivial fibration, or a locally trivial bundle) if for every ``x \in M`` there exists an open neighborhood ``U \subset M`` around the point ``x`` such that the map ``\pi`` restricted to ``E_U`` can be trivialized as a cross product. Remember that ``E_U`` is the part of ``E`` of ``\pi`` over ``U``. In other words, ``(E, \pi, M, F)`` is called a fiber bundle if there exists a diffeomorphism ``\phi_U: E_U \to U \times F`` such that ``Pr_1 o \phi_U = \pi``, meaning the projection onto the first factor of the trivialization map ``\phi_U`` is the same as the map ``\pi``. Also, a fiber bundle is denoted by ``F \to E \xrightarrow{\pi} M``. In this notation, ``E`` denotes the total space, ``M`` the base manifold, ``F`` the general fiber, ``\pi`` the projection, and ``(U, \phi_U)`` a local trivialization or bundle chart.

Using a local trivialization ``(U, \phi_U): E_x = \pi^{-1}(x)`` we find that the fiber ``E_x`` is an embedded submanifold of the total space ``E`` for every point ``x \in M``. Meaning, the tangent space of fiber ``E_x`` is a linear subsapce of the tangent space of ``E``. The direct sum of the tangent subspace of the general fiber and the tangent subspace of the base manifold equals the tangent space of the total space: ``T_{x}E = V_{x}E \bigoplus H_{x}E``.

## Import the Required Packages

Begin by importing a few software packages for doing algebraic operations, working with files and graphics processing units. Besides __Porta__, we need to use three packages: [FileIO](https://github.com/JuliaIO/FileIO.jl), [GLMakie](https://github.com/MakieOrg/Makie.jl) and [LinearAlgebra](https://github.com/JuliaLang/julia/blob/master/stdlib/LinearAlgebra/src/LinearAlgebra.jl). First, `FileIO` is the main package for IO and loading all different kind of files, including images and Comma-Separated Value (CSV) files. Second, interactive data visualizations and plotting in Julia are done with `GLMakie`. Finally, `LinearAlgebra`, as a module of the Julia programming language, provides array arithmetic, matrix factorizations and other linear algebra related functionality. However, through years of working with geometrical structures and shapes we have encapsulated certain mathematical computations and transformations into custom types and interfaces, which make up most of the functionalities of project Porta. In addition, we wrapped complicated computer graphics workflows inside custom types in order to increase the interoprability of our types with those of external packages such as GLMakie.
Expand Down

0 comments on commit a866e23

Please sign in to comment.