Project Gutenberg #57532
Passages from the Life of a Philosopher
Charles Babbage
1864Babbage's autobiography and account of his calculating engines, prepared chapter by chapter from Project Gutenberg HTML.
Project Gutenberg #57532 Public domain in the United States Cover source Local typographic cover created for MojiMori from public-domain source metadata
222
words at B2 or above
A1
A2
B1
B2
C1
C2
C2+
highlighted
at or above your level
Missing dictionary data: 7 unique words are not in the dictionary data yet. Amber marks show where they appear.
of holding, if it is required to make all the computations with k times that number of digits, then it can be executed by the same Engine, but in an amount of time equal to k2 times the former. Hence the {126} condition (a), or the unlimited number of digits contained in each constant employed, is fulfilled.
It must, however, be admitted that this advantage is gained at the expense of diminishing the number of the constants the Engine can hold. An engine of fifty digits, when used as one of a hundred digits, can only contain half the number of variables. An engine containing m columns, each holding n digits, if used for computations requiring k n digits, can only hold m / k constants or variables.
〈OF PUNCHING CARDS.〉
(b). The next step is therefore to prove (b), viz.: to show that a finite engine can be used as if it contained an unlimited number of constants. The method of punching cards for tabular numbers has already been alluded to. Each Analytical Engine will contain one or more apparatus for printing any numbers put into it, and also an apparatus for punching on pasteboard cards the holes corresponding to those numbers. At another part of the machine a series of number cards, resembling those of Jacquard, but delivered to and computed by the machine itself, can be placed. These can be called for by the Engine itself in any order in which they may be placed, or according to any law the Engine may be directed to use. Hence the condition (b) is fulfilled, namely: an unlimited number of constants can be inserted in the machine in an unlimited time.
I propose in the Engine I am constructing to have places for only a thousand constants, because I think it will be more than sufficient. But if it were required to have ten, or even a hundred times that number, it would be quite possible to make it, such is the simplicity of its structure of that portion of the Engine.
〈A THOUSAND VARIABLES.〉
(c). The next stage in the arithmetic is the number of times {127} the four processes of addition, subtraction, multiplication, and division can be repeated. It is obvious that four different cards thus punched
would give the orders for the four rules of arithmetic.
Now there is no limit to the number of such cards which may be strung together according to the nature of the operations required. Consequently the condition (c) is fulfilled.
(d). The fourth arithmetical condition (d), that the order of succession in which these operations can be varied, is itself unlimited, follows as a matter of course.
The four remaining conditions which must be fulfilled, in order to render the Analytical Engine as general as the science of which it is the powerful executive, relate to algebraic quantities with which it operates.
The thousand columns, each capable of holding any number of less than fifty-one places of figures, may each represent a constant or a variable quantity. These quantities I have called by the comprehensive title of variables, and have denoted them by Vn, with an index below. In the machine I have designed, n may vary from 0 to 999. But after any one or more columns have been used for variables, if those variables are not required afterwards, they may be printed upon paper, and the columns themselves again used for other variables. In such cases the variables must have a new index; thus, mVn. I propose to make n vary from 0 to 99. If more variables are required, these may be supplied by Variable Cards, which may follow each other in unlimited succession. Each card will cause its symbol to be printed with its proper indices. {128}
For the sake of uniformity, I have used V with as many indices as may be required throughout the Engine. This, however, does not prevent the printed result of a development from being represented by any letters which may be thought to be more convenient. In that part in which the results are printed, type of any form may be used, according to the taste of the proposer of the question.
It thus appears that the two conditions, (e) and (f), which require that the number of constants and of variables should be unlimited, are both fulfilled.
The condition (g) requiring that the number of combinations of the four algebraic signs shall be unlimited, is easily fulfilled by placing them on cards in any order of succession the problem may require.
The last condition (h), namely, that the number of functions to be employed must be without limit, might seem at first sight to be difficult to fulfil. But when it is considered that any function of any number of operations performed upon any variables is but a combination of the four simple signs of operation with various quantities, it becomes apparent that any function whatever may be represented by two groups of cards, the first being signs of operation, placed in the order in which they succeed each other, and the second group of cards representing the variables and constants placed in the order of succession in which they are acted upon by the former.
〈A FINITE MACHINE MAY MAKE UNLIMITED CALCULATION.〉
Thus it appears that the whole of the conditions which enable a finite machine to make calculations of unlimited extent are fulfilled in the Analytical Engine. The means I have adopted are uniform. I have converted the infinity of space, which was required by the conditions of the problem, into the infinity of time. The means I have employed are in {129} daily use in the art of weaving patterns. It is accomplished by systems of cards punched with various holes strung together to any extent which may be demanded. Two large boxes, the one empty and the other filled with perforated cards, are placed before and behind a polygonal prism, which revolves at intervals upon its axis, and advances through a short space, after which it immediately returns.
A card passes over the prism just before each stroke of the shuttle; the cards that have passed hang down until they reach the empty box placed to receive them, into which they arrange themselves one over the other. When the box is full, another empty box is placed to receive the coming cards, and a new full box on the opposite side replaces the one just emptied. As the suspended cards on the entering side are exactly equal to those on the side at which the others are delivered, they are perfectly balanced, so that whether the formulæ to be computed be excessively complicated or very simple, the force to be exerted always remains nearly the same.
〈DISCUSSIONS AT TURIN.〉
In 1840 I received from my friend M. Plana a letter pressing me strongly to visit Turin at the then approaching meeting of Italian philosophers. In that letter M. Plana stated that he had inquired anxiously of many of my countrymen about the power and mechanism of the Analytical Engine. He remarked that from all the information he could collect the case seemed to stand thus:—
“Hitherto the legislative department of our analysis has been all powerful—the executive all feeble.
“Your engine seems to give us the same control over the executive which we have hitherto only possessed over the legislative department.”
Considering the exceedingly limited information which {130} could have reached my friend respecting the Analytical Engine, I was equally surprised and delighted at his exact prevision of its powers. Even at the present moment I could not express more clearly, and in fewer terms, its real object. I collected together such of my models, drawings, and notations as I conceived to be best adapted to give an insight into the principles and mode of operating of the Analytical Engine. On mentioning my intention to my excellent friend the late Professor MacCullagh, he resolved to give up a trip to the Tyrol, and join me at Turin.
We met at Turin at the appointed time, and as soon as the first bustle of the meeting had a little abated, I had the great pleasure of receiving at my own apartments, for several mornings, Messrs. Plana, Menabrea, Mossotti, MacCullagh, Plantamour, and others of the most eminent geometers and engineers of Italy.
Around the room were hung the formula, the drawings, notations, and other illustrations which I had brought with me. I began on the first day to give a short outline of the idea. My friends asked from time to time further explanations of parts I had not made sufficiently clear. M. Plana had at first proposed to make notes, in order to write an outline of the principles of the engine. But his own laborious pursuits induced him to give up this plan, and to transfer the task to a younger friend of his, M. Menabrea, who had already established his reputation as a profound analyst.
These discussions were of great value to me in several ways. I was thus obliged to put into language the various views I had taken, and I observed the effect of my explanations on different minds. My own ideas became clearer, and I profited by many of the remarks made by my highly-gifted friends. {131}
〈MOSOTTI’S DIFFICULTY.〉
One day Mosotti, who had been unavoidably absent from the previous meeting, when a question of great importance had been discussed, again joined the party. Well aware of the acuteness and rapidity of my friend’s intellect, I asked my other friends to allow me five minutes to convey to Professor Mosotti the substance of the preceding sitting. After putting a few questions to Mosotti himself, he placed before me distinctly his greatest difficulty.
He remarked that he was now quite ready to admit the power of mechanism over numerical, and even over algebraical relations, to any extent. But he added that he had no conception how the machine could perform the act of judgment sometimes required during an analytical inquiry, when two or more different courses presented themselves, especially as the proper course to be adopted could not be known in many cases until all the previous portion had been gone through.
〈SOLUTION OF EQUATIONS.〉
I then inquired whether the solution of a numerical equation of any degree by the usual, but very tedious proceeding of approximation would be a type of the difficulty to be explained. He at once admitted that it would be a very eminent one.
For the sake of perspicuity and brevity I shall confine my present explanation to possible roots.
I then mentioned the successive stages:—
Number ofOperationCards used. 1 a. Ascertain the number of possible roots by applying Sturm’s theorem to the coefficients. 2 b. Find a number greater than the greatest root. 3 c. Substitute the powers of ten (commencing with that next greater than the greatest root, and {132} diminishing the powers by unity at each step) for the value of x in the given equation. Continue this until the sign of the resulting number changes from positive to negative. The index of the last power of ten (call it n), which is positive, expresses the number of digits in that part of the root which consists of whole numbers. Call this index n + 1. 4 d. Substitute successively for x in the original equation 0 × 10n, 1 × 10n, 2 × 10n, 3 × 10n, . . . . 9 × 10n, until a change of sign occurs in the result. The digit previously substituted will be the first figure of the root sought. 5 e. Transform the original equation into another whose roots are less by the number thus found. The transformed equation will have a real root, the digit, less than 10n. 6 f. Substitute 1 × 10n−1, 2 × 10n−1, 3 × 10n−1, &c., successively for the root of this equation, until a change of sign occurs in the result, as in process 4. This will give the second figure of the root. This process of alternately finding a new figure in the root, and then transforming the equation into another (as in process 4 and 5), must be carried on until as many figures as are required,