doc-src/ProgProve/Thys/document/Bool_nat_list.tex
changeset 47719 8aac84627b84
parent 47711 c1cca2a052e4
equal deleted inserted replaced
47718:39229c760636 47719:8aac84627b84
   258 \begin{isamarkuptext}%
   258 \begin{isamarkuptext}%
   259 yields \isa{Cons\ b\ {\isaliteral{28}{\isacharparenleft}}Cons\ a\ Nil{\isaliteral{29}{\isacharparenright}}}.
   259 yields \isa{Cons\ b\ {\isaliteral{28}{\isacharparenleft}}Cons\ a\ Nil{\isaliteral{29}{\isacharparenright}}}.
   260 \medskip
   260 \medskip
   261 
   261 
   262 Figure~\ref{fig:MyList} shows the theory created so far.
   262 Figure~\ref{fig:MyList} shows the theory created so far.
       
   263 Because \isa{list}, \isa{Nil}, \isa{Cons} etc are already predefined,
       
   264  Isabelle prints qualified (long) names when executing this theory, for example, \isa{MyList{\isaliteral{2E}{\isachardot}}Nil}
       
   265  instead of \isa{Nil}.
       
   266  To suppress the qualified names you can insert the command
       
   267  \texttt{declare [[names\_short]]}.
       
   268  This is not recommended in general but just for this unusual example.
   263 % Notice where the
   269 % Notice where the
   264 %quotations marks are needed that we mostly sweep under the carpet.  In
   270 %quotations marks are needed that we mostly sweep under the carpet.  In
   265 %particular, notice that \isacom{datatype} requires no quotation marks on the
   271 %particular, notice that \isacom{datatype} requires no quotation marks on the
   266 %left-hand side, but that on the right-hand side each of the argument
   272 %left-hand side, but that on the right-hand side each of the argument
   267 %types of a constructor needs to be enclosed in quotation marks.
   273 %types of a constructor needs to be enclosed in quotation marks.