Charles Babbage.

Passages from the Life of a Philosopher online

. (page 10 of 36)
Online LibraryCharles BabbagePassages from the Life of a Philosopher → online text (page 10 of 36)
Font size
QR-code for this ebook


figures.

The same reasoning will show that if the numbers of digits of each
factor are between one hundred and one hundred and fifty, then the time
required for the operation will be nearly nine times that of a pair of
factors having only fifty digits.

Thus it appears that whatever may be the number of digits the
Analytical Engine is capable 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 _k_^{2}
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 V_{_n_}, 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, ^{_m_}V^{_n_}. 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 of Operation Cards 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 × 10^{n}, 1 × 10^{n}, 2 × 10^{n}, 3 × 10^{n}, . . . . 9 × 10^{n},
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
10^{n}.

6 _f._ Substitute 1 × 10^{n−1}, 2 × 10^{n−1}, 3 × 10^{n−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, whether whole
numbers or decimals, are arrived at.

7 _g._ The root thus found must now be used to reduce the original
equation to one dimension lower. {133}

8 _h._ This new equation of one dimension lower must now be treated by
sections 3, 4, 5, 6, and 7, until the new root is found.

9 _i._ The repetition of sections 7 and 8 must go on until all the
roots have been found.

Now it will be observed that Professor Mosotti was quite ready to admit
at once that each of these different processes could be performed by
the Analytical Machine through the medium of properly-arranged sets of
Jacquard cards.

His real difficulty consisted in teaching the engine to know when to
change from one set of cards to another, and back again repeatedly, at
intervals not known to the person who gave the orders.

The dimensions of the algebraic equation being known, the number of
arithmetical processes necessary for Sturm’s theorem is consequently
known. A set of operation cards can therefore be prepared. These must
be accompanied by a corresponding set of variable cards, which will
represent the columns in the store, on which the several coefficients
of the given equation, and the various combinations required amongst
them, are to be placed.

The next stage is to find a number greater than the greatest root of
the given equation. There are various courses for arriving at such a
number. Any one of these being selected, another set of operation and
variable cards can be prepared to execute this operation.

Now, as this second process invariably follows the first, the second
set of cards may be attached to the first set, and the engine will pass
on from the first to the second process, and again from the second to
the third process. {134}

But here a difficulty arises: successive powers of ten are to be
substituted for _x_ in the equation, until a certain event happens. A
set of cards may be provided to make the substitution of the highest
power of ten, and similarly for the others; but on the occurrence of a
certain event, namely, the change of a sign from + to −, this stage of
the calculation is to terminate.

Now at a very early period of the inquiry I had found it necessary to
teach the engine to know when any numbers it might be computing passed
through zero or infinity.

The passage through zero can be easily ascertained, thus: Let the
continually-decreasing number which is being computed be placed upon a
column of wheels in connection with a carrying apparatus. After each
process this number will be diminished, until at last a number is
subtracted from it which is greater than the number expressed on those
wheels.

Thus let it be 00000,00000,00000,00423
Subtract 00000,00000,00000,00511
───────────────────────
99999,99999,99999,99912

Now in every case of a carriage becoming due, a certain lever is
transferred from one position to another in the cage next above it.

Consequently in the highest cage of all (say the fiftieth in the
Analytical Engine), an arm will be moved or not moved accordingly as
the carriages do or do not run up beyond the highest wheel.

This arm can, of course, make any change which has previously been
decided upon. In the instance we have been considering it would order
the cards to be turned on to the next set.

If we wish to find when any number, which is increasing, {135} exceeds
in the number of its digits the number of wheels on the columns of the
machine, the same carrying arm can be employed. Hence any directions
may be given which the circumstances require.

It will be remarked that this does not actually prove, even in the
Analytical Engine of fifty figures, that the number computed has passed
through infinity; but only that it has become greater than any number
of fifty places of figures.

There are, however, methods by which any machine made for a given
number of figures may be made to compute the same formulæ with double
or any multiple of its original number. But the nature of this work
prevents me from explaining that method.

It may here be remarked that in the process, the cards employed to
make the substitutions of the powers of ten are operation cards. They
are, therefore, quite independent of the numerical values substituted.
Hence the same set of _operation_ cards which order the substitutions
1 × 10^{n} will, if backed, order the substitution of 2 × 10^n, &c. We
may, therefore, avail ourselves of mechanism for backing these cards,
and call it into action whenever the circumstances themselves require
it.

The explanation of M. Mosotti’s difficulty is this:—Mechanical means
have been provided for backing or advancing the operation cards to any
extent. There exist means of expressing the conditions under which
these various processes are required to be called into play. It is not
even necessary that two courses only should be possible. Any number of
courses may be possible at the same time; and the choice of each may
depend upon any number of conditions.

〈GENERAL MENABREA’S DESCRIPTION.〉

It was during these meetings that my highly valued friend, M. Menabrea,
collected the materials for that lucid and {136} admirable description
which he subsequently published in the Bibli. Univ. de Genève, t. xli.
Oct. 1842.

The elementary principles on which the Analytical Engine rests were
thus in the first instance brought before the public by General
Menabrea.

〈THE COUNTESS OF LOVELACE’S NOTES.〉

Some time after the appearance of his memoir on the subject in the
“Bibliothèque Universelle de Genève,” the late Countess of Lovelace[25]
informed me that she had translated the memoir of Menabrea. I asked why
she had not herself written an original paper on a subject with which
she was so intimately acquainted? To this Lady Lovelace replied that
the thought had not occurred to her. I then suggested that she should
add some notes to Menabrea’s memoir; an idea which was immediately
adopted.

[25] Ada Augusta, Countess of Lovelace, only child of the Poet
Byron.

We discussed together the various illustrations that might be
introduced: I suggested several, but the selection was entirely her
own. So also was the algebraic working out of the different problems,
except, indeed, that relating to the numbers of Bernouilli, which I had
offered to do to save Lady Lovelace the trouble. This she sent back to
me for an amendment, having detected a grave mistake which I had made
in the process.

The notes of the Countess of Lovelace extend to about three times the
length of the original memoir. Their author has entered fully into
almost all the very difficult and abstract questions connected with the
subject.

These two memoirs taken together furnish, to those who are capable of
understanding the reasoning, a complete demonstration—_That the whole
of the developments and operations of analysis are now capable of being
executed by machinery_.

〈VARIOUS APPLICATIONS.〉

There are various methods by which these developments {137} are
arrived at:—1. By the aid of the Differential and Integral Calculus.
2. By the Combinatorial Analysis of Hindenburg. 3. By the Calculus of
Derivations of Arbogast.

Each of these systems professes to expand any function according to
any laws. Theoretically each method may be admitted to be perfect; but
practically the time and attention required are, in the greater number
of cases, more than the human mind is able to bestow. Consequently,
upon several highly interesting questions relative to the Lunar theory,
some of the ablest and most indefatigable of existing analysts are at
variance.

The Analytical Engine is capable of executing the laws prescribed by
each of these methods. At one period I examined the Combinatorial
Analysis, and also took some pains to ascertain from several of my
German friends, who had had far more experience of it than myself,
whether it could be used with greater facility than the Differential
system. They seemed to think that it was more readily applicable to all
the usual wants of analysis.

I have myself worked with the system of Arbogast, and if I were to
decide from my own limited use of the three methods, I should, for the
purposes of the Analytical Engine, prefer the Calcul des Derivations.

As soon as an Analytical Engine exists, it will necessarily guide the
future course of the science. Whenever any result is sought by its aid,
the question will then arise—By what course of calculation can these
results be arrived at by the machine in the _shortest time_?

In the drawings I have prepared I proposed to have a thousand
variables, upon each of which any number not having more than fifty
figures can be placed. This machine would multiply 50 figures by other
50, and print the product {138} of 100 figures. Or it would divide
any number having 100 figures by any other of 50 figures, and print
the quotient of 50 figures. Allowing but a moderate velocity for the
machine, the time occupied by either of these operations would be about
one minute.

The whole of the _numerical_ constants throughout the works of Laplace,
Plana, Le Verrier, Hansen, and other eminent men whose indefatigable
labours have brought astronomy to its present advanced state, might
easily be recomputed. They are but the numerical coefficients of the
various terms of functions developed according to certain series. In
all cases in which these numerical constants can be calculated by more
than one method, it might be desirable to compute them by several
processes until frequent practice shall have confirmed our belief in
the infallibility of mechanism.

〈ERRORS OF TABLES.〉

The great importance of having accurate Tables is admitted by all who
understand their uses; but the multitude of errors really occurring is
comparatively little known. Dr. Lardner, in the “Edinburgh Review,” has
made some very instructive remarks on this subject.

I shall mention two within my own experience: these are selected
because they occurred in works where neither care nor expense were
spared on the part of the Government to insure perfect accuracy. It is,
however, but just to the eminent men who presided over the preparation
of these works for the press to observe, that the real fault lay not in
them but in _the nature of things_.

In 1828 I lent the Government an original MS. of the table of
Logarithmic Sines, Cosines, &c., computed to every second of the
quadrant, in order that they might have it compared with Taylor’s
Logarithms, 4to., 1792, of which they possessed a considerable number
of copies. Nineteen {139} errors were thus detected, and a list of
these errata was published in the Nautical Almanac for 1832: these may
be called

Nineteen errata of the first order . . 1832.

An error being detected in one of these errata, in the following
Nautical Almanac we find an

Erratum of the errata in N. Alm. 1832 . . 1833.

But in this very erratum of the second order a new mistake was
introduced larger than any of the original mistakes. In the year next
following there ought to have been found

Erratum in the erratum of the errata in N. Alm. 1832 . . 1834.

In the “Tables de la Lune,” by M. P. A. Hansen, 4to, 1857, published
at the expense of the English Government, under the direction of
the Astronomer Royal, is to be found a list of errata amounting to
155. In the 21st of these original errata there have been found
_three_ mistakes. These are duly noted in a newly-printed list of
errata discovered during computations made with them in the “Nautical
Almanac;” so that we now have the errata of an erratum of the original
work.

This list of errata from the office of the “Nautical Almanac” is larger



Online LibraryCharles BabbagePassages from the Life of a Philosopher → online text (page 10 of 36)