Gödel Numbering: Encoding Logic into Numbers