59 \section{Miscellaneous attributes} |
59 \section{Miscellaneous attributes} |
60 |
60 |
61 \indexisaratt{tag}\indexisaratt{untag}\indexisaratt{COMP}\indexisaratt{RS} |
61 \indexisaratt{tag}\indexisaratt{untag}\indexisaratt{COMP}\indexisaratt{RS} |
62 \indexisaratt{OF}\indexisaratt{where}\indexisaratt{of}\indexisaratt{standard} |
62 \indexisaratt{OF}\indexisaratt{where}\indexisaratt{of}\indexisaratt{standard} |
63 \indexisaratt{elimify}\indexisaratt{transfer}\indexisaratt{export} |
63 \indexisaratt{elimify}\indexisaratt{transfer}\indexisaratt{export} |
|
64 \indexisaratt{unfold}\indexisaratt{fold} |
64 \begin{matharray}{rcl} |
65 \begin{matharray}{rcl} |
65 tag & : & \isaratt \\ |
66 tag & : & \isaratt \\ |
66 untag & : & \isaratt \\[0.5ex] |
67 untag & : & \isaratt \\[0.5ex] |
67 OF & : & \isaratt \\ |
68 OF & : & \isaratt \\ |
68 RS & : & \isaratt \\ |
69 RS & : & \isaratt \\ |
69 COMP & : & \isaratt \\[0.5ex] |
70 COMP & : & \isaratt \\[0.5ex] |
70 of & : & \isaratt \\ |
71 of & : & \isaratt \\ |
71 where & : & \isaratt \\[0.5ex] |
72 where & : & \isaratt \\[0.5ex] |
|
73 unfold & : & \isaratt \\ |
|
74 fold & : & \isaratt \\[0.5ex] |
72 standard & : & \isaratt \\ |
75 standard & : & \isaratt \\ |
73 elimify & : & \isaratt \\ |
76 elimify & : & \isaratt \\ |
74 export^* & : & \isaratt \\ |
77 export^* & : & \isaratt \\ |
75 transfer & : & \isaratt \\ |
78 transfer & : & \isaratt \\[0.5ex] |
76 \end{matharray} |
79 \end{matharray} |
77 |
80 |
78 \begin{rail} |
81 \begin{rail} |
79 ('tag' | 'untag') (nameref+) |
82 ('tag' | 'untag') (nameref+) |
80 ; |
83 ; |
106 \texttt{RS} and \texttt{COMP} in \cite[\S5]{isabelle-ref}). |
111 \texttt{RS} and \texttt{COMP} in \cite[\S5]{isabelle-ref}). |
107 |
112 |
108 \item [$of~\vec t$ and $where~\vec x = \vec t$] perform positional and named |
113 \item [$of~\vec t$ and $where~\vec x = \vec t$] perform positional and named |
109 instantiation, respectively. The terms given in $of$ are substituted for |
114 instantiation, respectively. The terms given in $of$ are substituted for |
110 any schematic variables occurring in a theorem from left to right; |
115 any schematic variables occurring in a theorem from left to right; |
111 ``\texttt{_}'' (underscore) indicates to skip a position. |
116 ``\texttt{_}'' (underscore) indicates to skip a position. Arguments |
|
117 following a ``$concl\colon$'' specification refer to positions of the |
|
118 conclusion of a rule. |
|
119 |
|
120 \item [$unfold~thms$ and $fold~thms$] expand and fold back again the given |
|
121 meta-level definitions throughout a rule. |
112 |
122 |
113 \item [$standard$] puts a theorem into the standard form of object-rules, just |
123 \item [$standard$] puts a theorem into the standard form of object-rules, just |
114 as the ML function \texttt{standard} (see \cite[\S5]{isabelle-ref}). |
124 as the ML function \texttt{standard} (see \cite[\S5]{isabelle-ref}). |
115 |
125 |
116 \item [$elimify$] turns an destruction rule into an elimination, just as the |
126 \item [$elimify$] turns an destruction rule into an elimination, just as the |
445 |
455 |
446 \begin{descr} |
456 \begin{descr} |
447 \item [$intro$, $elim$, $dest$] add introduction, elimination, destruct rules, |
457 \item [$intro$, $elim$, $dest$] add introduction, elimination, destruct rules, |
448 respectively. By default, rules are considered as \emph{safe}, while a |
458 respectively. By default, rules are considered as \emph{safe}, while a |
449 single ``!'' classifies as \emph{unsafe}, and ``!!'' as \emph{extra} (i.e.\ |
459 single ``!'' classifies as \emph{unsafe}, and ``!!'' as \emph{extra} (i.e.\ |
450 not applied in the search-oriented automated methods, but only $rule$). |
460 not applied in the search-oriented automated methods, but only in |
|
461 single-step methods such as $rule$). |
451 |
462 |
452 \item [$iff$] declares equations both as rewrite rules for the simplifier and |
463 \item [$iff$] declares equations both as rewrite rules for the simplifier and |
453 classical reasoning rules. |
464 classical reasoning rules. |
454 |
465 |
455 \item [$delrule$] deletes introduction or elimination rules from the context. |
466 \item [$delrule$] deletes introduction or elimination rules from the context. |