\subsection{$-$}
\label{labminus}
\noindent Name: \textbf{$-$}\\
\phantom{aaa}subtraction function\\[0.2cm]
\noindent Library names:\\
\verb|   sollya_obj_t sollya_lib_sub(sollya_obj_t, sollya_obj_t)|\\
\verb|   sollya_obj_t sollya_lib_build_function_sub(sollya_obj_t, sollya_obj_t)|\\
\verb|   #define SOLLYA_SUB(x,y) sollya_lib_build_function_sub((x), (y))|\\
\verb|   sollya_obj_t sollya_lib_neg(sollya_obj_t)|\\
\verb|   sollya_obj_t sollya_lib_build_function_neg(sollya_obj_t)|\\
\verb|   #define SOLLYA_NEG(x) sollya_lib_build_function_neg(x)|\\[0.2cm]
\noindent Usage: 
\begin{center}
\emph{function1} \textbf{$-$} \emph{function2} : (\textsf{function}, \textsf{function}) $\rightarrow$ \textsf{function}\\
\emph{interval1} \textbf{$-$} \emph{interval2} : (\textsf{range}, \textsf{range}) $\rightarrow$ \textsf{range}\\
\emph{interval1} \textbf{$-$} \emph{constant} : (\textsf{range}, \textsf{constant}) $\rightarrow$ \textsf{range}\\
\emph{interval1} \textbf{$-$} \emph{constant} : (\textsf{constant}, \textsf{range}) $\rightarrow$ \textsf{range}\\
\textbf{$-$} \emph{function1} : \textsf{function} $\rightarrow$ \textsf{function}\\
\textbf{$-$} \emph{interval1} : \textsf{range} $\rightarrow$ \textsf{range}\\
\end{center}
Parameters: 
\begin{itemize}
\item \emph{function1} and \emph{function2} represent functions
\item \emph{interval1} and \emph{interval2} represent intervals (ranges)
\item \emph{constant} represents a constant or constant expression
\end{itemize}
\noindent Description: \begin{itemize}

\item \textbf{$-$} represents the subtraction (function) on reals. 
   The expression \emph{function1} \textbf{$-$} \emph{function2} stands for
   the function composed of the subtraction function and the two
   functions \emph{function1} and \emph{function2}, where \emph{function1} is 
   the subtrahend and \emph{function2} the subtractor.

\item \textbf{$-$} can be used for interval arithmetic on intervals
   (ranges). \textbf{$-$} will evaluate to an interval that safely
   encompasses all images of the subtraction function with arguments varying
   in the given intervals.  Any combination of intervals with intervals
   or constants (resp. constant expressions) is supported. However, it is
   not possible to represent families of functions using an interval as
   one argument and a function (varying in the free variable) as the
   other one.

\item \textbf{$-$} stands also for the negation function.
\end{itemize}
\noindent Example 1: 
\begin{center}\begin{minipage}{15cm}\begin{Verbatim}[frame=single]
> 5 - 2;
3
\end{Verbatim}
\end{minipage}\end{center}
\noindent Example 2: 
\begin{center}\begin{minipage}{15cm}\begin{Verbatim}[frame=single]
> x - 2;
-2 + x
\end{Verbatim}
\end{minipage}\end{center}
\noindent Example 3: 
\begin{center}\begin{minipage}{15cm}\begin{Verbatim}[frame=single]
> x - x;
0
\end{Verbatim}
\end{minipage}\end{center}
\noindent Example 4: 
\begin{center}\begin{minipage}{15cm}\begin{Verbatim}[frame=single]
> diff(sin(x) - exp(x));
cos(x) - exp(x)
\end{Verbatim}
\end{minipage}\end{center}
\noindent Example 5: 
\begin{center}\begin{minipage}{15cm}\begin{Verbatim}[frame=single]
> [1;2] - [3;4];
[-3;-1]
> [1;2] - 17;
[-16;-15]
> 13 - [-4;17];
[-4;17]
\end{Verbatim}
\end{minipage}\end{center}
\noindent Example 6: 
\begin{center}\begin{minipage}{15cm}\begin{Verbatim}[frame=single]
> -exp(x);
-exp(x)
> -13;
-13
> -[13;17];
[-17;-13]
\end{Verbatim}
\end{minipage}\end{center}
See also: \textbf{$+$} (\ref{labplus}), \textbf{$*$} (\ref{labmult}), \textbf{/} (\ref{labdivide}), \textbf{$\mathbf{\hat{~}}$} (\ref{labpower})
