Willie Wai-Yeung Wong
Data aequatione quotcunque fluentes quantitates involvente fluxiones invenire et vice versa

Hi, my name is Willie Wong, and I study geometric and evolutionary partial differential equations, with focus on those of hyperbolic type with applications to mathematical physics and general relativity. I received my PhD from Princeton University in 2009 under Sergiu Klainerman. My dissertation was about the black hole uniqueness problem in general relativity. Since then I've worked with Mihalis Dafermos at DPMMS, and am now working at EPFL with Joachim Krieger.

For a more complete vita, please click here.

What's on this website:



You can now find below (in the "lecture notes" section) the slides that Gustav and I used for our minicourse at Oxford.


Gustav Holzegel and I will be giving a mini-course on shock formation in quasilinear waves in Oxford on January 13 and 14. At the same event Jérémie Szeftel will speak on the recent resolution of the L2 curvature conjecture in general relativity.


Uploaded a new paper to arXiv. See link below.


I've discovered that I have some web space on the department server; so I am putting back up my personal site. What's new: some notes from the 2012 mathematical GR workshop at mfo.

Recent research papers on arXiv

The feed is only visible if Javascript is enabled; click here for the full list.

Lecture notes and slides

Small data shock formation for QNLW

These are the slides that Gustav Holzegel and I used for our minicourse at the OXPDE Workshop on Nonlinear Waves and General Relativity, January 13 & 14, 2014.

Introductory notes on Sobolev spaces

Some lecture notes for the Cambridge Center for Analysis course on PDEs taught by Mihalis Dafermos.

How to derive the Kerr metric by cheating quite a bit

This came from a lecture I gave to MAT 451 at Princeton University on April 23, 2009. MAT 451 is a senior level mathematics course in which the instructor has great leeway in deciding what to teach. In 2009 my thesis advisor was in charge, and focused the discussion on mathematical aspects of general relativity. In this note I showed how one can start from the Schwarzschild metric, make an educated guess on an algebraic structure, and arrive at the Kerr metric.

Some LaTeX Resources

To make life easier with LaTeX, I "coded" some handy tools.

BibTeX management

I use JabRef to manage my collection of papers and their bibliographic citations.

  • Mathematics Serials Abbreviations List for JabRef: Here is a JabRef-readable text file that you can drop in your directory and import into JabRef (Options -- Manage Journal Abbreviations -- External File) for journal abbreviations. It is converted from the ASCII/CSV version of the AMS MathSciNet abbreviations list, so unfortunately all "special" characters are stripped. I have restored some of the accents and special characters, as well as added a few journals not originally included in the AMS list. This file will be updated periodically.
  • Vim dictionary export filter for JabRef: Gzipped Tar file contains three files. Put those files somewhere, and add them to JabRef: Options -- Manage custom exports -- Add new. At the dialog box select the vimdictionary.layout file, give it some name ("vim dictionary export" works fine for me), and set the extension to ".vim". Then you can export (File -- Export) the reference list in a form usable by my Vim dictionary script (see below).

Vim integration

Vim is my preferred editor. So I wrote some vim-scripts to make life easier typing LaTeX. The code is released as-is with no guarantees, and you are free to disseminate or modify it in anyway you choose.

  • All commands: Download the runtime and put it in ~/.vim/custom/. Edit ~/.vimrc/ to contain the line runtime custom/latex-custom.vim. A quick word of warning: one of the functions it contains is automatic folding on load. Functions
    • F2: saves and compiles
    • F4: calls xdvi
    • F5: completes begin-end block. E.g. type theorem and hit F5, you get a block \begin{theorem} \end{theorem} with the cursor placed in between.
    • F6: escape the current block environment.
    • F7/F8: label searching [currently disabled; requires Bash to run]
    • F9: BibTex completion (see below)
    • Shift-Tab: math mode short-cuts. Hitting Shift+Tab followed by command character causes the word just typed to be enclosed in:
      • C \mathcal{}
      • B \mathbb{}
      • F \mathfrak{}
      • R \mathrm{}
      • O \mathop{}
      • = \bar{}
      • . \dot{}
      • " \ddot{}
      • - \overline{}
      • _ \underline{}
      • ^ \widehat{}
      • ~ \widetilde{}
      Warning: the character commands operate on words and symbol commands operate on WORDS, in Vim lingo.
  • JabRef integration: (I wrote this mostly because at work, the vim installation does not have the server-client functionality for JabRef to directly push bibtex entries to my editor.)

    Install the JabRef vim-dictionary export filter, and move the exported file to ~/.vim/custom/latextmp/bibdictionary. Also install the latex-custom.vim runtime from above. Now you can type the first few letters of a BibTex entry key, hit F9, and vim will try to complete the entry for you. If there are multiple entries matching those letters, if will display a drop-down list and a pop-up menu that display the list of authors and the title of the papers. Highlight with the arrow keys and hit enter to select. (I set-up JabRef to use abbreviated author lastnames for the bibtex-key, so if I type Christ and hit F9, I see a list of all bibtex entries with a single author whose lastname begins with Christ..., which in my case basically means all papers/books by Demetrios Christodoulou.)

    You can also get away without installing the runtime. Instead, copy the exported file from the JabRef filter to ~/.vim/custom/latextmp/bibdictionary, and load the dictionary runtime manually by issuing :runtime custom/latextmp/bibdictionary. Then you can use "CTRL-X CTRL-U" completion to access the bibtex completion.

    A warning: if your BibTex file gets too large, this may get slow. A workaround is to only export the items you think you will need from JabRef.

An IPython notebook computation aid

As I described here and here, I prepared some code for IPython Notebook to use it to do laborious manual computations. (Basically the idea is to have a system that can take care of the boring part of copying down terms that are unchanged from line to line, and also provide a way to document the computations steps in an easy-to-read manner.)

For convenience you can download the code here: the IPython notebook for use as is (I suggest you duplicate the notebook for each new computation), or the Python code itself

Contact Info My Blog AMS Author Profile My ORCId
PDE group Section of Mathematics Seminars in School of Basic Sciences