343 \texttt{{\at}{\ttlbrace}term[show_types]~"f(x)~=~a~+~x"{\ttrbrace}} within a |
343 \texttt{{\at}{\ttlbrace}term[show_types]~"f(x)~=~a~+~x"{\ttrbrace}} within a |
344 text block would cause |
344 text block would cause |
345 \isa{(f{\isasymColon}'a~{\isasymRightarrow}~'a)~(x{\isasymColon}'a)~=~(a{\isasymColon}'a)~+~x} |
345 \isa{(f{\isasymColon}'a~{\isasymRightarrow}~'a)~(x{\isasymColon}'a)~=~(a{\isasymColon}'a)~+~x} |
346 to appear in the final {\LaTeX} document. |
346 to appear in the final {\LaTeX} document. |
347 |
347 |
348 \medskip |
|
349 |
|
350 Antiquotations do not only spare the author from tedious typing, but also |
348 Antiquotations do not only spare the author from tedious typing, but also |
351 achieve some degree of consistency-checking of informal explanations with |
349 achieve some degree of consistency-checking of informal explanations with |
352 formal developments, since well-formedness of terms and types with respect to |
350 formal developments, since well-formedness of terms and types with respect to |
353 the current theory or proof context can be ensured. |
351 the current theory or proof context can be ensured. The \texttt{name} |
354 |
352 antiquotation is an exception to this rule: it prints an uninterpreted text |
355 \indexisarant{thm}\indexisarant{prop}\indexisarant{term}\indexisarant{typ} |
353 argument that is not checked in any way. |
|
354 |
|
355 \indexisarant{thm}\indexisarant{prop}\indexisarant{term} |
|
356 \indexisarant{typ}\indexisarant{name} |
356 \begin{rail} |
357 \begin{rail} |
357 atsign lbrace antiquotation rbrace |
358 atsign lbrace antiquotation rbrace |
358 ; |
359 ; |
359 |
360 |
360 antiquotation: |
361 antiquotation: |
361 'thm' options thmrefs | |
362 'thm' options thmrefs | |
362 'prop' options prop | |
363 'prop' options prop | |
363 'term' options term | |
364 'term' options term | |
364 'typ' options type |
365 'typ' options type | |
|
366 'name' options name |
365 ; |
367 ; |
366 options: '[' (option * ',') ']' |
368 options: '[' (option * ',') ']' |
367 ; |
369 ; |
368 option: name | name '=' name |
370 option: name | name '=' name |
369 ; |
371 ; |
389 quotes. |
391 quotes. |
390 \item[$mode = name$] adds $name$ to the print mode to be used for presentation |
392 \item[$mode = name$] adds $name$ to the print mode to be used for presentation |
391 (see also \cite{isabelle-ref}). Note that the standard setup for {\LaTeX} |
393 (see also \cite{isabelle-ref}). Note that the standard setup for {\LaTeX} |
392 output is already present by default, including the modes ``$latex$'', |
394 output is already present by default, including the modes ``$latex$'', |
393 ``$xsymbols$'', ``$symbols$''. |
395 ``$xsymbols$'', ``$symbols$''. |
394 \item[$margin = nat$] changes the margin for pretty printing of display |
396 \item[$margin = nat$ and $indent = nat$] change the margin or indentation for |
395 material. |
397 pretty printing of display material. |
396 \end{descr} |
398 \end{descr} |
397 |
399 |
398 For boolean flags, ``$name = true$'' may be abbreviated as ``$name$''. All of |
400 For boolean flags, ``$name = true$'' may be abbreviated as ``$name$''. All of |
399 the above flags are disabled by default, unless changed from ML. |
401 the above flags are disabled by default, unless changed from ML. |
400 |
402 |