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

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