Blog

A philosophy of mathematics PhD programme wiki

February 9, 2015

I've created a wiki listing those philosophy PhD programmes where one can do research in the philosophy of mathematics, and would like to invite anyone with the relevant knowledge and a few spare minutes to help edit it.

Reverse mathematics, constructivism and justification

May 22, 2012

In a recent talk I argued that computational reverse mathematics fails to preserve the justificatory structure of foundational programmes, and consquently cannot provide the kind of foundational analysis we would like from reverse mathematics. Here I look at a parallel problem which the traditional Friedman/Simpson variety of reverse mathematics has in respect to constructive mathematics.

Learning mathematical philosophy

March 5, 2012

The Munich Center for Mathematical Philosophy is publishing resources on their website for students interested in learning mathematical philosophy, including my handout on the compactness and Löwenheim–Skolem theorems.

An introduction to reverse mathematics

March 2, 2012

Reverse mathematics is a programme in mathematical logic to calibrate the proof-theoretic strength of theorems of ordinary mathematics by demonstrating their equivalence to subsystems of second order arithmetic. This introduction briefly summarises the philosophical and mathematical motivations behind the programme and explains the basics of the formal setting.

Developing arithmetic in Gödel's system T

April 11, 2011

The modern formulation of Gödel's system T is a typed λ-calculus which can represent the natural numbers. This article illustrates the development of arithmetic functions within T.

Firmin, a JavaScript animation library

April 4, 2011

Firmin is a JavaScript animation library that uses CSS transforms and transitions to create smooth, hardware-accelerated animations. This article discusses the development of the library, and explains the underlying machinery of transforms and transitions.

How to compile your own Nginx and Passenger

March 16, 2011

Tutorial explaining how to compile Nginx and Passenger to serve Ruby web applications.

Truth tables in Haskell

March 2, 2011

Hatt is a command-line program and Haskell library for parsing expressions in classical propositional logic and printing their truth tables.

Approaches to currying in JavaScript

August 21, 2010

Due to its dynamic nature, no single currying technique is universally efficacious in JavaScript programming. In this article, various approaches to currying in JavaScript are discussed, together with their associated advantages and disadvantages, and some conclusions are drawn.