\chapter{Progress Report}\label{Progress}
-We describe the current state of our research in relation to the aims outlined in Chapter \ref{Introduction}.
+We describe the current state of our project in relation to the aims outlined in Chapter \ref{Introduction}. At this stage work on the project has been done in collaboration with David Gow; however the Project Proposals and Literature Reviews were produced individually.
\section{Literature Review}
-
-We have examined a range of literature that can be broadly classed into three different areas (with major references indicated):
+The literature examined in Chapter\ref{Background} can broadly classed into three different areas (with major references indicated):
\begin{enumerate}
\item Rendering Vector Graphics \cite{computergraphics2, knuth1983metafont, kilgard2012gpu}
\begin{itemize}
\item Most document standards either specify, suggest, or imply a IEEE-754 floating point representation ({\TeX} is an exception)
\item IEEE-754 is widely used, although there are instances of languages or processors which do not conform exactly to the standard
\item Some GPUs in particular may not conform to IEEE-754, possibly trading some accuracy for performance
+ \item Arbitrary precision floating point arithmetic is possible through several libraries
\end{itemize}
\end{enumerate}
To improve the Literature Review we could consider the following topics in more detail:
\begin{enumerate}
- \item Additional approaches to arbitrary or infinite precision, possibly including symbolic computation
+ \item Additional approaches to arbitrary precision possibly including symbolic computation
\item Floating point errors in the context of computing B\'{e}zier Curves or similar
+ \item Algorithms for reducing overall error other than Fast2Sum
+ \item Alternative number representations such as rationals (eg: $\frac{1}{3}$)
\item How well GPUs conform or do not conform to IEEE-754 in more detail
\item Additional aspects of rendering vector documents including shading
\end{enumerate}
+
\section{Development of Testbed Software}
We have produced a basic Document Viewer capable of rendering simple primitives under translation and scaling. The OpenGL 3.1 API is used to interface with graphics hardware. This software has the following features:
$26^{\text{th}}$ May & \emph{Progress Report and Literature Review due.}\\
\hline
$9^{\text{th}}$ June & Demonstrations of limitations of floating point precision in the Testbed software. \\
- $1^{\text{st}}$ July & At least one implementation of infinite precision for basic primitives (lines, polygons, curves) completed. Other implementations, advanced features, and areas for more detailed research identified. \\
+ $1^{\text{st}}$ July & At least one implementation of arbitrary precision for basic primitives (lines, polygons, curves) completed. Other implementations, advanced features, and areas for more detailed research identified. \\
\hline
- $1^{\text{st}}$ August & Experiments and comparison of various infinite precision implementations completed. \\
+ $1^{\text{st}}$ August & Experiments and comparison of various arbitrary precision implementations completed. \\
\hline
$1^{\text{st}}$ September & Advanced features implemented and tested, work underway on Final Report. \\
\hline