doc-src/Locales/Locales/document/Examples2.tex
author wenzelm
Wed, 04 Jun 2008 16:44:08 +0200
changeset 27080 0ee385433247
parent 27063 d1d35284542f
child 29297 62e0f892e525
permissions -rw-r--r--
updated generated file;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
27063
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
     1
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
     2
\begin{isabellebody}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
     3
\def\isabellecontext{Examples{\isadigit{2}}}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
     4
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
     5
\isadelimtheory
27080
0ee385433247 updated generated file;
wenzelm
parents: 27063
diff changeset
     6
\isanewline
0ee385433247 updated generated file;
wenzelm
parents: 27063
diff changeset
     7
\isanewline
27063
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
     8
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
     9
\endisadelimtheory
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    10
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    11
\isatagtheory
27080
0ee385433247 updated generated file;
wenzelm
parents: 27063
diff changeset
    12
\isacommand{theory}\isamarkupfalse%
0ee385433247 updated generated file;
wenzelm
parents: 27063
diff changeset
    13
\ Examples{\isadigit{2}}\isanewline
0ee385433247 updated generated file;
wenzelm
parents: 27063
diff changeset
    14
\isakeyword{imports}\ Examples\isanewline
0ee385433247 updated generated file;
wenzelm
parents: 27063
diff changeset
    15
\isakeyword{begin}%
27063
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    16
\endisatagtheory
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    17
{\isafoldtheory}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    18
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    19
\isadelimtheory
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    20
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    21
\endisadelimtheory
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    22
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    23
\begin{isamarkuptext}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    24
This is achieved by unfolding suitable equations during
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    25
  interpretation.  These equations are given after the keyword
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    26
  \isakeyword{where} and require proofs.  The revised command,
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    27
  replacing \isa{{\isasymsqsubset}} by \isa{{\isacharless}}, is:%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    28
\end{isamarkuptext}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    29
\isamarkuptrue%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    30
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    31
\isadelimvisible
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    32
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    33
\endisadelimvisible
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    34
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    35
\isatagvisible
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    36
\isacommand{interpretation}\isamarkupfalse%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    37
\ nat{\isacharcolon}\ partial{\isacharunderscore}order\ {\isacharbrackleft}{\isachardoublequoteopen}op\ {\isasymle}\ {\isacharcolon}{\isacharcolon}\ {\isacharbrackleft}nat{\isacharcomma}\ nat{\isacharbrackright}\ {\isasymRightarrow}\ bool{\isachardoublequoteclose}{\isacharbrackright}\isanewline
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    38
\ \ \isakeyword{where}\ {\isachardoublequoteopen}partial{\isacharunderscore}order{\isachardot}less\ op\ {\isasymle}\ {\isacharparenleft}x{\isacharcolon}{\isacharcolon}nat{\isacharparenright}\ y\ {\isacharequal}\ {\isacharparenleft}x\ {\isacharless}\ y{\isacharparenright}{\isachardoublequoteclose}\isanewline
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    39
\isacommand{proof}\isamarkupfalse%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    40
\ {\isacharminus}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    41
\begin{isamarkuptxt}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    42
The goals are \begin{isabelle}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    43
\ {\isadigit{1}}{\isachardot}\ partial{\isacharunderscore}order\ op\ {\isasymle}\isanewline
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    44
\ {\isadigit{2}}{\isachardot}\ partial{\isacharunderscore}order{\isachardot}less\ op\ {\isasymle}\ x\ y\ {\isacharequal}\ {\isacharparenleft}x\ {\isacharless}\ y{\isacharparenright}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    45
\end{isabelle}
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    46
    The proof that \isa{{\isasymle}} is a partial order is a above.%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    47
\end{isamarkuptxt}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    48
\isamarkuptrue%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    49
\ \ \isacommand{show}\isamarkupfalse%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    50
\ {\isachardoublequoteopen}partial{\isacharunderscore}order\ {\isacharparenleft}op\ {\isasymle}\ {\isacharcolon}{\isacharcolon}\ nat\ {\isasymRightarrow}\ nat\ {\isasymRightarrow}\ bool{\isacharparenright}{\isachardoublequoteclose}\isanewline
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    51
\ \ \ \ \isacommand{by}\isamarkupfalse%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    52
\ unfold{\isacharunderscore}locales\ auto%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    53
\begin{isamarkuptxt}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    54
The second goal is shown by unfolding the
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    55
    definition of \isa{partial{\isacharunderscore}order{\isachardot}less}.%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    56
\end{isamarkuptxt}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    57
\isamarkuptrue%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    58
\ \ \isacommand{show}\isamarkupfalse%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    59
\ {\isachardoublequoteopen}partial{\isacharunderscore}order{\isachardot}less\ op\ {\isasymle}\ {\isacharparenleft}x{\isacharcolon}{\isacharcolon}nat{\isacharparenright}\ y\ {\isacharequal}\ {\isacharparenleft}x\ {\isacharless}\ y{\isacharparenright}{\isachardoublequoteclose}\isanewline
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    60
\ \ \ \ \isacommand{unfolding}\isamarkupfalse%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    61
\ partial{\isacharunderscore}order{\isachardot}less{\isacharunderscore}def\ {\isacharbrackleft}OF\ {\isacharbackquoteopen}partial{\isacharunderscore}order\ op\ {\isasymle}{\isacharbackquoteclose}{\isacharbrackright}\isanewline
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    62
\ \ \ \ \isacommand{by}\isamarkupfalse%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    63
\ auto\isanewline
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    64
\isacommand{qed}\isamarkupfalse%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    65
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    66
\endisatagvisible
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    67
{\isafoldvisible}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    68
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    69
\isadelimvisible
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    70
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    71
\endisadelimvisible
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    72
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    73
\begin{isamarkuptext}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    74
Note that the above proof is not in the context of a locale.
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    75
  Hence, the correct interpretation of \isa{partial{\isacharunderscore}order{\isachardot}less{\isacharunderscore}def} is obtained manually with \isa{OF}.%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    76
\end{isamarkuptext}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    77
\isamarkuptrue%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    78
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    79
\isadelimtheory
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    80
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    81
\endisadelimtheory
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    82
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    83
\isatagtheory
27080
0ee385433247 updated generated file;
wenzelm
parents: 27063
diff changeset
    84
\isacommand{end}\isamarkupfalse%
27063
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    85
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    86
\endisatagtheory
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    87
{\isafoldtheory}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    88
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    89
\isadelimtheory
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    90
%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    91
\endisadelimtheory
27080
0ee385433247 updated generated file;
wenzelm
parents: 27063
diff changeset
    92
\isanewline
27063
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    93
\end{isabellebody}%
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    94
%%% Local Variables:
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    95
%%% mode: latex
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    96
%%% TeX-master: "root"
d1d35284542f New version covering interpretation.
ballarin
parents:
diff changeset
    97
%%% End: