Post Timeline

All posts; ordered newest first.

Finding a rank 1 matrix orthogonal to another matrix

Recently I needed to solve the following problem: given a square matrix $\mathbf{A}$ find another square matrix $\mathbf{B}$ satisfying $\text{vec}(\mathbf{A})^T \text{vec}(\mathbf{B}) = 0$. This is the sense in which I use the word orthogonal ...


This website: thoughts and history

History 2020-04: website started as a pandemic project after learning that GitHub offered free hosting, written in plain HTML, CSS, and Javascript (a great learning experience) 2022-10: website transitioned to Hugo, a massive boon to maintainability and flexibility 2023-01: bought and ...


How many parentheses can Python handle?

During my office hours today I was asked whether “an extra pair of parentheses” would do any harm to the execution of a Python program. In the case at hand the answer was “no”, but I suspected there might be actually be a limit on ...


A sufficient condition for non-negative solutions to non-negative linear systems

Here we are concerned with “non-negative” linear systems, that is, linear systems where $\mathbf{A}, \mathbf{b} \geq \mathbf{0}$ (elementwise). In particular, we give a sufficient condition for ...


The space of matrices where LU requires pivoting is almost full-dimensional

The pivoted LU factorization of square matrices is the key routine for the direct solution of linear systems. All square, invertible matrices have a pivoted LU factorization of the form $\mathbf{PA} = \mathbf{LU}$, ...


LLVM will win the Turing Award

The LLVM Project, which focuses on “modular and reusable compiler technologies” has had an enormous impact on the field of compilers, and by extension almost every kind of “applied” computer science. Though compilers (at the time of ...


Expected profit for a 50/50 Raffle

An auto race I recently attended also ran a 50/50 raffle, which is where a single winner receives 50% of the money collected from ticket sales. Just like any form of gambling, it’s almost certainly a bad idea on average, but I wasn’t able to figure out ...


Behavior of conjugate gradient residual

An often stressed property of the conjugate gradient method (CG) for solving linear systems is the monotonic decrease in the A-norm of the error. When CG is applied in practice the exact solution is unknown and the error cannot be computed or tracked, so ...


Linear Algebra Pronunciation Guide

Like all fields of mathematics, linear algebra has many prominent figures whose names are non-trivial to pronounce in English (the lingua franca of science and mathematics). This is further complicated by numerical linear algebra libraries which have inconsistent ...


Interior eigenvectors of symmetric matrices are saddle points

Eigenpairs of symmetric matrices are intimately related to optimization and critical points, with the eigenvectors being critical points of the Rayleigh quotient. In optimization settings, the type of critical point (minimum, maximum, ...


Relationship between power iteration and gradient descent

Although the majority of successful algorithms for the symmetric tensor eigenvalue problem use optimization techniques directly, there are a few notable algorithms that do not appear to be based on optimization. Rather, they more closely ...


The theoretical minimum time for competition speed climbing

After watching a short documentary on the state and progress of competition speed climbing, with times going ever lower and quotes like “we never though X time was possible, and now were not sure how low times will go” I was ...


Traditional Chain Pizza Review

A review of traditional style pizzas from national chains (specifically those in the Urbana, IL area) including: Domino’s, Jet’s, Little Ceasars, Papa John’s, and Pizza Hut. Domino’s standard/traditional pizza (top left) has a ...


Deep Dish Chain Pizza Review

A review of deep dish and pan style pizzas from national chains (specifically those in the Urbana, IL area) including: Domino’s, Jet’s, Little Ceasars, Papa John’s and Pizza Hut. Domino’s pan pizza (top left) is appropriately doughy with a ...


An alternative method to compute Gauss's sum

Gauss famously (and possibly fictionally) computed the sum between 1 and 100 at a young age. His original logic relies on symmetry and geometrical thought, especially triangles. In this write up we provide an alternative derivation of ...


Uncle Gimpy's Intellectifier

An old reference sheet with simple formulae for length, area, volume as well as useful conversions. It’s called , and is meant to be folded up and kept in a wallet or purse. This is certainly from a time before internet ...


Prime number detector

Input a number to determine if it is prime. The maximum input value before truncation error is 9007199254740991 (~9e15, nine and fifteen zeros!), which is not prime but has a relatively large least factor. This is because JavaScript uses double-precision floating-point numbers ...


Re() and Im() as complex numbers

A summer day in 2019 reading Complex Variables and Applications by Churchill inspired what I now realize is almost certainly a useless (but perhaps slightly amusing) result. Enjoy.


Calculating the number of atoms in the Sun

It is said Freeman Dyson attempted to complete this task at the age of 4 or 5. In this write up we complete the calculation and simultaneously present the necessary basics of chemistry and measurement.


A fun quote