Logiweb(TM)

Logiweb expansion of peano in pyk

Up Help

"File page.tex
\documentclass [fleqn]{article}
\setlength {\overfullrule }{1mm}
\input{lgwinclude}

\usepackage{latexsym}

%\setlength{\parindent}{0em}
%\setlength{\parskip}{1ex}

% The font of each Logiweb construct is under tight control except that
% strings are typeset in whatever font is in effect at the time of
% typesetting. This is done to enhance the readability of strings in the
% TeX source generated by Logiweb. The default font for typesetting
% strings is \rm:
\everymath{\rm}

\usepackage{makeidx}
\usepackage{page}
\makeindex
\newcommand{\intro}[1]{\emph{#1}}
\newcommand{\indexintro}[1]{\index{#1}\intro{#1}}
\newlength{\bracketwidth}
\settowidth{\bracketwidth}{$[{}$}
\newcommand{\back}{\protect\makebox[-1.0\bracketwidth]{}}

\usepackage[dvipdfm=true]{hyperref}
\hypersetup{pdfpagemode=none}
\hypersetup{pdfstartpage=1}
\hypersetup{pdfstartview=FitBH}
\hypersetup{pdfpagescrop={120 130 490 730}}
\hypersetup{pdftitle=Introduction to Logiweb}
\hypersetup{colorlinks=true}
\bibliographystyle{plain}

% \tex{something} writes something to page.otx for later inclusion
\newwrite\outex
\newtoks\toktex
\immediate\openout\outex=page.otx
\newcommand{\tex}[1]{\toktex={\item #1}\immediate\write\outex{\the\toktex}}

% \test{something} writes something to page.tst for later inclusion
\newwrite\outest
\immediate\openout\outest=page.tst
\newcommand{\test}[1]{\toktex={\item #1}\immediate\write\outest{\the\toktex}}

% Concerning \catcode`\@=11 : See the TeXbook, Appendix B (page 344).
% \afterheading suppresses indentation once, c.f. latex.ltx.
% \display{something} displays something as a displayed equation except
% that linebreaking is possible and displaymath is not turned on by default.
% The first paragraph after \display{something} is unindented.
% Glue below formulas may be wrong. The definition of \display misses
% something like \addvspace{\belowdisplayskip}.
\catcode`\@=11
\def\afterheading{\@afterheading}
\catcode`\@=12
\newcommand{\display}[1]{\begin{list}{}{\setlength{\leftmargin}{\mathindent}}
\item #1\end{list}

\afterheading}
\newcommand{\statement}[1]{\begin{list}{}{\setlength{\leftmargin}{0mm}}
\item #1\end{list}

\afterheading}

\begin {document}
\title {Introduction to Logiweb}
\author {Klaus Grue}
\maketitle
\tableofcontents
"

begin ragged right

end "



\section{Peano arithmetic}

This Logiweb page \cite{logiweb} defines Peano arithmetic.



\subsection{Introduction of new constructs}

The following constructs allow to introduce a new construct (``introduce'' in the normal sense of the word, not in the sense of a Logiweb revelation). The constructs allow to define the pyk aspect "

begin bracket var p end bracket

end " and tex aspect "

begin bracket var t end bracket

end " of a new construct "

begin bracket var x end bracket

end " and also makes two entries in the index. The first of the constructs below adds the text "

begin bracket var i end bracket

end " in front of one of the index entries.

%
\index{intro: intro * index * pyk * tex * end intro @intro: "

begin bracket unicode start of text text intro var x index var i pyk var p tex var t end intro end text end unicode text end bracket

end " intro * index * pyk * tex * end intro}
%
\index{intro * index * pyk * tex * end intro "

begin bracket unicode start of text text intro var x index var i pyk var p tex var t end intro end text end unicode text end bracket

end "}%
%
\tex{"

begin math define tex of intro var x index var i pyk var p tex var t end intro as text "\index{#2.: #3. @#2.: $[#1/tex name/tex.]$ #3.}%
\index{#3. $[#1/tex name/tex.]$}%
\tex{
$[#1/tex name/tex.
\stackrel {\mathrm {tex}}{=} #4/tex name.
]$}$[ #1/tex name/tex.%
]$\footnote{$[#1/tex name/tex.
\stackrel {\mathrm {pyk}}{=} #3/tex name.
]$}" end text end define end math

end "}%
%
\tex{"

begin math define tex name of intro var x index var i pyk var p tex var t end intro as text "
intro(#1.
,#2.
,#3.
,#4.
)" end text end define end math

end "}%
%
\display{"

begin math define macro of intro var x index var i pyk var p tex var t end intro as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define intro var x index var i pyk var p tex var t end intro as pyk define var x as var p end define

then tex define var x as var t end define end define end quote end define end define end math

end "%
%
\footnote{"

begin math define pyk of intro var x index var i pyk var p tex var t end intro as text "intro * index * pyk * tex * end intro" end text end define end math

end "}}

%
\index{intro: intro * pyk * tex * end intro @intro: "

begin bracket unicode start of text text intro var x pyk var p tex var t end intro end text end unicode text end bracket

end " intro * pyk * tex * end intro}
%
\index{intro * pyk * tex * end intro "

begin bracket unicode start of text text intro var x pyk var p tex var t end intro end text end unicode text end bracket

end "}%
%
\tex{"

begin math define tex of intro var x pyk var p tex var t end intro as text "\index{\alpha #2. @\back \makebox[20mm][l]{$[#1/tex name/tex.]$}#2.}%
\index{#2. $[#1/tex name/tex.]$}%
\tex{
$[#1/tex name/tex.
\stackrel {\mathrm {tex}}{=} #3/tex name.
]$}$[ #1/tex name/tex.%
]$\footnote{$[#1/tex name/tex.
\stackrel {\mathrm {pyk}}{=} #2/tex name.
]$}" end text end define end math

end "}%
%
\tex{"

begin math define tex name of intro var x pyk var p tex var t end intro as text "
intro(#1.
,#2.
,#3.
)" end text end define end math

end "}%
%
\display{"

begin math define macro of intro var x pyk var p tex var t end intro as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define intro var x pyk var p tex var t end intro as pyk define var x as var p end define

then tex define var x as var t end define end define end quote end define end define end math

end "%
%
\footnote{"

begin math define pyk of intro var x pyk var p tex var t end intro as text "intro * pyk * tex * end intro" end text end define end math

end "}}



\subsection{The constructs of Peano arithmetic}

Terms of Peano arithmetic are constructed from
zero "

begin define pyk of peano zero as text "peano zero" end text end define

then define tex of peano zero as text "
\dot{0}" end text end define

end ",
successor "

begin define pyk of var x peano succ as text "* peano succ" end text end define

then define tex of var x peano succ as text "#1.
'" end text end define

end ",
plus "

begin define pyk of var x peano plus var y as text "* peano plus *" end text end define

then define tex of var x peano plus var y as text "#1.
\mathop{\dot{+}} #2." end text end define

end ", and
times "

begin define pyk of var x peano times var y as text "* peano times *" end text end define

then define tex of var x peano times var y as text "#1.
\mathop{\dot{\cdot}} #2." end text end define

end ".

Formulas of Peano arithmeric are constructed from
equality "

begin define pyk of var x peano is var y as text "* peano is *" end text end define

then define tex of var x peano is var y as text "#1.
\stackrel{p}{=} #2." end text end define

end ",
negation "

begin define pyk of peano not var x as text "peano not *" end text end define

then define tex of peano not var x as text "
\dot{\neg}\, #1." end text end define

end ",
implication "

begin define pyk of var x peano imply var y as text "* peano imply *" end text end define

then define tex of var x peano imply var y as text "#1.
\mathrel{\dot{\Rightarrow}} #2." end text end define

end ", and
universal quantification "

begin define pyk of peano all var x indeed var y as text "peano all * indeed *" end text end define

then define tex of peano all var x indeed var y as text "
\dot{\forall} #1.
\colon #2." end text end define

end ".

From these constructs we macro define
one "

begin define pyk of peano one as text "peano one" end text end define

then define tex of peano one as text "
\dot{1}" end text end define

end ",
two "

begin define pyk of peano two as text "peano two" end text end define

then define tex of peano two as text "
\dot{2}" end text end define

end ",
conjunction "

begin define pyk of var x peano and var y as text "* peano and *" end text end define

then define tex of var x peano and var y as text "#1.
\mathrel{\dot{\wedge}} #2." end text end define

end ",
disjunction "

begin define pyk of var x peano or var y as text "* peano or *" end text end define

then define tex of var x peano or var y as text "#1.
\mathrel{\dot{\vee}} #2." end text end define

end ",
biimplication "

begin define pyk of var x peano iff var y as text "* peano iff *" end text end define

then define tex of var x peano iff var y as text "#1.
\mathrel{\dot{\Leftrightarrow}} #2." end text end define

end ", and
existential quantification "

begin define pyk of peano exist var x indeed var y as text "peano exist * indeed *" end text end define

then define tex of peano exist var x indeed var y as text "
\dot{\exists} #1.
\colon #2." end text end define

end ":

\display{"

begin math define macro of peano one as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano one as peano zero peano succ end define end quote end define end define end math

end "}

\display{"

begin math define macro of peano two as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano two as peano one peano succ end define end quote end define end define end math

end "}

\display{"

begin math define macro of var x peano and var y as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define var x peano and var y as peano not parenthesis var x peano imply peano not var y end parenthesis end define end quote end define end define end math

end "}

\display{"

begin math define macro of var x peano or var y as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define var x peano or var y as peano not var x peano imply var y end define end quote end define end define end math

end "}

\display{"

begin math define macro of var x peano iff var y as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define var x peano iff var y as parenthesis var x peano imply var y end parenthesis peano and parenthesis var y peano imply var x end parenthesis end define end quote end define end define end math

end "}

\display{"

begin math define macro of peano exist var x indeed var y as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano exist var x indeed var y as peano not peano all var x indeed peano not var y end define end quote end define end define end math

end "}



\subsection{Variables}

We now introduce the unary operator "

begin define pyk of var x peano var as text "* peano var" end text end define

then define tex of var x peano var as text "
\dot{#1.
}" end text end define

end " and define that a term is a \index{variable, Peano}\indexintro{Peano variable} (i.e.\ a variable of Peano arithmetic) if it has the "

begin bracket var x peano var end bracket

end " operator in its root. "

begin define pyk of var x is peano var as text "* is peano var" end text end define

then define tex of var x is peano var as text "#1.
{} ^ {\cal P}" end text end define

end " is true if "

begin bracket var x end bracket

end " is a Peano variable:

\display{"

begin math define value of var x is peano var as var x term root equal quote var x peano var end quote end define end math

end "}

We macro define "

begin define pyk of peano a as text "peano a" end text end define

then define tex of peano a as text "
\dot{\mathit{a}}" end text end define

end " to be a Peano variable:

\display{"

begin math define macro of peano a as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano a as var a peano var end define end quote end define end define end math

end "}%
%
\test{"

begin math test quote var a peano var end quote is peano var end test end math

end "}%
%
\test{"

begin math false test quote var a end quote is peano var end test end math

end "}

Appendix \ref{section:VariablesOfPeanoArithmetic} defines Peano variables for the other letters of the English alphabet.

"

begin define pyk of peano nonfree var x in var y end nonfree as text "peano nonfree * in * end nonfree" end text end define

then define tex of peano nonfree var x in var y end nonfree as text "
\dot{nonfree}(#1.
,#2.
)" end text end define

end " is true if the Peano variable "

begin bracket var x end bracket

end " does not occur free in the Peano term/formula "

begin bracket var y end bracket

end ". "

begin define pyk of peano nonfree star var x in var y end nonfree as text "peano nonfree star * in * end nonfree" end text end define

then define tex of peano nonfree star var x in var y end nonfree as text "
\dot{nonfree}^*(#1.
,#2.
)" end text end define

end " is true if the Peano variable "

begin bracket var x end bracket

end " does not occur free in the list "

begin bracket var y end bracket

end " of Peano terms/formulas.

\display{"

begin math define value of peano nonfree var x in var y end nonfree as newline tagged if var y is peano var then not var x term equal var y else newline tagged if not var y term root equal quote peano all var x indeed var y end quote then peano nonfree star var x in var y tail end nonfree else newline tagged if var x term equal var y first then true else peano nonfree var x in var y second end nonfree end if end if end if end define end math

end "}

\display{"

begin math define value of peano nonfree star var x in var y end nonfree as var x tagged guard tagged if var y then true else tagged if peano nonfree var x in var y head end nonfree then peano nonfree star var x in var y tail end nonfree else false end if end if end define end math

end "}%
%
\test{"

begin math test peano nonfree quote var x peano var end quote in quote var y peano var peano is var z peano var peano imply peano all var x peano var indeed var x peano var peano is var y peano var end quote end nonfree end test end math

end "}%
%
\test{"

begin math false test peano nonfree quote var x peano var end quote in quote var x peano var peano is var z peano var peano imply peano all var x peano var indeed var x peano var peano is var y peano var end quote end nonfree end test end math

end "}%
%
\test{"

begin math false test peano nonfree quote var x peano var end quote in quote var y peano var peano is var x peano var peano imply peano all var x peano var indeed var x peano var peano is var y peano var end quote end nonfree end test end math

end "}%
%
\test{"

begin math false test peano nonfree quote var x peano var end quote in quote var y peano var peano is var z peano var peano imply peano all var y peano var indeed var x peano var peano is var y peano var end quote end nonfree end test end math

end "}%


"

begin define pyk of peano free var a set var x to var b end free as text "peano free * set * to * end free" end text end define

then define tex of peano free var a set var x to var b end free as text "
\dot{free}\langle #1.
| #2.
:= #3.
\rangle" end text end define

end " is true if the substitution "

begin bracket substitute var a set var x to var b end substitute end bracket

end " is free. "

begin define pyk of peano free star var a set var x to var b end free as text "peano free star * set * to * end free" end text end define

then define tex of peano free star var a set var x to var b end free as text "
\dot{free}{}^*\langle #1.
| #2.
:= #3.
\rangle" end text end define

end " is the version where "

begin bracket var a end bracket

end " is a list of terms.

\display{"

begin math define value of peano free var a set var x to var b end free as var x tagged guard var b tagged guard newline tagged if var a is peano var then true else newline tagged if not var a term root equal quote peano all var u indeed var v end quote then peano free star var a tail set var x to var b end free else newline tagged if var a first term equal var x then true else newline tagged if peano nonfree var x in var a second end nonfree then true else newline tagged if not peano nonfree var a first in var b end nonfree then false else newline peano free var a second set var x to var b end free end if end if end if end if end if end define end math

end "}

\display{"

begin math define value of peano free star var a set var x to var b end free as var x tagged guard var b tagged guard tagged if var a then true else tagged if peano free var a head set var x to var b end free then peano free star var a tail set var x to var b end free else false end if end if end define end math

end "}%
%
\test{"

begin math test peano free quote peano all var x peano var indeed var b pair var x peano var pair var c end quote set quote var x peano var end quote to quote var x pair var y peano var pair var z end quote end free end test end math

end "}%
%
\test{"

begin math false test peano free quote peano all var y peano var indeed var b pair var x peano var pair var c end quote set quote var x peano var end quote to quote var x pair var y peano var pair var z end quote end free end test end math

end "}%
%
\test{"

begin math test peano free quote peano all var x peano var indeed var b pair var x peano var pair var c end quote set quote var y peano var end quote to quote var x pair var y peano var pair var z end quote end free end test end math

end "}%
%
\test{"

begin math test peano free quote peano all var y peano var indeed var b pair var x peano var pair var c end quote set quote var y peano var end quote to quote var x pair var y peano var pair var z end quote end free end test end math

end "}%
%

"

begin define pyk of peano sub var a is var b where var x is var c end sub as text "peano sub * is * where * is * end sub" end text end define

then define tex of peano sub var a is var b where var x is var c end sub as text "#1.
{\equiv}\langle #2.
|#3.
:=#4.
\rangle" end text end define

end " is true if "

begin bracket var a end bracket

end " equals "

begin bracket substitute var b set var x to var c end substitute end bracket

end ". "

begin define pyk of peano sub star var a is var b where var x is var c end sub as text "peano sub star * is * where * is * end sub" end text end define

then define tex of peano sub star var a is var b where var x is var c end sub as text "#1.
{\equiv}\langle^* #2.
|#3.
:=#4.
\rangle" end text end define

end " is the version where "

begin bracket var a end bracket

end " and "

begin bracket var b end bracket

end " are lists.

\display{"

begin math define value of peano sub var a is var b where var x is var c end sub as var a tagged guard var x tagged guard var c tagged guard newline tagged if tagged if var b term root equal quote peano all var u indeed var v end quote then var b first term equal var x else false end if then var a term equal var b else newline tagged if var b is peano var and var b term equal var x then var a term equal var c else tagged if newline var a term root equal var b then peano sub star var a tail is var b tail where var x is var c end sub else false end if end if end if end define end math

end "}

\display{"

begin math define value of peano sub star var a is var b where var x is var c end sub as var b tagged guard var x tagged guard var c tagged guard tagged if var a then true else tagged if peano sub var a head is var b head where var x is var c end sub then peano sub star var a tail is var b tail where var x is var c end sub else false end if end if end define end math

end "}%
%
\test{"

begin math test peano sub var a peano var is var a peano var where var b peano var is var c peano var end sub end test end math

end "}%
%
\test{"

begin math test peano sub var c peano var is var b peano var where var b peano var is var c peano var end sub end test end math

end "}%
%
\test{"

begin math test peano sub all var a peano var indeed var a peano var peano is var b peano var is all var a peano var indeed var a peano var peano is var b peano var where var a peano var is var c peano var end sub end test end math

end "}%
%
\test{"

begin math test peano sub all var a peano var indeed var a peano var peano is var c peano var is all var a peano var indeed var a peano var peano is var b peano var where var b peano var is var c peano var end sub end test end math

end "}%
%
\test{"

begin math test peano sub peano all var a peano var indeed var a peano var peano is peano zero peano plus var a peano var peano imply var c peano var peano times var d peano var peano is peano zero peano plus var c peano var peano times var d peano var is peano all var a peano var indeed var a peano var peano is peano zero peano plus var a peano var peano imply var b peano var peano is peano zero peano plus var b peano var where var b peano var is var c peano var peano times var d peano var end sub end test end math

end "}%
%
\test{"

begin math test peano sub peano all var a peano var indeed var a peano var peano is peano zero peano plus var a peano var peano imply var b peano var peano is peano zero peano plus var b peano var is peano all var a peano var indeed var a peano var peano is peano zero peano plus var a peano var peano imply var b peano var peano is peano zero peano plus var b peano var where var a peano var is var c peano var end sub end test end math

end "}%
%



\subsection{Axiomatic system}

System "

begin define pyk of system s as text "system s" end text end define

then define tex of system s as text "
S" end text end define

end " of Mendelson \cite{mendelson} expresses Peano arithmetic. It comprises the axioms
"

begin define pyk of axiom a one as text "axiom a one" end text end define

then define tex of axiom a one as text "
A1" end text end define

end ",
"

begin define pyk of axiom a two as text "axiom a two" end text end define

then define tex of axiom a two as text "
A2" end text end define

end ",
"

begin define pyk of axiom a three as text "axiom a three" end text end define

then define tex of axiom a three as text "
A3" end text end define

end ",
"

begin define pyk of axiom a four as text "axiom a four" end text end define

then define tex of axiom a four as text "
A4" end text end define

end ", and
"

begin define pyk of axiom a five as text "axiom a five" end text end define

then define tex of axiom a five as text "
A5" end text end define

end "
and inference rules
"

begin define pyk of rule mp as text "rule mp" end text end define

then define tex of rule mp as text "
MP" end text end define

end " and
"

begin define pyk of rule gen as text "rule gen" end text end define

then define tex of rule gen as text "
Gen" end text end define

end "
of first order predicate calculus. Furthermore, it comprises the proper axioms
"

begin define pyk of axiom s one as text "axiom s one" end text end define

then define tex of axiom s one as text "
S1" end text end define

end ",
"

begin define pyk of axiom s two as text "axiom s two" end text end define

then define tex of axiom s two as text "
S2" end text end define

end ",
"

begin define pyk of axiom s three as text "axiom s three" end text end define

then define tex of axiom s three as text "
S3" end text end define

end ",
"

begin define pyk of axiom s four as text "axiom s four" end text end define

then define tex of axiom s four as text "
S4" end text end define

end ",
"

begin define pyk of axiom s five as text "axiom s five" end text end define

then define tex of axiom s five as text "
S5" end text end define

end ",
"

begin define pyk of axiom s six as text "axiom s six" end text end define

then define tex of axiom s six as text "
S6" end text end define

end ",
"

begin define pyk of axiom s seven as text "axiom s seven" end text end define

then define tex of axiom s seven as text "
S7" end text end define

end ",
"

begin define pyk of axiom s eight as text "axiom s eight" end text end define

then define tex of axiom s eight as text "
S8" end text end define

end ", and
"

begin define pyk of axiom s nine as text "axiom s nine" end text end define

then define tex of axiom s nine as text "
S9" end text end define

end ". System "

begin bracket system s end bracket

end " is defined thus:

\display{"

begin math define statement of system s as var a peano var peano succ peano is var b peano var peano succ peano imply var a peano var peano is var b peano var rule plus all metavar var a end metavar indeed all metavar var b end metavar indeed metavar var a end metavar peano imply metavar var b end metavar peano imply metavar var a end metavar rule plus all metavar var x end metavar indeed all metavar var a end metavar indeed all metavar var b end metavar indeed peano nonfree metavar var x end metavar in metavar var a end metavar end nonfree endorse peano all metavar var x end metavar indeed metavar var a end metavar peano imply metavar var b end metavar peano imply metavar var a end metavar peano imply peano all metavar var x end metavar indeed metavar var b end metavar rule plus var a peano var peano times var b peano var peano succ peano is var a peano var peano times var b peano var peano plus var a peano var rule plus var a peano var peano is var b peano var peano imply var a peano var peano succ peano is var b peano var peano succ rule plus all metavar var a end metavar indeed all metavar var b end metavar indeed metavar var a end metavar peano imply metavar var b end metavar infer metavar var a end metavar infer metavar var b end metavar rule plus peano not metavar var b end metavar peano imply peano not metavar var a end metavar peano imply peano not metavar var b end metavar peano imply metavar var a end metavar peano imply metavar var b end metavar rule plus var a peano var peano plus var b peano var peano succ peano is var a peano var peano plus var b peano var peano succ rule plus not peano zero peano is var a peano var peano succ rule plus all metavar var x end metavar indeed all metavar var a end metavar indeed metavar var a end metavar infer peano all metavar var x end metavar indeed metavar var a end metavar rule plus all metavar var c end metavar indeed all metavar var x end metavar indeed all metavar var b end metavar indeed all metavar var a end metavar indeed peano sub metavar var a end metavar is metavar var b end metavar where metavar var x end metavar is metavar var c end metavar end sub endorse peano all metavar var x end metavar indeed metavar var b end metavar peano imply metavar var a end metavar rule plus var a peano var peano times peano zero peano is peano zero rule plus var a peano var peano is var b peano var peano imply var a peano var peano is var c peano var peano imply var b peano var peano is var c peano var rule plus all metavar var a end metavar indeed all metavar var b end metavar indeed all metavar var c end metavar indeed all metavar var x end metavar indeed peano sub metavar var b end metavar is metavar var a end metavar where metavar var x end metavar is peano zero end sub endorse peano sub metavar var c end metavar is metavar var a end metavar where metavar var x end metavar is metavar var x end metavar peano succ end sub endorse metavar var b end metavar peano imply peano all metavar var x end metavar indeed metavar var a end metavar peano imply metavar var c end metavar peano imply peano all metavar var x end metavar indeed metavar var a end metavar rule plus all metavar var a end metavar indeed all metavar var b end metavar indeed all metavar var c end metavar indeed metavar var a end metavar peano imply metavar var b end metavar peano imply metavar var c end metavar peano imply metavar var a end metavar peano imply metavar var b end metavar peano imply metavar var a end metavar peano imply metavar var c end metavar rule plus var a peano var peano plus peano zero peano is var a peano var end define end math

end "}

\display{"

begin math define statement of axiom a one as system s infer all metavar var a end metavar indeed all metavar var b end metavar indeed metavar var a end metavar peano imply metavar var b end metavar peano imply metavar var a end metavar end define

then define proof of axiom a one as rule tactic end define end math

end "}

\display{"

begin math define statement of axiom a two as system s infer all metavar var a end metavar indeed all metavar var b end metavar indeed all metavar var c end metavar indeed metavar var a end metavar peano imply metavar var b end metavar peano imply metavar var c end metavar peano imply metavar var a end metavar peano imply metavar var b end metavar peano imply metavar var a end metavar peano imply metavar var c end metavar end define

then define proof of axiom a two as rule tactic end define end math

end "}

\display{"

begin math define statement of axiom a three as system s infer peano not metavar var b end metavar peano imply peano not metavar var a end metavar peano imply peano not metavar var b end metavar peano imply metavar var a end metavar peano imply metavar var b end metavar end define

then define proof of axiom a three as rule tactic end define end math

end "}

The order of quantifiers in the following axiom is such that "

begin bracket metavar var a end metavar end bracket

end " which the system can currently guess comes first. At a later stage, when a planned generalisation of the conclusion tactic has been implemented, the system will be able to guess "

begin bracket metavar var x end metavar end bracket

end " and "

begin bracket metavar var b end metavar end bracket

end " also. Guessing "

begin bracket metavar var c end metavar end bracket

end " would require a separate tactic.

\display{"

begin math define statement of axiom a four as system s infer all metavar var c end metavar indeed all metavar var x end metavar indeed all metavar var b end metavar indeed all metavar var a end metavar indeed peano sub metavar var a end metavar is metavar var b end metavar where metavar var x end metavar is metavar var c end metavar end sub endorse peano all metavar var x end metavar indeed metavar var b end metavar peano imply metavar var a end metavar end define

then define proof of axiom a four as rule tactic end define end math

end "}

\display{"

begin math define statement of axiom a five as system s infer all metavar var x end metavar indeed all metavar var a end metavar indeed all metavar var b end metavar indeed peano nonfree metavar var x end metavar in metavar var a end metavar end nonfree endorse peano all metavar var x end metavar indeed metavar var a end metavar peano imply metavar var b end metavar peano imply metavar var a end metavar peano imply peano all metavar var x end metavar indeed metavar var b end metavar end define

then define proof of axiom a five as rule tactic end define end math

end "}

\display{"

begin math define statement of rule mp as system s infer all metavar var a end metavar indeed all metavar var b end metavar indeed metavar var a end metavar peano imply metavar var b end metavar infer metavar var a end metavar infer metavar var b end metavar end define

then define proof of rule mp as rule tactic end define end math

end "}

\display{"

begin math define statement of rule gen as system s infer all metavar var x end metavar indeed all metavar var a end metavar indeed metavar var a end metavar infer peano all metavar var x end metavar indeed metavar var a end metavar end define

then define proof of rule gen as rule tactic end define end math

end "}

Axiom "

begin bracket axiom s one end bracket

end " to "

begin bracket axiom s eight end bracket

end " are stated as Mendelson \cite{mendelson} does. This is done here to test certain parts of the Logiweb system. Serious users of Peano arithmetic are advised to take Mendelson's Lemma 3.1 as axioms instead.

\display{"

begin math define statement of axiom s one as system s infer var a peano var peano is var b peano var peano imply var a peano var peano is var c peano var peano imply var b peano var peano is var c peano var end define

then define proof of axiom s one as rule tactic end define end math

end "}

\display{"

begin math define statement of axiom s two as system s infer var a peano var peano is var b peano var peano imply var a peano var peano succ peano is var b peano var peano succ end define

then define proof of axiom s two as rule tactic end define end math

end "}

\display{"

begin math define statement of axiom s three as system s infer not peano zero peano is var a peano var peano succ end define

then define proof of axiom s three as rule tactic end define end math

end "}

\display{"

begin math define statement of axiom s four as system s infer var a peano var peano succ peano is var b peano var peano succ peano imply var a peano var peano is var b peano var end define

then define proof of axiom s four as rule tactic end define end math

end "}

\display{"

begin math define statement of axiom s five as system s infer var a peano var peano plus peano zero peano is var a peano var end define

then define proof of axiom s five as rule tactic end define end math

end "}

\display{"

begin math define statement of axiom s six as system s infer var a peano var peano plus var b peano var peano succ peano is var a peano var peano plus var b peano var peano succ end define

then define proof of axiom s six as rule tactic end define end math

end "}

\display{"

begin math define statement of axiom s seven as system s infer var a peano var peano times peano zero peano is peano zero end define

then define proof of axiom s seven as rule tactic end define end math

end "}

\display{"

begin math define statement of axiom s eight as system s infer var a peano var peano times var b peano var peano succ peano is var a peano var peano times var b peano var peano plus var a peano var end define

then define proof of axiom s eight as rule tactic end define end math

end "}

\display{"

begin math define statement of axiom s nine as system s infer all metavar var a end metavar indeed all metavar var b end metavar indeed all metavar var c end metavar indeed all metavar var x end metavar indeed peano sub metavar var b end metavar is metavar var a end metavar where metavar var x end metavar is peano zero end sub endorse peano sub metavar var c end metavar is metavar var a end metavar where metavar var x end metavar is metavar var x end metavar peano succ end sub endorse metavar var b end metavar peano imply peano all metavar var x end metavar indeed metavar var a end metavar peano imply metavar var c end metavar peano imply peano all metavar var x end metavar indeed metavar var a end metavar end define

then define proof of axiom s nine as rule tactic end define end math

end "}



\subsection{A lemma and a proof}

We now prove Lemma "

begin define pyk of lemma l three two a as text "lemma l three two a" end text end define

then define tex of lemma l three two a as text "
L3.2(a)" end text end define

end " which is an instance of the corresponding proposition in Mendelson \cite{mendelson}:

\statement{"

begin math define statement of lemma l three two a as system s infer var x peano var peano is var x peano var end define end math

end "}

The first four lines of the proof has revealed an error in the conclusion tactic which has to be corrected before the proof will be accepted:

\statement{"

begin math define proof of lemma l three two a as lambda var c dot lambda var x dot proof expand quote system s infer axiom s five conclude var a peano var peano plus peano zero peano is var a peano var cut rule gen modus ponens var a peano var peano plus peano zero peano is var a peano var conclude peano all var a peano var indeed var a peano var peano plus peano zero peano is var a peano var cut axiom a four at var x peano var at var a peano var at var a peano var peano plus peano zero peano is var a peano var at var x peano var peano plus peano zero peano is var x peano var conclude peano all var a peano var indeed var a peano var peano plus peano zero peano is var a peano var peano imply var x peano var peano plus peano zero peano is var x peano var cut rule mp modus ponens peano all var a peano var indeed var a peano var peano plus peano zero peano is var a peano var peano imply var x peano var peano plus peano zero peano is var x peano var modus ponens peano all var a peano var indeed var a peano var peano plus peano zero peano is var a peano var conclude var x peano var peano plus peano zero peano is var x peano var end quote state proof state cache var c end expand end define end math

end "}



\appendix

\section{Chores}

\subsection{The name of the page}

This defines the name of the page:

\display{"

begin math define pyk of peano as text "peano" end text end define end math

end "}



\subsection{Variables of Peano arithmetic}\label{section:VariablesOfPeanoArithmetic}

We use
"

begin define pyk of peano b as text "peano b" end text end define

then define tex of peano b as text "
\dot{\mathit{b}}" end text end define

end ",
"

begin define pyk of peano c as text "peano c" end text end define

then define tex of peano c as text "
\dot{\mathit{c}}" end text end define

end ",
"

begin define pyk of peano d as text "peano d" end text end define

then define tex of peano d as text "
\dot{\mathit{d}}" end text end define

end ",
"

begin define pyk of peano e as text "peano e" end text end define

then define tex of peano e as text "
\dot{\mathit{e}}" end text end define

end ",
"

begin define pyk of peano f as text "peano f" end text end define

then define tex of peano f as text "
\dot{\mathit{f}}" end text end define

end ",
"

begin define pyk of peano g as text "peano g" end text end define

then define tex of peano g as text "
\dot{\mathit{g}}" end text end define

end ",
"

begin define pyk of peano h as text "peano h" end text end define

then define tex of peano h as text "
\dot{\mathit{h}}" end text end define

end ",
"

begin define pyk of peano i as text "peano i" end text end define

then define tex of peano i as text "
\dot{\mathit{i}}" end text end define

end ",
"

begin define pyk of peano j as text "peano j" end text end define

then define tex of peano j as text "
\dot{\mathit{j}}" end text end define

end ",
"

begin define pyk of peano k as text "peano k" end text end define

then define tex of peano k as text "
\dot{\mathit{k}}" end text end define

end ",
"

begin define pyk of peano l as text "peano l" end text end define

then define tex of peano l as text "
\dot{\mathit{l}}" end text end define

end ",
"

begin define pyk of peano m as text "peano m" end text end define

then define tex of peano m as text "
\dot{\mathit{m}}" end text end define

end ",
"

begin define pyk of peano n as text "peano n" end text end define

then define tex of peano n as text "
\dot{\mathit{n}}" end text end define

end ",
"

begin define pyk of peano o as text "peano o" end text end define

then define tex of peano o as text "
\dot{\mathit{o}}" end text end define

end ",
"

begin define pyk of peano p as text "peano p" end text end define

then define tex of peano p as text "
\dot{\mathit{p}}" end text end define

end ",
"

begin define pyk of peano q as text "peano q" end text end define

then define tex of peano q as text "
\dot{\mathit{q}}" end text end define

end ",
"

begin define pyk of peano r as text "peano r" end text end define

then define tex of peano r as text "
\dot{\mathit{r}}" end text end define

end ",
"

begin define pyk of peano s as text "peano s" end text end define

then define tex of peano s as text "
\dot{\mathit{s}}" end text end define

end ",
"

begin define pyk of peano t as text "peano t" end text end define

then define tex of peano t as text "
\dot{\mathit{t}}" end text end define

end ",
"

begin define pyk of peano u as text "peano u" end text end define

then define tex of peano u as text "
\dot{\mathit{u}}" end text end define

end ",
"

begin define pyk of peano v as text "peano v" end text end define

then define tex of peano v as text "
\dot{\mathit{v}}" end text end define

end ",
"

begin define pyk of peano w as text "peano w" end text end define

then define tex of peano w as text "
\dot{\mathit{w}}" end text end define

end ",
"

begin define pyk of peano x as text "peano x" end text end define

then define tex of peano x as text "
\dot{\mathit{x}}" end text end define

end ",
"

begin define pyk of peano y as text "peano y" end text end define

then define tex of peano y as text "
\dot{\mathit{y}}" end text end define

end ", and
"

begin define pyk of peano z as text "peano z" end text end define

then define tex of peano z as text "
\dot{\mathit{z}}" end text end define

end " to denote variables of Peano arithmetic:

"

begin math define macro of peano b as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano b as var b peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano c as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano c as var c peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano d as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano d as var d peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano e as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano e as var e peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano f as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano f as var f peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano g as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano g as var g peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano h as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano h as var h peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano i as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano i as var i peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano j as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano j as var j peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano k as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano k as var k peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano l as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano l as var l peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano m as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano m as var m peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano n as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano n as var n peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano o as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano o as var o peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano p as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano p as var p peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano q as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano q as var q peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano r as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano r as var r peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano s as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano s as var s peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano t as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano t as var t peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano u as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano u as var u peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano v as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano v as var v peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano w as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano w as var w peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano x as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano x as var x peano var end define end quote end define end define end math

end ",
"

begin math define macro of peano y as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano y as var y peano var end define end quote end define end define end math

end ", and
"

begin math define macro of peano z as lambda var t dot lambda var s dot lambda var c dot macro define four var t state var s cache var c definition quote macro define peano z as var z peano var end define end quote end define end define end math

end ".



\subsection{\TeX\ definitions}\label{section:TexDefinitions}

\begin{list}{}{
\setlength{\leftmargin}{5em}
\setlength{\itemindent}{-5em}}
\immediate\closeout\outex
\input{./page.otx}
\end{list}



\subsection{Test}

\begin{list}{}{
\setlength{\leftmargin}{5em}
\setlength{\itemindent}{-5em}}
\immediate\closeout\outest
\input{./page.tst}
\end{list}



\subsection{Priority table}\label{section:PriorityTable}


"

begin flush left math define priority of peano as preassociative priority peano equal priority base equal priority bracket x end bracket equal priority big bracket x end bracket equal priority math x end math equal priority flush left x end left equal priority var x equal priority var y equal priority var z equal priority proclaim x as x end proclaim equal priority define x of x as x end define equal priority pyk equal priority tex equal priority tex name equal priority priority equal priority x equal priority true equal priority if x then x else x end if equal priority introduce x of x as x end introduce equal priority value equal priority claim equal priority bottom equal priority function f of x end function equal priority identity x end identity equal priority false equal priority untagged zero equal priority untagged one equal priority untagged two equal priority untagged three equal priority untagged four equal priority untagged five equal priority untagged six equal priority untagged seven equal priority untagged eight equal priority untagged nine equal priority zero equal priority one equal priority two equal priority three equal priority four equal priority five equal priority six equal priority seven equal priority eight equal priority nine equal priority var a equal priority var b equal priority var c equal priority var d equal priority var e equal priority var f equal priority var g equal priority var h equal priority var i equal priority var j equal priority var k equal priority var l equal priority var m equal priority var n equal priority var o equal priority var p equal priority var q equal priority var r equal priority var s equal priority var t equal priority var u equal priority var v equal priority var w equal priority tagged parenthesis x end tagged equal priority tagged if x then x else x end if equal priority array x is x end array equal priority left equal priority center equal priority right equal priority empty equal priority substitute x set x to x end substitute equal priority map tag x end tag equal priority raw map untag x end untag equal priority map untag x end untag equal priority normalizing untag x end untag equal priority apply x to x end apply equal priority apply one x to x end apply equal priority identifier x end identifier equal priority identifier one x plus id x end identifier equal priority array plus x and x end plus equal priority array remove x array x level x end remove equal priority array put x value x array x level x end put equal priority array add x value x index x value x level x end add equal priority bit x of x end bit equal priority bit one x of x end bit equal priority example rack equal priority vector hook equal priority bibliography hook equal priority dictionary hook equal priority body hook equal priority codex hook equal priority expansion hook equal priority code hook equal priority cache hook equal priority diagnose hook equal priority pyk aspect equal priority tex aspect equal priority texname aspect equal priority value aspect equal priority message aspect equal priority macro aspect equal priority definition aspect equal priority unpack aspect equal priority claim aspect equal priority priority aspect equal priority lambda identifier equal priority apply identifier equal priority true identifier equal priority if identifier equal priority quote identifier equal priority proclaim identifier equal priority define identifier equal priority introduce identifier equal priority hide identifier equal priority pre identifier equal priority post identifier equal priority eval x stack x cache x end eval equal priority eval two x ref x id x stack x cache x end eval equal priority eval three x function x stack x cache x end eval equal priority eval four x arguments x stack x cache x end eval equal priority lookup x stack x default x end lookup equal priority abstract x term x stack x cache x end abstract equal priority quote x end quote equal priority expand x state x cache x end expand equal priority expand two x definition x state x cache x end expand equal priority expand list x state x cache x end expand equal priority macro equal priority macro state equal priority zip x with x end zip equal priority assoc one x address x index x end assoc equal priority protect x end protect equal priority self equal priority macro define x as x end define equal priority value define x as x end define equal priority intro define x as x end define equal priority pyk define x as x end define equal priority tex define x as x end define equal priority tex name define x as x end define equal priority priority table x end table equal priority macro define one equal priority macro define two x end define equal priority macro define three x end define equal priority macro define four x state x cache x definition x end define equal priority state expand x state x cache x end expand equal priority quote expand x term x stack x end expand equal priority quote expand two x term x stack x end expand equal priority quote expand three x term x stack x value x end expand equal priority quote expand star x term x stack x end expand equal priority parenthesis x end parenthesis equal priority aspect x subcodex x end aspect equal priority aspect x term x cache x end aspect equal priority tuple x end tuple equal priority tuple one x end tuple equal priority tuple two x end tuple equal priority let two x apply x end let equal priority let one x apply x end let equal priority claim define x as x end define equal priority checker equal priority check x cache x end check equal priority check two x cache x def x end check equal priority check three x cache x def x end check equal priority check list x cache x end check equal priority check list two x cache x value x end check equal priority test x end test equal priority false test x end test equal priority raw test x end test equal priority message equal priority message define x as x end define equal priority the statement aspect equal priority statement equal priority statement define x as x end define equal priority example axiom equal priority example scheme equal priority example rule equal priority absurdity equal priority contraexample equal priority example theory primed equal priority example lemma equal priority metavar x end metavar equal priority meta a equal priority meta b equal priority meta c equal priority meta d equal priority meta e equal priority meta f equal priority meta g equal priority meta h equal priority meta i equal priority meta j equal priority meta k equal priority meta l equal priority meta m equal priority meta n equal priority meta o equal priority meta p equal priority meta q equal priority meta r equal priority meta s equal priority meta t equal priority meta u equal priority meta v equal priority meta w equal priority meta x equal priority meta y equal priority meta z equal priority sub x set x to x end sub equal priority sub star x set x to x end sub equal priority the empty set equal priority example remainder equal priority make visible x end visible equal priority error x term x end error equal priority error two x term x end error equal priority proof x term x cache x end proof equal priority proof two x term x end proof equal priority sequent eval x term x end eval equal priority seqeval init x term x end eval equal priority seqeval modus x term x end eval equal priority seqeval modus one x term x sequent x end eval equal priority seqeval verify x term x end eval equal priority seqeval verify one x term x sequent x end eval equal priority sequent eval plus x term x end eval equal priority seqeval plus one x term x sequent x end eval equal priority seqeval minus x term x end eval equal priority seqeval minus one x term x sequent x end eval equal priority seqeval deref x term x end eval equal priority seqeval deref one x term x sequent x end eval equal priority seqeval deref two x term x sequent x def x end eval equal priority seqeval at x term x end eval equal priority seqeval at one x term x sequent x end eval equal priority seqeval infer x term x end eval equal priority seqeval infer one x term x premise x sequent x end eval equal priority seqeval endorse x term x end eval equal priority seqeval endorse one x term x side x sequent x end eval equal priority seqeval est x term x end eval equal priority seqeval est one x term x name x sequent x end eval equal priority seqeval est two x term x name x sequent x def x end eval equal priority seqeval all x term x end eval equal priority seqeval all one x term x variable x sequent x end eval equal priority seqeval cut x term x end eval equal priority seqeval cut one x term x forerunner x end eval equal priority seqeval cut two x term x forerunner x sequent x end eval equal priority computably true x end true equal priority claims x cache x ref x end claims equal priority claims two x cache x ref x end claims equal priority the proof aspect equal priority proof equal priority lemma x says x end lemma equal priority proof of x reads x end proof equal priority in theory x lemma x says x end lemma equal priority in theory x antilemma x says x end antilemma equal priority in theory x rule x says x end rule equal priority in theory x antirule x says x end antirule equal priority verifier equal priority verify one x end verify equal priority verify two x proofs x end verify equal priority verify three x ref x sequents x diagnose x end verify equal priority verify four x premises x end verify equal priority verify five x ref x array x sequents x end verify equal priority verify six x ref x list x sequents x end verify equal priority verify seven x ref x id x sequents x end verify equal priority cut x and x end cut equal priority head x end head equal priority tail x end tail equal priority rule one x theory x end rule equal priority rule x subcodex x end rule equal priority rule tactic equal priority plus x and x end plus equal priority theory x end theory equal priority theory two x cache x end theory equal priority theory three x name x end theory equal priority theory four x name x sum x end theory equal priority example axiom lemma primed equal priority example scheme lemma primed equal priority example rule lemma primed equal priority contraexample lemma primed equal priority example axiom lemma equal priority example scheme lemma equal priority example rule lemma equal priority contraexample lemma equal priority example theory equal priority ragged right equal priority ragged right expansion equal priority parameter term x stack x seed x end parameter equal priority parameter term star x stack x seed x end parameter equal priority instantiate x with x end instantiate equal priority instantiate star x with x end instantiate equal priority occur x in x substitution x end occur equal priority occur star x in x substitution x end occur equal priority unify x with x substitution x end unify equal priority unify star x with x substitution x end unify equal priority unify two x with x substitution x end unify equal priority ell a equal priority ell b equal priority ell c equal priority ell d equal priority ell e equal priority ell f equal priority ell g equal priority ell h equal priority ell i equal priority ell j equal priority ell k equal priority ell l equal priority ell m equal priority ell n equal priority ell o equal priority ell p equal priority ell q equal priority ell r equal priority ell s equal priority ell t equal priority ell u equal priority ell v equal priority ell w equal priority ell x equal priority ell y equal priority ell z equal priority ell big a equal priority ell big b equal priority ell big c equal priority ell big d equal priority ell big e equal priority ell big f equal priority ell big g equal priority ell big h equal priority ell big i equal priority ell big j equal priority ell big k equal priority ell big l equal priority ell big m equal priority ell big n equal priority ell big o equal priority ell big p equal priority ell big q equal priority ell big r equal priority ell big s equal priority ell big t equal priority ell big u equal priority ell big v equal priority ell big w equal priority ell big x equal priority ell big y equal priority ell big z equal priority ell dummy equal priority sequent reflexivity equal priority tactic reflexivity equal priority sequent commutativity equal priority tactic commutativity equal priority the tactic aspect equal priority tactic equal priority tactic define x as x end define equal priority proof expand x state x cache x end expand equal priority proof expand list x state x cache x end expand equal priority proof state equal priority conclude one x cache x end conclude equal priority conclude two x proves x cache x end conclude equal priority conclude three x proves x lemma x substitution x end conclude equal priority intro x index x pyk x tex x end intro equal priority intro x pyk x tex x end intro equal priority peano zero equal priority peano one equal priority peano two equal priority peano a equal priority peano b equal priority peano c equal priority peano d equal priority peano e equal priority peano f equal priority peano g equal priority peano h equal priority peano i equal priority peano j equal priority peano k equal priority peano l equal priority peano m equal priority peano n equal priority peano o equal priority peano p equal priority peano q equal priority peano r equal priority peano s equal priority peano t equal priority peano u equal priority peano v equal priority peano w equal priority peano x equal priority peano y equal priority peano z equal priority peano nonfree x in x end nonfree equal priority peano nonfree star x in x end nonfree equal priority peano free x set x to x end free equal priority peano free star x set x to x end free equal priority peano sub x is x where x is x end sub equal priority peano sub star x is x where x is x end sub equal priority system s equal priority axiom a one equal priority axiom a two equal priority axiom a three equal priority axiom a four equal priority axiom a five equal priority axiom s one equal priority axiom s two equal priority axiom s three equal priority axiom s four equal priority axiom s five equal priority axiom s six equal priority axiom s seven equal priority axiom s eight equal priority axiom s nine equal priority rule mp equal priority rule gen equal priority lemma l three two a end priority greater than preassociative priority x sub x end sub equal priority x prime equal priority x assoc x end assoc equal priority x set x to x end set equal priority x set multi x to x end set equal priority x peano var end priority greater than preassociative priority unicode start of text x end unicode text equal priority unicode end of text equal priority text x end text equal priority text x plus x equal priority text x plus indent x equal priority
unicode newline x equal priority unicode space x equal priority unicode exclamation mark x equal priority unicode quotation mark x equal priority unicode number sign x equal priority unicode dollar sign x equal priority unicode percent x equal priority unicode ampersand x equal priority unicode apostrophe x equal priority unicode left parenthesis x equal priority unicode right parenthesis x equal priority unicode asterisk x equal priority unicode plus sign x equal priority unicode comma x equal priority unicode hyphen x equal priority unicode period x equal priority unicode slash x equal priority unicode zero x equal priority unicode one x equal priority unicode two x equal priority unicode three x equal priority unicode four x equal priority unicode five x equal priority unicode six x equal priority unicode seven x equal priority unicode eight x equal priority unicode nine x equal priority unicode colon x equal priority unicode semicolon x equal priority unicode less than x equal priority unicode equal sign x equal priority unicode greater than x equal priority unicode question mark x equal priority unicode commercial at x equal priority unicode capital a x equal priority unicode capital b x equal priority unicode capital c x equal priority unicode capital d x equal priority unicode capital e x equal priority unicode capital f x equal priority unicode capital g x equal priority unicode capital h x equal priority unicode capital i x equal priority unicode capital j x equal priority unicode capital k x equal priority unicode capital l x equal priority unicode capital m x equal priority unicode capital n x equal priority unicode capital o x equal priority unicode capital p x equal priority unicode capital q x equal priority unicode capital r x equal priority unicode capital s x equal priority unicode capital t x equal priority unicode capital u x equal priority unicode capital v x equal priority unicode capital w x equal priority unicode capital x x equal priority unicode capital y x equal priority unicode capital z x equal priority unicode left bracket x equal priority unicode backslash x equal priority unicode right bracket x equal priority unicode circumflex x equal priority unicode underscore x equal priority unicode grave accent x equal priority unicode small a x equal priority unicode small b x equal priority unicode small c x equal priority unicode small d x equal priority unicode small e x equal priority unicode small f x equal priority unicode small g x equal priority unicode small h x equal priority unicode small i x equal priority unicode small j x equal priority unicode small k x equal priority unicode small l x equal priority unicode small m x equal priority unicode small n x equal priority unicode small o x equal priority unicode small p x equal priority unicode small q x equal priority unicode small r x equal priority unicode small s x equal priority unicode small t x equal priority unicode small u x equal priority unicode small v x equal priority unicode small w x equal priority unicode small x x equal priority unicode small y x equal priority unicode small z x equal priority unicode left brace x equal priority unicode vertical line x equal priority unicode right brace x equal priority unicode tilde x equal priority preassociative x greater than x equal priority postassociative x greater than x equal priority priority x equal x equal priority priority x end priority equal priority newline x equal priority macro newline x end priority greater than preassociative priority x bit nil equal priority x bit one equal priority binary equal priority x color x end color equal priority x color star x end color end priority greater than preassociative priority x apply x equal priority x tagged apply x end priority greater than preassociative priority x raw head equal priority x raw tail equal priority x cardinal untag equal priority x head equal priority x tail equal priority x is singular equal priority x is cardinal equal priority x is data equal priority x is atomic equal priority x cardinal retract equal priority x tagged retract equal priority x boolean retract equal priority x ref equal priority x id equal priority x debug equal priority x root equal priority x zeroth equal priority x first equal priority x second equal priority x third equal priority x fourth equal priority x fifth equal priority x sixth equal priority x seventh equal priority x eighth equal priority x ninth equal priority x is error equal priority x is metavar equal priority x is metaclosed equal priority x is metaclosed star equal priority x peano succ end priority greater than preassociative priority x times x equal priority x times zero x equal priority x peano times x end priority greater than preassociative priority x plus x equal priority x plus zero x equal priority x plus one x equal priority x minus x equal priority x minus zero x equal priority x minus one x equal priority x peano plus x end priority greater than preassociative priority x term plus x end plus equal priority x term union x equal priority x term minus x end minus end priority greater than postassociative priority x raw pair x equal priority x eager pair x equal priority x tagged pair x equal priority x untagged double x equal priority x pair x equal priority x double x end priority greater than postassociative priority x comma x end priority greater than preassociative priority x boolean equal x equal priority x data equal x equal priority x cardinal equal x equal priority x peano equal x equal priority x tagged equal x equal priority x math equal x equal priority x reduce to x equal priority x term equal x equal priority x term list equal x equal priority x term root equal x equal priority x term in x equal priority x term subset x equal priority x term set equal x equal priority x sequent equal x equal priority x free in x equal priority x free in star x equal priority x free for x in x equal priority x free for star x in x equal priority x claim in x equal priority x less x equal priority x less zero x equal priority x less one x equal priority x peano is x equal priority x is peano var end priority greater than preassociative priority not x equal priority peano not x end priority greater than preassociative priority x and x equal priority x macro and x equal priority x simple and x equal priority x claim and x equal priority x peano and x end priority greater than preassociative priority x or x equal priority x parallel x equal priority x macro or x equal priority x peano or x end priority greater than preassociative priority peano all x indeed x equal priority peano exist x indeed x end priority greater than postassociative priority x macro imply x equal priority x peano imply x equal priority x peano iff x end priority greater than postassociative priority x guard x equal priority x tagged guard x end priority greater than preassociative priority x select x else x end select end priority greater than preassociative priority lambda x dot x equal priority tagging x equal priority open if x then x else x equal priority let x be x in x equal priority let x abbreviate x in x end priority greater than preassociative priority x init equal priority x modus equal priority x verify equal priority x curry plus equal priority x curry minus equal priority x dereference end priority greater than preassociative priority x at x equal priority x modus ponens x equal priority x modus probans x equal priority x conclude x end priority greater than postassociative priority x infer x equal priority x endorse x equal priority x id est x end priority greater than preassociative priority all x indeed x end priority greater than postassociative priority x rule plus x end priority greater than postassociative priority x cut x end priority greater than preassociative priority x proves x end priority greater than preassociative priority x proof of x reads x equal priority line x because x indeed x cut x equal priority because x indeed x qed equal priority line x premise x cut x equal priority line x side condition x cut x equal priority arbitrary x cut x equal priority locally define x as x cut x end priority greater than postassociative priority x

then x equal priority x

begin x

end x end priority greater than preassociative priority x tab x end priority greater than preassociative priority x row

x end priority greater than unicode end of text end define end math end left

end "



\section{Index}

\newcommand\myidxitem{\par\noindent}

\renewenvironment{theindex}{\let\item\myidxitem}{}

\printindex



\section{Bibliography}

\bibliography{./page}

\end{document}
End of file
File page.bib

@article {berline97,
author = {C. Berline and K. Grue},
title = {A $\kappa$-denotational semantics for {M}ap {T}heory
in {ZFC+SI}},
journal = TCS,
year = {1997},
volume = {179},
number = {1--2},
pages = {137--202},
month = {jun}}

@book {church41,
author = {A. Church},
title = {The Calculi of Lambda-Conversion},
publisher = {Princeton University Press},
year = {1941}}

@Article {godel,
author = {K. G{\"!o}del},
title = {{\"!U}ber for\-mal un\-ent\-scheid\-ba\-re
\mbox{S\"!at}\-ze der \mbox{Prin}\-ci\-pia
\mbox{Mathe}\-ma\-ti\-ca und ver\-wand\-ter
\mbox{Sys}\-teme \mbox{I}},
journal = {Mo\-nats\-hef\-te f{\"!u}r Mathe\-ma\-tik und Phy\-sik},
year = {19\-31},
volume = {12},
number = {\mbox{XXXVIII}},
pages = {173-198}}

@book {Gordon79,
author = {M. J. Gordon, A. J. Milner, C. P. Wadsworth},
title = {Edinburgh {LCF}, A mechanised logic of computation},
publisher = {Springer-Verlag},
year = {1979},
volume = {78},
series = {Lecture Notes in Computer Science}}

@article {grue92,
author = {K. Grue},
title = {Map Theory},
journal = TCS,
year = {1992},
volume = {102},
number = {1},
pages = {1--133},
month = {jul}}

@inproceedings{Logiweb,
author = {K. Grue},
title = {Logiweb},
editor = {Fairouz Kamareddine},
booktitle = {Mathematical Knowledge Management Symposium 2003},
publisher = {Elsevier},
series = {Electronic Notes in Theoretical Computer Science},
volume = {93},
year = {2004},
pages = {70--101}}

@article {mccarthy60,
author = {J. McCarthy},
title = {Recursive functions of symbolic expressions and their
computation by machine},
journal = {Communications of the ACM},
year = {1960},
pages = {184--195}}

@book {mendelson,
author = {E. Mendelson},
title = {Introduction to Mathematical Logic},
publisher = {Wadsworth and Brooks},
year = {1987},
edition = {3.}}

@book {TeXbook,
author = {D. Knuth},
title = {The TeXbook},
publisher = {Addison Wesley},
year = {1983}}

End of file
File page.sty
% thebibliography environment from
% /usr/share/texmf/tex/latex/base/book.cls
% with \chapter removed
\renewenvironment{thebibliography}[1]
{\list{\@biblabel{\@arabic\c@enumiv}}%
{\settowidth\labelwidth{\@biblabel{#1}}%
\leftmargin\labelwidth
\advance\leftmargin\labelsep
\@openbib@code
\usecounter{enumiv}%
\let\p@enumiv\@empty
\renewcommand\theenumiv{\@arabic\c@enumiv}}%
\sloppy
\clubpenalty4000
\@clubpenalty \clubpenalty
\widowpenalty4000%
\sfcode`\.\@m}
{\def\@noitemerr
{\@latex@warning{Empty `thebibliography' environment}}%
\endlist}
End of file
latex page
makeindex page
bibtex page
latex page
makeindex page
latex page"

The pyk compiler, version 0.grue.20050502+ by Klaus Grue,
GRD-2005-06-02.UTC:10:16:52.703168 = MJD-53523.TAI:10:17:24.703168 = LGT-4624424244703168e-6