--- a/doc-src/TutorialI/fp.tex Fri Mar 09 19:05:48 2001 +0100
+++ b/doc-src/TutorialI/fp.tex Mon Mar 12 18:17:45 2001 +0100
@@ -269,6 +269,26 @@
\input{Misc/document/prime_def.tex}
+\section{The Definitional Approach}
+\label{sec:definitional}
+
+As we pointed out at the beginning of the chapter, asserting arbitrary
+axioms, e.g. $f(n) = f(n) + 1$, may easily lead to contradictions. In order
+to avoid this danger, this tutorial advocates the definitional rather than
+the axiomatic approach: introduce new concepts by definitions, thus
+preserving consistency. However, on the face of it, Isabelle/HOL seems to
+support many more constructs than just definitions, for example
+\isacommand{primrec}. The crucial point is that internally, everything
+(except real axioms) is reduced to a definition. For example, given some
+\isacommand{primrec} function definition, this is turned into a proper
+(nonrecursive!) definition, and the user-supplied recursion equations are
+derived as theorems from the definition. This tricky process is completely
+hidden from the user and it is not necessary to understand the details. The
+result of the definitional approach is that \isacommand{primrec} is as safe
+as pure \isacommand{defs} are, but more convenient. And this is not just the
+case for \isacommand{primrec} but also for the other commands described
+later, like \isacommand{recdef} and \isacommand{inductive}.
+
\chapter{More Functional Programming}
The purpose of this chapter is to deepen the reader's understanding of the