  Poisson's equation is the canonical elliptic partial differential equation.
While there exist fast Poisson solvers for finite difference and finite element
methods, fast Poisson solvers for spectral methods have remained elusive. Here,
we derive spectral methods for solving Poisson's equation on a square,
cylinder, solid sphere, and cube that have an optimal complexity (up to
polylogarithmic terms) in terms of the degrees of freedom required to represent
the solution. Whereas FFT-based fast Poisson solvers exploit structured
eigenvectors of finite difference matrices, our solver exploits a separated
spectra property that holds for our spectral discretizations. Without
parallelization, we can solve Poisson's equation on a square with 100 million
degrees of freedom in under two minutes on a standard laptop.
