+
+\begin{frame}
+\frametitle{Floating point calculations \\ go wrong}
+\begin{itemize}
+ \item Scaled to $~1\times 10^{-6}$, the fox is very sick
+\end{itemize}
+\centering
+ \includegraphics[width=0.5\textwidth]{../figures/fox-vector_highzoom1.png}
+
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{Arbitrary Precision Rationals}
+ \begin{align}
+ Q &= \frac{N}{D}
+ \end{align}
+ \begin{itemize}
+ \item $N$ and $D$ are arbitrary precision integers
+ \end{itemize}
+ \begin{align}
+ N &= \sum_{i=0}^{S} d_i \beta^{i}
+ \end{align}
+ \begin{itemize}
+ \item $d_i$ are fixed size integers, $\beta = 2^{64}$
+ \item Size $S$ grows as needed
+ \item Operations are always exact
+ \item Implemented by GNU Multiple Precision Library
+ \end{itemize}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Replace floats with rationals?}
+ \begin{itemize}
+ \item Rationals are \emph{slow}
+ \item Screen coordinates always in range $0 \to 1$
+ \item Introduce intermediate coordinate system
+ \begin{itemize}
+ \item Many B\'{e}ziers contained in a Path
+ \item Use Rationals for bounds of the Path
+ \item Use floats to transform B\'{e}zier coordinates
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+