Bubbles Bad; Ripples Good

Goal: think uncommonly about common things; explain uncommon things commonly.

Bessaga’s converse to the contraction mapping theorem

In preparing some lecture notes for the implicit function theorem, I took a look at Schechter’s delightfully comprehensive Handbook of Analysis and its Foundations (which you can also find on his website), and I learned something new about the Banach fixed point theorem. To quote Schechter:

… although Banach’s theorem is quite easy to prove, a longer proof cannot yield stronger results.

I will write a little bit here about a “converse” to the Banach theorem due to Bessaga, which uses a little bit of help from the Axiom of Choice.

Read the rest of this entry »

Compactifying (p,q)-Minkowski space

In a previous post I described a method of thinking about conformal compactifications, and I mentioned in passing that, in principle, the method should also apply to arbitrary signature pseudo-Euclidean space \mathbb{R}^{p,q}. A few days ago while visiting Oxford I had a conversation with Sergiu Klainerman where this came up, and we realised that we don’t actually know what the conformal compactifications are! So let me write down here the computations in case I need to think about it again in the future. Read the rest of this entry »

Automated annotation in LaTeX using OCG

This is written mostly in response to Qiaochu’s Google+ post. The problem is: is there a way to make easy “cross reference previews”? If so, we can just write

Assuming Assumptions \ref{ass1} and \ref{ass2}, we have blah

in our document, and on mouse-over we can see what the assumptions are. Or, as another example,

due to \eqref{eq3}, our equation \eqref{eq4} above implies
\[ E = mc^2\]

and mousing over the two generated equation references will show the equations, without us having to necessarily flip back to the page involved.

As it turns out, there is such a utility available: Fancy-Preview. It uses the fancytooltips package for LaTeX to generate PDF tooltips where the tooltips are clipped from an external PDF file. The upside to using fancy-preview is that the results are very pretty. The downside is that it is extremely non-portable: while I am not certain, it seems to require the PDF viewer to have javascript support, and on Linux the only PDF viewer that stands a chance of working with these tooltips is the official Adobe Acrobat Reader. If you are a Linux user you’ll know why I uttered the last phrase with disgust. (Though rumour has it that both evince and okular may eventually support the type of operations required for fancy-preview, the fact is that right now these tooltips are not very useful for Linux users.)

Instead of tooltips, however, one can get a similar effect by using the Optional Content Group feature of the PDF specification. The OCG basically allows the visibility of certain elements to be changeable by user interaction, and the ocg-p package implements easy access to the OCG layers. However, just the ocg-p package is not enough: the way it detects user interaction still doesn’t work on evince (I haven’t tested other PDF viewers). Luckily, there is the ocgx package which builds on the ocg-p package and does not use Javascript. The code has been tested to run on Acrobat Reader, FoxIt, Evince, and others. So I know at least one Linux reader is capable of using this content.

Now, OCG handling by itself only allows us to toggle the visibility of elements. We still need a way to actually present the annotations in the PDF file. Here’s where it gets tricky: the annotations should be invisible by default, and be shown with certain triggers are clicked. So the idea is to typeset the annotations as zero-size objects, offset properly so that it does not obscure the trigger button. The code I am about to show you below does this… to a certain extent. There are some bugs that I have not yet been able to iron out:

  • In the function \annotatetext, if the text starts too near line-breaking boundaries we get sometimes strange behaviours, one of which is that after every compilation pdflatex will tell us to re-run since the labels may have changed.
  • I originally intended to build also a height-detection code so that if there is not enough space above the line, we can try to type-set the annotation below the trigger. However we run into one of the main limitations of the OCG method: the order of setting the text is the order of the layers, at least with the current version of ocg-p. So the annotation text, when shown, will overwrite text that precedes it in the TeX file, but will be overwritten by text that follows. So below-the-line annotations becomes illegible. (Any suggestions on how I can fix this will be welcome!)

Note also that the code below is not “production”, it has only seen limited testing. So use it at your own peril. (I should note here that to make use of the utils, it is necessary to compile the file using some version of pdfTeX.)

%%%%% Annotation utils %%%%%
% The goal is to provide a clickable
% tool-tip like interface to show cross reference information. 
% This duplicates the function of the 'fancy-preview' and
% 'fancytooltips' packages, and does not support mouse-over events,
% but has the advantage of working in evince also. 

% We need some packages
% the package ocgx also depends on ocg-p, I think.

% Some configuration stuff
% Default colours, see
% http://en.wikibooks.org/wiki/LaTeX/Colors
\newcommand*\annotatetextcolour{OliveGreen} % For the inline text
\newcommand*\annotateboxbordercolour{Dandelion} % For the annotate box
\newcommand*\annotateboxbkgdcolour{Goldenrod} % Ditto
\newcommand*\annotateboxtextcolour{Black} % Ditto
\newcommand*\annotateboxtextfont{\small} % Other font configuration stuff
\newcommand*\annotateheremarktext{note} % Default text for \annotatehere 
\newcommand*\annotatewithmarkmark{$\Uparrow$} % Default mark for \annotatewithmark

% Dummy variables

% Usage: \annotatetext{text}{annotation}
% Note: there can be some bugs when the text to be annotated starts
% near the end of a line. The other two commands seems to behave
% better, but will still need extensive testing!
        \hskip\dimexpr - \zposx{@annt@pos\the@anntposmark}sp + \zposx{@anntleftmargin}sp + 3em%
        \smash{\raisebox{3ex}{\makebox[0pt][l]{\begin{ocg}{Annotation Layer \the@anntposmark}{anntlayer\the@anntposmark}{0}\fcolorbox{\annotateboxbordercolour}{\annotateboxbkgdcolour}{\parbox[b]{\textwidth-6em}{{\annotateboxtextfont\color{\annotateboxtextcolour} #2}}}\end{ocg}}}}%
        \hskip\dimexpr + \zposx{@annt@pos\the@anntposmark}sp - \zposx{@anntleftmargin}sp - 3em%

% Usage: \annotatehere[note mark text]{annotations}
% The default mark text is set above, the mark text is type-set in a superscript box
        \hskip\dimexpr - \zposx{@annt@pos\the@anntposmark}sp + \zposx{@anntleftmargin}sp + 3em%
        \smash{\raisebox{3.3ex}{\makebox[0pt][l]{\begin{ocg}{Annotation Layer \the@anntposmark}{anntlayer\the@anntposmark}{0}\fcolorbox{\annotateboxbordercolour}{\annotateboxbkgdcolour}{\parbox[b]{\textwidth-6em}{{\annotateboxtextfont\color{\annotateboxtextcolour}#2}}}\end{ocg}}}}%
        \hskip\dimexpr + \zposx{@annt@pos\the@anntposmark}sp - \zposx{@anntleftmargin}sp - 3em%
        \switchocg{anntlayer\the@anntposmark}{\raisebox{1ex}{\fcolorbox{\annotatetextcolour}{White}{\color{\annotatetextcolour}\tiny \scshape #1}}}%

% Usage: \annotatewithmark[mark]{annotations}
% Very similar to \annotatehere, but the mark is unframed, and no conversion made to small caps
        \hskip\dimexpr - \zposx{@annt@pos\the@anntposmark}sp + \zposx{@anntleftmargin}sp + 3em%
        \smash{\raisebox{3.3ex}{\makebox[0pt][l]{\begin{ocg}{Annotation Layer \the@anntposmark}{anntlayer\the@anntposmark}{0}\fcolorbox{\annotateboxbordercolour}{\annotateboxbkgdcolour}{\parbox[b]{\textwidth-6em}{{\annotateboxtextfont\color{\annotateboxtextcolour}#2}}}\end{ocg}}}}%
        \hskip\dimexpr + \zposx{@annt@pos\the@anntposmark}sp - \zposx{@anntleftmargin}sp - 3em%
        \switchocg{anntlayer\the@anntposmark}{\raisebox{1ex}{{\color{\annotatetextcolour}\tiny #1}}}%

% Usage: \annotatelabel{label}{annotations}
% Replacement for \label, where attached to each label there is an annotation 
% text which can be recalled using \annotateref{label}. See below. 
% Usage: \annotateref{label}  and  \annotateeqref{label}
% Replacement for \ref and \eqref, where we insert an \annotatewithmark with 
% the text set with \annotatelabel

\AtBeginDocument{\zsavepos{@anntleftmargin}} %This figures out where the left margin is

%%%%% End Annotation utils %%%%%

Let me give an example (to compile, replace the line \input{helper_commands} by the code listing above, or save the code listing above in the file helper_commands.tex


\newcommand\eqref[1]{(\ref{#1})} % Defined only because I am not using amsart


We can \annotatetext{annotate a piece of text}{Here be an
annotation.}. We can equally well annotate a piece of mathematics:
\[ E = \annotatetext{m}{The is the mass} \times \annotatetext{c^2}{Square of
the speed of light} \]
Instead of using the text itself as a toggle, we can use a
mark.\annotatewithmark{See here!} The mark itself
can\annotatehere[click me!]{Wheee!} be descriptive.

Now we can test some cross referencing. We first write down an
\begin{equation}\annotatelabel{waveq}{The nonlinear wave equation \
$\Box u = B(\partial u,\partial u)$}
- \partial_t^2 u + \triangle u = \sum_{i,j = 0}^3 B^{ij} \partial_i u
  \partial_j u
with respect to which we define
\begin{definition}\annotatelabel{def:nullcon}{The null condition is
when $B^{ij}\xi_i\xi_j = 0$ for any $\xi$ satisfying $m^{ij}\xi_i\xi_j
= 0$ where $m = \mathrm{diag}(-1,1,1,1)$ is the Minkowski metric.}
We say that the null condition is satisfied for \annotateeqref{waveq} if
the term $B^{ij}$ satisfies $\sum_{i,j = 0}^3 B^{ij}\xi_i
\xi_j = 0$ for every $\xi$ satisfying $- \xi_0^2 + \xi_1^2 + \xi_2^2 +
\xi_3^2 = 0$.
And perhaps a theorem
\begin{theorem}\annotatelabel{thm:nullcon}{Small data global existence
holds provided null condition (Def. \ref{def:nullcon}) is
Small data global existence hold for \annotateeqref{waveq} provided
that the null condition is satisfied (see Definition

Let us talk a bit more about Theorem \annotateref{thm:nullcon}.

As you can see, one has to specify, in the current version, the annotation text for each of the labels when the labels are defined. It is a slight drawback compared to the fancy-preview script, which extracts the annotation text automatically; but on the other hand, this gives slightly better configurability: in particular, nested annotations don’t currently work, so one would have to avoid \annotateref and \annotateeqref commands within an \annotatelabel (as I did in the example above).

If you want to see what the result looks like without building the LaTeX file above yourself, here’s the results: Annotation Demo. (You should download it and open it in a standalone viewer, and not use the built-in ones for Firefox and Chrome. I am pretty sure the Firefox viewer cannot handle OCG content yet.)

Purely kinetic initial data for Schwarzschild

I am at MSRI at the moment attending a program on mathematical relativity, and today heard something interesting from Mu-Tao Wang during his discussion of quasi-local mass.

To motivate: consider Einstein’s (vacuum) equations in general relativity. The initial data formulation requires specifying a manifold \Sigma, a Riemannian metric g, and a symmetric two tensor k. Remember that we are interested in solving for a space-time (M,\bar{g}) satisfying \mathrm{Ric}(\bar{g}) = 0; the induced metric g can be thought of as the initial data and the tensor k (which will turn out to be the second fundamental form of the embedding of \Sigma into M) the initial first time derivative of the data (Einstein’s equation is second order, and so we specify both the data and its first time derivative on the initial slice).

The nature of Einstein’s equations is that the initial data needs to satisfy a set of constraint equations, for it to be compatible with any solution. In any dimension we have the Hamiltonian constraint (assuming vacuum, so no stress-energy tensor)

\displaystyle R(g) - |k|^2_g + \mathrm{tr}_g k = 0

and the momentum constraint

\displaystyle \mathrm{div}_g k - \mathrm{d}~\mathrm{tr}_g k = 0

A particular class of initial data is those called time-symmetric, which are those with k \equiv 0. The physical interpretation is clear in view of the above formal considerations: k corresponds to the instantaneous “velocity” of the space-time as a whole, and its vanishing represents that the spacetime is instantaneously “not moving”. To draw an analogy with classical mechanics, this is the situation where velocities are zero and all the energy of the system is contained in the potentials.

One may ask the question whether we can write down initial data for Einstein’s equation that represents, again using the classical mechanics analogy, a system that is instantaneously completely relaxed, and so all its energy are placed in the kinetic part. A reasonable interpretation for “completely relaxed” would be that the initial data has zero spatial curvature, like the standard slice in Minkowski space; all the energy will live inside the “kinetic term” k.

As it turns out: we can in fact do this. To exhibit a solution, let us work in spherical symmetry to reduce the constraint equations to an ordinary differential equation. Since the spatial metric is flat, we can choose spherical coordinates so that

\displaystyle g = \mathrm{d}r^2 + r^2 \mathrm{d}\omega^2

and by spherical symmetry (assuming spatial dimension n \geq 3) we have that the second fundamental form must decompose as

\displaystyle k = A(r) \mathrm{d} r^2 + r^2 B(r) \mathrm{d}\omega^2

which implies that

\displaystyle |k|^2_g = A^2 + (n-1) B^2 \qquad \mathrm{tr}_g k = A + (n-1) B

so that the Hamiltonian constraint yields

\displaystyle B \equiv 0 \qquad \text{or} \qquad 2A + (n-2)B = 0

(note that if A = B = 0 then we reduce down to Minkowski initial data). Next we consider the momentum constraint. A direct computation (using Christoffel symbols or otherwise) of the divergence term yields

\displaystyle (\mathrm{div} K)(\partial_r) = \partial_r A + \frac{n-1}{r} (A - B)

Now, in either of the cases we can reduce the momentum constraint to a one variable ODE:

B \equiv 0 \implies A \equiv 0 \implies \text{Minkowski}

and more interestingly

\displaystyle 2A + (n-2)B = 0 \implies \partial_r A + \frac{n-1}{r} (1+ \frac{2}{n-2}) A = \partial_r A - (n-1)\frac{2}{n-2} \partial_r A

which we can simplify to get

\displaystyle \partial_r A + \frac{n}{2r} A = 0

Using integrating factors we solve to get

\displaystyle A = c r^{-n/2} \qquad B = - \frac{2c}{n-2} r^{-n/2}

Now where does this slice sit in Schwarzschild? If we solve, in Boyer-Lindquist coordinates for t = f(r) such that the induced metric is flat, we easily come to the conclusion that, in the case n = 3 (I may add the computation for general n later) we have f'(r) = \pm \sqrt{2m/r}(1 - 2m/r)^{-1}. This slice goes from space-like infinity inward, and cuts through the (future or past, depending on sign) event horizon as r \to 2m.

Interestingly, we note that the decay of the second fundamental form k is in fact critical, at least in the context of the positive mass theorem (the momentum integral formally diverges!), so at least on that level this doesn’t give a contradiction to the PMT.

For more discussions one can see this paper.

Products and expectation values

Let us start with an instructive example (modified from one I learned from Steven Landsburg). Let us play a game:

I show you three identical looking boxes. In the first box there are 3 red marbles and 1 blue one. In the second box there are 2 red marbles and 1 blue one. In the last box there is 1 red marble and 4 blue ones. You choose one at random. What is …

  • The expected number of red marbles you will find?
  • The expected number of blue marbles you will find?
  • The expected number of marbles, irregardless of colour, you will find?
  • The expected percentage of red marbles you will find?
  • The expected percentage of blue marbles you will find?

Answer below the cut… Read the rest of this entry »

Decay of Waves IV: Numerical Interlude

I offer two videos. In both videos the same colour scheme is used: we have four waves in red, green, blue, and magenta. The four represent the amplitudes of spherically symmetric free waves on four different types of spatial geometries: 1 dimension flat space, 2 dimensional flat space, 3 dimensional flat space, and a 3 dimensional asymptotically flat manifold with “trapping” (has closed geodesics). Can you tell which is which? (Answer below the fold.)

Read the rest of this entry »

What’s wrong with tests

Find the errors!

I was tasked with grading the following exam question:

Using methods discussed in class this term, find the mean value over [-\pi,\pi] of the function f(x) = \sin(2x) \cdot \exp [1 - \cos (2x)].

The conceptual parts of the question are (based on the syllabus of the course)

  1. Connecting “mean value of a continuous function over an interval” with “integration”, an application of calculus to probability theory and statistics.
  2. Evaluating an integral by substitutions/change of variables.
  3. Familiarity with the trigonometric functions \sin, \cos and their properties (periodicity, derivative relations, etc).

I was told to grade with an emphasis on the above, so I prepared a grading rubric such that the above three key ideas gave most of the points. Here’s an otherwise reasonable answer that unfortunately does not use the methods discussed in class and so would receive (close to) zero credit (luckily no students turned in an answer like this):

The function f(x) satisfies f(x) = - f(-x), i.e. it is odd. So the average (f(x) + f(-x))/2 = 0. Since for every x\in [-\pi,\pi], we also have -x \in [-\pi,\pi], the mean value of f(x) over that interval must be zero.

Here are some responses that can get quite a good number of points* (at least more than the above answer) based on the grading rubric (I guess it means I wasn’t imaginative enough in coming up with possible student errors). (I took the liberty of combining some of the most awful bits from different answers; the vast majority of the students’ answers are not nearly that horrible**, though only one student remembered that when changing variables one also needs to change the limits of integration.) Since most students who made any reasonable attempt on the question successfully wrote down the integral

\displaystyle \mu = \frac{1}{\pi - (-\pi)} \int_{-\pi}^\pi f(y)~\mathrm{d}y

(which is not to say no unreasonable attempts were made: just ask the poor bloke who decided that the Mean Value Theorem must play a role in this question), I will start from there. All mistakes below are intentional on my part. What amazed me most is how many students were able to get to the correct mean value… Read the rest of this entry »


Joachim Krieger and I posted a new pre-print on the critical nonlinear wave equation. After close to four years of the existence of this blog I finally have a paper out that actually relates to the title of this blog! Considering that the paper itself is only ten pages long, I will just direct readers to the arXiv instead of writing more about it here

“The asymptotically hyperboloidal is not asymptotically null.”

By way of Roland Donninger, I learned today of the statement above which is apparently well-known in the numerical relativity community.

It may seem intuitively surprising: after all, the archetype of an asymptotically hyperboloidal surface is the hyperboloid as embedded in Minkowski space. Let (t,r, \omega)\in \mathbb{R}\times\mathbb{R}_+ \times \mathbb{S}^{d-1} be the spherical coordinate system for the Minkowski space \mathbb{R}^{1,d}, the hyperboloid embeds in it as the surface t^2 - r^2 = 1. If you draw a picture we see clearly that the surface is asymptotic to the null cone t = |r|

The key, however, lies in the definition. For better or for worse, the definition under which the titular statement makes sense the following:

Let (M,g) be an asymptotically simple space-time (or one for which one can define a Penrose compactification), and let (\bar{M},\Omega^2 g) be the compactified space-time. We say that a hypersurface \Sigma \subset M is asymptotically null if the \bar{\Sigma}\cap \bar{M} transversely and the tangent space of \bar{\Sigma} is null along \partial\bar{M}.

Now suppose near \partial\bar{M} we can foliate via a double-null foliation (u,v), with \partial\bar{M} = \{ u = 0\}. Let x be a coordinate on \partial\bar{M} so that (u,v,x) form a coordinate system for a neighborhood of \partial\bar{M}. Assume that our surface \Sigma can be written as a graph

v = \phi(u,x)

where \phi is a C^3 function. Then the asymptotically null condition is just that \partial_u \phi |_{u = 0} = 0. Taking a Taylor expansion we have that this means

v \approx \phi_{\infty}(x) + \phi^{(2)}_{\infty}(x) u^2.

For the usual conformal compactification of Minkowski space, we have u = \frac{\pi}{2} - \cot^{-1}\left( \frac{1}{r+t}\right). Hence we require that an asymptotically null surface to have convergence to the null surface at rate O(1/(r+t)^2) (if \phi is sufficiently differentiable; if we relax the differentiability at infinity we see that the above condition allows us to relax all the way to O(1/(r+t)^{1+}), but O(1/(r+t)) is not admissible).

On the other hand, the hyperboloid is given by (r+t)(r-t) = -1 \implies r-t = v = O(1/(r+t)) and so is not asymptotically null. And indeed, we can also check by direct computation that in the usual conformal compactification of Minkowski space, the limit of the hyperboloid at null infinity is space-like.


Get every new post delivered to your Inbox.

Join 47 other followers