To save content items to your account,
please confirm that you agree to abide by our usage policies.
If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account.
Find out more about saving content to .
To save content items to your Kindle, first ensure no-reply@cambridge.org
is added to your Approved Personal Document E-mail List under your Personal Document Settings
on the Manage Your Content and Devices page of your Amazon account. Then enter the ‘name’ part
of your Kindle email address below.
Find out more about saving to your Kindle.
Note you can select to save to either the @free.kindle.com or @kindle.com variations.
‘@free.kindle.com’ emails are free but can only be saved to your device when it is connected to wi-fi.
‘@kindle.com’ emails can be delivered even when you are not connected to wi-fi, but note that service fees apply.
The basic notions of computational complexity are now familiar concepts in most branches of mathematics. One of the main purposes of the theory is to separate tractable problems from the apparently intractable. Deciding whether or not P = NP is a fundamental problem in theoretical computer science. We will give a brief informal review of the main concepts.
We regard a computational problem as a function, mapping inputs to solutions, (graphs to the number of their 3-vertex colourings for example). A function is polynomial time computable if there exists an algorithm which computes the function in a length of time (number of steps) bounded by a polynomial in the size of the problem instance. The class of such functions we denote by FP. If A and B are two problems we say that A is polynomial time Taring reducible to B, written A ∞ B, if it is possible with the aid of a subroutine for problem B to solve A in polynomial time, in other words the number of steps needed to solve A (apart from calls to the subroutine for B) is polynomially bounded.
The difference between the widely used P and the class FP is that, strictly speaking, both P and NP refer to decision problems.
A typical member of NP is the following classical problem known as SATISFIABILITY, and often abbreviated to SAT.
These lecture notes axe based on a series of lectures which I gave at the Advanced Research Institute of Discrete Applied Mathematics (ARIDAM VI) in June 1991.
The lectures were addressed to an audience of discrete mathematicians and computer scientists. I have tried to make the material understandable to both groups; the result is that there are introductions to topics such as the complexity of enumeration, knots, the Whitney/Tutte polynomials and various models of statistical physics.
The main thrust throughout is towards algorithms, applications and the interrelationship among seemingly diverse problem areas. In many cases I have only given sketches of the main ideas rather than full proofs. However, I have tried to give detailed references. I have assumed some familiarity with the basic concepts of computational complexity and combinatorics, but I have aimed to define anything nonstandard when it is first encountered. My notation in both cases corresponds to standard usage, such as Garey and Johnson (1979) and Bollobás (1979).
Since the lectures I have rewritten the notes to incorporate some of the new developments but the basic material is the essence of what was presented. Much of the work was done when I held a John von Neumann Professorship at the University of Bonn. I am very grateful for the opportunity this offered, and to my friends at the Forschungsinstitut für Diskrete Mathematik, where the facilities and atmosphere make it such a stimulating place to visit.
Our second numerical laboratory assignment is the computation of an area under a given curve to a desired accuracy. Unlike the calculation of the areas of various polygons, the computation of the area of a circle, an ellipse, or the area under the curve y = 1/log x from x = 2 to x = 7, say, is not at all trivial and requires methods of integral calculus or numerical approximations. Such areas arise not only in a geometrical context but also in various applications in engineering, biology, and statistics. In keeping with our policy of making the material as accessible as possible to precalculus students, without sacrificing rigor, we shall somewhat limit the generality so that results can be proved by elementary means and generalizations pointed out.
We shall henceforth be interested in the computation of the area under the graph of a positive function y = f(x), from x = a to x = b, but limit ourselves for the time being to monotonic (increasing or decreasing) or convex functions.
Rectangular approximations
Although the ensuing analysis is carried out in terms of a general, positive, monotonic function f(x), a ≤ x ≤ b, it is advisable that the laboratory participants bear in mind a concrete example such as f(x) = 1/x, 1 ≤ x ≤ 2.
In the spirit of the mathematical laboratory, special attention is accorded to the elimination of traditional mathematical tables, which students have always used as “black boxes,” without the faintest understanding of their origin and construction. Thus, these tables were antieducational tools that the students aquired without any mathematical enlightenment and used as “cookbook recipes.” Now that calculators and microcomputers are used in mathematical education, the danger arises of replacing one set of black boxes with another. Of course, we are not advocating the introduction of these new electronic black boxes merely for using, say, the logarithmic built-in function of the computer (or pressing the “log” key on a pocket calculator). What we do advocate is to teach students what is behind such built-in functions as part of the material covered in the mathematical laboratory. This subject fits naturally into the environment of the laboratory and reveals the “story behind the key.” The attainment of this objective is the subject of this chapter and the next.
We might ask whether students should be allowed to use the built-in functions before (and during) learning how they were built in. We feel that no harm can result from such a practice, so long as the students are told expressly that their “ignorant” use of the built-in functions is temporary. Before long, the secrets held by the computer keys will be revealed.
The term computer library functions refers to the collection of built-in functions – sin x, In x, ex, arctan x, to name but a few – that were installed in the computer's permanent memory. These built-in functions, of course, are efficient approximations of the abstract mathematical entities they represent. By efficiency we mean that every evaluation is performed with utmost speed and yields all the correct significant figures that are available on the computing device used. The construction of such built-in functions usually entails lengthy, computationally expensive preparations, which, however, are carried out only once. The first preparatory step is to reduce, as much as possible, the interval [a, b] in which the given f(x) is to be approximated (examples of this strategy can be found in Sections 2.2 and 7.6). To guarantee the desired correct significant figures, we also must control the relative error in the approximation of f(x) in [a, b]. This issue will be discussed in Section 8.3.
We shall concentrate on polynomial approximations, making use of the results obtained in Chapter 7, and shall consider the possibility of constructing rational approximations in Sections 8.5 and 8.6. We start with polynomial approximation of trigonometric functions in the same spirit with which we treated In x in Chapter 7.
Accumulated experience has shown that early emphasis on algorithmic thinking, augmented by actual computing, is indispensable in mathematical education. Recognizing the cardinal importance of the individual, active involvement of every student in the computational work (as opposed to mere demonstration by the teacher), we advocate the use of mathematical laboratories equipped with microcomputers. Optimally, a special room should be set aside for the mathematical laboratory. Failing that, physics or biology laboratories can be used since they tend to create the proper atmosphere. A pair of students is assigned to each microcomputer, as to a microscope in a biology laboratory, and spends a few hours a week working with the microcomputer in the laboratory.
The mere presence of an increasing number of microcomputers in various educational institutions, even those at which a programming language such as True-Basic or Pascal is taught, in no way constitutes a new mode of teaching and learning. The full potential of microcomputers and proper courseware should be harnessed to improve the state of the art in education. Moreover, a new role will be played by the mathematics teacher when traditional “chalk-and-talk” methods are augmented by active participation as a laboratory instructor. The numerous advantages of such computer-aided teaching of mathematics are detailed in Section 1.2.
The laboratory work will center around specific assignments, or modules, to be carried out by the participants at their own pace.
Numerical Mathematics – A Laboratory Approach is a unique book that introduces the computational microcomputer laboratory as a vehicle for teaching algorithmic aspects of mathematics. This is achieved through a sequence of laboratory assignments, presupposing no previous knowledge of calculus or linear algebra, where the “chalk and talk” lecturer turns into a laboratory instructor. The computational assignments cover basic numerical topics that should be part of the mathematical education in the era of microcomputers.
In writing this book at the precalculus and pre–linear algebra level, we were mainly addressing an audience of four groups: first-year university students of mathematics, sciences, and engineering who have had no exposure to systematic calculus; students at teachers' training colleges who will be tomorrow's teachers of mathematics and computer science; superior high-school mathematics students; and scientific programmers at all levels. Various parts of this book were successfully tested on classes representative of each of these groups and subsequently modified. The material was received enthusiastically by high-school students who were members of Tel Aviv University's Math Club, some of whom are now faculty members of the School of Mathematical Sciences. The material was also welcomed by members of New York University's summer program for talented high-school students (held every summer at the Courant Institute of Mathematical Sciences and directed by Henry Mullish), and by several classes of in-service or future mathematics teachers at Tel Aviv University and at New York University.