src/Doc/Datatypes/Datatypes.thy
changeset 58508 cb68c3f564fe
parent 58474 330ebcc3e77d
child 58509 251fc4a51700
equal deleted inserted replaced
58507:ce0b9be06f85 58508:cb68c3f564fe
   651 
   651 
   652 \medskip
   652 \medskip
   653 
   653 
   654 \noindent
   654 \noindent
   655 In addition, some of the plugins introduce their own constants
   655 In addition, some of the plugins introduce their own constants
   656 (Section~\ref{sec:plugins}). The case combinator, discriminators, and selectors
   656 (Section~\ref{sec:controlling-plugins}). The case combinator, discriminators,
   657 are collectively called \emph{destructors}. The prefix ``@{text "t."}'' is an
   657 and selectors are collectively called \emph{destructors}. The prefix
   658 optional component of the names and is normally hidden.
   658 ``@{text "t."}'' is an optional component of the names and is normally hidden.
   659 *}
   659 *}
   660 
   660 
   661 
   661 
   662 subsection {* Generated Theorems
   662 subsection {* Generated Theorems
   663   \label{ssec:datatype-generated-theorems} *}
   663   \label{ssec:datatype-generated-theorems} *}
   683 \end{itemize}
   683 \end{itemize}
   684 
   684 
   685 \noindent
   685 \noindent
   686 The full list of named theorems can be obtained as usual by entering the
   686 The full list of named theorems can be obtained as usual by entering the
   687 command \keyw{print_theorems} immediately after the datatype definition.
   687 command \keyw{print_theorems} immediately after the datatype definition.
   688 This list includes theorems produced by plugins (Section~\ref{sec:plugins}),
   688 This list includes theorems produced by plugins
   689 but normally excludes low-level theorems that reveal internal constructions. To
   689 (Section~\ref{sec:controlling-plugins}), but normally excludes low-level
   690 make these accessible, add the line
   690 theorems that reveal internal constructions. To make these accessible, add
       
   691 the line
   691 *}
   692 *}
   692 
   693 
   693     declare [[bnf_note_all]]
   694     declare [[bnf_note_all]]
   694 (*<*)
   695 (*<*)
   695     declare [[bnf_note_all = false]]
   696     declare [[bnf_note_all = false]]
  2923 
  2924 
  2924 \end{description}
  2925 \end{description}
  2925 \end{indentblock}
  2926 \end{indentblock}
  2926 
  2927 
  2927 In addition, the plugin sets the @{text "[relator_eq_onp]"} attribute on a
  2928 In addition, the plugin sets the @{text "[relator_eq_onp]"} attribute on a
  2928 variant of the @{text t.rel_eq_onp} property generated by the @{text quotient}
  2929 variant of the @{text t.rel_eq_onp} property generated by the @{text lifting}
  2929 plugin, the @{text "[relator_mono]"} attribute on @{text t.rel_mono}, and the
  2930 plugin, the @{text "[relator_mono]"} attribute on @{text t.rel_mono}, and the
  2930 @{text "[relator_distr]"} attribute on @{text t.rel_compp}.
  2931 @{text "[relator_distr]"} attribute on @{text t.rel_compp}.
  2931 *}
  2932 *}
  2932 
  2933 
  2933 
  2934