doc-src/TutorialI/Misc/document/trace_simp.tex
author wenzelm
Tue, 01 Aug 2000 13:43:22 +0200
changeset 9490 c2606af9922c
parent 9145 9f7b8de5bfaf
child 9541 d17c0b34d5c8
permissions -rw-r--r--
tuned msg;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
8749
2665170f104a Adding generated files
nipkow
parents:
diff changeset
     1
\begin{isabelle}%
2665170f104a Adding generated files
nipkow
parents:
diff changeset
     2
%
2665170f104a Adding generated files
nipkow
parents:
diff changeset
     3
\begin{isamarkuptext}%
2665170f104a Adding generated files
nipkow
parents:
diff changeset
     4
Using the simplifier effectively may take a bit of experimentation.  Set the
2665170f104a Adding generated files
nipkow
parents:
diff changeset
     5
\ttindexbold{trace_simp} \rmindex{flag} to get a better idea of what is going
2665170f104a Adding generated files
nipkow
parents:
diff changeset
     6
on:%
2665170f104a Adding generated files
nipkow
parents:
diff changeset
     7
\end{isamarkuptext}%
2665170f104a Adding generated files
nipkow
parents:
diff changeset
     8
\isacommand{ML}~{"}set~trace\_simp{"}\isanewline
2665170f104a Adding generated files
nipkow
parents:
diff changeset
     9
\isacommand{lemma}~{"}rev~[a]~=~[]{"}\isanewline
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    10
\isacommand{apply}(simp)%
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    11
\begin{isamarkuptxt}%
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    12
\noindent
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    13
produces the trace
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    14
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    15
\begin{ttbox}
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    16
Applying instance of rewrite rule:
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    17
rev (?x1 \# ?xs1) == rev ?xs1 @ [?x1]
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    18
Rewriting:
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    19
rev [x] == rev [] @ [x]
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    20
Applying instance of rewrite rule:
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    21
rev [] == []
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    22
Rewriting:
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    23
rev [] == []
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    24
Applying instance of rewrite rule:
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    25
[] @ ?y == ?y
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    26
Rewriting:
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    27
[] @ [x] == [x]
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    28
Applying instance of rewrite rule:
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    29
?x3 \# ?t3 = ?t3 == False
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    30
Rewriting:
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    31
[x] = [] == False
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    32
\end{ttbox}
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    33
8771
026f37a86ea7 *** empty log message ***
nipkow
parents: 8749
diff changeset
    34
In more complicated cases, the trace can be quite lenghty, especially since
8749
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    35
invocations of the simplifier are often nested (e.g.\ when solving conditions
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    36
of rewrite rules). Thus it is advisable to reset it:%
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    37
\end{isamarkuptxt}%
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    38
\isacommand{ML}~{"}reset~trace\_simp{"}\isanewline
2665170f104a Adding generated files
nipkow
parents:
diff changeset
    39
\end{isabelle}%
9145
9f7b8de5bfaf updated;
wenzelm
parents: 8771
diff changeset
    40
%%% Local Variables:
9f7b8de5bfaf updated;
wenzelm
parents: 8771
diff changeset
    41
%%% mode: latex
9f7b8de5bfaf updated;
wenzelm
parents: 8771
diff changeset
    42
%%% TeX-master: "root"
9f7b8de5bfaf updated;
wenzelm
parents: 8771
diff changeset
    43
%%% End: