Small Mission College LogoSmall Math Dept LogoMathDepartment, Mission College, Santa Clara, California

Go to MathDept Main Page | Go to MissionCollege Main Page

This paper was written as an assignment for Ian Walton's Math G -Math for liberal Arts Students - at Mission College. If you use material from this paper, please acknowledge it.

To explore other such papers go to theMath G Projects Page.

This paper was submitted by Sandy Farnsworth in Spring 2000 Math G at Mission College.

If you use material from this paper, please acknowledge it.

Review of "For All Practical Purposes Video"

Sandy Farnsworth

Math G, Spring 2000

One of the main points made in the For All Practical Purposes computer science video is that in attempts to define and understand mathematics we must see that mathematics works within the boundaries of truth and proof. Proof is the manipulation of symbols, and it is the manipulation of symbols that brings us to the truth. The video discusses a number of individuals, in more recent history, who not only added to the discourse of the pursuit of mathematical truths, but, in some cases, have also contributed to the scientific and mathematical theories that would help usher in the computer era of the late 20th century. In 1900 David Hillbert compiled a research program that would be used by many future mathematicians. His goal was to show that the science of mathematics was consistent and complete. Hillbert’s hypothesis was that if a mathematical theory was true, it could be proved, and if it wasn’t true; you could prove that it was not true. However, in the early 1930’s Kurt Goedel was able to show that in the search for consistency there were some mathematical statements that, while in actuality were true, they could not be proved. Goedel’s complex theorem left the field of mathematics in a state of uncertainty. Also to be taken into account, was the work of Allen Turing who proposed that you couldn’t decide in advance what is, and what is not a provable theorem. Turing is known for his Turing Machine, which was a hypothetical computer, in that it was a logical description of how a computer might behave. Specializing in quantum physics, Von Neuman came on the scene, and through numerical analysis was able to describe the logical construction and design of an actual computer. Von Neuman helped facilitate the building of a computer at Princeton in the late 1940’s. He had introduced a phenomenal new concept through which numerically coded instructions and stored data were used together to create the first stored program. Newman also contributed greatly to this brand new science of computers, by successfully promoting the use of the computer to fellow scientist, mathematicians, and the world. The mathematicians of this era were eager to put the computer to the task of proving, through logic and computation; the many debated mathematical theories, and statements of the day. Through this last 20th century there has been a complex evolution of the relationship between mathematics and computers. Initially, computers would have never been invented without the application of mathematics and mathematical truths. Ironically, since then, computers have played a major role in reinventing the field of mathematics itself. Computers have enabled mathematicians to discover and prove new theorems, sets, and functions, such as the discovery of new catenoids (Catenoids are shapes that represent the minimal natural surface area spanning at least two surfaces, which are attached to each other by said minimal surface area without interruption by intersection). Computers have also provided the power for the extensive computations needed to prove the four-color theorem, which could have never been done by hand in one lifetime. One the other hand, computers have proved that there are some mathematical statements, that while we know that they are true, they simply can’t be proved. Had mathematicians and scientist not been so driven to better understand the relationship between truth and proof, they might never have been inspired to find new methods of proof that brought about the creation of the computer.

This report was submitted by Sandy Farnsworth for her Spring 2000 Math G at Mission College.

If you use material from this paper, please acknowledge it.

The second For All Practical Purposes video was an introduction to computer graphic animation and some of the mathematical statements that allow the manipulation of graphic images. Over the years, computer graphics have been for most in helping personal computers gain popularity in the general population, by enhancing user interfaces. Both 2-dimensional and 3-dimensional computer graphics have become the mainstay of advertising elements, as well as important tools in design, analysis and in testing hypotheses (see Catenoids page 2).

Initially, the foundational visual element of each computer-generated graphic is the pixel, which is a tinny single square on the screen that is colored. Simplistically, each point, or, pixel on the screen is either on or off. (The foundation of computer programs being the binary code of 1,or, 0). Each pixel that is on has a designated location on the screen. Together, all the pixels create the desired image. Even type is initially created in this fashion. If we enlarge a horizontal line by several hundred percent, we will see an illustration of this. The individual pixels can be seen clearly, and the edge of the line has a stair step effect. This is because the original building blocks (the pixel) are all square. By blending colors along the outer edge of the image, the jagged appearance can be softened. This process is called anti-aliasing. Once images have been created with points and connecting lines, we may want to fill in the polygonal shapes we have created. One way that programmers have helped save time in calculating how to color in an image is by the use of an algorithm called Exor.With Exor, the computer fills in concurrent triangles of color until it has successfully blocked in the color within the designated space. Another drawing element that the video introduced is called the spline. A spline is a smooth curve determined by opposing points initially placed along a straight line. (At the time the video was made, a spline needed to be calculated by the programmer; now in more current programs such as Illustrator, splines are created by clicking points, and manipulating bar bell-like tools called handles. The push and pull effect of opposing points can still be seen when manipulating the curved line with these handles. The calculations that are taking place are programmed into the process, and produce changes that are quite rapid and nearly seamless).

In building a 3- dimensional graphic object, a programmer may use a spline to outline a 2-D image, then repeat the image and rotate the repeating images around a chosen axis. In addition, adjustments are made for hidden surfaces and angles of viewpoint. Animating the 3-D object is a more complex process that involves two basic types of motion. First, the object itself can move across the screen, secondly, the camera angle (or point of view) can be moved. To first create the effect of a 2-D object moving across the screen we would use an algebraic formula such as: x = x + a. (X) is the set of points representing our object, while (a) represents the distance it is to be moved. If we want to animate a 3-D, object, then depth, and dimension has to be encoded into the object. A programmer would need to assign x for length, y for height, and z for depth. To rotate a 3-D object, for example, first chose which axis the object will rotate around; this amount will remain constant, or stationary. Then, the other points need to be moved by a set amount to obtain smooth motion. To scale a 3 –D object (i.e. enlarge or reduce) your formula might be:

X = B X

Y = BY

Z = BZ

Apart from length, height, depth and motion, there is another important aspect to the creation of 3-D animation; that is the relationship of these motions to time. The programmer needs to decide how slowly, or how quickly the designed action of the object unfolds in relation to how many "frames" have taken place. (In this case, we can think of frames, as they are known in standard movie making where the tinniest action is recorded on one frame of film at a time.) To assist in this process, the programmer uses a graphed spline to synchronize the motion to the passage of time, and determine the demeanor of the motion. The spline is graphed on horizontal lines, spaced evenly apart that help the programmer measure the passage of time evenly as frames.

A sharp motion will be created by a spline pulled up to a sharp peak. While a bouncy, gentler motion will be achieved by a spline shaped like a rolling peak.

In addition to the methods already discussed, graphic artists have at their disposal, other techniques to create convincing 3 –D animation. Surface aesthetics should be considered. The impression of realism can be enhanced by the use of directional light sources, or by changing the property of the surface of the object by using texture mapping. Another quality to be considered in creating an effect is the opacity of an object – how much light passes through this object? Is the center of the object denser than the exterior? When all of the above is considered, then finally, the dynamics and interaction of all the objects should be considered. Additionally, a separate script needs to be written to describe the motion of the camera. Finally, when all the pieces are put together, the quality of the end result is not only due to the experience and knowledge of the creator, but also directly related to the amount of effort and time the animator has been willing to put into each detail.

These are only a few of the ways that mathematics is at the foundation of creating graphic art images, and not all of the topics discussed on the computer science and computer graphics videos have been addressed here. In general, I found the two videos initially, difficult to follow. My "math buddy" and I had to repeatedly stop, rewind and replay sections that either went too fast, or that we had difficulty understanding. The first video could have been a bit simpler to follow, if its writers had approached the history of the computer in a more logical and chronological fashion. It might have been nice to hear about contributions made by women as well, although, I gather that the video was attempting to highlight specifically those people working with truth and proof relationships. On the other hand, both videos had excellent graphics, which were very helpful in illustrating points. I might not have understood much at all without them. Of course, both videos are dated. This, I feel, is not all bad, because I think that the explanations offered may have remained closer to the very basic foundation of the mathematical processes that graphic artist now take for granted. Many graphic artists today would have no idea what a spline is, let alone that the simple adjustment they just made to the position of that curve (on their screen) was the end result of the process of a mathematical function. On a constant basis our computer graphics programs become more advanced, as programmers help everyday users skip more and more steps in the process of building graphic images. Because of this, we run the risk of loosing sight of the original genius, and the many, many, years of work it has taken mathematicians, scientists, and programmers to bring us to this point. Overall, both videos have helped give me an appreciation for the origins and evolution of computers and computer graphics, as well as the mathematical "functions" that make them work.

This report was submitted by Sandy Farnsworth for her Spring 2000 Math G at Mission College.

If you use material from this paper, please acknowledge it.