Ralph's Home Page


Some computer science and mathematical logic articles I've written, mostly from when I was an academic back in the previous millenium. But I still find time to think about things from time to time.


Some notes on using orbital angular momentum in communication channels. Really written for my own education.


This is a picture of my cats, Bernadette (tabby) and Thomas (black), from when they were kittens.
Bernadette and Thomas


Some of my local version control archives. Feel free to browse around and play. Git web at home and on github.


Insanity is doing the same thing over and over while expecting a different result. Albert Einstein

Anyone who works in software engineering should have that stamped on their forehead. The mistakes, problems, fallacies that we trip over everyday are rarely new - most of them have been well understood for a generation or more, probably documented by Frederick Brooks.


My formal proof of correctness for the DVD CSS algorithm, as featured on David Touretzky's gallery of CSS Descramblers. I set out to write a mathematical proof, but (inevitably, due to the Curry-Howard isomorphism) ended up with a computer program too.


Here's a parser, proof-checker, interpreter and proof-search implementation for the Huet-Coquand Calculus of Constructions, all in 512 non-whitespace characters of C. It was my entry in the BIGNUM BAKEOFF competition run by David MoewsThat won, of course :-). Read David's rules before you try and run it — your hardware needs ints with way more than 64 bits, and a physically-infeasible stack size...

Let's see you do this in Java guys. Oh, here's the tar file with the unmangled source and build scripts.


Check out my friend Gillian's film Snakeskin from Cowgirl Productions. It's probably already shown at a cinema near you, and is now available on video and DVD.


This page is available both from my ISP and my PC at home :-) (when it's turned on).

Sucky Fish