\section{C-XSC Staggered Precision Real Arithmetics}
This module includes the C-XSC Staggered Precision Real Arithmetics into Rascal.
You can find more information about C-XSC at 
{\tt http://www.xsc.de }.

This datatype allows computations of arbitrary accuracy and supports the
same features as the usual doubles datatype.

Long reals are created using the LReal-constructor:

\begin{lyxcode}
>a=LReal(1)

~LReal(1)

>pi=atan(a)*4

~LReal(   3.1415926536)

>sin(pi)

~LReal(2.1657133478E-0032)

>sin(LReal(atan(1)*4))

~LReal(1.2246467991E-0016)
\end{lyxcode}

As you can see the standard LReal has about twice as many accurate digits
than the usual double arithmetic. The accuracy can be configured during
runtime using the {\tt Stagprec}-function:

\begin{lyxcode}
>Stagprec(2);sin(atan(LReal(1))*4)

~LReal(2.1657133478E-0032)

>Stagprec(4);sin(atan(LReal(1))*4)

~LReal(1.0062790944E-0064)

>Stagprec(8);sin(atan(LReal(1))*4)

~LReal(1.1104708942E-0129)
\end{lyxcode}

The following standard functions are defined for LReals: {\tt abs, exp, log,
pow, sqrt, sqr, sin, cos, tan, cot, asin, acos, atan, acot, sinh, cosh, tanh, coth,
asinh, acoth, atanh, acoth}. 

