Merge branch 'master' of git.ucc.asn.au:/ipdf/documents
[ipdf/documents.git] / papers.bib
1 % PostScript Reference Manual
2 @book{plrm,
3   title={PostScript Language Reference},
4   author={Adobe Systems Incorporated},
5   edition={3rd},
6   publisher="Addison-Wesley Publishing Company",
7   year={1985 - 1999}
8 }
9
10 % PDF Reference Manual v1.7
11 @book{pdfref17,
12   title={PDF Reference},
13   author={Adobe Systems Incorporated},
14   edition={6th},
15   publisher={Adobe Systems Incorporated},
16   year={2006}
17 }
18
19 @misc{texdraft,
20   title={Preliminary preliminary description of {\TeX}},
21   author={Knuth, Donald},
22   year={1977},
23   howpublished={\url{http://www.saildart.org/TEXDR.AFT[1,DEK]1}}
24 }
25
26 @article{fuchs1982theformat,
27   title={The Format of {\TeX}'s {DVI} files},
28   author={Fuchs, David},
29   year={1982},
30   journal={TUGBoat},
31   volume={3},
32   number={2},
33   howpublished={\url{http://www.tug.org/TUGboat/Articles/tb03-2/tb06software.pdf}}
34 }
35
36 % HTML 2 spec
37 @article{html2rfc,
38   title={Hypertext Markup Language -- 2.0},
39   author={Berners-Lee, Tim and Connolly, Daniel},
40   year={1995},
41   journal={Internet RFC 1866}
42 }
43
44 % CSS 2 spec
45 @misc{css2spec,
46   title={Cascading Style Sheets, Level 2, {CSS2} Specification},
47   author={Bos, Bert and Wium Lie, Håkon and Lilley, Chris and Jacobs Ian},
48   date={1998},
49   howpublished={\url{http://www.w3.org/TR/1998/REC-CSS2-19980512/}}
50 }
51
52 @misc{ghostscript,
53   title={GhostScript, an interpreter for the PostScript language and PDF},
54   author={Artifex Software},
55   year={1988},
56   howpublished={\url{http://www.ghostscript.com/}}
57 }
58
59 %%%%%%%%%%%%%%%%%%%%%%%%
60 % Basic Rendering Theory
61 %%%%%%%%%%%%%%%%%%%%%%%%
62
63 %Porter-Duff compositing.
64 % Keith Packard has a really nice PDF version of this.
65 @inproceedings{porter1984compositing,
66   title={Compositing digital images},
67   author={Porter, Thomas and Duff, Tom},
68   booktitle={ACM SIGGRAPH Computer Graphics},
69   volume={18},
70   number={3},
71   pages={253--259},
72   year={1984},
73   organization={ACM}
74 }
75
76 %Bresenham's Line Drawing Algorithm
77 % See Michael Abrash's Graphics Programming Black Book for a
78 % much better guide to implementing this (at least on the 486)
79 @article{bresenham1965algorithm,
80   title={Algorithm for computer control of a digital plotter},
81   author={Bresenham, Jack E},
82   journal={IBM Systems journal},
83   volume={4},
84   number={1},
85   pages={25--30},
86   year={1965},
87   publisher={IBM Corp.}
88 }
89
90 % Basically my favourite thing on triangle rasterization.
91 % There are older ones, but this one makes sense.
92 @misc{giesen2013triangle,
93   title={Triangle rasterization in practice},
94   author={Giesen, Fabien},
95   year={2013},
96   journal={The ryg blog},
97   type={Blog},
98   number={February 8},
99   howpublished={\url{http://fgiesen.wordpress.com/2013/02/08/triangle-rasterization-in-practice/}}
100 }
101
102 % A paper on polygon rasterization. Probably should find a nice textbook on
103 % this.
104 @article{pineda1988parallel,
105   title={A parallel algorthim for polygon rasterization},
106   author={Pineda, Juan},
107   journal={ACM Computer Graphics},
108   year={1988},
109   volume={22},
110   number={4},
111   pages={17--20},
112   publisher={ACM}
113 }
114
115 % Bézier curves and friends.
116 @phdthesis{catmull1974asubdivision,
117  author = {Catmull, Edwin Earl},
118  title = {A Subdivision Algorithm for Computer Display of Curved Surfaces.},
119  year = {1974},
120  note = {AAI7504786},
121  publisher = {The University of Utah},
122
123
124
125 %%%%%%%%%%%%%%%%%%%%%%%
126 % Floating-pt Precision
127 %%%%%%%%%%%%%%%%%%%%%%%
128 Goldberg:1991:CSK:103162.103163,
129 @article{goldberg1991whatevery,
130  author = {Goldberg, David},
131  title = {What Every Computer Scientist Should Know About Floating-point Arithmetic},
132  journal = {ACM Comput. Surv.},
133  issue_date = {March 1991},
134  volume = {23},
135  number = {1},
136  month = mar,
137  year = {1991},
138  issn = {0360-0300},
139  pages = {5--48},
140  numpages = {44},
141  url = {http://doi.acm.org/10.1145/103162.103163},
142  doi = {10.1145/103162.103163},
143  acmid = {103163},
144  publisher = {ACM},
145  address = {New York, NY, USA},
146  keywords = {NaN, denormalized number, exception, floating-point, floating-point standard, gradual underflow, guard digit, overflow, relative error, rounding error, rounding mode, ulp, underflow},
147
148
149 @misc{arb_gpu_shader_fp64,
150   title={{ARB\_gpu\_shader\_fp64}},
151   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},
152   year={2010},
153   journal={OpenGL Extension},
154   publisher={Kronos Group},
155   howpublished={\url{http://www.opengl.org/registry/specs/ARB/gpu_shader_fp64.txt}}
156 }
157
158 @misc{nv_half_float,
159   title={{NV\_half\_float}},
160   author={Brown, Pat},
161   year={2002},
162   journal={OpenGL Extension},
163   publisher={NVIDIA Corporation},
164   howpublished={\url{http://www.opengl.org/registry/specs/NV/half_float.txt}}
165 }
166
167 @inproceedings{emmart2010high,
168   title={High precision integer multiplication with a graphics processing unit},
169   author={Emmart, Niall and Weems, Charles},
170   booktitle={2010 IEEE International Symposium on Parallel \& Distributed Processing, Workshops and Phd Forum (IPDPSW)},
171   pages={1--6},
172   year={2010},
173   organization={IEEE}
174 }
175
176 @article{ieee754std1985,
177   journal={{ANSI}/{IEEE} Std 754-1985},
178   title={{IEEE} Standard for Binary Floating-Point Arithmetic},
179   year={1985}, 
180 }
181
182 @article{ieee754std2008,
183   journal={{IEEE} Std 754-2008},
184   title={{IEEE} Standard for Floating-Point Arithmetic},
185   year={2008},
186   month={Aug},
187   pages={1-70},
188 }
189
190
191
192 %%%%%%%%%%%%%%%%%%%%%%%%
193 % GPU-y Stuff
194 %%%%%%%%%%%%%%%%%%%%%%%%
195
196 % OpenGL 4.4 (core profile) spec.
197 % The latest OpenGL spec.
198 % See: http://www.opengl.org/registry/doc/glspec44.core.pdf
199 @book{openglspec,
200   title={The {OpenGL}\textregistered Graphics System: A Specification},
201   author={Segal, Mark and Akely, Kurt and Leech, Jon},
202   year={2014},
203   publisher={The Kronos Group, Inc},
204   url={http://www.opengl.org/registry/doc/glspec44.core.pdf}
205 }
206
207 % The valve paper on using signed distance fields, scaling them and then alpha testing
208 % them to have a smooth, defined boundary for "vector"-like effects.
209 % Also talks of using several channels in the image and running boolean operations on them
210 % to create sharp corners, etc.
211 @inproceedings{green2007improved,
212   title={Improved alpha-tested magnification for vector textures and special effects},
213   author={Green, Chris},
214   booktitle={{ACM} {SIGGRAPH} 2007 courses},
215   pages={9--18},
216   year={2007},
217   organization={ACM}
218 }
219
220 % A fast approximation to the signed distance field calculation for pixel grids
221 @article{leymarie1992fast,
222   title={Fast raster scan distance propagation on the discrete rectangular lattice},
223   author={Leymarie, F and Levine, Martin D},
224   journal={CVGIP: Image Understanding},
225   volume={55},
226   number={1},
227   pages={84--94},
228   year={1992},
229   publisher={Elsevier}
230 }
231
232 % Good overview of SDFs and the use of quad/octrees to better encode fine detail.
233 @inproceedings{frisken2000adaptively,
234   title={Adaptively sampled distance fields: a general representation of shape for computer graphics},
235   author={Frisken, Sarah F and Perry, Ronald N and Rockwood, Alyn P and Jones, Thouis R},
236   booktitle={Proceedings of the 27th annual conference on Computer graphics and interactive techniques},
237   pages={249--254},
238   year={2000},
239   organization={ACM Press/Addison-Wesley Publishing Co.}
240 }
241
242
243 % Split texture into a grid/quadtree, have each element represented by a set of cubic equations, combined CSG style.
244 % Need to read this further to understand some of the nuance, though I expect GLyphy does this better?
245 @techreport{ray2005vector,
246   title={Vector texture maps on the {GPU}},
247   author={Ray, Nicolas and Cavin, Xavier and L{\'e}vy, Bruno},
248   year={2005},
249   institution={Technical Report ALICE-TR-05-003}
250 }
251
252 % GLyphy: https://github.com/behdad/slippy/tree/master/glyphy
253 % Can I get these slides into a readable format, and is it formal enough?
254 % The caricatures of the Intel OpenGL driver team are good, if nothing else.
255
256 % Cairo rendering library. Basically implements the rendering bits of postscript in C,
257 % the basis for many Linux vector graphics programs.
258 @inproceedings{worth2003xr,
259   title={Xr: Cross-device rendering for vector graphics},
260   author={Worth, Carl and Packard, Keith},
261   booktitle={Linux Symposium},
262   pages={480},
263   year={2003}
264 }
265
266
267 % Glitz cairo opengl backend.
268 @inproceedings{nilsson2004glitz,
269   title={Glitz: Hardware Accelerated Image Compositing Using {O}pen{GL}.},
270   author={Nilsson, Peter and Reveman, David},
271   booktitle={USENIX Annual Technical Conference, FREENIX Track},
272   pages={29--40},
273   year={2004}
274 }
275
276 % Basically an earlier but more detailed version of the below.
277 @article{loop2005resolution,
278   title={Resolution independent curve rendering using programmable graphics hardware},
279   author={Loop, Charles and Blinn, Jim},
280   journal={ACM Transactions on Graphics (TOG)},
281   volume={24},
282   number={3},
283   pages={1000--1009},
284   year={2005},
285   publisher={ACM}
286 }
287
288
289 % GPU Gems 3 article about using textures for the edges of smooth curves.
290 % http://http.developer.nvidia.com/GPUGems3/gpugems3_ch25.html
291 @article{loop2007rendering,
292   title={Rendering vector art on the GPU},
293   author={Loop, Charles and Blinn, Jim},
294   journal={{GPU} gems},
295   volume={3},
296   pages={543--562},
297   year={2007}
298 }
299
300
301 % The article introducing the NV_path_rendering opengl extension
302 % (nVidia-specific) which uses a "stencil-then-cover" technique to render
303 % real vector graphics (not an approximation) on the GPU.
304 % See Zach Rusin's blog post comparing it to Qt's SVG renderer.
305 % http://zrusin.blogspot.com.au/2011/09/nv-path-rendering.html 
306 @article{kilgard2012gpu,
307   title={{GPU}-accelerated path rendering},
308   author={Kilgard, Mark J and Bolz, Jeff},
309   journal={{ACM} Transactions on Graphics (TOG)},
310   volume={31},
311   number={6},
312   pages={172},
313   year={2012},
314   publisher={ACM}
315 }
316 % An extension to the above, detailing the use of the extension, rather than the way it is implemented.
317 @article{kilgard300programming,
318   title={Programming with {NV} path rendering: An Annex to the {SIGGRAPH} paper {GPU}-accelerated Path Rendering},
319   author={Kilgard, Mark J},
320   journal={heart},
321   volume={300},
322   pages={300}
323 }
324
325 % GL_NV_blend_equation_advanced OpenGL extension
326 % https://www.opengl.org/registry/specs/NV/blend_equation_advanced.txt
327 % TODO: How to reference this??
328 % Bascially supports all PDF, SVG blend modes and then some.
329 % Pretty much only nVidia support this, but the specification
330 % includes the equations for everything, which is nice.
331
332 % OpenVG is an opengl-ish API for vector graphics.
333 % More based around SVG than postscript, but not bad.
334 @article{rice2008openvg,
335   title={{OpenVG} Specification, version 1.1},
336   author={Rice, Daniel and Simpson, RJ},
337   journal={Khronos Group},
338   year={2008}
339 }
340
341
342 % Implementing OpenVG using OpenGL ES 1. Pretty high-level overview.
343 % Basically boiled down to "we tesselated to get curves, and then used textures for fill"
344 @inproceedings{oh2007implementation,
345   title={Implementation of {OpenVG} 1.0 using {OpenGL} {ES}},
346   author={Oh, Aekyung and Sung, Hyunchan and Lee, Hwanyong and Kim, Kujin and Baek, Nakhoon},
347   booktitle={Proceedings of the 9th international conference on Human computer interaction with mobile devices and services},
348   pages={326--328},
349   year={2007},
350   organization={ACM}
351 }
352
353 % Implementing the OpenVG paint modes using GLES2 shaders.
354 % This is all pretty simple stuff.
355 @inproceedings{robart2009openvg,
356   title={{OpenVG} paint subsystem over {OpenGL} {ES} shaders},
357   author={Robart, Mathieu},
358   booktitle={Consumer Electronics, 2009. ICCE'09. Digest of Technical Papers International Conference on},
359   pages={1--2},
360   year={2009},
361   organization={IEEE}
362 }
363
364 %%%%%%%%%%%%%%%%%
365 % Quadtrees
366 %%%%%%%%%%%%%%%%%
367 @article{finkel1974quad,
368   title={Quad trees a data structure for retrieval on composite keys},
369   author={Finkel, Raphael A. and Bentley, Jon Louis},
370   journal={Acta informatica},
371   volume={4},
372   number={1},
373   pages={1--9},
374   year={1974},
375   publisher={Springer}
376 }
377
378 %BSP trees
379 @inproceedings{fuchs1980onvisible,
380  author = {Fuchs, Henry and Kedem, Zvi M. and Naylor, Bruce F.},
381  title = {On Visible Surface Generation by a Priori Tree Structures},
382  booktitle = {Proceedings of the 7th Annual Conference on Computer Graphics and Interactive Techniques},
383  series = {SIGGRAPH '80},
384  year = {1980},
385  isbn = {0-89791-021-4},
386  location = {Seattle, Washington, USA},
387  pages = {124--133},
388  numpages = {10},
389  url = {http://doi.acm.org/10.1145/800250.807481},
390  doi = {10.1145/800250.807481},
391  acmid = {807481},
392  publisher = {ACM},
393  address = {New York, NY, USA},
394
395
396 % KD-tree paper
397 @article{bentley1975multidimensional,
398  author = {Bentley, Jon Louis},
399  title = {Multidimensional Binary Search Trees Used for Associative Searching},
400  journal = {Commun. ACM},
401  issue_date = {Sept. 1975},
402  volume = {18},
403  number = {9},
404  month = sep,
405  year = {1975},
406  issn = {0001-0782},
407  pages = {509--517},
408  numpages = {9},
409  url = {http://doi.acm.org/10.1145/361002.361007},
410  doi = {10.1145/361002.361007},
411  acmid = {361007},
412  publisher = {ACM},
413  address = {New York, NY, USA},
414  keywords = {associative retrieval, attribute, binary search trees, binary tree insertion, information retrieval system, intersection queries, key, nearest neighbor queries, partial match queries},
415
416
417
418 % Basic overview of PDF and how it is awesome.
419 % This doesn't seem like a major revelation for 2002
420 @article{cheng2002portable,
421         Abstract = {Focuses on the portable document format (PDF) as a universal document exchange technology. Features of PDF; PDF software; Description of how to create a PDF file.},
422         Author = {Wan-Lee Cheng, Michael A.},
423         ISSN = {10716084},
424         Journal = {Journal of Technology Studies},
425         Keywords = {PDF (Computer file format), FILE organization (Computer science), ELECTRONIC data processing},
426         Number = {1},
427         Pages = {59 - 63},
428         Title = {Portable Document Format ({PDF}) -- Finally, a Universal Document Exchange Technology.},
429         Volume = {28},
430         URL = {http://search.ebscohost.com/login.aspx?direct=true&db=aph&AN=11512377&site=ehost-live},
431         Year = {2002},
432 }
433
434 % Overview of different formats
435 % Talks about JavaScript being the future
436 % Best title so far
437 @article{hayes2012pixels,
438         Abstract = {The article discusses digital methods for producing and reproducing scientific illustrations for online publication. Topics covered include the benefits of digital techniques for publishing such as three-dimensional graphics, the contribution to the visual quality of artwork using the computer language PostScript, and the Internet as a source for innovation in graphics like Scalable Vector Graphics (SVG). Also mentioned is the JavaScript library D3, an open-source software project, which can create and modify elements.},
439         Author = {Hayes, Brian},
440         ISSN = {00030996},
441         Journal = {American Scientist},
442         Keywords = {ELECTRONIC publishing, SCIENCE publishing, GRAPHIC methods -- Software, POSTSCRIPT (Computer program language), JAVASCRIPT (Computer program language), CHARTS, diagrams, etc., DESIGN & construction},
443         Number = {2},
444         Pages = {106 - 111},
445         Title = {Pixels or Perish.},
446         Volume = {100},
447         URL = {http://search.ebscohost.com/login.aspx?direct=true&db=aph&AN=71853141&site=ehost-live},
448         Year = {2012},
449 }
450
451 % Embedding 3D models / graphs in PDFs
452 % Actually works (in Adobe Reader)
453 @article{barnes2013embedding,
454         Abstract = {With the latest release of the S2PLOT graphics library, embedding interactive, 3-dimensional (3-d) scientific figures in Adobe Portable Document Format (PDF) files is simple, and can be accomplished without commercial software. In this paper, we motivate the need for embedding 3-d figures in scholarly articles. We explain how 3-d figures can be created using the S2PLOT graphics library, exported to Product Representation Compact (PRC) format, and included as fully interactive, 3-d figures in PDF files using the movie15 LaTeX package. We present new examples of 3-d PDF figures, explain how they have been made, validate them, and comment on their advantages over traditional, static 2-dimensional (2-d) figures. With the judicious use of 3-d rather than 2-d figures, scientists can now publish, share and archive more useful, flexible and faithful representations of their study outcomes. The article you are reading does not have embedded 3-d figures. The full paper, with embedded 3-d figure},
455         Author = {Barnes, David G. and Vidiassov, Michail and Ruthensteiner, Bernhard and Fluke, Christopher J. and Quayle, Michelle R. and McHenry, Colin R.},
456         ISSN = {19326203},
457         Journal = {PLoS ONE},
458         Keywords = {PDF (Computer file format), EMBEDDINGS (Mathematics), COMPUTER software, THREE-dimensional imaging, LATEX (Computer software), COMPUTER graphics, Research Article},
459         Number = {9},
460         Pages = {1 - 15},
461         Title = {Embedding and Publishing Interactive, 3-Dimensional, Scientific Figures in Portable Document Format (PDF) Files.},
462         Volume = {8},
463         URL = {http://search.ebscohost.com/login.aspx?direct=true&db=aph&AN=90530375&site=ehost-live},
464         Year = {2013},
465 }
466
467 %Goldberg:1992:DFD:151333.151373
468 % Looks useful... although it does have FORTRAN in it
469 @article{goldberg1992thedesign,
470  author = {Goldberg, David},
471  title = {The Design of Floating-point Data Types},
472  journal = {ACM Lett. Program. Lang. Syst.},
473  issue_date = {June 1992},
474  volume = {1},
475  number = {2},
476  month = jun,
477  year = {1992},
478  issn = {1057-4514},
479  pages = {138--151},
480  numpages = {14},
481  url = {http://doi.acm.org/10.1145/151333.151373},
482  doi = {10.1145/151333.151373},
483  acmid = {151373},
484  publisher = {ACM},
485  address = {New York, NY, USA},
486  keywords = {Ada, FORTRAN 90, Modula-3, backward error analysis, error analysis, exceptions, floating point, floating-point standard, guard digit, precision, rounding, ulp},
487
488
489 % It seems wierd using our last names...
490 @misc{proposalGow,
491         title = "Infinite-precision Document Formats (Project Proposal)",
492         author = "David Gow",
493         year = "2014",
494         howpublished = "\url{http://davidgow.net/stuff/ProjectProposal.pdf}"
495 }
496
497 % Note the different title
498 @misc{proposalMoore,
499         title = "Infinite Precision Document Formats (Project Proposal)",
500         author = "Sam Moore",
501         year = "2014",
502         howpublished = "\url{http://szmoore.net/ipdf/documents/ProjectProposalSam.pdf}"
503 }
504
505 % The Fractal Nature of Bezier Curves
506 % No date?
507 @article{goldman_thefractal,
508         title = "The Fractal Nature of Bezier Curves",
509         author = "Ron Goldman",
510         publisher = "Department of Computer Science, Rice University",
511         address = "6100 Main Street, Houstan, Texas",
512         note = "The de Casteljau subdivision algorithm is used to show that Bezier curves are also attractors (ie: fractals).
513                 A new rendering algorithm is derived for Bezier curves."
514 }
515
516 % Talks about security of PDF, probably not useful,
517 @article{sami2009alook,
518         Abstract = {Abstract: Portable Document Format (PDF) developed by Adobe Systems Inc. is a flexible and popular document distribution and delivery file format, and it is supported within various operating systems and devices. This article provides insight for some of the security issues within the format itself as well as an outlook of the vulnerabilities found from various versions of Adobe‘s own PDF viewer implementation. [Copyright &y& Elsevier]},
519         Author = {Rautiainen, Sami},
520         ISSN = {13634127},
521         Journal = {Information Security Technical Report},
522         Keywords = {PDF (Computer file format), FILE organization (Computer science), SYSTEMS software, COMPUTER files},
523         Number = {1},
524         Pages = {30 - 33},
525         Title = {A look at Portable Document Format vulnerabilities.},
526         Volume = {14},
527         URL = {http://search.ebscohost.com/login.aspx?direct=true&db=aph&AN=40637035&site=ehost-live},
528         Year = {2009},
529 }
530
531 % Interesting but not related to the project
532 @article{bergen2012automatic,
533         Abstract = {Vector graphics are popular in illustration and graphic design. Images are composed of discrete geometric shapes, such as circles, squares, and lines. The generation of vector images by evolutionary computation techniques, however, has been given little attention. JNetic is an implementation of a comprehensive evolutionary vector graphics tool. Vector primitives available range from simple geometric shapes (circles, polygons) to spline-based paint strokes. JNetic supports automatic and user-guided evolution, chromosome editing, and high-detail masks. Automatic evolution involves measuring the pixel-by-pixel colour distance between a candidate and target image. Masks can be painted over areas of the target image, which help reproduce the high-detail features within those areas. By creative selection of primitives and colour schemes, stylized interpretations of target images are produced. The system has been successfully used by the authors as a creative tool. [ABSTRACT FROM AUTHOR]},
534         Author = {Bergen, Steven and Ross, Brian},
535         ISSN = {01782789},
536         Journal = {Visual Computer},
537         Keywords = {GRAPHIC arts, GENETIC algorithms, GRAPHIC design, GRAPHIC designers, VISUAL communication, RESEARCH, Evolutionary art, Genetic algorithm, Vector graphics},
538         Number = {1},
539         Pages = {35 - 45},
540         Title = {Automatic and interactive evolution of vector graphics images with genetic algorithms.},
541         Volume = {28},
542         URL = {http://search.ebscohost.com/login.aspx?direct=true&db=aph&AN=70129435&site=ehost-live},
543         Year = {2012},
544 }
545
546 % Similar to goldman1992, also old, need to find newer references
547 @INPROCEEDINGS{priest1991algorithms,
548 author={Priest, D.M.},
549 booktitle={Computer Arithmetic, 1991. Proceedings., 10th IEEE Symposium on},
550 title={Algorithms for arbitrary precision floating point arithmetic},
551 year={1991},
552 month={Jun},
553 pages={132-143},
554 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},
555 doi={10.1109/ARITH.1991.145549},}
556
557 @article{goldbern1967twentyseven,
558  author = {Goldberg, I. Bennett},
559  title = {27 Bits Are Not Enough for 8-digit Accuracy},
560  journal = {Commun. ACM},
561  issue_date = {Feb. 1967},
562  volume = {10},
563  number = {2},
564  month = feb,
565  year = {1967},
566  issn = {0001-0782},
567  pages = {105--106},
568  numpages = {2},
569  url = {http://doi.acm.org/10.1145/363067.363112},
570  doi = {10.1145/363067.363112},
571  acmid = {363112},
572  publisher = {ACM},
573  address = {New York, NY, USA},
574
575
576
577
578 % Boost multiprecision library
579 @misc{boost_multiprecision,
580         author = {John Maddock and Christopher Kormanyos},
581         title = {Boost Multiprecision Library},
582         howpublished = {\url{http://www.boost.org/doc/libs/1_53_0/libs/multiprecision/doc/html/boost_multiprecision/}}
583 }
584
585 @misc{java_bigint,
586         author = {Oracle Corporation},
587         title = {java.math.{BigInteger}},
588         booktitle = {Java Platform 6 {SE}},
589         urldate = {19-05-2014},
590         howpublished = {\url{http://docs.oracle.com/javase/6/docs/api/java/math/BigInteger.html}}
591 }
592
593 @misc{java_bigdecimal,
594         author = {Oracle Corporation},
595         title = {java.math.{BigDecimal}},
596         booktitle = {Java Platform 7 {SE}},
597         howpublished = {\url{http://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html}},
598         urldate = {19-05-2014}
599 }
600
601 % A CMOS Floating Point Unit
602 @MISC{kelley1997acmos,
603     author = {Michael J. Kelley and Matthew A. Postiff and Advisor Richard and B. Brown},
604     title = {A CMOS Floating Point Unit},
605     year = {1997}
606 }
607
608 @misc{filiatreault2003simply,
609         author = {Raymond Filiatreault},
610         title = "Simply FPU",
611         year = 2003,
612         howpublished = {\url{http://www.website.masmforum.com/tutorials/fptute/index.html}}
613 }
614
615 @article{bishop2008floating,
616         author = {David Bishop},
617         year = 2008,
618         howpublished = {\url{http://www.vhdl.org/fphdl/Float_ug.pdf}},
619         title = {Floating Point Package User's Guide},
620         note = {Technical Report},
621         journal = {EDA Industry Working Groups}
622 }
623
624 @article{dieter2007lowcost,
625  author = {Dieter, William R. and Kaveti, Akil and Dietz, Henry G.},
626  title = {Low-Cost Microarchitectural Support for Improved Floating-Point Accuracy},
627  journal = {IEEE Comput. Archit. Lett.},
628  issue_date = {January 2007},
629  volume = {6},
630  number = {1},
631  month = jan,
632  year = {2007},
633  issn = {1556-6056},
634  pages = {13--16},
635  numpages = {4},
636  url = {http://dx.doi.org/10.1109/L-CA.2007.1},
637  doi = {10.1109/L-CA.2007.1},
638  acmid = {1271937},
639  publisher = {IEEE Computer Society},
640  address = {Washington, DC, USA},
641  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},
642
643
644 @misc{jop,
645         author = "jop-devel",
646         title = "Java Optimized Processor",
647         howpublished = "\url{https://github.com/jop-devel/jop}"
648 }
649         
650 @inproceedings{kadric2013accurate,
651   title={Accurate Parallel Floating-Point Accumulation},
652   author={Kadric, Edin and Gurniak, Paul and DeHon, Andr{\'e}},
653   booktitle={Computer Arithmetic (ARITH), 2013 21st IEEE Symposium on},
654   pages={153--162},
655   year={2013},
656   organization={IEEE}
657 }
658
659 %ghdl, the least shitty of the open source vhdl tools
660 @misc{ghdl,
661         title = "GHDL Guide",
662         author = "Tristan Gingold",
663         year = "2007",
664         howpublished = "\url{http://ghdl.free.fr/ghdl/}"
665 }
666
667 % Look into as an alternative to using text files for FPU simulation?
668 @misc{tang2000using,
669         title = "Using Binary Files in VHDL Test Benches",
670         author = "Stephen Tang",
671         year = "2000",
672         howpublished = "\url{http://www.ece.ualberta.ca/~elliott/ee552/studentAppNotes/2000_w/vhdl/BinaryFileTestbenching/binary.html}",
673         note = "Application Notes (webpage)"
674 }
675
676 % On the design of IEEE floating point adders
677 % Has algorithms!
678 @INPROCEEDINGS{seidel2001onthe,
679 author={Seidel, P.-M. and Even, G.},
680 booktitle={Computer Arithmetic, 2001. Proceedings. 15th IEEE Symposium on},
681 title={On the design of fast IEEE floating-point adders},
682 year={2001},
683 month={},
684 pages={184-194},
685 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},
686 doi={10.1109/ARITH.2001.930118},
687 ISSN={1063-6889},}
688
689
690 @article{demmel1996basic,
691         title = "Basic Issues in Floating Point Arithmetic and Error Analysis",
692         author = "Jim Demmel",
693         journal = "U.C. Berkeley CS267",
694         note = "Lecture Notes",
695         howpublished = "\url{http://www.cs.berkeley.edu/~demmel/cs267/lecture21/lecture21.html}",
696         year = 1996
697 }
698
699 @misc{grfpu_dasia,
700         title = "GRFPU - High Performance IEEE- 7 5 4 Floating- Point Unit",
701         author = "Edvin Catovic",
702         howpublished = "\url{http://www.gaisler.com/doc/grfpu_dasia.pdf}"
703 }
704
705 % The best quote ever.
706 @misc{beebe2011round32,
707         title = "Re: round32 ( round64 ( X ) ) ?= round32 ( X )",
708         note = "IEEE 754 Working Group Mail Archives",
709         author = "Nelson H. F. Beebe",
710         howpublished = "\url{http://grouper.ieee.org/groups/754/email/msg04169.html}"
711 }
712
713 % Biography of Charles Babbage because WHY NOT?
714  % I suspect this year is wrong?75
715 @ARTICLE{dodge_babbage,
716 author={Dodge, N. S.},
717 journal={Annals of the History of Computing, IEEE},
718 title={Charles Babbage},
719 year={2000},
720 month={Oct},
721 volume={22},
722 number={4},
723 pages={22-43},
724 keywords={Accuracy;Art;Autobiographies;Biographies;Blood;Calculus;Educational institutions;History;Writing},
725 doi={10.1109/MAHC.2000.887988},
726 ISSN={1058-6180},}
727
728 @article{nature1871babbage,
729         author = "Unknown Author",
730         journal = "Nature",
731         title = "Charles Babbage",
732         year = 1871,
733         volume = 5,
734         number = 106, 
735         pages = "28-29"
736 }
737
738 %IEEE 754 Really should have put this in earlier
739 @ARTICLE{ieee2008-754,
740 journal={IEEE Std 754-2008},
741 title={IEEE Standard for Floating-Point Arithmetic},
742 year={2008},
743 month={Aug},
744 pages={1-70},
745 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},
746 doi={10.1109/IEEESTD.2008.4610935},}
747
748
749 @article{dekker1971afloating,
750 year={1971},
751 issn={0029-599X},
752 journal={Numerische Mathematik},
753 volume={18},
754 number={3},
755 doi={10.1007/BF01397083},
756 title={A floating-point technique for extending the available precision},
757 url={http://dx.doi.org/10.1007/BF01397083},
758 publisher={Springer-Verlag},
759 author={Dekker, T.J.},
760 pages={224-242},
761 language={English}
762 }
763
764 @String{pub-BIRKHAUSER-BOSTON   = "Birkh{\"a}user Boston Inc."}
765 @String{pub-BIRKHAUSER-BOSTON:adr = "Cambridge, MA, USA"}
766
767 @Book{HFP,
768   author =       "Jean-Michel Muller and Nicolas Brisebarre and Florent
769                  de Dinechin and Claude-Pierre Jeannerod and Vincent
770                  Lef{\`e}vre and Guillaume Melquiond and Nathalie Revol
771                  and Damien Stehl{\'e} and Serge Torres",
772   title =        "Handbook of Floating-Point Arithmetic",
773   publisher =    pub-BIRKHAUSER-BOSTON,
774   address =      pub-BIRKHAUSER-BOSTON:adr,
775   pages =        "xxiii + 572",
776   year =         "2010",
777   DOI =          "http://dx.doi.org/10.1007/978-0-8176-4704-9",
778   ISBN =         "0-8176-4704-X",
779   ISBN-13 =      "978-0-8176-4704-9",
780   LCCN =         "QA76.9.C62 H36 2010",
781   bibdate =      "Thu Jan 27 16:18:58 2011",
782   price =        "US\$90 (est.)",
783   acknowledgement = ack-nhfb,
784 }
785
786 @article{svg2011-1.1,
787         year = 2011,
788         month = "August",
789         journal = "W3C Recommendation",
790         title = "Scalable Vector Graphics (SVG) 1.1 (Second Edition)",
791         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",
792         howpublished = "\url{http://www.w3.org/TR/SVG/}"
793 }
794
795 @article{xml2008-1.0,
796         year = 2008,
797         month = "November",
798         journal = "W3C Recommendation",
799         title = "Extensible Markup Language (XML) 1.0 (Fifth Edition)",
800         author = "W3C",
801         editor = "Tim Bray and Jean Paoli and C Sperberg-McQueen and Eve Maler and Francois Yergeau",
802         howpublished = "\url{http://www.w3.org/TR/xml/}"
803 }
804
805 @article{html2014-draft,
806         year = 2014,
807         month = "April",
808         journal = "W3C Candidate Recommendation",
809         title = "HTML5 - Developer View - A Vocabulary and associated APIs for HTML and XHTML",
810         author = "W3C",
811         editor = "Robin Berjon and Steve Faulkner and Travis Leithead and Erika Navara and Edward O'Connor and Silvia Pfeiffer and Ian Hickson",
812         howpublished = "\url{http://www.w3.org/TR/html/}"
813 }
814
815 @article{css2011-level2,
816         year = 2011,
817         month = "June",
818         journal = "W3CRecommendation",
819         title = "Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification",
820         author = "W3C",
821         editor = "Bert Bos, Tantex Celik, Ian Hickson, Hakon WiumLie",
822         howpublished = "\url{http://www.w3.org/TR/CSS21/}"
823 }
824
825 @article{kapoulkine2014pugixml,
826         year = "2014",
827         author = "Arseny Kapoulkine",
828         title = "pugixml --- Light-weight, simple and fast XML parser for C++ with XPath support",
829         howpublished="http://pugixml.org",
830 }
831         
832
833 @article{pugixmlDOM,
834         year = "2014",
835         author = "Arseny Kapoulkine",
836         title = "Document Object Model",
837         journal = "pugixml 1.4 manual",
838         howpublished = "http://pugixml.googlecode.com/svn/tags/latest/docs/manual/dom.html"
839 }
840
841 % Rendering vector graphics on vector display devices (historical)
842 %Brassel:1979:ASR:965103.807434,
843 @article{brassel1979analgorithm,
844  author = {Brassel, Kurt E. and Fegeas, Robin},
845  title = {An Algorithm for Shading of Regions on Vector Display Devices},
846  journal = {SIGGRAPH Comput. Graph.},
847  issue_date = {August 1979},
848  volume = {13},
849  number = {2},
850  month = aug,
851  year = {1979},
852  issn = {0097-8930},
853  pages = {126--133},
854  numpages = {8},
855  url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/965103.807434},
856  doi = {10.1145/965103.807434},
857  acmid = {807434},
858  publisher = {ACM},
859  address = {New York, NY, USA},
860  keywords = {Cartography, Computer graphics, Line-drawing processing, Polygons, Shading, Software, Spatial information},
861
862 %Lane:1983:AFR:357323.357326,
863 @article{lane1983analgorithm,
864  author = {Lane, J. M. and M. Rarick, R. and},
865  title = {An Algorithm for Filling Regions on Graphics Display Devices},
866  journal = {ACM Trans. Graph.},
867  issue_date = {July 1983},
868  volume = {2},
869  number = {3},
870  month = jul,
871  year = {1983},
872  issn = {0730-0301},
873  pages = {192--196},
874  numpages = {5},
875  url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/357323.357326},
876  doi = {10.1145/357323.357326},
877  acmid = {357326},
878  publisher = {ACM},
879  address = {New York, NY, USA},
880 }
881
882 @article{hillesland2004paranoia,
883         author = "Karl E Hillesland and Anselmo Lastra",
884         title = "GPU Floating-Point Paranoia",
885         journal = "Proceedings of GP 2004",
886         year = 2004,
887         url = "\url{http://www.cs.unc.edu/~ibr/projects/paranoia/}"
888 }
889
890 %Fousse:2007:MMB:1236463.1236468,
891 @article{fousse2007mpfr,
892  author = {Fousse, Laurent and Hanrot, Guillaume and Lef\`{e}vre, Vincent and P{\'e}lissier, Patrick and Zimmermann, Paul},
893  title = {MPFR: A Multiple-precision Binary Floating-point Library with Correct Rounding},
894  journal = {ACM Trans. Math. Softw.},
895  issue_date = {June 2007},
896  volume = {33},
897  number = {2},
898  month = jun,
899  year = {2007},
900  issn = {0098-3500},
901  articleno = {13},
902  url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/1236463.1236468},
903  doi = {10.1145/1236463.1236468},
904  acmid = {1236468},
905  publisher = {ACM},
906  address = {New York, NY, USA},
907  keywords = {IEEE 754 standard, Multiple-precision arithmetic, correct rounding, elementary function, floating-point arithmetic, portable software},
908
909
910
911 @article{kahan1996ieee754,
912         author = "W Kahan",
913         title = "Lecture Notes on the Status of IEEE Standard 754 for Binary Floating-Point Arithmetic",
914         url = "\url{http://http.cs.berkeley.edu/~wkahan/ieee754status/ieee754.ps}",
915         year = 1996,
916         month = May
917 }
918
919 @article{kahan2007wrong,
920         author = "W Kahan",
921         title = "Why is Floating-Point Computation so Hard to Debug when it Goes Wrong?",
922         howpublished = "\url{http://www.cs.berkeley.edu/~wkahan/WrongR.pdf}",
923         year = 2007,
924         month = March
925 }
926
927 @misc{kahanweb,
928         author = "W Kahan",
929         title = "Prof W Kahan's Webpages",
930         howpublished = "\url{http://www.cs.berkeley.edu/~wkahan/}"
931 }
932
933 @book{computergraphics2,
934         author = "Donald Hearn and M Pauline Baker",
935         title = "Computer Graphics",
936         edition = 2,
937         year = 1997,
938         publisher = "Prentice Hall, Inc",
939         address = "Upper Saddle River, New Jersey 07458, USA"
940 }
941
942 @ARTICLE{bresenham1996pixel,
943 author={Bresenham, J.},
944 journal={Computer Graphics and Applications, IEEE},
945 title={Pixel-processing fundamentals},
946 year={1996},
947 month={Jan},
948 volume={16},
949 number={1},
950 pages={74-82},
951 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},
952 doi={10.1109/38.481626},
953 ISSN={0272-1716},}
954
955 % It's a series of blog posts, don't judge me
956 % Also don't look at the rest of the blog, it's strange...
957 @misc{elias2000graphics,
958         title = "Graphics",
959         author = "Hugo Elias",
960         howpublished = {\url{http://freespace.virgin.net/hugo.elias/graphics/x\_main.htm}},
961         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?"
962 }
963
964 @article{wu1991anefficient,
965  author = {Wu, Xiaolin},
966  title = {An Efficient Antialiasing Technique},
967  journal = {SIGGRAPH Comput. Graph.},
968  issue_date = {July 1991},
969  volume = {25},
970  number = {4},
971  month = jul,
972  year = {1991},
973  issn = {0097-8930},
974  pages = {143--152},
975  numpages = {10},
976  url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/127719.122734},
977  doi = {10.1145/127719.122734},
978  acmid = {122734},
979  publisher = {ACM},
980  address = {New York, NY, USA},
981  keywords = {antialiasing, convolution, curve digitization, digital geometry},
982
983
984 @article{w3c2010svghtmlprimer,
985         year = 2010,
986         month = "September",
987         journal = "WC3 Primer (Editor's Draft)",
988         title = "An SVG Primer for Today's Browsers",
989         author = "W3C",
990         editor = "David Dailey",
991         howpublished = "\url{http://www.w3.org/Graphics/SVG/IG/resources/svgprimer.html}"
992 }
993
994 % Koch snowflake in French no I didn't read it so sue me it is just here to give Koch credit
995 @article{koch1904surune,
996         year = 1904,
997         author = "H Von Koch",
998         title = "Sur une courbe continue sans tangente, obtenue par une construction géométrique élémentaire." ,
999         journal = "Archiv för Matemat., Astron. och Fys.",
1000         pages = "681-702"}
1001
1002 @article{js_3d_pdf,
1003         year = 2007,
1004         author = "Adobe Systems Incorporated",
1005         edition = 2,
1006         month = "April",
1007         journal = "Adobe Acrobat Reader SDK"
1008 }
1009 % Holy mackerel, a paper on precision in document formats!
1010 @article{beebe2007extending,
1011   author={Beebe, Nelson},
1012   title={Extending {\TeX} and {METAFONT} With Floating-Point Arithmetic},
1013   year={2007},
1014   journal={{TUGboat}},
1015   volume={28},
1016   number={3},
1017 }

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