Automatic commit of irc logs
[ipdf/documents.git] / papers.bib
index 739bf0b..e6302ae 100644 (file)
@@ -1,4 +1,3 @@
-
 % PostScript Reference Manual
 @book{plrm,
   title={PostScript Language Reference},
   year={2006}
 }
 
+@misc{texdraft,
+  title={Preliminary preliminary description of {\TeX}},
+  author={Knuth, Donald},
+  year={1977},
+  howpublished={\url{http://www.saildart.org/TEXDR.AFT[1,DEK]1}},
+  urldate={2014-05-20},
+  note={Retrieved 2014-05-20}
+}
+
+@article{fuchs1982theformat,
+  title={The Format of {\TeX}'s {DVI} files},
+  author={Fuchs, David},
+  year={1982},
+  journal={TUGBoat},
+  volume={3},
+  number={2},
+  howpublished={\url{http://www.tug.org/TUGboat/Articles/tb03-2/tb06software.pdf}}
+}
+
+% HTML 2 spec
+@article{html2rfc,
+  title={Hypertext Markup Language -- 2.0},
+  author={Berners-Lee, Tim and Connolly, Daniel},
+  year={1995},
+  journal={Internet RFC 1866}
+}
+
+% CSS 2 spec
+@misc{css2spec,
+  title={Cascading Style Sheets, Level 2, {CSS2} Specification},
+  author={Bos, Bert and Wium Lie, Håkon and Lilley, Chris and Jacobs Ian},
+  date={1998},
+  howpublished={\url{http://www.w3.org/TR/1998/REC-CSS2-19980512/}},
+  note={Retrieved 2014-05-22}
+}
+
+@misc{ghostscript,
+  title={GhostScript, an interpreter for the PostScript language and PDF},
+  author={Artifex Software},
+  year={1988},
+  howpublished={\url{http://www.ghostscript.com/}},
+  note={Retrieved 2014-05-21}
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%
+% Basic Rendering Theory
+%%%%%%%%%%%%%%%%%%%%%%%%
+
+%Porter-Duff compositing.
+% Keith Packard has a really nice PDF version of this.
+@inproceedings{porter1984compositing,
+  title={Compositing digital images},
+  author={Porter, Thomas and Duff, Tom},
+  booktitle={ACM SIGGRAPH Computer Graphics},
+  volume={18},
+  number={3},
+  pages={253--259},
+  year={1984},
+  organization={ACM}
+}
+
+%Bresenham's Line Drawing Algorithm
+% See Michael Abrash's Graphics Programming Black Book for a
+% much better guide to implementing this (at least on the 486)
+@article{bresenham1965algorithm,
+  title={Algorithm for computer control of a digital plotter},
+  author={Bresenham, Jack E},
+  journal={IBM Systems journal},
+  volume={4},
+  number={1},
+  pages={25--30},
+  year={1965},
+  publisher={IBM Corp.}
+}
+
+% Basically my favourite thing on triangle rasterization.
+% There are older ones, but this one makes sense.
+@misc{giesen2013triangle,
+  title={Triangle rasterization in practice},
+  author={Giesen, Fabien},
+  year={2013},
+  journal={The ryg blog},
+  type={Blog},
+  number={February 8},
+  howpublished={\url{http://fgiesen.wordpress.com/2013/02/08/triangle-rasterization-in-practice/}},
+  note={Retrieved 2014-05-16}
+}
+
+% A paper on polygon rasterization. Probably should find a nice textbook on
+% this.
+@article{pineda1988parallel,
+  title={A parallel algorthim for polygon rasterization},
+  author={Pineda, Juan},
+  journal={ACM Computer Graphics},
+  year={1988},
+  volume={22},
+  number={4},
+  pages={17--20},
+  publisher={ACM}
+}
+
+% Bézier curves and friends.
+@phdthesis{catmull1974asubdivision,
+ author = {Catmull, Edwin Earl},
+ title = {A Subdivision Algorithm for Computer Display of Curved Surfaces.},
+ year = {1974},
+ note = {AAI7504786},
+ publisher = {The University of Utah},
+} 
+
+
 %%%%%%%%%%%%%%%%%%%%%%%
 % Floating-pt Precision
 %%%%%%%%%%%%%%%%%%%%%%%
 Goldberg:1991:CSK:103162.103163,
-@article{goldberg91whatevery,
+@article{goldberg1991whatevery,
  author = {Goldberg, David},
  title = {What Every Computer Scientist Should Know About Floating-point Arithmetic},
  journal = {ACM Comput. Surv.},
@@ -40,6 +150,27 @@ Goldberg:1991:CSK:103162.103163,
  address = {New York, NY, USA},
  keywords = {NaN, denormalized number, exception, floating-point, floating-point standard, gradual underflow, guard digit, overflow, relative error, rounding error, rounding mode, ulp, underflow},
 } 
+
+@misc{arb_gpu_shader_fp64,
+  title={{ARB\_gpu\_shader\_fp64}},
+  author={Brown, Pat and Lichtenbelt, Barthold and Licea-Kane, Bill and Merry, Bruce and Dodd, Chris and Werness, Eric and Sellers, Graham and Roth, Greg and Bolz, Jeff and Haemel, Nick and Boudier, Pierre and Daniell, Piers},
+  year={2010},
+  journal={OpenGL Extension},
+  publisher={Kronos Group},
+  howpublished={\url{http://www.opengl.org/registry/specs/ARB/gpu_shader_fp64.txt}},
+  note={Retrieved 2014-05-20}
+}
+
+@misc{nv_half_float,
+  title={{NV\_half\_float}},
+  author={Brown, Pat},
+  year={2002},
+  journal={OpenGL Extension},
+  publisher={NVIDIA Corporation},
+  howpublished={\url{http://www.opengl.org/registry/specs/NV/half_float.txt}},
+  note={Retrieved 2014-05-20}
+}
+
 @inproceedings{emmart2010high,
   title={High precision integer multiplication with a graphics processing unit},
   author={Emmart, Niall and Weems, Charles},
@@ -49,10 +180,37 @@ Goldberg:1991:CSK:103162.103163,
   organization={IEEE}
 }
 
+@article{ieee754std1985,
+  journal={{ANSI}/{IEEE} Std 754-1985},
+  title={{IEEE} Standard for Binary Floating-Point Arithmetic},
+  year={1985}, 
+}
+
+@article{ieee754std2008,
+  journal={{IEEE} Std 754-2008},
+  title={{IEEE} Standard for Floating-Point Arithmetic},
+  year={2008},
+  month={Aug},
+  pages={1-70},
+}
+
+
+
 %%%%%%%%%%%%%%%%%%%%%%%%
 % GPU-y Stuff
 %%%%%%%%%%%%%%%%%%%%%%%%
 
+% OpenGL 4.4 (core profile) spec.
+% The latest OpenGL spec.
+% See: http://www.opengl.org/registry/doc/glspec44.core.pdf
+@book{openglspec,
+  title={The {OpenGL}\textregistered Graphics System: A Specification},
+  author={Segal, Mark and Akely, Kurt and Leech, Jon},
+  year={2014},
+  publisher={The Kronos Group, Inc},
+  url={http://www.opengl.org/registry/doc/glspec44.core.pdf}
+}
+
 % The valve paper on using signed distance fields, scaling them and then alpha testing
 % them to have a smooth, defined boundary for "vector"-like effects.
 % Also talks of using several channels in the image and running boolean operations on them
@@ -60,7 +218,7 @@ Goldberg:1991:CSK:103162.103163,
 @inproceedings{green2007improved,
   title={Improved alpha-tested magnification for vector textures and special effects},
   author={Green, Chris},
-  booktitle={ACM SIGGRAPH 2007 courses},
+  booktitle={{ACM} {SIGGRAPH} 2007 courses},
   pages={9--18},
   year={2007},
   organization={ACM}
@@ -92,7 +250,7 @@ Goldberg:1991:CSK:103162.103163,
 % Split texture into a grid/quadtree, have each element represented by a set of cubic equations, combined CSG style.
 % Need to read this further to understand some of the nuance, though I expect GLyphy does this better?
 @techreport{ray2005vector,
-  title={Vector texture maps on the GPU},
+  title={Vector texture maps on the {GPU}},
   author={Ray, Nicolas and Cavin, Xavier and L{\'e}vy, Bruno},
   year={2005},
   institution={Technical Report ALICE-TR-05-003}
@@ -140,7 +298,7 @@ Goldberg:1991:CSK:103162.103163,
 @article{loop2007rendering,
   title={Rendering vector art on the GPU},
   author={Loop, Charles and Blinn, Jim},
-  journal={GPU gems},
+  journal={{GPU} gems},
   volume={3},
   pages={543--562},
   year={2007}
@@ -153,9 +311,9 @@ Goldberg:1991:CSK:103162.103163,
 % See Zach Rusin's blog post comparing it to Qt's SVG renderer.
 % http://zrusin.blogspot.com.au/2011/09/nv-path-rendering.html 
 @article{kilgard2012gpu,
-  title={GPU-accelerated path rendering},
+  title={{GPU}-accelerated path rendering},
   author={Kilgard, Mark J and Bolz, Jeff},
-  journal={ACM Transactions on Graphics (TOG)},
+  journal={{ACM} Transactions on Graphics (TOG)},
   volume={31},
   number={6},
   pages={172},
@@ -164,7 +322,7 @@ Goldberg:1991:CSK:103162.103163,
 }
 % An extension to the above, detailing the use of the extension, rather than the way it is implemented.
 @article{kilgard300programming,
-  title={Programming with NV path rendering: An Annex to the SIGGRAPH paper GPU-accelerated Path Rendering},
+  title={Programming with {NV} path rendering: An Annex to the {SIGGRAPH} paper {GPU}-accelerated Path Rendering},
   author={Kilgard, Mark J},
   journal={heart},
   volume={300},
@@ -181,7 +339,7 @@ Goldberg:1991:CSK:103162.103163,
 % OpenVG is an opengl-ish API for vector graphics.
 % More based around SVG than postscript, but not bad.
 @article{rice2008openvg,
-  title={OpenVG Specification, version 1.1},
+  title={{OpenVG} Specification, version 1.1},
   author={Rice, Daniel and Simpson, RJ},
   journal={Khronos Group},
   year={2008}
@@ -191,7 +349,7 @@ Goldberg:1991:CSK:103162.103163,
 % Implementing OpenVG using OpenGL ES 1. Pretty high-level overview.
 % Basically boiled down to "we tesselated to get curves, and then used textures for fill"
 @inproceedings{oh2007implementation,
-  title={Implementation of OpenVG 1.0 using OpenGL ES},
+  title={Implementation of {OpenVG} 1.0 using {OpenGL} {ES}},
   author={Oh, Aekyung and Sung, Hyunchan and Lee, Hwanyong and Kim, Kujin and Baek, Nakhoon},
   booktitle={Proceedings of the 9th international conference on Human computer interaction with mobile devices and services},
   pages={326--328},
@@ -202,7 +360,7 @@ Goldberg:1991:CSK:103162.103163,
 % Implementing the OpenVG paint modes using GLES2 shaders.
 % This is all pretty simple stuff.
 @inproceedings{robart2009openvg,
-  title={OpenVG paint subsystem over openGL ES shaders},
+  title={{OpenVG} paint subsystem over {OpenGL} {ES} shaders},
   author={Robart, Mathieu},
   booktitle={Consumer Electronics, 2009. ICCE'09. Digest of Technical Papers International Conference on},
   pages={1--2},
@@ -210,6 +368,85 @@ Goldberg:1991:CSK:103162.103163,
   organization={IEEE}
 }
 
+@article{blinn1992trip,
+  title={A Trip Down the Graphics Pipeline: Grandpa, What Does “Viewport” Mean?},
+  author={Blinn, James},
+  journal={Computer Graphics and Applications, IEEE}, 
+  month={Jan},
+  volume={12},
+  number={1},
+  pages={83--87},
+  year={1992}
+}
+
+@ARTICLE{blinn1991trip,
+  author={Blinn, James},
+  journal={Computer Graphics and Applications, IEEE},
+  title={A Trip Down the Graphics Pipeline: Line Clipping},
+  year={1991},
+  month={Jan},
+  volume={11},
+  number={1},
+  pages={98-105},
+  keywords={computer graphics;Z clipping;clipping function;computer graphics;global clipping;homogeneous clipping;line clipping;transform-clip-draw pipeline;Application software;Arithmetic;Assembly;Computer graphics;Displays;Education;Hardware;Pipelines;Standards publication},
+  doi={10.1109/38.67707},
+  ISSN={0272-1716},
+}
+
+%%%%%%%%%%%%%%%%%
+% Quadtrees
+%%%%%%%%%%%%%%%%%
+@article{finkel1974quad,
+  title={Quad trees a data structure for retrieval on composite keys},
+  author={Finkel, Raphael A. and Bentley, Jon Louis},
+  journal={Acta informatica},
+  volume={4},
+  number={1},
+  pages={1--9},
+  year={1974},
+  publisher={Springer}
+}
+
+%BSP trees
+@inproceedings{fuchs1980onvisible,
+ author = {Fuchs, Henry and Kedem, Zvi M. and Naylor, Bruce F.},
+ title = {On Visible Surface Generation by a Priori Tree Structures},
+ booktitle = {Proceedings of the 7th Annual Conference on Computer Graphics and Interactive Techniques},
+ series = {SIGGRAPH '80},
+ year = {1980},
+ isbn = {0-89791-021-4},
+ location = {Seattle, Washington, USA},
+ pages = {124--133},
+ numpages = {10},
+ url = {http://doi.acm.org/10.1145/800250.807481},
+ doi = {10.1145/800250.807481},
+ acmid = {807481},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+} 
+
+% KD-tree paper
+@article{bentley1975multidimensional,
+ author = {Bentley, Jon Louis},
+ title = {Multidimensional Binary Search Trees Used for Associative Searching},
+ journal = {Commun. ACM},
+ issue_date = {Sept. 1975},
+ volume = {18},
+ number = {9},
+ month = sep,
+ year = {1975},
+ issn = {0001-0782},
+ pages = {509--517},
+ numpages = {9},
+ url = {http://doi.acm.org/10.1145/361002.361007},
+ doi = {10.1145/361002.361007},
+ acmid = {361007},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+ keywords = {associative retrieval, attribute, binary search trees, binary tree insertion, information retrieval system, intersection queries, key, nearest neighbor queries, partial match queries},
+} 
+
+
 % Basic overview of PDF and how it is awesome.
 % This doesn't seem like a major revelation for 2002
 @article{cheng2002portable,
@@ -220,7 +457,7 @@ Goldberg:1991:CSK:103162.103163,
        Keywords = {PDF (Computer file format), FILE organization (Computer science), ELECTRONIC data processing},
        Number = {1},
        Pages = {59 - 63},
-       Title = {Portable Document Format (PDF) -- Finally, a Universal Document Exchange Technology.},
+       Title = {Portable Document Format ({PDF}) -- Finally, a Universal Document Exchange Technology.},
        Volume = {28},
        URL = {http://search.ebscohost.com/login.aspx?direct=true&db=aph&AN=11512377&site=ehost-live},
        Year = {2002},
@@ -282,26 +519,24 @@ Goldberg:1991:CSK:103162.103163,
 } 
 
 % It seems wierd using our last names...
-@article{proposalGow,
+@misc{proposalGow,
        title = "Infinite-precision Document Formats (Project Proposal)",
        author = "David Gow",
        year = "2014",
-       howpublished = "http://davidgow.net/stuff/ProjectProposal.pdf"
+       howpublished = "\url{http://davidgow.net/stuff/ProjectProposal.pdf}"
 }
 
 % Note the different title
-@article{proposalMoore,
+@misc{proposalMoore,
        title = "Infinite Precision Document Formats (Project Proposal)",
        author = "Sam Moore",
        year = "2014",
-       howpublished = "http://szmoore.net/ipdf/documents/ProjectProposalSam.pdf"
+       howpublished = "\url{http://szmoore.net/ipdf/documents/ProjectProposalSam.pdf}"
 }
 
 % The Fractal Nature of Bezier Curves
-% Added 2014-01-15
 % No date?
-% email rng@cs.rice.edu
-@article {goldman_thefractal,
+@article{goldman_thefractal,
        title = "The Fractal Nature of Bezier Curves",
        author = "Ron Goldman",
        publisher = "Department of Computer Science, Rice University",
@@ -350,3 +585,639 @@ month={Jun},
 pages={132-143},
 keywords={digital arithmetic;number theory;coordinates;floating point arithmetic;intersection point;line intersection;line segment;Algorithm design and analysis;Costs;Error analysis;Floating-point arithmetic;Hardware;High performance computing;Libraries;Mathematics;Packaging;Roundoff errors},
 doi={10.1109/ARITH.1991.145549},}
+
+@article{goldbern1967twentyseven,
+ author = {Goldberg, I. Bennett},
+ title = {27 Bits Are Not Enough for 8-digit Accuracy},
+ journal = {Commun. ACM},
+ issue_date = {Feb. 1967},
+ volume = {10},
+ number = {2},
+ month = feb,
+ year = {1967},
+ issn = {0001-0782},
+ pages = {105--106},
+ numpages = {2},
+ url = {http://doi.acm.org/10.1145/363067.363112},
+ doi = {10.1145/363067.363112},
+ acmid = {363112},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+} 
+
+
+
+% Boost multiprecision library
+@misc{boost_multiprecision,
+       author = {John Maddock and Christopher Kormanyos},
+       title = {Boost Multiprecision Library},
+       howpublished = {\url{http://www.boost.org/doc/libs/1_53_0/libs/multiprecision/doc/html/boost_multiprecision/}}
+}
+
+@misc{java_bigint,
+       author = {Oracle Corporation},
+       title = {java.math.{BigInteger}},
+       booktitle = {Java Platform 6 {SE}},
+       urldate = {19-05-2014},
+       howpublished = {\url{http://docs.oracle.com/javase/6/docs/api/java/math/BigInteger.html}},
+       note={Retrieved 2014-05-19}
+}
+
+@misc{java_bigdecimal,
+       author = {Oracle Corporation},
+       title = {java.math.{BigDecimal}},
+       booktitle = {Java Platform 7 {SE}},
+       howpublished = {\url{http://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html}},
+       urldate = {19-05-2014},
+       note={Retrieved 2014-05-19}
+}
+
+% A CMOS Floating Point Unit
+@MISC{kelley1997acmos,
+    author = {Michael J. Kelley and Matthew A. Postiff and Advisor Richard and B. Brown},
+    title = {A CMOS Floating Point Unit},
+    year = {1997}
+}
+
+@misc{filiatreault2003simply,
+       author = {Raymond Filiatreault},
+       title = "Simply FPU",
+       year = 2003,
+       howpublished = {\url{http://www.website.masmforum.com/tutorials/fptute/index.html}}
+}
+
+@article{bishop2008floating,
+       author = {David Bishop},
+       year = 2008,
+       howpublished = {\url{http://www.vhdl.org/fphdl/Float_ug.pdf}},
+       title = {Floating Point Package User's Guide},
+       note = {Technical Report},
+       journal = {EDA Industry Working Groups}
+}
+
+@article{dieter2007lowcost,
+ author = {Dieter, William R. and Kaveti, Akil and Dietz, Henry G.},
+ title = {Low-Cost Microarchitectural Support for Improved Floating-Point Accuracy},
+ journal = {IEEE Comput. Archit. Lett.},
+ issue_date = {January 2007},
+ volume = {6},
+ number = {1},
+ month = jan,
+ year = {2007},
+ issn = {1556-6056},
+ pages = {13--16},
+ numpages = {4},
+ url = {http://dx.doi.org/10.1109/L-CA.2007.1},
+ doi = {10.1109/L-CA.2007.1},
+ acmid = {1271937},
+ publisher = {IEEE Computer Society},
+ address = {Washington, DC, USA},
+ keywords = {B Hardware, B.2 Arithmetic and Logic Structures, B.2.4 High-Speed Arithmetic, B.2.4.b Cost/performance, C Computer Systems Organization, C.0 General, C.0.b Hardware/software interfaces, C.1 Processor Architectures, C.1.5 Micro-architecture implementation considerations, G Mathematics of Computing, G.1 Numerical Analysis, G.1.0 General, G.1.0.e Multiple precision arithmetic, I Computing Methodologies, I.3 Computer Graphics, I.3.1 Hardware Architecture, I.3.1.a Graphics processors},
+} 
+
+@misc{jop,
+       author = "jop-devel",
+       title = "Java Optimized Processor",
+       howpublished = "\url{https://github.com/jop-devel/jop}"
+}
+       
+@inproceedings{kadric2013accurate,
+  title={Accurate Parallel Floating-Point Accumulation},
+  author={Kadric, Edin and Gurniak, Paul and DeHon, Andr{\'e}},
+  booktitle={Computer Arithmetic (ARITH), 2013 21st IEEE Symposium on},
+  pages={153--162},
+  year={2013},
+  organization={IEEE}
+}
+
+%ghdl, the least shitty of the open source vhdl tools
+@misc{ghdl,
+       title = "GHDL Guide",
+       author = "Tristan Gingold",
+       year = "2007",
+       howpublished = "\url{http://ghdl.free.fr/ghdl/}"
+}
+
+% Look into as an alternative to using text files for FPU simulation?
+@misc{tang2000using,
+       title = "Using Binary Files in VHDL Test Benches",
+       author = "Stephen Tang",
+       year = "2000",
+       howpublished = "\url{http://www.ece.ualberta.ca/~elliott/ee552/studentAppNotes/2000_w/vhdl/BinaryFileTestbenching/binary.html}",
+       note = "Application Notes (webpage)"
+}
+
+% On the design of IEEE floating point adders
+% Has algorithms!
+@INPROCEEDINGS{seidel2001onthe,
+author={Seidel, P.-M. and Even, G.},
+booktitle={Computer Arithmetic, 2001. Proceedings. 15th IEEE Symposium on},
+title={On the design of fast IEEE floating-point adders},
+year={2001},
+month={},
+pages={184-194},
+keywords={adders;circuit optimisation;floating point arithmetic;logic design;IEEE rounding modes;IEEE standard;addition;approximate counting;borrow-save representation;clock periods;complement subtraction;compound adders;double precision;fast IEEE floating-point adder design;fast circuits;latches;latency;leading zeros;logic levels;normalized numbers;normalized rounded sum/difference;optimization techniques;rounding algorithm;sign-magnitude computation;subtraction;Adders;Algorithm design and analysis;Circuits;Clocks;Delay;Design optimization;Latches;Logic design;Partitioning algorithms;Pipelines},
+doi={10.1109/ARITH.2001.930118},
+ISSN={1063-6889},}
+
+
+@article{demmel1996basic,
+       title = "Basic Issues in Floating Point Arithmetic and Error Analysis",
+       author = "Jim Demmel",
+       journal = "U.C. Berkeley CS267",
+       note = "Lecture Notes",
+       howpublished = "\url{http://www.cs.berkeley.edu/~demmel/cs267/lecture21/lecture21.html}",
+       year = 1996
+}
+
+@misc{grfpu_dasia,
+       title = "GRFPU - High Performance IEEE- 7 5 4 Floating- Point Unit",
+       author = "Edvin Catovic",
+       howpublished = "\url{http://www.gaisler.com/doc/grfpu_dasia.pdf}"
+}
+
+% The best quote ever.
+@misc{beebe2011round32,
+       title = "Re: round32 ( round64 ( X ) ) ?= round32 ( X )",
+       note = "IEEE 754 Working Group Mail Archives",
+       author = "Nelson H. F. Beebe",
+       howpublished = "\url{http://grouper.ieee.org/groups/754/email/msg04169.html}"
+}
+
+% Biography of Charles Babbage because WHY NOT?
+ % I suspect this year is wrong?75
+@ARTICLE{dodge_babbage,
+author={Dodge, N. S.},
+journal={Annals of the History of Computing, IEEE},
+title={Charles Babbage},
+year={2000},
+month={Oct},
+volume={22},
+number={4},
+pages={22-43},
+keywords={Accuracy;Art;Autobiographies;Biographies;Blood;Calculus;Educational institutions;History;Writing},
+doi={10.1109/MAHC.2000.887988},
+ISSN={1058-6180},}
+
+@article{nature1871babbage,
+       author = "Unknown Author",
+       journal = "Nature",
+       title = "Charles Babbage",
+       year = 1871,
+       volume = 5,
+       number = 106, 
+       pages = "28-29"
+}
+
+%IEEE 754 Really should have put this in earlier
+@ARTICLE{ieee2008-754,
+journal={IEEE Std 754-2008},
+title={IEEE Standard for Floating-Point Arithmetic},
+year={2008},
+month={Aug},
+pages={1-70},
+keywords={IEEE standards;floating point arithmetic;programming;IEEE standard;arithmetic formats;computer programming;decimal floating-point arithmetic;754-2008;NaN;arithmetic;binary;computer;decimal;exponent;floating-point;format;interchange;number;rounding;significand;subnormal},
+doi={10.1109/IEEESTD.2008.4610935},}
+
+
+@article{dekker1971afloating,
+year={1971},
+issn={0029-599X},
+journal={Numerische Mathematik},
+volume={18},
+number={3},
+doi={10.1007/BF01397083},
+title={A floating-point technique for extending the available precision},
+url={http://dx.doi.org/10.1007/BF01397083},
+publisher={Springer-Verlag},
+author={Dekker, T.J.},
+pages={224-242},
+language={English}
+}
+
+@String{pub-BIRKHAUSER-BOSTON   = "Birkh{\"a}user Boston Inc."}
+@String{pub-BIRKHAUSER-BOSTON:adr = "Cambridge, MA, USA"}
+
+@Book{HFP,
+  author =       "Jean-Michel Muller and Nicolas Brisebarre and Florent
+                 de Dinechin and Claude-Pierre Jeannerod and Vincent
+                 Lef{\`e}vre and Guillaume Melquiond and Nathalie Revol
+                 and Damien Stehl{\'e} and Serge Torres",
+  title =        "Handbook of Floating-Point Arithmetic",
+  publisher =    pub-BIRKHAUSER-BOSTON,
+  address =      pub-BIRKHAUSER-BOSTON:adr,
+  pages =        "xxiii + 572",
+  year =         "2010",
+  DOI =          "http://dx.doi.org/10.1007/978-0-8176-4704-9",
+  ISBN =         "0-8176-4704-X",
+  ISBN-13 =      "978-0-8176-4704-9",
+  LCCN =         "QA76.9.C62 H36 2010",
+  bibdate =      "Thu Jan 27 16:18:58 2011",
+  price =        "US\$90 (est.)",
+  acknowledgement = ack-nhfb,
+}
+
+@article{svg2011-1.1,
+       year = 2011,
+       month = "August",
+       journal = "W3C Recommendation",
+       title = "Scalable Vector Graphics (SVG) 1.1 (Second Edition)",
+       author = "Erik Dahlst{\'o}m and Patric Dengler and Anthony Grasso and Chris Lilley and Cameron McCormack and Doug Schepers and Jonathon Watt and Jon Ferraiolo and Fujisawa Jun and Dean Jackson",
+       howpublished = "\url{http://www.w3.org/TR/SVG/}",
+       note = "Retrieved 2014-05-23",
+}
+
+@article{xml2008-1.0,
+       year = 2008,
+       month = "November",
+       journal = "W3C Recommendation",
+       title = "Extensible Markup Language (XML) 1.0 (Fifth Edition)",
+       author = "W3C",
+       editor = "Tim Bray and Jean Paoli and C Sperberg-McQueen and Eve Maler and Francois Yergeau",
+       howpublished = "\url{http://www.w3.org/TR/xml/}"
+}
+
+@article{html2014-draft,
+       year = 2014,
+       month = "April",
+       journal = "W3C Candidate Recommendation",
+       title = "HTML5 - Developer View - A Vocabulary and associated APIs for HTML and XHTML",
+       author = "W3C",
+       editor = "Robin Berjon and Steve Faulkner and Travis Leithead and Erika Navara and Edward O'Connor and Silvia Pfeiffer and Ian Hickson",
+       howpublished = "\url{http://www.w3.org/TR/html/}"
+}
+
+@article{css2011-level2,
+       year = 2011,
+       month = "June",
+       journal = "W3CRecommendation",
+       title = "Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification",
+       author = "W3C",
+       editor = "Bert Bos, Tantex Celik, Ian Hickson, Hakon WiumLie",
+       howpublished = "\url{http://www.w3.org/TR/CSS21/}"
+}
+
+@article{kapoulkine2014pugixml,
+       year = "2014",
+       author = "Arseny Kapoulkine",
+       title = "pugixml --- Light-weight, simple and fast XML parser for C++ with XPath support",
+       howpublished="http://pugixml.org",
+}
+       
+
+@article{pugixmlDOM,
+       year = "2014",
+       author = "Arseny Kapoulkine",
+       title = "Document Object Model",
+       journal = "pugixml 1.4 manual",
+       howpublished = "http://pugixml.googlecode.com/svn/tags/latest/docs/manual/dom.html"
+}
+
+% Rendering vector graphics on vector display devices (historical)
+%Brassel:1979:ASR:965103.807434,
+@article{brassel1979analgorithm,
+ author = {Brassel, Kurt E. and Fegeas, Robin},
+ title = {An Algorithm for Shading of Regions on Vector Display Devices},
+ journal = {SIGGRAPH Comput. Graph.},
+ issue_date = {August 1979},
+ volume = {13},
+ number = {2},
+ month = aug,
+ year = {1979},
+ issn = {0097-8930},
+ pages = {126--133},
+ numpages = {8},
+ url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/965103.807434},
+ doi = {10.1145/965103.807434},
+ acmid = {807434},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+ keywords = {Cartography, Computer graphics, Line-drawing processing, Polygons, Shading, Software, Spatial information},
+} 
+%Lane:1983:AFR:357323.357326,
+@article{lane1983analgorithm,
+ author = {Lane, J. M. and M. Rarick, R. and},
+ title = {An Algorithm for Filling Regions on Graphics Display Devices},
+ journal = {ACM Trans. Graph.},
+ issue_date = {July 1983},
+ volume = {2},
+ number = {3},
+ month = jul,
+ year = {1983},
+ issn = {0730-0301},
+ pages = {192--196},
+ numpages = {5},
+ url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/357323.357326},
+ doi = {10.1145/357323.357326},
+ acmid = {357326},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+}
+
+@article{hillesland2004paranoia,
+       author = "Karl E Hillesland and Anselmo Lastra",
+       title = "GPU Floating-Point Paranoia",
+       journal = "Proceedings of GP 2004",
+       year = 2004,
+       url = "\url{http://www.cs.unc.edu/~ibr/projects/paranoia/}"
+}
+
+%Fousse:2007:MMB:1236463.1236468,
+@article{fousse2007mpfr,
+ author = {Fousse, Laurent and Hanrot, Guillaume and Lef\`{e}vre, Vincent and P{\'e}lissier, Patrick and Zimmermann, Paul},
+ title = {MPFR: A Multiple-precision Binary Floating-point Library with Correct Rounding},
+ journal = {ACM Trans. Math. Softw.},
+ issue_date = {June 2007},
+ volume = {33},
+ number = {2},
+ month = jun,
+ year = {2007},
+ issn = {0098-3500},
+ articleno = {13},
+ url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/1236463.1236468},
+ doi = {10.1145/1236463.1236468},
+ acmid = {1236468},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+ keywords = {IEEE 754 standard, Multiple-precision arithmetic, correct rounding, elementary function, floating-point arithmetic, portable software},
+} 
+
+
+@misc{kahan1996ieee754,
+       author = "W Kahan",
+       title = "Lecture Notes on the Status of IEEE Standard 754 for Binary Floating-Point Arithmetic",
+       howpublished = "\url{http://http.cs.berkeley.edu/~wkahan/ieee754status/ieee754.ps} accessed April 2014",
+       year = 1996,
+       month = May
+}
+
+@misc{kahan2007wrong,
+       author = "W Kahan",
+       title = "Why is Floating-Point Computation so Hard to Debug when it Goes Wrong?",
+       howpublished = "\url{http://www.cs.berkeley.edu/~wkahan/WrongR.pdf} accessed April 2014",
+       year = 2007,
+       month = March
+}
+
+@misc{kahanweb,
+       author = "W Kahan",
+       title = "Prof W Kahan's Webpages",
+       howpublished = "\url{http://www.cs.berkeley.edu/~wkahan/} accessed April 2014"
+}
+
+@book{computergraphics2,
+       author = "Donald Hearn and M Pauline Baker",
+       title = "Computer Graphics",
+       edition = 2,
+       year = 1997,
+       publisher = "Prentice Hall, Inc",
+       address = "Upper Saddle River, New Jersey 07458, USA"
+}
+
+@ARTICLE{bresenham1996pixel,
+author={Bresenham, J.},
+journal={Computer Graphics and Applications, IEEE},
+title={Pixel-processing fundamentals},
+year={1996},
+month={Jan},
+volume={16},
+number={1},
+pages={74-82},
+keywords={approximation theory;computer graphics;computer driven raster displays;edge drawing algorithms;explicit reference model;integer arithmetic algorithm;line drawing algorithms;line rastering;objective function;pixel processing fundamentals;pixel space basics;pixel-processing fundamentals;raster approximation;systematic rules;unintentionally fuzzy assumptions;Approximation algorithms;Cities and towns;Color;Computer displays;Layout;Lifting equipment;Painting;Tutorial;Visual effects;Yarn},
+doi={10.1109/38.481626},
+ISSN={0272-1716},}
+
+% It's a series of blog posts, don't judge me
+% Also don't look at the rest of the blog, it's strange...
+@misc{elias2000graphics,
+       title = "Graphics",
+       author = "Hugo Elias",
+       howpublished = {\url{http://freespace.virgin.net/hugo.elias/graphics/x\_main.htm} accessed May 2014},
+       abstract = "This page explains how to draw graphics onto (mostly) Raster display systems. A very small amount could possibly be relevant to vector displays, but who uses those any more?"
+}
+
+@article{wu1991anefficient,
+ author = {Wu, Xiaolin},
+ title = {An Efficient Antialiasing Technique},
+ journal = {SIGGRAPH Comput. Graph.},
+ issue_date = {July 1991},
+ volume = {25},
+ number = {4},
+ month = jul,
+ year = {1991},
+ issn = {0097-8930},
+ pages = {143--152},
+ numpages = {10},
+ url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/127719.122734},
+ doi = {10.1145/127719.122734},
+ acmid = {122734},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+ keywords = {antialiasing, convolution, curve digitization, digital geometry},
+} 
+
+@article{w3c2010svghtmlprimer,
+       year = 2010,
+       month = "September",
+       journal = "WC3 Primer (Editor's Draft)",
+       title = "An SVG Primer for Today's Browsers",
+       author = "W3C",
+       editor = "David Dailey",
+       howpublished = "\url{http://www.w3.org/Graphics/SVG/IG/resources/svgprimer.html}"
+}
+
+% Koch snowflake in French no I didn't read it so sue me it is just here to give Koch credit
+@article{koch1904surune,
+       year = 1904,
+       author = "H Von Koch",
+       title = "Sur une courbe continue sans tangente, obtenue par une construction géométrique élémentaire." ,
+       journal = "Archiv för Matemat., Astron. och Fys.",
+       pages = "681-702"}
+
+@article{js_3d_pdf,
+       year = 2007,
+       author = "Adobe Systems Incorporated",
+       edition = 2,
+       month = "April",
+       journal = "Adobe Acrobat Reader SDK"
+}
+% Holy mackerel, a paper on precision in document formats!
+@article{beebe2007extending,
+  author={Beebe, Nelson},
+  title={Extending {\TeX} and {METAFONT} With Floating-Point Arithmetic},
+  year={2007},
+  journal={{TUGboat}},
+  volume={28},
+  number={3},
+}
+
+@book{de1986shape,
+  title={Shape mathematics and CAD},
+  author={De Casteljau, Paul de Faget},
+  year={1986},
+  publisher={IET}
+}
+
+@book{foley1996computer,
+  title={Computer Graphics: Principles and Practice},
+  author={Foley, J.D.},
+  isbn={9780201848403},
+  lccn={lc95013631},
+  chapter={Representing Curves and Surfaces},
+  series={Addison-Wesley systems programming series},
+  url={http://books.google.com.au/books?id=-4ngT05gmAQC},
+  year={1996},
+  publisher={Addison-Wesley}
+}
+
+@book{zerbst2004game,
+  title={{3D} Game Engine Programming},
+  author={Zerbst, Stefan and Düvel, Oliver},
+  publisher={Premier Press},
+  chapter={Scene Management},
+  isbn={1592003516},
+  year={2004}
+}
+
+@book{knuth1983metafont,
+       author = "Donald Knuth",
+       year = 1983,
+       title = "The {METAFONT} Book",
+       publisher = "Addison-Wesley",
+       edition = 2
+}
+
+@book{knuth1984texbook,
+       author = "Donald Knuth",
+       year = 1983,
+       title = "The {\TeX} Book",
+       publisher = "Addison-Wesley",
+       edition = 2
+}
+
+%Bezier:1986:PVP:988594.988595,
+@article{bezier1986apersonal,
+ author = {B{\'e}zier, Pierre E.},
+ title = {A Personal View of Progress in Computer Aided Design},
+ journal = {SIGGRAPH Comput. Graph.},
+ issue_date = {July 1986},
+ volume = {20},
+ number = {3},
+ month = jul,
+ year = {1986},
+ issn = {0097-8930},
+ pages = {154--159},
+ numpages = {6},
+ url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/988594.988595},
+ doi = {10.1145/988594.988595},
+ acmid = {988595},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+} 
+
+% ECMAscript (Javascript) (sorry David I had to do it)
+@book{ecma-262,
+       title = "ECMAScript Language Specification",
+       year = 2011,
+       month = "June",
+       edition = "5.1",
+       publisher = {\url{http://www.ecma-international.org} accessed 2014-05-22},
+       author = "ECMA International"
+}
+
+@ARTICLE{randell1982fromanalytical,
+author={Randell, B.},
+journal={Annals of the History of Computing},
+title={From Analytical Engine to Electronic Digital Computer: The Contributions of Ludgate, Torres, and Bush},
+year={1982},
+month={Oct},
+volume={4},
+number={4},
+pages={327-341},
+keywords={Calculators;Character recognition;Engine cylinders;Engineering drawings;Hardware;History;Information analysis;Information processing;Permission;Time sharing computer systems},
+doi={10.1109/MAHC.1982.10042},
+ISSN={0164-1239},}
+
+@article{heckmann1998bigintegers,
+       author = "Reinhold Heckmann",
+       title = "Big Integers and Complexity Issues in Exact Real Arithmetic",
+       journal = "Electronic Notes in Theoretical Computer Science",
+       Volume = 13, 
+       year = 1998, 
+       pages = 69, 
+       doi = "10.1016/S1571-0661(05)80215-4"
+}
+
+
+% XKCD comic "pixels"
+@misc{munroe2014pixels,
+author={Munroe, Randall},
+title={Pixels},
+url={http://xkcd.com/1416},
+howpublished={\url{http://xkcd.com/1416/} accessed 2014-09-03},
+journal={xkcd: A webcomic of romance, sarcasm, math, and language.}
+year={2014},
+month={September},
+day={3},
+date={2014-09-03},
+number={1416}
+}
+
+% GL_ARB_shader_precision
+@misc{ARBshaderprecision,
+author={Kessenich, John},
+title={{GL\_ARB\_shader\_precision}},
+year={2010},
+howpublished={\url{https://www.opengl.org/registry/specs/ARB/shader_precision.txt} accessed 2014-10-17}
+}
+
+@article{intelgpuspec,
+author={Intel Corporation},
+title={{3D/Media --- 3D Pipeline (Ivy Bridge)}},
+journal={{Intel OpenSource HD Graphics Programmer's Reference Manual (PRM)}},
+year={2012},
+url={https://01.org/linuxgraphics/sites/default/files/documentation/ivb_ihd_os_vol2_part1.pdf},
+volume={2},
+number={1}
+}
+
+@misc{dawson2012notnormal,
+author={Dawson, Bruce},
+title={{That's Not Normal --- the Performance of Odd Floats}},
+year={2012},
+howpublished={\url{https://randomascii.wordpress.com/2012/05/20/thats-not-normalthe-performance-of-odd-floats/} accessed 2014-10-18}
+}
+
+# Original cubic solution
+@misc{cardano1545artis,
+author={Cardano, Gerolamo},
+title={Artis magnae sive de regulis agebraicis: liber unus},
+year={1545}
+}
+
+@misc{sederberg2007cad,
+author={Sederberg, T. W.},
+title={Computer Aided Geometric Design Course Notes},
+year={2007}
+}
+
+@book{salomon2007data,
+  title={Data Compression: The Complete Reference},
+  author={Salomon, D. and Motta, G. and Bryant, D.},
+  isbn={9781846286032},
+  lccn={2006931789},
+  series={Molecular biology intelligence unit},
+  url={http://books.google.com.au/books?id=ujnQogzx\_2EC},
+  year={2007},
+  publisher={Springer}
+}
+
+@book{taocp2,
+       title={Seminumerical Algorithms},
+       author={Knuth, Donald},
+       year={1998},
+       volume={2},
+       series={The Art of Computer Programming},
+       publisher={Addison--Wesley},
+       edition={3rd}
+}
\ No newline at end of file

UCC git Repository :: git.ucc.asn.au