├── .gitignore ├── Makefile ├── README.md ├── assets ├── aboer-color.png ├── by.pdf ├── by.png ├── by.svg ├── cc.pdf ├── cc.png ├── cc.svg ├── remix.pdf ├── remix.png ├── remix.svg ├── sa.pdf ├── sa.png ├── sa.svg ├── ti-color.png └── ucarts-color.png ├── ic-config.sty ├── ic-derivations.tex ├── ic-envs.sty ├── ic-metadata.tex ├── ic-print-cover.tex ├── ic-print.tex ├── ic-screen.tex ├── ic-screen.xmpdata ├── ic.tex ├── include ├── preface.tex ├── summary-1.tex ├── summary-2.tex ├── summary-3.tex ├── summary-4.tex ├── summary-5.tex ├── summary-6.tex ├── summary-7.tex ├── summary-B.tex └── summary-C.tex ├── normalize.css ├── skeleton.css └── webpage-template.html /.gitignore: -------------------------------------------------------------------------------- 1 | ## Core latex/pdflatex auxiliary files: 2 | *.aux 3 | *.lof 4 | *.log 5 | *.lot 6 | *.fls 7 | *.out 8 | *.toc 9 | *.prb 10 | 11 | ## Intermediate documents: 12 | *.dvi 13 | *-converted-to.* 14 | # these rules might exclude image files for figures etc. 15 | *.ps 16 | *.eps 17 | *.pdf 18 | 19 | ## Bibliography auxiliary files (bibtex/biblatex/biber): 20 | *.bbl 21 | *.bcf 22 | *.blg 23 | *-blx.aux 24 | *-blx.bib 25 | *.brf 26 | *.run.xml 27 | 28 | ## Build tool auxiliary files: 29 | *.fdb_latexmk 30 | *.synctex 31 | *.synctex.gz 32 | *.synctex.gz(busy) 33 | *.pdfsync 34 | 35 | ## Auxiliary and intermediate files from other packages: 36 | 37 | # algorithms 38 | *.alg 39 | *.loa 40 | 41 | # achemso 42 | acs-*.bib 43 | 44 | # amsthm 45 | *.thm 46 | 47 | # beamer 48 | *.nav 49 | *.snm 50 | *.vrb 51 | 52 | #(e)ledmac/(e)ledpar 53 | *.end 54 | *.[1-9] 55 | *.[1-9][0-9] 56 | *.[1-9][0-9][0-9] 57 | *.[1-9]R 58 | *.[1-9][0-9]R 59 | *.[1-9][0-9][0-9]R 60 | *.eledsec[1-9] 61 | *.eledsec[1-9]R 62 | *.eledsec[1-9][0-9] 63 | *.eledsec[1-9][0-9]R 64 | *.eledsec[1-9][0-9][0-9] 65 | *.eledsec[1-9][0-9][0-9]R 66 | 67 | # glossaries 68 | *.acn 69 | *.acr 70 | *.glg 71 | *.glo 72 | *.gls 73 | 74 | # gnuplottex 75 | *-gnuplottex-* 76 | 77 | # hyperref 78 | *.brf 79 | 80 | # knitr 81 | *-concordance.tex 82 | *.tikz 83 | *-tikzDictionary 84 | 85 | # listings 86 | *.lol 87 | 88 | # makeidx 89 | *.idx 90 | *.ilg 91 | *.ind 92 | *.ist 93 | 94 | # minitoc 95 | *.maf 96 | *.mtc 97 | *.mtc0 98 | 99 | # minted 100 | _minted* 101 | *.pyg 102 | 103 | # morewrites 104 | *.mw 105 | 106 | # nomencl 107 | *.nlo 108 | 109 | # theorem 110 | *.thm 111 | 112 | # sagetex 113 | *.sagetex.sage 114 | *.sagetex.py 115 | *.sagetex.scmd 116 | 117 | # sympy 118 | *.sout 119 | *.sympy 120 | sympy-plots-for-*.tex/ 121 | 122 | # todonotes 123 | *.tdo 124 | 125 | # xindy 126 | *.xdy 127 | 128 | # WinEdt 129 | *.bak 130 | *.sav 131 | 132 | *~ 133 | *# 134 | *.pcr 135 | 136 | # html etc. files 137 | *.html 138 | *.css -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | .PHONY: FORCE_MAKE 2 | 3 | all: ic-screen.pdf ic-print.pdf ic-print-cover.pdf index.html 4 | 5 | print: ic-print.pdf 6 | 7 | %.pdf: %.tex olprevision.tex FORCE_MAKE 8 | latexmk -dvi- -ps- -pdf $< 9 | 10 | index.html: README.md webpage-template.html ic-screen.pdf 11 | convert ic-screen.pdf[0] ic.png 12 | pandoc --template webpage-template.html -f markdown -t html -o index.html README.md 13 | 14 | clean: 15 | latexmk -c ic-screen.tex ic-print.tex ic-print-cover.tex 16 | 17 | olprevision.tex: FORCE_MAKE 18 | ../../misc/makeolprevision ../.. 19 | 20 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Incompleteness and Computability 2 | 3 | ![Book Cover](https://ic.openlogicproject.org/ic.png) 4 | 5 | Textbook on Gödel's incompleteness theorems and computability 6 | theory, developed for Calgary's Logic III course, based on the Open 7 | Logic Project. Covers recursive function theory, arithmetization of 8 | syntax, the first and second incompleteness theorem, models of 9 | arithmetic, second-order logic, and the lambda calculus. 10 | 11 | This repository/directory only contains the LaTeX files and 12 | illustrations needed to typeset the textbook _Incompleteness 13 | and Computability_, which in turn requires the _[Open Logic 14 | Text](https://github.com/OpenLogicProject/OpenLogic/)_. 15 | 16 | You can [download the 17 | PDF](https://ic.openlogicproject.org/ic-screen.pdf) from the [Open 18 | Logic builds site](https://ic.openlogicproject.org/), or order a 19 | hardcopy from Amazon [[US](https://www.amazon.com/dp/1077323395)] 20 | [[CA](https://www.amazon.ca/dp/1077323395)] 21 | [[UK](https://www.amazon.co.uk/dp/1077323395)] 22 | [[DE](https://www.amazon.de/dp/1077323395)]. 23 | 24 | To install and compile: 25 | 26 | - Download/install the _Open Logic Text_ from 27 | [GitHub](https://github.com/OpenLogicProject/OpenLogic/), including 28 | [photos](https://github.com/OpenLogicProject/photos) if you want those. 29 | - Navigate to the subdirectory `courses/` 30 | - Put the content of this repository into a subdirectory of it, say 31 | `courses/incompleteness-computability`. 32 | 33 | If you use `git`, this should do it: 34 | ``` 35 | # git clone https://github.com/OpenLogicProject/OpenLogic.git 36 | # cd OpenLogic/courses 37 | # git clone https://github.com/rzach/incompleteness-computability.git 38 | # cd ../assets 39 | # git clone https://github.com/OpenLogicProject/portraits.git 40 | # git clone https://github.com/OpenLogicProject/photos.git 41 | ``` 42 | Inside `courses/incompleteness-computability`, you can now compile: 43 | ``` 44 | # pdflatex ic-screen 45 | ``` 46 | or just `# make` if you have `latexmk` installed. (You'll also have to 47 | do `bibtex ic-screen` for the bibliography.) 48 | 49 | The file `ic-screen.tex` produces a color version of the text with 50 | smaller margins for screen reading. `ic-print` produces a 51 | black-and-white version designed for printing on Crown Quarto stock 52 | (without cover). 53 | 54 | The file loads `ic.tex`, which contains the actual material. It 55 | in turn includes other files, most of them from the `OpenLogic` 56 | repository. So you won't get a complete book unless you download into 57 | the right subdirectory of and compile from there. 58 | 59 | [![Creative Commons License](https://mirrors.creativecommons.org/presskit/buttons/88x31/png/by.png)](https://creativecommons.org/licenses/by/4.0/) 60 | 61 | _[Incompleteness and 62 | Computability](https://ic.openlogicproject.org/)_ by [Richard 63 | Zach](https://richardzach.org/) is licensed under a [Creative Commons 64 | Attribution 4.0 International 65 | License](https://creativecommons.org/licenses/by/4.0/). 66 | -------------------------------------------------------------------------------- /assets/aboer-color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rzach/incompleteness-computability/11feb1021d69d6221d3c46490164f06b46f4ed2f/assets/aboer-color.png -------------------------------------------------------------------------------- /assets/by.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rzach/incompleteness-computability/11feb1021d69d6221d3c46490164f06b46f4ed2f/assets/by.pdf -------------------------------------------------------------------------------- /assets/by.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rzach/incompleteness-computability/11feb1021d69d6221d3c46490164f06b46f4ed2f/assets/by.png -------------------------------------------------------------------------------- /assets/by.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /assets/cc.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rzach/incompleteness-computability/11feb1021d69d6221d3c46490164f06b46f4ed2f/assets/cc.pdf -------------------------------------------------------------------------------- /assets/cc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rzach/incompleteness-computability/11feb1021d69d6221d3c46490164f06b46f4ed2f/assets/cc.png -------------------------------------------------------------------------------- /assets/cc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /assets/remix.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rzach/incompleteness-computability/11feb1021d69d6221d3c46490164f06b46f4ed2f/assets/remix.pdf -------------------------------------------------------------------------------- /assets/remix.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rzach/incompleteness-computability/11feb1021d69d6221d3c46490164f06b46f4ed2f/assets/remix.png -------------------------------------------------------------------------------- /assets/remix.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /assets/sa.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rzach/incompleteness-computability/11feb1021d69d6221d3c46490164f06b46f4ed2f/assets/sa.pdf -------------------------------------------------------------------------------- /assets/sa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rzach/incompleteness-computability/11feb1021d69d6221d3c46490164f06b46f4ed2f/assets/sa.png -------------------------------------------------------------------------------- /assets/sa.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /assets/ti-color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rzach/incompleteness-computability/11feb1021d69d6221d3c46490164f06b46f4ed2f/assets/ti-color.png -------------------------------------------------------------------------------- /assets/ucarts-color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rzach/incompleteness-computability/11feb1021d69d6221d3c46490164f06b46f4ed2f/assets/ucarts-color.png -------------------------------------------------------------------------------- /ic-config.sty: -------------------------------------------------------------------------------- 1 | % Configuration file for Logic II textbook 2 | 3 | % Let's be unpretentious and use A, B, C, etc. for formulas ... 4 | 5 | \ollatinformulas 6 | 7 | % ... and use bold italic instead of Fraktur for structures 8 | 9 | \DeclareMathAlphabet{\mathbi}{OT1}{pplx}{b}{it} 10 | 11 | \DeclareDocumentCommand \Struct { m }{\applytofirst{\mathbi}{#1}} 12 | 13 | % - `\TMblank` - symbol for a blank 14 | \DeclareDocumentMacro \TMblank {\sqcup} 15 | 16 | % - `\TMstroke` - single stroke symbol on tape 17 | \DeclareDocumentMacro \TMstroke {I} 18 | 19 | 20 | % I think I like ``countable'' and ``uncountable'' better? 21 | 22 | \settexttoken{enumerable}{countable}{countable} 23 | 24 | \settexttoken{nonenumerable}*{uncountable}{uncountable} 25 | 26 | \settexttoken{denumerable}{countably infinite}{countably infinite} 27 | 28 | % Biconditional, verum are defined symbols 29 | 30 | \tagtrue{defIff,defTrue} 31 | \tagfalse{prvIff,prvTrue} 32 | 33 | % I'll leave cases for conditional, universal quantifier as exercises 34 | 35 | \tagtrue{probAnd,probIf,probAll} 36 | 37 | % Which proof system? Not sure yet, let's use natural deduction for 38 | % now. prfND is on by default, we just have to supress includion of 39 | % the sequent calculus. 40 | 41 | \tagfalse{prfSC,prfAX,prfTab} 42 | -------------------------------------------------------------------------------- /ic-derivations.tex: -------------------------------------------------------------------------------- 1 | 2 | \chapter{Derivations in Arithmetic Theories} 3 | 4 | When we showed that all general recursive functions are representable 5 | in~$\Th{Q}$, and in the proofs of the incompleteness theorems, we 6 | claimed that various things are provable in $\Th{Q}$ and~$\Th{PA}$. The 7 | proofs of these claims, however, just gave the arguments informally 8 | without exhibiting actual derivations in natural deduction. We provide 9 | some of these derivations in this capter. 10 | 11 | For instance, in \olref[inc][req][bre]{lem:q-proves-add} we proved 12 | that, for all $n$ and $m \in \Nat$, $\Th{Q} \Proves (\num{n} + 13 | \num{m}) = \num{n+m}$. We did this by induction on $m$. 14 | 15 | \begin{proof}[Proof of {\olref[inc][req][bre]{lem:q-proves-add}}] 16 | Base case: $m = 0$. Then what has to be proved is that, for all $n$, 17 | $\Th{Q} \Proves \num{n} + \num{0} = \num{n+0}$. Since $\num{0}$ is 18 | just $\Obj 0$ and $\num{n+0}$ is $\num{n}$, this amounts to showing 19 | that $\Th{Q} \Proves (\num{n} + \Obj 0) = \num{n}$. The derivation 20 | \begin{prooftree} 21 | \AxiomC{$\lforall[x][(x + \Obj 0) = x]$} 22 | \RightLabel{\Elim\lforall} 23 | \UnaryInfC{$(\num{n} + \Obj 0) = \num{n}$} 24 | \end{prooftree} 25 | is a natural deduction derivation of $(\num{n} + \Obj 0) = \num{n}$ 26 | with one undischarged assumption, and that undischarged assumption is 27 | an axiom of~$\Th{Q}$. 28 | 29 | Inductive step: Suppose that, for any $n$, $\Th{Q} \Proves (\num{n} + 30 | \num{m}) = \num{n+m}$ (say, by a derivation $\delta_{n,m}$). We have 31 | to show that also $\Th{Q} \Proves (\num{n} + \num{m+1}) = 32 | \num{n+m+1}$. Note that $\num{m+1} \ident \num{m}'$, and that 33 | $\num{n+m+1} \ident \num{n+m}'$. So we are looking for a derivation of 34 | $(\num{n} + \num{m}') = \num{n+m}'$ from the axioms of~$\Th{Q}$. Our 35 | derivation may use the derivation $\delta_{n,m}$ which exists by inductive 36 | hypothesis. 37 | \begin{prooftree} 38 | \AxiomC{} 39 | \RightLabel{$\delta_{n,m}$} 40 | \DeduceC{$(\num{n} + \num{m}) = \num{n+m}$} 41 | \AxiomC{$\lforall[x][\lforall[y][(x+y') = (x+y)']]$} 42 | \RightLabel{\Elim\lforall} 43 | \UnaryInfC{$\lforall[y][(\num{n}+y') = (\num{n}+y)']$} 44 | \RightLabel{\Elim\lforall} 45 | \UnaryInfC{$(\num{n}+\num{m}') = (\num{n}+\num{m})'$} 46 | \RightLabel{\Elim=} 47 | \BinaryInfC{$(\num{n}+\num{m}') = \num{n+m}'$} 48 | \end{prooftree} 49 | In the last $\Elim=$ inference, we replace the subterm $\num{n} + 50 | \num{m}$ of the right side $(\num{n} + \num{m})'$ of the right premise 51 | by the term $\num{n+m}$. 52 | \end{proof} 53 | 54 | In \olref[inc][req][min]{lem:less-zero}, we showed that $\Th{Q} \Proves 55 | \lforall[x][\lnot x < \Obj 0]$. What does an actual derivation look like? 56 | 57 | \begin{proof}[Proof of {\olref[inc][req][min]{lem:less-zero}}] 58 | To prove a universal claim like this, we use $\Intro\lforall$, which 59 | requires a derivation of $\lnot a < \Obj 0$. Looking at axiom $!Q_8$, 60 | this means proving $\lnot \exists z (z' + a) = \Obj 0$. Specifically, 61 | if we had a proof of the latter, $!Q_8$ would allow us to prove the 62 | former (recall that $A \liff B$ is short for $(A \lif B) \land (B \lif 63 | A)$. 64 | \begin{prooftree}\footnotesize 65 | \AxiomC{$\lnot\lexists[z][(z' + a) = \Obj 0]$} 66 | \AxiomC{$\lforall[x][\lforall[y][(x < y \liff \lexists[z][(z' + x) = y])]]$} 67 | \RightLabel{\Elim\lforall} 68 | \UnaryInfC{$\lforall[y][(a < y \liff \lexists[z][(z' + a) = y])]$} 69 | \RightLabel{\Elim\lforall} 70 | \UnaryInfC{$a < \Obj 0 \liff \lexists[z][(z' + a) = \Obj 0]$} 71 | \RightLabel{\Elim\land} 72 | \UnaryInfC{$a < \Obj 0 \lif \lexists[z][(z' + a) = \Obj 0]$} 73 | \AxiomC{$\Discharge{a < \Obj 0}{1}$} 74 | \RightLabel{\Elim\lif} 75 | \BinaryInfC{$\lexists[z][(z' + a) = \Obj 0]$} 76 | \RightLabel{\Elim\lnot} 77 | \insertBetweenHyps{\hskip -3em} 78 | \BinaryInfC{$\lfalse$} 79 | \DischargeRule{\Intro\lnot}{1} 80 | \UnaryInfC{$\lnot a<\Obj 0$} 81 | \end{prooftree} 82 | This is a derivation of $\lnot a<\Obj 0$ from $\lnot\lexists[z][(z' + 83 | a) = \Obj 0]$ (and~$!Q_8$); let's call it~$\delta_1$. 84 | 85 | Now how do we prove $\lnot\lexists[z][(z' + a) = \Obj 0]$ from the 86 | axioms of~$\Th{Q}$? To prove a negated claim like this, we'd need a 87 | derivation of the form 88 | \begin{prooftree} 89 | \AxiomC{$\Discharge{\lexists[z][(z' + a) = \Obj 0]}{2}$} 90 | \DeduceC{$\lfalse$} 91 | \DischargeRule{\Intro\lnot}{2} 92 | \UnaryInfC{$\lnot\lexists[z][(z' + a) = \Obj 0]$} 93 | \end{prooftree} 94 | To get a contradiction from an existential claim, we introduce a 95 | constant~$b$ for the existentially quantified variable~$z$ and use 96 | \Elim\lexists: 97 | \begin{prooftree} 98 | \AxiomC{$\Discharge{\lexists[z][(z' + a) = \Obj 0]}{2}$} 99 | \AxiomC{$\Discharge{(b'+a) = \Obj 0}{3}$} 100 | \RightLabel{$\delta_2$} 101 | \DeduceC{$\lfalse$} 102 | \DischargeRule{\Elim\exists}{3} 103 | \BinaryInfC{$\lfalse$} 104 | \DischargeRule{\Intro\lnot}{2} 105 | \UnaryInfC{$\lnot\lexists[z][(z' + a) = \Obj 0]$} 106 | \end{prooftree} 107 | Now the task is to fill in $\delta_2$, i.e., prove $\lfalse$ from 108 | $(b'+a) = \Obj 0$ and the axioms of~$\Th{Q}$. $Q_2$ says that $\Obj 0$ 109 | can't be the successor of some number, so one way of doing that would 110 | be to show that $(b' + a)$ is equal to the successor of some number. 111 | Since that expression itself is a sum, the axioms for addition must 112 | come into play. If $\eq[a][\Obj 0]$, $Q_5$ would tell us that $\eq[(b' 113 | + a)][b']$, i.e., $b' + a$ is the successor of some number, namely 114 | of~$b$. On the other hand, if $\eq[a][c']$ for some $c$, then 115 | $\eq[(b'+a)][(b'+c')]$ by \Elim\eq, and $\eq[(b'+c')][(b'+c)']$ 116 | by~$Q_6$. So again, $b'+a$ is the successor of a number---in this 117 | case, $b'+c$. So the strategy is to divide the task into these two 118 | cases. We also have to verify that $\Th{Q}$ proves that one of these 119 | cases holds, i.e., $\Th{Q} \Proves a = 0 \lor \lexists[y][(a = y')]$, 120 | but this follows directly from $Q_3$ by \Elim\lforall. Here are the 121 | two cases: 122 | 123 | Case 1: Prove $\lfalse$ from $\eq[a][\Obj 0]$ and $\eq[(b'+a)][\Obj 124 | 0]$ (and axioms $Q_2$, $Q_5$): 125 | \begin{prooftree}\footnotesize 126 | \AxiomC{$\lforall[x][\lnot \Obj 0 = x']$} 127 | \RightLabel{\Elim\lforall} 128 | \UnaryInfC{$\lnot \Obj 0 = b'$} 129 | \AxiomC{$\lforall[x][(x+\Obj 0) = x]$} 130 | \RightLabel{\Elim\lforall} 131 | \UnaryInfC{$(b' + \Obj 0) = b'$} 132 | \AxiomC{$a = \Obj 0$} 133 | \AxiomC{$(b'+a) = \Obj 0$} 134 | \RightLabel{\Elim=} 135 | \BinaryInfC{$(b' + \Obj 0) = \Obj 0$} 136 | \doubleLine 137 | \UnaryInfC{$\Obj 0 = (b' + \Obj 0)$} 138 | \insertBetweenHyps{\hskip -.5em} 139 | \RightLabel{\Elim=} 140 | \BinaryInfC{$\Obj 0 = b'$} 141 | \RightLabel{\Elim\lnot} 142 | \BinaryInfC{$\lfalse$} 143 | \end{prooftree} 144 | Call this derivation~$\delta_3$. (We've abbreviated the derivation of 145 | $\Obj 0 = (b' + \Obj 0)$ from $(b' + \Obj 0) = \Obj 0$ by a double 146 | inference line.) 147 | 148 | Case 2: Prove $\lfalse$ from $\lexists[y][a = y']$ and 149 | $\eq[(b'+a)][\Obj 0]$ (and axioms $Q_2$, $Q_6$). We first show how to 150 | derive $\lfalse$ from $\eq[a][c']$ and $\eq[(b'+a)][\Obj 0]$. 151 | \begin{prooftree}\footnotesize 152 | \AxiomC{$\lforall[x][\lnot \Obj 0 = x']$} 153 | \RightLabel{\Elim\lforall} 154 | \UnaryInfC{$\lnot \Obj 0 = (b'+c)'$} 155 | \AxiomC{$a = c'$} 156 | \AxiomC{$(b'+a) = \Obj 0$} 157 | \RightLabel{\Elim=} 158 | \insertBetweenHyps{\hskip -.3em} 159 | \BinaryInfC{$\Obj (b'+c') = \Obj 0$} 160 | \AxiomC{$\lforall[x][\lforall[y][(x+y') = (x+y)']]$} 161 | \RightLabel{\Elim\lforall} 162 | \UnaryInfC{$\lforall[y][(b'+y') = (b'+y)']$} 163 | \RightLabel{\Elim\lforall} 164 | \UnaryInfC{$(b' + c') = (b'+c)'$} 165 | \RightLabel{\Elim=} 166 | \insertBetweenHyps{\hskip .5em} 167 | \BinaryInfC{$\Obj 0 = (b' + c)'$} 168 | \RightLabel{\Elim\lnot} 169 | \insertBetweenHyps{\hskip -.5em} 170 | \BinaryInfC{$\lfalse$} 171 | \end{prooftree} 172 | Call this $\delta_4$. We get the required derivation $\delta_5$ by 173 | applying $\Elim\lexists$ and discharging the assumption $\eq[a][c']$: 174 | \begin{prooftree} 175 | \AxiomC{$\lexists[y][a=y']$} 176 | \AxiomC{$\Discharge{a = c'}{6} \quad \eq[(b'+a)][\Obj 0]$} 177 | \RightLabel{$\delta_4$} 178 | \DeduceC{$\lfalse$} 179 | \DischargeRule{\Elim\exists}{6} 180 | \BinaryInfC{$\lfalse$} 181 | \end{prooftree} 182 | 183 | 184 | Putting everything together, the full proof looks like this: 185 | \begin{prooftree}\footnotesize 186 | \AxiomC{$\Discharge{\lexists[z][(z' + a) = \Obj 0]}{2}$} 187 | \AxiomC{$\begin{gathered} 188 | \lforall[x][(x = 0 \lor {}]\\ 189 | \lexists[y][(a = y')]) 190 | \end{gathered}$} 191 | \RightLabel{\Elim\lforall} 192 | \UnaryInfC{$\begin{gathered}a = 0 \lor {}\\ 193 | \lexists[y][(a = y')] 194 | \end{gathered}$} 195 | \AxiomC{$\begin{gathered}[b] 196 | \Discharge{a = \Obj 0}{7} \\ 197 | \Discharge{(b'+a) = \Obj 0}{3} 198 | \end{gathered}$} 199 | \RightLabel{$\delta_3$} 200 | \DeduceC{$\lfalse$} 201 | \AxiomC{$\begin{gathered}[b] 202 | \Discharge{\lexists[y][a=y']}{7} \\ 203 | \Discharge{(b'+a) = \Obj 0}{3} 204 | \end{gathered}$\quad} 205 | \RightLabel{$\delta_5$} 206 | \DeduceC{$\lfalse$} 207 | \DischargeRule{\Elim\lor}{7} 208 | \insertBetweenHyps{\hskip -.5em} 209 | \TrinaryInfC{$\lfalse$} 210 | \RightSubproofLabel{$\delta_2$} 211 | \DischargeRule{\Elim\exists}{3} 212 | \BinaryInfC{$\lfalse$} 213 | \DischargeRule{\Intro\lnot}{2} 214 | \UnaryInfC{$\lnot\lexists[z][(z' + a) = \Obj 0]$} 215 | \RightLabel{$\delta_1$} 216 | \DeduceC{$\lnot a<\Obj 0$} 217 | \RightLabel{\Intro\lforall} 218 | \UnaryInfC{$\lforall[x][\lnot x < \Obj 0]$} 219 | \end{prooftree} 220 | \end{proof} 221 | 222 | In the proof of \olref[inc][inp][ros]{thm:rosser}, we defined 223 | $\ORProv(y)$ as \[\lexists[x][(\OPrf(x, y) \land \lforall[z][(z < x 224 | \lif \lnot \ORefut(z, y))])].\] $\OPrf(x,y)$ is the formula 225 | representing the proof relation of~$\Th{T}$ (a consistent, 226 | axiomatizable extension of~$\Th{Q}$) in $\Th{Q}$, and $\ORefut(z, y)$ 227 | is the formula representing the refutation relation. That means that 228 | if $n$ is the G\"odel number of a proof of~$!A$, then $\Th{Q} \Proves 229 | \OPrf(\num{n}, \gn{!A})$, and otherwise $\Th{Q} \Proves 230 | \lnot\OPrf(\num{n}, \gn{!A})$. Similarly, if $n$ is the G\"odel number 231 | of a proof of $\lnot !A$, then $\Th{Q} \Proves \ORefut(\num{n}, 232 | \gn{!A})$, and otherwise $\Th{Q} \Proves \lnot\ORefut(\num{n}, 233 | \gn{!A})$. We use the Diagonal Lemma to find a sentence $!R$ such that 234 | $\Th{Q} \Proves !R \liff \lnot \ORProv(\gn{!R})$. Rosser's Theorem 235 | states that $\Th{T} \Proves/ !R$ and $\Th{T} \Proves/ \lnot !R$. Both 236 | claims were proved indirectly: we show that if $\Th{T} \Proves !R$, 237 | $\Th{T}$ is inconsistent, i.e., $\Th{T} \Proves \lfalse$, and the same 238 | if $\Th{T} \Proves \lnot !R$. 239 | 240 | \begin{proof}[Proof of {\olref[inc][inp][ros]{thm:rosser}}] 241 | First we prove something things about~$<$. By 242 | \olref[inc][req][min]{lem:less-nsucc}, we know that $\Th{Q} \Proves 243 | \lforall[x][(x < \num {n+1} \lif (\eq[x][\Obj 0] \lor \dots \lor 244 | \eq[x][\num n]))]$ for every~$n$. So of course also (if $n>1$), 245 | $\Th{Q} \Proves \lforall[x][(x < \num {n} \lif (\eq[x][\Obj 0] \lor 246 | \dots \lor \eq[x][\num{n-1}]))]$. We can use this to derive 247 | $\eq[a][\Obj 0] \lor \dots \lor \eq[a][\num{n-1}]$ from $a < \num{n}$: 248 | \begin{prooftree} 249 | \AxiomC{$a < \num{n}$} 250 | \AxiomC{} 251 | \DeduceC{$\lforall[x][(x < \num{n} \lif (x = \num{0} \lor 252 | \dots \lor x = \num{n-1}))]$} 253 | \RightLabel{\Elim\forall} 254 | \UnaryInfC{$a < \num{n} \lif (a = \num{0} \lor 255 | \dots \lor a = \num{n-1})$} 256 | \RightLabel{\Elim\lif} 257 | \BinaryInfC{$a = \num{0} \lor \dots \lor a = \num{n-1}$} 258 | \end{prooftree} 259 | Let's call this derivation $\lambda_1$. 260 | 261 | Now, to show that $\Th{T} \Proves/ !R$, we assume that $\Th{T} 262 | \Proves !R$ (with a derivation~$\delta$) and show that $\Th{T}$ then 263 | would be inconsistent. Let $n$ be the G\"odel number 264 | of~$\delta$. Since $\OPrf$ represents the proof relation in~$\Th{Q}$, 265 | there is a derivation~$\delta_1$ of $\OPrf(\num{n}, 266 | \gn{!R})$. Furthermore, no $k < n$ is the G\"odel number of a 267 | refutation of~$!R$ since $\Th{T}$ is assumed to be consistent, so for 268 | each $k < n$, $\Th{Q} \Proves \lnot \ORefut(\num{k}, \gn{!R})$; let 269 | $\rho_k$ be the corresponding derivation. We get a derivation of 270 | $\ORProv(\gn{!R})$: 271 | \begin{prooftree}\footnotesize 272 | \AxiomC{} 273 | \RightLabel{$\delta_1$} 274 | \DeduceC{$\OPrf(\num{n}, \gn{!R})$} 275 | 276 | \AxiomC{$\Discharge{a < \num{n}}{1}$} 277 | \RightLabel{$\lambda_1$} 278 | \DeduceC{$\begin{gathered}[b] 279 | a= \num{0} \lor \dots {} \\ 280 | {} \lor a = \num{n-1} 281 | \end{gathered}$} 282 | \AxiomC{$\dots$} 283 | 284 | \AxiomC{$\Discharge{a=\num{k}}{2}$} 285 | \AxiomC{} 286 | \RightLabel{$\rho_k$} 287 | \DeduceC{$\lnot \ORefut(\num{k}, \gn{!R})$} 288 | \RightLabel{\Elim=} 289 | \BinaryInfC{$\lnot \ORefut(a, \gn{!R})$} 290 | \AxiomC{$\dots$} 291 | \DischargeRule{$\Elim\lor^*$}{2} 292 | \doubleLine 293 | \insertBetweenHyps{\hskip -1pt} 294 | \QuaternaryInfC{$\lnot \ORefut(a, \gn{!R})$} 295 | \DischargeRule{\Intro\lif}{1} 296 | \UnaryInfC{$a < \num{n} \lif \lnot \ORefut(a, \gn{!R})$} 297 | \RightLabel{\Intro\lforall} 298 | \UnaryInfC{$\lforall[z][(z < \num{n} \lif \lnot \ORefut(z, \gn{!R}))]$} 299 | 300 | \insertBetweenHyps{\hskip -5pt} 301 | \RightLabel{\Intro\land} 302 | \BinaryInfC{$\OPrf(\num{n}, \gn{!R}) \land \lforall[z][(z < \num{n} \lif \lnot \ORefut(\num{z}, \gn{!R}))]$} 303 | \RightLabel{\Intro\lexists} 304 | \UnaryInfC{$\lexists[x][(\OPrf(x, \gn{!R}) \land \lforall[z][(z < x \lif \lnot \ORefut(z, \gn{!R}))])]$} 305 | \end{prooftree} 306 | (We abbreviate multiple applications of $\Elim\lor$ by $\Elim\lor^*$ 307 | above.) We've shown that if $\Th{T} \Proves !R$ there would be a 308 | derivation of~$\ORProv(\gn{!R})$. Then, since $\Th{T} \Proves R \liff 309 | \lnot \ORProv(\gn{!R})$, also $\Th{T} \Proves \ORProv(\gn{!R}) \lif 310 | \lnot R$, we'd have $\Th{T} \Proves \lnot !R$ and $\Th{T}$ would be 311 | inconsistent. 312 | 313 | Now let's show that $\Th{T} \Proves/ \lnot !R$. Again, suppose it 314 | did. Then there is a derivation $\rho$ of $\lnot !R$ with G\"odel 315 | number $m$---a refutation of~$!R$---and so $\Th{Q} \Proves 316 | \ORefut(\num{m}, \gn{!R})$ by a derivation~$\rho_1$. Since we assume 317 | $\Th{T}$ is consistent, $\Th{T} \Proves/ !R$. So for all $k$, $k$ is 318 | not a G\"odel number of a derivation of~$!R$, and hence $\Th{Q} \Proves \lnot 319 | \OPrf(\num{k}, \gn{!R})$ by a derivation~$\pi_k$. So we have: 320 | 321 | \begin{prooftree}\footnotesize 322 | \AxiomC{} 323 | \RightLabel{$\lambda_2$} 324 | \DeduceC{$\begin{gathered}[b] a = \num{0} \lor \dots \lor\\ 325 | a = \num{m} \lor \num{m} < a\end{gathered}$} 326 | \AxiomC{$\dots$} 327 | \AxiomC{$\begin{gathered}\Discharge{\OPrf(a, \gn{!R})}{1}\\ 328 | \Discharge{a = \num{k}}{2}\end{gathered}$} 329 | \RightLabel{$\pi_k'$} 330 | \DeduceC{$\lfalse$} 331 | \RightLabel{$\lfalse_I$} 332 | \UnaryInfC{$\num{m}