# HG changeset patch # User nipkow # Date 1116848385 -7200 # Node ID 6887e6d12a94fa0b41b7fbf7e2c969a3df868353 # Parent e38b2ec79a2e2b6f3c328b0ebd48bff12e62c2c1 converted back from 0..< to <. diff -r e38b2ec79a2e -r 6887e6d12a94 doc-src/IsarOverview/Isar/Induction.thy --- a/doc-src/IsarOverview/Isar/Induction.thy Mon May 23 12:09:30 2005 +0200 +++ b/doc-src/IsarOverview/Isar/Induction.thy Mon May 23 13:39:45 2005 +0200 @@ -77,7 +77,7 @@ subsection{*Structural induction*} text{* We start with an inductive proof where both cases are proved automatically: *} -lemma "2 * (\i::nat = 0..i::nat < n+1. i) = n*(n+1)" by (induct n, simp_all) text{*\noindent The constraint @{text"::nat"} is needed because all of @@ -97,7 +97,7 @@ text{* \noindent We could refine this further to show more of the equational proof. Instead we explore the same avenue as for case distinctions: introducing context via the \isakeyword{case} command: *} -lemma "2 * (\i::nat = 0..i::nat < n+1. i) = n*(n+1)" proof (induct n) case 0 show ?case by simp next diff -r e38b2ec79a2e -r 6887e6d12a94 doc-src/IsarOverview/Isar/document/Induction.tex --- a/doc-src/IsarOverview/Isar/document/Induction.tex Mon May 23 12:09:30 2005 +0200 +++ b/doc-src/IsarOverview/Isar/document/Induction.tex Mon May 23 13:39:45 2005 +0200 @@ -115,7 +115,7 @@ We start with an inductive proof where both cases are proved automatically:% \end{isamarkuptext}% \isamarkuptrue% -\isacommand{lemma}\ {\isachardoublequote}{\isadigit{2}}\ {\isacharasterisk}\ {\isacharparenleft}{\isasymSum}i{\isacharcolon}{\isacharcolon}nat\ {\isacharequal}\ {\isadigit{0}}{\isachardot}{\isachardot}{\isacharless}n{\isacharplus}{\isadigit{1}}{\isachardot}\ i{\isacharparenright}\ {\isacharequal}\ n{\isacharasterisk}{\isacharparenleft}n{\isacharplus}{\isadigit{1}}{\isacharparenright}{\isachardoublequote}\isanewline +\isacommand{lemma}\ {\isachardoublequote}{\isadigit{2}}\ {\isacharasterisk}\ {\isacharparenleft}{\isasymSum}i{\isacharcolon}{\isacharcolon}nat\ {\isacharless}\ n{\isacharplus}{\isadigit{1}}{\isachardot}\ i{\isacharparenright}\ {\isacharequal}\ n{\isacharasterisk}{\isacharparenleft}n{\isacharplus}{\isadigit{1}}{\isacharparenright}{\isachardoublequote}\isanewline \isamarkupfalse% \isamarkupfalse% % @@ -146,7 +146,7 @@ introducing context via the \isakeyword{case} command:% \end{isamarkuptext}% \isamarkuptrue% -\isacommand{lemma}\ {\isachardoublequote}{\isadigit{2}}\ {\isacharasterisk}\ {\isacharparenleft}{\isasymSum}i{\isacharcolon}{\isacharcolon}nat\ {\isacharequal}\ {\isadigit{0}}{\isachardot}{\isachardot}{\isacharless}n{\isacharplus}{\isadigit{1}}{\isachardot}\ i{\isacharparenright}\ {\isacharequal}\ n{\isacharasterisk}{\isacharparenleft}n{\isacharplus}{\isadigit{1}}{\isacharparenright}{\isachardoublequote}\isanewline +\isacommand{lemma}\ {\isachardoublequote}{\isadigit{2}}\ {\isacharasterisk}\ {\isacharparenleft}{\isasymSum}i{\isacharcolon}{\isacharcolon}nat\ {\isacharless}\ n{\isacharplus}{\isadigit{1}}{\isachardot}\ i{\isacharparenright}\ {\isacharequal}\ n{\isacharasterisk}{\isacharparenleft}n{\isacharplus}{\isadigit{1}}{\isacharparenright}{\isachardoublequote}\isanewline \isamarkupfalse% \isamarkupfalse% \isamarkupfalse%