注:この記事の内容には、問題があるようなので、勉強して書き直す予定です。 ゲーデルの不完全性定理を読んでも理解できない Lisper のために、Lisp のコードで不完全性定理を説明してみる。昨日と同様に Emacs Lisp を使うが、Common Lisp や Scheme でもコードはあまり変らない。 ゲーデルの不完全性定理 ゲーデルの不完全性定理とは、おおざっぱに言うと「(自然数論を含む帰納的に記述できる)公理系が無矛盾であれば、証明も反証もできない命題が存在する」と言うことだ。これは嘘つきのパラドックスと似ていると言われている。 嘘つきのパラドックスとは、「この文は嘘である」という文は、正しいとも間違っていると言えないということ。この文が正しいと仮定すると、この文は嘘となり、仮定と一致しない。一方、この文が間違っていると仮定すると、この文は嘘ではなくなり、文の内容と一致しない。矛
![Lisper のためのゲーデルの不完全性定理 - あどけない話](https://cdn-ak-scissors.b.st-hatena.com/image/square/858da37ee0dc1137f8452343b459deb4c20a5dd8/height=288;version=1;width=512/https%3A%2F%2Fimages-fe.ssl-images-amazon.com%2Fimages%2FI%2F31QSm%252BOV2JL._SL160_.jpg)