From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001
From: Norbert Preining <norbert@preining.info>
Date: Mon, 2 Sep 2019 13:46:59 +0900
Subject: Initial commit

---
 .../contrib/tcolorbox/tcolorbox.doc.theorems.tex   | 1065 ++++++++++++++++++++
 1 file changed, 1065 insertions(+)
 create mode 100644 macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex

(limited to 'macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex')

diff --git a/macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex b/macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex
new file mode 100644
index 0000000000..e67508f74c
--- /dev/null
+++ b/macros/latex/contrib/tcolorbox/tcolorbox.doc.theorems.tex
@@ -0,0 +1,1065 @@
+% !TeX root = tcolorbox.tex
+% include file of tcolorbox.tex (manual of the LaTeX package tcolorbox)
+\clearpage
+\section{Library \mylib{theorems}}\label{sec:theorems}%
+\tcbset{external/prefix=external/theorems_}%
+The library is loaded by a package option or inside the preamble by:
+\begin{dispListing}
+\tcbuselibrary{theorems}
+\end{dispListing}
+This also loads the package |amsmath|.
+
+\subsection{Macros of the Library}
+
+\begin{docCommand}[doc updated=2016-06-22]{newtcbtheorem}{\oarg{init options}\marg{name}\marg{display name}\marg{options}\marg{prefix}}
+  Creates new environments \meta{name} and \meta{name}|*| based on |tcolorbox| to frame a
+  (mathematical) theorem. The \meta{display name} is used in the title line
+  with a number, e.\,g. \mbox{\flqq Theorem 5.1\frqq}.
+  The \meta{options} are given to the underlying |tcolorbox| to control
+  the appearance.
+  %The \meta{counter} is used for automatic numbering.
+  The \meta{init options} allow setting up automatic numbering,
+  see \Vref{sec:initkeys}.\par
+  The new environment \meta{name} takes one optional and two mandatory
+  parameters. The optional parameter supplements the options and should be
+  used only in rare cases.
+  The first mandatory parameter is the title text for the theorem and
+  is also set as \refKey{/tcb/nameref} identifier.
+  The second mandatory parameter is a \meta{marker}. The theorem is
+  automatically labeled with \meta{prefix}\meta{separator}\meta{marker}
+  where \meta{separator} is predefined as '|:|', see \refKey{/tcb/label separator}.\par
+  The new environment \meta{name}|*| takes one optional and one mandatory
+  parameter and represents an unnumbered variant of the environment \meta{name}.
+  This variant is not labeled and not listed in lists of theorems.
+\enlargethispage*{20mm}
+\inputpreamblelisting{F}
+\begin{dispExample}
+% usage of '\nameref' needs 'nameref' or 'hyperref' to be loaded
+\begin{mytheo}{This is my title}{theoexample}
+  This is the text of the theorem. The counter is automatically assigned and,
+  in this example, prefixed with the section number. This theorem is numbered with
+  \ref{th:theoexample}, it is given on page~\pageref{th:theoexample},
+  and it is titled \flqq\nameref{th:theoexample}\frqq.
+\end{mytheo}
+\end{dispExample}
+
+\begin{dispExample}
+\begin{mytheo}[label=myownlabel]{This is my title}{}
+  The label parameter can be left empty without \LaTeX\ error.
+  Or you may use an own label to reference Theorem \ref{myownlabel}.
+\end{mytheo}
+\end{dispExample}
+
+\begin{dispExample}
+\begin{mytheo}{}{}
+  The title can also be left empty without problem. Note that the ':'
+  vanished magically.
+\end{mytheo}
+\end{dispExample}
+
+\begin{dispExample}
+\begin{mytheo*}{Unnumbered Theorem}
+  This theorem is not numbered.
+\end{mytheo*}
+\end{dispExample}
+
+\begin{dispExample}
+\begin{mytheo*}{}
+  This theorem has no number and no title.
+\end{mytheo*}
+\end{dispExample}
+
+\begin{marker}
+To switch off the \texttt{nameref} feature permanently, add
+\mbox{\texttt{nameref/.style=\{\}}} inside the \meta{options} list.
+\end{marker}
+
+\end{docCommand}
+
+
+\begin{docCommand}{renewtcbtheorem}{\oarg{init options}\marg{name}\marg{display name}\marg{options}\marg{prefix}}
+  Operates like \refCom{newtcbtheorem}, but based on |\renewenvironment| instead of |\newenvironment|.
+  An existing environment is redefined.
+\end{docCommand}
+
+
+\begin{docCommand}{tcbmaketheorem}{\marg{name}\marg{display name}\marg{options}\marg{counter}\marg{prefix}}
+\smallskip\begin{marker}
+\refCom{newtcbtheorem} supersedes this macro.
+\end{marker}
+\begin{deprecated}
+  Creates a new environment \meta{name} based on |tcolorbox| to frame a
+  (mathematical) theorem. The \meta{display name} is used in the title line
+  with a number, e.\,g. \mbox{\flqq Theorem 5.1\frqq}.
+  The \meta{options} are given to the underlying |tcolorbox| to control
+  the appearance.
+  The \meta{counter} is used for automatic numbering.
+  The new environment \meta{name} takes one optional and two mandatory
+  parameters. The optional parameter supplements the options and should be
+  used only in rare cases.
+  The first mandatory parameter is the title text for the theorem and
+  the second mandatory parameter is a \meta{marker}. The theorem is
+  automatically labeled with \meta{prefix}\meta{separator}\meta{marker}
+  where \meta{separator} is predefined as '|:|', see \refKey{/tcb/label separator}.
+\end{deprecated}
+\end{docCommand}
+
+\clearpage
+\begin{docCommand}{tcboxmath}{\oarg{options}\marg{mathematical box content}}
+  Creates a \refEnv{tcolorbox} which is fitted to the width of the given
+  \meta{mathematical box content}. This box is intended to be applied as
+  part of a larger formula and may be used as replacement for the |\boxed|
+  macro of |amsmath|.
+
+\begin{dispExample}
+\begin{equation}
+\tcbset{fonttitle=\scriptsize}
+\tcboxmath[colback=LightBlue!25!white,colframe=blue]{ a^2 = 16 }
+\quad \Rightarrow \quad
+\tcboxmath[colback=Salmon!25!white,colframe=red,title=Implication]%
+  { a = 4 ~\vee~ a=-4. }
+\end{equation}
+\end{dispExample}
+\end{docCommand}
+
+\begin{docCommand}{tcbhighmath}{\oarg{options}\marg{mathematical box content}}
+  This is a special case of the \refCom{tcboxmath} macro which uses
+  the style \refKey{/tcb/highlight math}.
+  It is intended to provide context sensitive highlighting of formula parts.
+  The color settings via \refKey{/tcb/highlight math style} may be different
+  inside theorems or other colored areas and outside.
+
+\begin{dispExample}
+\tcbset{myformula/.style={colback=yellow!10!white,colframe=red!50!black,
+  every box/.style={highlight math style={colback=LightBlue!50!white,colframe=Navy}}
+  }}
+
+\begin{align}
+  \tcbhighmath{\sum\limits_{n=1}^{\infty} \frac{1}{n}} &= \infty.\\
+  \int x^2 ~\text{d}x                     &= \frac13 x^3 + c.
+\end{align}
+
+\begin{tcolorbox}[ams align,myformula]
+  \tcbhighmath{\sum\limits_{n=1}^{\infty} \frac{1}{n}} &= \infty.\\
+  \int x^2 ~\text{d}x                     &= \frac13 x^3 + c.
+\end{tcolorbox}
+\end{dispExample}
+
+\clearpage
+\refCom{tcbhighmath} can be used in symbiosis with the |empheq| package
+which allows to specify own boxing commands to mark multiline formulas.
+
+\begin{dispExample}
+% \usepackage{empheq}
+\begin{empheq}[box=\tcbhighmath]{align}
+a&=\sin(z)\\
+E&=mc^2 + \int_a^b x\, dx
+\end{empheq}
+
+\tcbset{highlight math style={enhanced,
+  colframe=red!60!black,colback=yellow!50!white,arc=4pt,boxrule=1pt,
+  drop fuzzy shadow}}
+
+\begin{empheq}[box=\tcbhighmath]{align}
+a&=\sin(z)\\
+E&=mc^2 + \int_a^b x\, dx
+\end{empheq}
+\end{dispExample}
+
+Besides \refCom{tcbhighmath}, one can easily define an independent new box
+based on \refCom{tcbox} which acts like \refCom{tcbhighmath}:
+
+\begin{dispExample}
+% \usepackage{empheq}
+\newtcbox{\otherbox}[1][]{nobeforeafter,math upper,tcbox raise base,
+  enhanced,frame hidden,boxrule=0pt,interior style={top color=green!10!white,
+  bottom color=green!10!white,middle color=green!50!yellow},
+  fuzzy halo=1pt with green,#1}
+
+\begin{empheq}[box=\otherbox]{align}
+a&=\sin(z)\\
+E&=mc^2 + \int_a^b x\, dx
+\end{empheq}
+
+\begin{equation}
+\tcbhighmath{E} = \otherbox{mc^2}
+\end{equation}
+\end{dispExample}
+\end{docCommand}
+
+
+\clearpage
+\subsection{Option Keys of the Library}
+
+
+\begin{docTcbKey}{separator sign}{=\meta{sign}}{no default, initially |:|}
+  The given \meta{sign} is used inside the title text of a theorem
+  as separater between display name combined with number and
+  the specific title text. It is omitted, if there is no specific title text.
+
+\begin{dispExample}
+% \usepackage{amssymb}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   separator sign={\ $\blacktriangleright$}}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{separator sign colon}{}{style, no value, initially set}
+Sets \refKey{/tcb/separator sign} to the default colon |:| sign.
+\end{docTcbKey}
+
+\begin{docTcbKey}{separator sign dash}{}{style, no value}
+Sets \refKey{/tcb/separator sign} to an en-dash sign.
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   separator sign dash}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{separator sign none}{}{style, no value}
+Sets \refKey{/tcb/separator sign} to empty.
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   separator sign none}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+\clearpage
+\begin{docTcbKey}{description delimiters}{=\marg{left}\marg{right}}{no default, initially empty}
+  The given \meta{left} and \meta{right} delimiter signs are used to frame
+  the descriptive title text of a theorem.
+
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   description delimiters={\flqq}{\frqq}}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{description delimiters parenthesis}{}{style, no value}
+Sets \refKey{/tcb/description delimiters} to |(| and |)|.
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   description delimiters parenthesis}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{description delimiters none}{}{style, no value, initially set}
+Sets \refKey{/tcb/description delimiters} to the default empty texts.
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{description color}{\colOpt{=\meta{color}}}{default empty, initially empty}
+  Sets the \meta{color} of the descriptive title text deviating from \refKey{/tcb/coltitle}.
+  The color is reset to \refKey{/tcb/coltitle}, if |description color| is used without value.
+
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   description color=red!25!yellow}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+\clearpage
+\begin{docTcbKey}{description font}{\colOpt{=\meta{text}}}{default empty, initially empty}
+  Sets \meta{text} (e.\,g.\ font settings) before the descriptive title text deviating from \refKey{/tcb/fonttitle}.
+  The \meta{text} is removed, if |description font| is used without value.
+
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   description delimiters={\glqq}{\grqq},
+   description font=\mdseries\itshape}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{description formatter}{\colOpt{=\meta{macro}}}{default empty, initially empty}
+  Sets \meta{macro} as formatter for the descriptive title text. The \meta{macro}
+  has to take one mandatory argument (the description text).\\ 
+  Note that \refKey{/tcb/description delimiters}, \refKey{/tcb/description color},
+  and \refKey{/tcb/description font} are ignored, if this option is used.\\
+  If |description formatter| is used without value, the formatter is reset
+  to its standard behavior.
+
+\begin{dispExample}
+\newtcbox{\formbox}{enhanced,frame empty,size=minimal,boxsep=2pt,arc=1pt,
+  on line,interior style image=goldshade.png}
+
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   description formatter=\formbox}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{terminator sign}{=\meta{sign}}{no default, initially empty}
+  The given \meta{sign} is used as terminator at the end of the title text of a theorem.
+
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   terminator sign={.}}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+\clearpage
+\begin{docTcbKey}{terminator sign colon}{}{style, no value, initially set}
+Sets \refKey{/tcb/terminator sign} to the colon |:| sign.
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   separator sign dash,terminator sign colon}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{terminator sign dash}{}{style, no value}
+Sets \refKey{/tcb/terminator sign} to an en-dash sign.
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   terminator sign dash}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{terminator sign none}{}{style, no value}
+Sets \refKey{/tcb/terminator sign} to the default empty text.
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc new=2016-04-19]{label separator}{=\meta{separator}}{no default, initially |:|}
+  The given \meta{separator} is used for labels created with environments which
+  are defined themselves by \refCom{newtcbtheorem}. This \meta{separator} is
+  put between \meta{prefix} (defined by \refCom{newtcbtheorem})
+  and \meta{marker} (defined by an actual theorem environment).
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   label separator=*}{theo}
+\begin{sometheorem}{My example}{myex}
+My theorem text.
+\end{sometheorem}
+See Example~\ref{theo*myex}.
+\end{dispExample}
+\end{docTcbKey}
+
+
+\clearpage
+
+\begin{docTcbKey}[][doc new=2018-01-12]{theorem full label supplement}{=\marg{style}}{no default, initially empty}
+  The given \meta{style} is used in connection with labels created with environments which
+  are defined themselves by \refCom{newtcbtheorem}.
+  This \meta{style} uses one argument which is automatically set to the
+  full label marker of the environment, i.e. a text consisting of
+  \meta{prefix} (defined by \refCom{newtcbtheorem}),
+  \refKey{/tcb/label separator},
+  and \meta{marker} (defined by an actual theorem environment).
+
+\begin{dispExample}
+% The following adds a hyper target to all environments
+% created with \newtcbtheorem
+\tcbset{theorem full label supplement={hypertarget={#1}}}
+
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+   {colback=white,colframe=red!50!black,fonttitle=\bfseries}{theo}
+\begin{sometheorem}{My example}{myex2}
+My theorem text.
+\end{sometheorem}
+This automated \hyperlink{theo:myex2}{hyper target can be linked to with a
+ hyper link}.
+\end{dispExample}
+
+A second usage of \refKey{/tcb/theorem full label supplement} overwrites
+the first setting.
+\end{docTcbKey}
+
+
+\begin{docTcbKey}[][doc new=2018-01-12]{theorem label supplement}{=\marg{style}}{no default, initially empty}
+  The given \meta{style} is used in connection with labels created with environments which
+  are defined themselves by \refCom{newtcbtheorem}.
+  This \meta{style} uses one argument which is automatically set to the
+  label \meta{marker} defined by an actual theorem environment.\par
+  A second usage of \refKey{/tcb/theorem label supplement} overwrites
+  the first setting, but
+  \refKey{/tcb/theorem full label supplement}
+  and \refKey{/tcb/theorem label supplement} can be used independently.
+
+\begin{dispExample}
+% 'marginnote' has to be loaded
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+   {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+    theorem label supplement={hypertarget={XYZ-##1}},
+    theorem full label supplement={code={\marginnote{##1}}}
+   }{theo}
+\begin{sometheorem}{My example}{myex3}
+My theorem text.
+\end{sometheorem}
+This automated \hyperlink{XYZ-myex3}{hyper target can be linked to with a
+ hyper link}.
+\end{dispExample}
+\end{docTcbKey}
+
+
+
+\clearpage
+\begin{docTcbKey}{theorem name and number}{}{style, no value, initially set}
+Prints theorem name followed by theorem number inside the title.
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   theorem name and number}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{theorem number and name}{}{style, no value}
+Prints theorem number followed by theorem name inside the title.
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   theorem number and name}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{theorem name}{}{style, no value}
+Prints theorem name without number inside the title.
+\begin{dispExample}
+\newtcbtheorem[use counter from=mytheo]{sometheorem}{Theorem}%
+  {colback=white,colframe=red!50!black,fonttitle=\bfseries,
+   theorem name,enhanced,watermark text={\thetcbcounter}}{theo}
+\begin{sometheorem}{My example}{}
+My theorem text.
+\end{sometheorem}
+\end{dispExample}
+\end{docTcbKey}
+
+\clearpage
+\begin{docTcbKey}{theorem}{=\marg{display name}\marg{counter}\marg{title}\marg{marker}}{no default}
+  This key is internally used by \refCom{tcbmaketheorem}, but can be used
+  directly in a |tcolorbox| for a more flexible approach.
+  The \meta{display name} is used together with the increased \meta{counter} value
+  and the \meta{title} for the title line of the box. Additionally, a
+  |\label| with the given \meta{marker} is created.
+\begin{dispExample}
+% \newcounter{texercise}%  preamble
+\begin{tcolorbox}[colback=green!10,colframe=green!50!black,arc=4mm,
+                  theorem={Test}{texercise}{Direct usage}{myMarker}]
+Here, we see the test \ref{myMarker}.
+\end{tcolorbox}
+\end{dispExample}
+For a common appearance inside the document, the key |theorem| should not be
+used directly as in the example above, but as part of a new environment
+created by hand or using \refCom{tcbmaketheorem} or using its successor
+\refCom{newtcbtheorem}.
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{highlight math}{}{style, no value}
+  Predefined style which is used for \refCom{tcbhighmath}.
+  It can be changed comfortable with \refKey{/tcb/highlight math style}.
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{highlight math style}{=\meta{style definition}}{style, no default}
+  Changes the definition for \refKey{/tcb/highlight math} to the given
+  \meta{style definition}. See \refCom{tcbhighmath} for another example.
+\begin{dispExample}
+% \tcbuselibrary{skins}
+\tcbset{highlight math style={enhanced,%<-- needed for the 'remember' options
+  colframe=red,colback=red!10!white,boxsep=0pt}}
+\begin{align*}
+\tcbhighmath[remember as=fx]{f(x)}
+     &= \int\limits_{1}^{x} \frac{1}{t^2}~dt
+      = \left[ -\frac{1}{t} \right]_{1}^{x}\\
+     &= -\frac{1}{x} + \frac{1}{1}\\
+     &=
+\tcbhighmath[remember,overlay={%
+    \draw[blue,very thick,->] (fx.south) to[bend right] ([yshift=2mm]frame.west);}]
+  {1-\frac{1}{x}.}
+\end{align*}
+\end{dispExample}
+\end{docTcbKey}
+
+\clearpage
+\begin{docTcbKey}{math upper}{}{style, no value}
+  Sets the upper part to mathematical mode with font |\displaystyle|.
+\end{docTcbKey}
+
+\begin{docTcbKey}{math lower}{}{style, no value}
+  Sets the lower part to mathematical mode with font |\displaystyle|.
+\end{docTcbKey}
+
+\begin{docTcbKey}{math}{}{style, no value}
+  Sets the upper part \emph{and} lower part to mathematical mode with font |\displaystyle|.
+\begin{dispExample}
+\begin{tcolorbox}[math,colback=yellow!10!white,colframe=red!50!black]
+  \sum\limits_{n=1}^{\infty} \frac{1}{n} = \infty.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\begin{marker}
+  The following styles are only tested to work with the original |amsmath| environments.
+  If e.g. the |equation| environment is redefined as |gather|, then
+  \refKey{/tcb/ams equation} should / could not be used. Obviously, you are encouraged
+  to use \refKey{/tcb/ams gather} in this case.
+\end{marker}
+
+\begin{docTcbKey}[][doc updated=2014-10-30]{ams equation upper}{}{style, no value}
+  Adds an |amsmath| |equation| environment to the start and end
+  of the upper part.
+\end{docTcbKey}
+
+\begin{docTcbKey}[][doc updated=2014-10-30]{ams equation lower}{}{style, no value}
+  Adds an |amsmath| |equation| environment to the start and end
+  of the lower part.
+\end{docTcbKey}
+
+\begin{docTcbKey}[][doc updated=2014-10-30]{ams equation}{}{style, no value}
+  Adds an |amsmath| |equation| environment to the start and end
+  of the upper \emph{and} lower part.
+\begin{dispExample}
+\begin{tcolorbox}[ams equation,colback=yellow!10!white,colframe=red!50!black]
+  \sum\limits_{n=1}^{\infty} \frac{1}{n} = \infty.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}[][doc updated=2014-10-30]{ams equation* upper}{}{style, no value}
+  Adds an |amsmath| |equation*| environment to the start and end
+  of the upper part.
+\end{docTcbKey}
+
+\begin{docTcbKey}[][doc updated=2014-10-30]{ams equation* lower}{}{style, no value}
+  Adds an |amsmath| |equation*| environment to the start and end
+  of the lower part.
+\end{docTcbKey}
+
+\enlargethispage*{1cm}
+\begin{docTcbKey}[][doc updated=2014-10-30]{ams equation*}{}{style, no value}
+  Adds an |amsmath| |equation*| environment to the start and end
+  of the upper \emph{and} lower part.
+\begin{dispExample}
+\begin{tcolorbox}[ams equation*,colback=yellow!10!white,colframe=red!50!black]
+  \sum\limits_{n=1}^{\infty} \frac{1}{n} = \infty.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+\clearpage
+\begin{docTcbKey}{ams align upper}{}{style, no value}
+  Adds an |amsmath| |align| environment to the start and end
+  of the upper part.
+\end{docTcbKey}
+
+\begin{docTcbKey}{ams align lower}{}{style, no value}
+  Adds an |amsmath| |align| environment to the start and end
+  of the lower part.
+\end{docTcbKey}
+
+\begin{docTcbKey}{ams align}{}{style, no value}
+  Adds an |amsmath| |align| environment to the start and end
+  of the upper \emph{and} lower part.
+\begin{dispExample}
+\begin{tcolorbox}[ams align,colback=yellow!10!white,colframe=red!50!black]
+  \sum\limits_{n=1}^{\infty} \frac{1}{n} &= \infty.\\
+  \int x^2 ~\text{d}x                     &= \frac13 x^3 + c.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{ams align* upper}{}{style, no value}
+  Adds an |amsmath| |align*| environment to the start and end
+  of the upper part.
+\end{docTcbKey}
+
+\begin{docTcbKey}{ams align* lower}{}{style, no value}
+  Adds an |amsmath| |align*| environment to the start and end
+  of the lower part.
+\end{docTcbKey}
+
+\begin{docTcbKey}{ams align*}{}{style, no value}
+  Adds an |amsmath| |align*| environment to the start and end
+  of the upper \emph{and} lower part.
+\begin{dispExample}
+\begin{tcolorbox}[ams align*,colback=yellow!10!white,colframe=red!50!black]
+  \sum\limits_{n=1}^{\infty} \frac{1}{n} &= \infty.\\
+  \int x^2 ~\text{d}x                     &= \frac13 x^3 + c.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+\clearpage
+\begin{docTcbKey}{ams gather upper}{}{style, no value}
+  Adds an |amsmath| |gather| environment to the start and end
+  of the upper part.
+\end{docTcbKey}
+
+\begin{docTcbKey}{ams gather lower}{}{style, no value}
+  Adds an |amsmath| |gather| environment to the start and end
+  of the lower part.
+\end{docTcbKey}
+
+\begin{docTcbKey}{ams gather}{}{style, no value}
+  Adds an |amsmath| |gather| environment to the start and end
+  of the upper \emph{and} lower part.
+\begin{dispExample}
+\begin{tcolorbox}[ams gather,colback=yellow!10!white,colframe=red!50!black]
+  \sum\limits_{n=1}^{\infty} \frac{1}{n} = \infty.\\
+  \int x^2 ~\text{d}x = \frac13 x^3 + c.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+\begin{docTcbKey}{ams gather* upper}{}{style, no value}
+  Adds an |amsmath| |gather*| environment to the start and end
+  of the upper part.
+\end{docTcbKey}
+
+\begin{docTcbKey}{ams gather* lower}{}{style, no value}
+  Adds an |amsmath| |gather*| environment to the start and end
+  of the lower part.
+\end{docTcbKey}
+
+\begin{docTcbKey}{ams gather*}{}{style, no value}
+  Adds an |amsmath| |gather*| environment to the start and end
+  of the upper \emph{and} lower part.
+\begin{dispExample}
+\begin{tcolorbox}[ams gather*,colback=yellow!10!white,colframe=red!50!black]
+  \sum\limits_{n=1}^{\infty} \frac{1}{n} = \infty.\\
+  \int x^2 ~\text{d}x = \frac13 x^3 + c.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+
+\clearpage
+\begin{docTcbKey}{ams nodisplayskip upper}{}{style, no value}
+  Neutralizes the |\abovedisplayskip| of a following |align| or |gather|
+  environment for the upper part. Note that the text content has to
+  start with such a formula.
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{ams nodisplayskip lower}{}{style, no value}
+  Neutralizes the |\abovedisplayskip| of a following |align| or |gather|
+  environment for the lower part. Note that the text content has to
+  start with such a formula.
+\end{docTcbKey}
+
+
+\begin{docTcbKey}{ams nodisplayskip}{}{style, no value}
+  Neutralizes the |\abovedisplayskip| of a following |align| or |gather|
+  environment for the upper part \emph{and} lower part.
+  Note that the text content has to start with such a formula.
+\begin{dispExample}
+\begin{tcolorbox}[ams nodisplayskip,colback=yellow!10!white,colframe=red!50!black]
+  \begin{gather}
+  \sum\limits_{n=1}^{\infty} \frac{1}{n} = \infty.\\
+  \int x^2 ~\text{d}x = \frac13 x^3 + c.
+  \end{gather}
+  And now for something completely different.
+\end{tcolorbox}
+\end{dispExample}
+\end{docTcbKey}
+
+\bigskip
+New colored mathematical environments are easily created using
+\refCom{newtcolorbox}:
+
+\begin{dispExample}
+\newtcolorbox{mymath}{ams gather*,colback=yellow!10!white,colframe=red!50!black}
+
+\begin{mymath}
+  \sum\limits_{n=1}^{\infty} \frac{1}{n} = \infty.\\
+  \int x^2 ~\text{d}x = \frac13 x^3 + c.
+\end{mymath}
+\end{dispExample}
+
+\bigskip
+\begin{marker}
+  All described options like \refKey{/tcb/ams gather upper}, \refKey{/tcb/ams gather lower},
+  \refKey{/tcb/ams gather} are (partially) setting (overwritting) the
+  keys \refKey{/tcb/before upper}, \refKey{/tcb/after upper},
+  \refKey{/tcb/before lower}, \refKey{/tcb/after lower}.\par
+  Therefore, e.\,g.\ |\tcbset{ams gather,before upper={\text{Pythagoras:}}}|
+  produces an invalid result. For this case, you are invited to use\\
+  |\tcbset{ams gather,before upper app={\text{Pythagoras:}}}|,\\
+  see \refKey{/tcb/before upper app}.
+\end{marker}
+
+
+\clearpage
+\begin{docTcbKey}{theorem style}{=\meta{name}}{no default, initially |standard|}
+Applies a predefined style \meta{name} to the theorem environment. Some of
+the feasible \meta{name} values resemble style names from the packages |theorem|
+and |ntheorem| to give convenient access to known patterns.
+\begin{marker}
+The styles alter \refKey{/tcb/separator sign}, \refKey{/tcb/description delimiters},
+\refKey{/tcb/terminator sign}, and more. Therefore, one should apply such
+keys \emph{after} a theorem style.
+\end{marker}
+
+For the following examples, we use:
+\inputpreamblelisting{J}
+
+The predefined styles are:
+\begin{itemize}
+%
+\item\docValue{standard}: This is the initial value.
+\begin{dispExample}
+\begin{theorem}[theorem style=standard]{standard}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\end{dispExample}
+%
+\item\docValue{change standard}
+\begin{dispExample}
+\begin{theorem}[theorem style=change standard]{change standard}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\end{dispExample}
+%
+\item\docValue{plain}
+\begin{dispExample}
+\begin{theorem}[theorem style=plain]{plain}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\end{dispExample}
+%
+\clearpage
+\item\docValue{break}
+\begin{dispExample}
+\begin{theorem}[theorem style=break]{break}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\end{dispExample}
+%
+\item\docValue{plain apart}
+\begin{dispExample}
+\begin{theorem}[theorem style=plain apart]{plain apart}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\end{dispExample}
+%
+\item\docValue{change}
+\begin{dispExample}
+\begin{theorem}[theorem style=change]{change}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\end{dispExample}
+%
+\item\docValue{change break}
+\begin{dispExample}
+\begin{theorem}[theorem style=change break]{change break}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\end{dispExample}
+%
+\item\docValue{change apart}
+\begin{dispExample}
+\begin{theorem}[theorem style=change apart]{change apart}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\end{dispExample}
+%
+\clearpage
+\item\docValue{margin}
+\begin{dispExample}
+\begin{theorem}[theorem style=margin,left=10mm]{margin}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\begin{theorem}[theorem style=margin,left=10mm,oversize]{margin}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\end{dispExample}
+%
+\item\docValue{margin break}
+\begin{dispExample}
+\begin{theorem}[theorem style=margin break,left=10mm]{margin break}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\begin{theorem}[theorem style=margin break,left=10mm,oversize]{margin break}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\end{dispExample}
+%
+\item\docValue{margin apart}
+\begin{dispExample}
+\begin{theorem}[theorem style=margin apart,left=10mm]{margin apart}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\begin{theorem}[theorem style=margin apart,left=10mm,oversize]{margin apart}{}
+This is my theorem. \begin{equation*} a^2 + b^2 = c^2. \end{equation*}
+\end{theorem}
+\end{dispExample}
+%
+\end{itemize}
+\end{docTcbKey}
+
+
+%
+\clearpage
+\subsection{Examples for Definitions and Theorems}
+In the following, the application of \refCom{tcbmaketheorem}
+to highlight mathematical definitions, theorems, or the like is demonstrated.
+
+At first, additional |tcb| keys are created for the appearance of
+the colored boxes. It is assumed that theorems and corollaries should be
+identically colored.
+All following environments are numbered with a common counter, but this
+can be changed easily. Here, the counter output is supplemented by
+the subsection number.
+Further, the |cleveref| package \cite{cubitt:2018a} is used for clever
+references.
+
+\inputpreamblelisting{G}
+
+By \refCom{newtcbtheorem}, commonly numbered theorem environments are
+created now. |defstyle| and |theostyle| are used for the appearance.
+
+Now, everything is prepared for the following examples.
+
+\begin{dispExample}
+The following theorem is numbered as \Cref{theo:diffbarstetig} and
+referenced with the marker \texttt{theo:diffbarstetig}.\bigskip
+
+\begin{Theorem}{Differenzierbarkeit bedingt Stetigkeit, wobei diese Benennung
+  zu Testzwecken ungew\"{o}hnlich lang ist}{diffbarstetig}%
+  Eine Funktion $f:I\to\mathbb{R}$ ist in $x_0\in I$ stetig, wenn $f$ in
+  $x_0$ differenzierbar ist.
+\end{Theorem}
+\end{dispExample}
+
+
+\begin{dispExample}
+The following definition is numbered as \Cref{def:diffbarkeit} and
+referenced with the marker \texttt{def:diffbarkeit}.\bigskip
+
+\begin{Definition}{Differenzierbarkeit}{diffbarkeit}
+  Eine Funktion $f:~I\to\mathbb{R}$ auf einem Intervall $I$ hei\ss{}t in
+  $x_0\in I$ differenzierbar oder linear approximierbar,
+  wenn der Grenzwert
+  \begin{equation*}
+  \lim\limits_{x\to x_0}\frac{f(x)-f(x_0)}{x-x_0}=
+  \lim\limits_{h\to 0}\frac{f(x_0+h)-f(x_0)}{h}
+  \end{equation*}
+  existiert. Bei Existenz hei\ss{}t dieser Grenzwert Ableitung
+  oder Differentialquotient von $f$ in $x_0$ und man
+  schreibt f\"{u}r ihn
+  \begin{equation*}
+  f'(x_0)\quad\text{oder}\quad\frac{df}{dx}(x_0).
+  \end{equation*}
+\end{Definition}
+\end{dispExample}
+
+
+\begin{dispExample}
+The following corollary is numbered as \Cref{cor:nullstellen} and
+referenced with the marker \texttt{cor:nullstellen}.\bigskip
+
+\begin{Corollary}{Nullstellenexistenz}{nullstellen}
+  Ist $f:[a,b]\to\mathbb{R}$ stetig und haben $f(a)$ und $f(b)$ entgegengesetzte
+  Vorzeichen, also $f(a)f(b)<0$, so besitzt $f$ eine Nullstelle $x_0\in]a,b[$,
+  also $f(x_0)=0$.
+\end{Corollary}
+\end{dispExample}
+
+
+\begin{dispExample}
+\begin{Theorem}[boxrule=2mm,toptitle=-1.5mm,bottomtitle=-1.5mm]{%
+    Hinreichende Bedingung f\"{u}r Wendepunkte}{wendehinreichend}%
+  $f$ sei eine auf einem Intervall $]a,b[$ dreimal stetig differenzierbare Funktion.
+  Ist $f''(x_0)=0$ in $x_0\in]a,b[$ und $f'''(x_0)\ne 0$, so ist
+  $(x_0,f(x_0))$ ein Wendepunkt von $f$.
+\end{Theorem}
+\end{dispExample}
+
+\begin{dispExample}
+% \usepackage{varioref}
+% \usepackage{cleveref}
+% \tcbuselibrary{skins}
+\newtcbtheorem[use counter from=Definition]{YetAnotherTheorem}{Theorem}%
+  {theorem style=plain apart,label type=theorem,enhanced,frame hidden,
+  boxrule=2mm,titlerule=0mm,toptitle=1mm,bottomtitle=1mm,
+  fonttitle=\bfseries\large,fontupper=\normalsize,
+  coltitle=green!35!black,colbacktitle=green!15!white,
+  colback=green!50!yellow!15!white,borderline={1pt}{0pt}{green!25!blue},
+  }{theo}
+
+\begin{YetAnotherTheorem}{Mittelwertsatz f\"{u}r $n$ Variable}{meanvaluetheorem}%
+  Es sei $n\in\mathbb{N}$, $D\subseteq\mathbb{R}^n$ eine offene Menge und
+  $f\in C^{1}(D,\mathbb{R})$. Dann gibt es auf jeder Strecke
+  $[x_0,x]\subset D$ einen Punkt $\xi\in[x_0,x]$, so dass gilt
+  \begin{equation*}
+  f(x)-f(x_0) = \operatorname{grad} f(\xi)^{\top}(x-x_0)
+  \end{equation*}
+\end{YetAnotherTheorem}
+
+\medskip
+Here, |cleveref| support is used to reference \Cref{theo:meanvaluetheorem}
+on \Cpageref{theo:meanvaluetheorem}. This \namecref{theo:meanvaluetheorem}
+can also be referenced by |\Vref| resulting in \Vref{theo:meanvaluetheorem}.
+\end{dispExample}
+
+\begin{marker}
+Note that \refKey{/tcb/label type} was used in the example above to feed
+|cleveref| \cite{cubitt:2018a} with the needed name information.
+\end{marker}
+
+\clearpage
+
+\begin{dispExample}
+Here, using |\Vref| resulting in \Vref{theo:meanvaluetheorem} is more interesting\ldots
+\end{dispExample}
+
+
+\begin{dispExample}
+% \tcbuselibrary{skins}
+\newtcbtheorem[use counter from=Definition]{YetAnotherTheorem}{Theorem}%
+  {theorem style=change apart,enhanced,arc=0mm,outer arc=0mm,
+  boxrule=0mm,toprule=1mm,bottomrule=1mm,left=1mm,right=1mm,
+  titlerule=0mm,toptitle=0mm,bottomtitle=1mm,top=0mm,
+  colframe=red!50!black,colback=red!5!white,coltitle=red!50!black,
+  title style={top color=yellow!50!white,bottom color=red!5!white,
+    middle color=yellow!50!white},
+  fonttitle=\bfseries\sffamily\normalsize,fontupper=\normalsize\itshape,
+  }{theo}
+
+\begin{YetAnotherTheorem}{Mittelwertsatz f\"{u}r $n$ Variable}{mittelwertsatz_n2}%
+  Es sei $n\in\mathbb{N}$, $D\subseteq\mathbb{R}^n$ eine offene Menge und
+  $f\in C^{1}(D,\mathbb{R})$. Dann gibt es auf jeder Strecke
+  $[x_0,x]\subset D$ einen Punkt $\xi\in[x_0,x]$, so dass gilt
+  \begin{equation*}
+  f(x)-f(x_0) = \operatorname{grad} f(\xi)^{\top}(x-x_0)
+  \end{equation*}
+\end{YetAnotherTheorem}
+\end{dispExample}
+
+
+\begin{dispExample}
+% \usepackage{varwidth}   \tcbuselibrary{skins}
+\newtcbtheorem[use counter from=Definition]{YetAnotherTheorem}{Theorem}%
+{enhanced,frame empty,interior empty,colframe=ForestGreen!50!white,
+  coltitle=ForestGreen!50!black,fonttitle=\bfseries,colbacktitle=ForestGreen!15!white,
+  borderline={0.5mm}{0mm}{ForestGreen!15!white},
+  borderline={0.5mm}{0mm}{ForestGreen!50!white,dashed},
+  attach boxed title to top center={yshift=-2mm},
+  boxed title style={boxrule=0.4pt},varwidth boxed title}{theo}
+
+\begin{YetAnotherTheorem}{Mittelwertsatz f\"{u}r $n$ Variable}{mittelwertsatz_n3}%
+  Es sei $n\in\mathbb{N}$, $D\subseteq\mathbb{R}^n$ eine offene Menge und
+  $f\in C^{1}(D,\mathbb{R})$. Dann gibt es auf jeder Strecke
+  $[x_0,x]\subset D$ einen Punkt $\xi\in[x_0,x]$, so dass gilt
+  \begin{equation*}
+  f(x)-f(x_0) = \operatorname{grad} f(\xi)^{\top}(x-x_0)
+  \end{equation*}
+\end{YetAnotherTheorem}
+\end{dispExample}
+
+
+\clearpage
+You need more attention for your theorems? Here, you are \ldots
+
+\begin{dispExample}
+% tcbuselibrary{skins}  % preamble
+\begin{Theorem}[enhanced,
+    fuzzy halo=3mm with yellow,
+    fuzzy halo=2mm with red,
+    fuzzy halo=1mm with yellow,
+    watermark color=red!35!white,
+    watermark text={Overacting\\Fundamental Theorem}]%
+  {Fundamental Theorem of Theorems}{fundamental}%
+  \lipsum[1-2]
+\end{Theorem}
+\end{dispExample}
+
+Let's try a more conservative approach:
+
+\begin{dispExample}
+% \tcbuselibrary{skins}
+\newtcbtheorem[use counter from=Definition]{YetAnotherTheorem}{Theorem}%
+  {theorem style=plain,enhanced,colframe=blue!50!black,colback=yellow!20!white,
+   coltitle=red!50!black,fonttitle=\upshape\bfseries,fontupper=\itshape,
+   drop fuzzy shadow=blue!50!black!50!white,boxrule=0.4pt}{theo}
+
+\begin{YetAnotherTheorem}{Mittelwertsatz f\"{u}r $n$ Variable}{mittelwertsatz_n4}%
+  Es sei $n\in\mathbb{N}$, $D\subseteq\mathbb{R}^n$ eine offene Menge und
+  $f\in C^{1}(D,\mathbb{R})$. Dann gibt es auf jeder Strecke
+  $[x_0,x]\subset D$ einen Punkt $\xi\in[x_0,x]$, so dass gilt
+  \begin{equation*}
+  f(x)-f(x_0) = \operatorname{grad} f(\xi)^{\top}(x-x_0)
+  \end{equation*}
+\end{YetAnotherTheorem}
+\end{dispExample}
+
+
+\clearpage
+\subsection{Using other theorem environments with \texttt{tcolorbox}}\label{subsec:theorems_other}
+
+Instead of creating theorem environments with the methods described before,
+environments from other packages can be boxed with a |tcolorbox|.
+
+Environments may be created e.g. by methods from the |theorem| package or
+the |amsthm| package. \refCom{tcolorboxenvironment} can be used to put a box
+around these environments.
+
+\inputpreamblelisting{K}
+
+\begin{dispExample}
+\begin{lem}
+  \lipsum[2]
+\end{lem}
+
+\lipsum[3]
+
+\begin{proof}
+  \lipsum*[4]
+\end{proof}
+\end{dispExample}
-- 
cgit v1.2.3

