The Heisenberg group is R3 with an interesting metric structure. Usually one denotes points in the Heisenberg-Group by (x,y,t)∈R3. It is an active area of research with many open questions, some for a long time.
This project aims at visualizing and learning about the Heisenberg group in Virtual Reality. The main topics are structure and shapes of geodesics.
This is part of undergraduate research projects in progress with
- Celine Cui
- Isaiah Glymour
- Divya Guwalani
- Caroline Kulczycky
- Brian Popeck
- Matthew Snyder
- Amy Waughen
- Joshua Ascher
An Introduction to the Heisenberg group
The horizontal space at a point (x,y,t) tells us the permissible directions. Usually it is described as a kernel of a one-form α=dt+2(xdy−ydx). At a point (x,y,t) the horizontal vectors v=(v1,v2,v3) are exactly those which satisfy 0=v3+2(xv2−yv1) The horizontal vectors form a two-dimensional vector space in R3 with basis (X,Y) where X:=(1,0,2y),Y:=(0,1,−2x) and v=(v1,v2,v3) is horizontal if and only if v=v1X+v2Y The lenght of a (horizontal!) vector v is defined as √|v1|2+|v2|2
A horizontal curve γ:[a,b]→R3 with derivative ˙γ(t) satisfies 0=˙γ3(t)+2(γ1(t)˙γ2(t)−γ2(t)˙γ1(t))
Observe that this means in particular that if we know the projection into R2 of γ, i.e. first two entries of the curve γ1(t) and γ2(t) then we can compute γ3(t)=γ3(0)−∫t02(γ1(s)˙γ2(s)−γ2(s)˙γ1(s))ds
The lenght of a (horizontal!) curve is defined as L(γ):=∫ba√|˙γ1(t)|2+|˙γ2(t)|2dt
A curve of (locally) shortest lenght is called a geodesic.
Isometries of the Heisenberg group
There are three ``isometries” for the Heisenberg group:
scaling: for a point p=(x,y,z) and a scale r>0 we define δr(p):=(rx,ry,r2t). If γ:[a,b]→R3 is a horizontal curve, then so is η(t):=δrγ(t), and we can compute the lenght L(η)=rL(γ).
translation: this is typically referred to as the group structure: (x,y,t)∗(x′,y′,t′):=(x+x′,y+y′,t+t′+2(x′y−xy′)) If γ:[a,b]→R3 is a horizontal curve and p∈R3, then so is η(t):=p∗γ(t); The lenght does not change, L(η)=L(γ).
rotations: Let P be a rotation (orientation preserving) in R2, that is P∈SO(2), or equivalently for some rotation angle α P=(cos(α)−sin(α)sin(α)cos(α)). We denote by for v∈R3 let ˜v=(v1,v2) be the projection into the (x,y)-plane. We then can rotate via P in the (x,y)-plane, leaving the z-component untouched. rot(v,P):=(P˜v,v3). Let γ:[a,b]→R3 is a horizontal curve and P∈SO(2) a rotation. Then so is η(t):=rot(γ(t),P); The lenght does not change, L(η)=L(γ).
Equivalently, for α∈(0,2π) and v∈R3 we have
rot(v,α):=(cos(α)−sin(α)0sin(α)cos(α)0001)v
Horizontal straight lines
The simples horizontal lines from a point p=(p1,p2,p3) in the direction of a vector V∈H0H1, i.e. V=(V1,V2,0) is given by γ(t):=p∗tV=(p1+tV1,p2+tV2,p3+2t(V1p2−V2p1)) Indeed then γ′(t)=(V1,V2,2(V1p2−V2p1)) which is indeed horizontal at the point γ(t) for each t.
Computing geodesics of the Heisenberg group
By the isometries for the Heisenberg group we only need to compute geodesics of the following type:
See also geogebra-applet
Geodesics between (0,0,0) and (4π,0,0): These are the easiest ones, they are unique, and equal the two-dimensional shortest curves in Euclidean space: γ(t):=(t,0,0),t∈[0,1].
Geodesic between (0,0,0) and (0,0,1): the isoperimetric inequality implies that the first two entries of the geodesics γ(t), i.e. ˜γ(t):=(γ1(t),γ2(t)) has to parametrize a once-covered circle which (as one can compute from the horizontality condition) must have the area 1. The geodesic is thus not unique, but any R2-rotation of γ(t):=(1−cos(t),sin(t),2(t−sin(t))),t∈[0,2π]
Geodesic between (0,0,0) and (1,0,T), T>0. This geodesic is unique and a subarc of the geodesic (0,0,0) to (0,0,τ) for some unknown τ>T (ref). After projection into the (x,y)-plane all circles going through (0,0) and (1,0) can be derived from the standard circle γ(t):=(1−cos(t)sin(t)) by a scaling radius R, a rotation P. Then the point (1,0) is parametrized for exactly one s∈(0,2π).
That is, we need to find a rotation P∈SO(2), one time s∈(0,2π) and one radius R>0 such that (P11P120P21P220001)(R(1−cos(s))Rsin(s)2R2(s−sin(s)))=(10T) This equations can be simplified, namely we have 2R2(s−sin(s))=T. and P(R(1−cos(s))Rsin(s))=(10) P∈SO(2) is a rotation matrix which means that multiplying a vector v with P does not change the length of v, |Pv|=|v|∀v∈R2. Thus, |R(1−cos(s))Rsin(s)|=|10| That is, 2R2(1−cos(s))=1 But then P is the rotation that rotates the vector v:=(R(1−cos(s)),Rsin(s)) into (1,0). Both vectors are of length one, so P is given by P=(v1v2−v2v1). Set f(s):=s−sin(s)1−cos(s)=T We have to compute s∈[0,2π) such that s:=f−1(T) – observe that f is monotone increasing on [0,2π), see a plot here. Then our geodesic is a sub-geodesic of the geodesic between (0,0,0) and (0,0,τ) where τ:=4πR2. Observe that we can write v=(12RT2R−Rs). which means that the geodesic is given by γ(t)=(12RT2R−sR0−T2R+sR12R0001)η(t) where η(t) is the geodesic from (0,0,0) to (0,0,4πR2), s∈[0,2π) is the solution of s−sin(s)1−cos(s)=T and R=√12−2cos(s)
Computing the inverse of f(s):=s−sin(s)1−cos(s)=T For large s>0 it seems that by setting s=4arctan(√x) we find almost a straight line with slope π/4. g(x):=4arctan(√x)−sin(4arctan(√x))1−cos(4arctan(√x)) with g′(x)≈π/4for x≫1 f(x) = ((4*arctan(x))-sin(4*arctan(x)))/(1-cos(4*arctan(x))) + x*pi/4+ ((4*arctan(a))-sin(4*arctan(a)))/(1-cos(4*arctan(a)))where a=3
An equivalent metric
The Koranyi-metric on the Heisenberg group for p=(p1,p2,p3) and q=(q1,q2,q3) is given by
(d(p,q))=((|p1−q1|2+|p2−q2|2)2+|p3−q3+2(p2q1−p1q2)|2)14. It is not the same as the Carnot-Caratheodori-metric, but it is equivalent to it.
Now assume we are an object at position p=(p1,p2,p3) wanting to move towards position q=(q1,q2,q3) in a horizontal way, as quickly as possible. If we don’t want to compute the full geodesic (thats expensive), in which direction should we move?
Infimitesimally we can only move in horizontal direction, i.e. we move from p into p∗δV where V=(V1,V2,0) – and we want to know how to choose V optimal. We use the method of gradient descent.
Set for V=(V1,V2,0) f(V):=(d(p∗V,q))4 That is f(V):=|p1+V1−q1|4+|p2+V2−q2|4+|p3−q3+2(p2q1−p1q2)+2(V2q1−V1q2)|2 The gradient descent method (analytically this is first order Taylor) tells us that the locally best way to make f smalles is to choose V as −δ∇f(0) for small δ>0.
We have ∂V1f(0)=4(p1−q1)3+2(p3−q3−4q2(p2q1−p1q2))
and ∂V2f(0)=4(p2−q2)3+2(p3−q3+4q1(p2q1−p1q2)) So −δ∇f=−δ(4(p1−q1)3+2(p3−q3−4q2(p2q1−p1q2)),4(p2−q2)3+2(p3−q3+4q1(p2q1−p1q2)),0)
Surface filling with geodesics
It is an open question – often referred to as the Gromov conjecture – how regular a surface embedded into the Heisenberg Group can be. Hajlasz suggested the following method to find a possibly optimal: draw a square with geodesics in the Heisenberg group, then connect midpoints on opposite sides of these squares to fill the square into a surface.
Here are some pictures of how this could look if we do this ``fractal” process for a triangle. In every iteration the midpoints are connected via a geodesic.
The last picture contains most likely a numerical error…
The square version looks like this
more…
References
- Gromov - Carnot-Carathéodory spaces seen from within
- Hajlasz, Zimmerman - Geodesics in the Heisenberg group
- Schikorra - Hölder-Topology of the Heisenberg group
Acknowledgment
- Equipment partially financed by Daimler-Benz foundation
- This is part of the NSF Career project DMS-2044898 (2021-2026)