Charles Babbage's "Analytical Engine"

From: Egerland, Matthias (
Date: Tue Feb 15 2000 - 02:42:49 GMT

In this classical article from 1842 the Officer of the Military
Engineers of Turin, L.F. Menabrea, explains the capabilities of the
first calculating machine which consisted of a memory for variables, a
punched card control unit and I/O devices. Though being a completely
mechanical approach this 'Analytical Engine' by Charles Babbage can be
considered as the first computer in human history. Before pointing out
the machine's functionality Menabrea gives us an outline about the
intention why it was built and how it is related to its predecessor,
the 'Differencing Engine':

> Struck with similar reflections, Mr. Babbage has devoted some years to the
> realization of a gigantic idea. He proposed to himself nothing less than the
> construction of a machine capable of executing not merely arithmetical
> calculations, but even all those of analysis, if their laws are known. The
> imagination is at first astounded at the idea of such an undertaking; but
> the more calm reflection we bestow on it, the less impossible does success
> appear, and it is felt that it may depend on the discovery of some principle
> so general, that, if applied to machinery, the latter may be capable of
> mechanically translating the operation which may be indicated to it by
> algebraical notation.

At the beginning of the industrial revolution the main motivation to
build such a machine was the growing need to have correct mathematical

> It is well known that the French government, wishing to promote the
> extension of the decimal system, had ordered the construction of
> logarithmical and trigonometrical tables of enormous extent.

These tables were necessary to support engineers just as the military.

Menabrea now explains how many dials are needed to calculate a
polynomial with a specific degree and that even series with an infinite
number of terms can be handled as long as we are content to get a
result with a certain accuracy:

> The theorem on which is based the construction of the machine we have just
> been describing, is a particular case of the following more general theorem:
> that if in any polynomial whatever, the highest power of whose variable is
> m, this same variable be increased by equal degrees; the corresponding
> values of the polynomial then calculated, and the first, second, third, &c.
> differences of these be taken (as for the preceding series of squares); the
> mth differences will all be equal to each other. So that, in order to
> reproduce the series of values of the polynomial by means of a machine
> analogous to the one above described, it is sufficient that there be (m + 1)
> dials, having the mutual relations we have indicated.
> [...]
> If from a polynomial we pass to a series having an infinite number of terms,
> arranged according to the ascending powers of the variable, it would at
> first appear, that in order to apply the machine to the calculation of the
> function represented by such a series, the mechanism must include an
> infinite number of dials, which would in fact render the thing impossible.
> But in many cases the difficulty will disappear, if we observe that for a
> great number of functions the series which represent them may be rendered
> convergent; so that, according to the degree of approximation desired, we
> may limit ourselves to the calculation of a certain number of terms of the
> series, neglecting the rest. By this method the question is reduced to the
> primitive case of a finite polynomial.

> Such is the nature of the first machine which Mr. Babbage conceived. We see
> that its use is confined to cases where the numbers required are such as can
> be obtained by means of simple additions or subtractions; [...]
> its operations cannot be extended so as to
> embrace the solution of an infinity of other questions included within the
> domain of mathematical analysis. [...] Mr. Babbage, [...] conceived the plan
> of another system of mechanism whose
> operations should themselves possess all the generality of algebraical
> notation, and which, on this account, he denominates the Analytical Engine.

So far the author dealt with the Differencing Engine from 1822. Now he
is going to point out what the Analytical Engine from 1833 is about,
which in fact is a major improvement of the first machine.

> But if human intervention were necessary for directing each of these partial
> operations, nothing would be gained under the heads of correctness and
> economy of time; the machine must therefore have the additional requisite of
> executing by itself all the successive operations required for the solution
> of a problem proposed to it, when once the primitive numerical data for this
> same problem have been introduced. Therefore, since, from the moment that
> the nature of the calculation to be executed or of the problem to be
> resolved have been indicated to it, the machine is, by its own intrinsic
> power, of itself to go through all the intermediate operations which lead to
> the proposed result, it must exclude all methods of trial and guess-work,
> and can only admit the direct processes of calculation.

This is the main point about the Analytical Engine. Menabrea says that
the machine needs to be independent from humans to fulfil its main
purpose - being a useful tool by improving correctness and time
efficiency when humans have to deal with complicated mathematics.

At the same time the author is completely aware of the fact, that this
machine can not make use of intuition. For solving mathematical
equations it has to take a completely different approach than an
'intelligent' being.

> It is necessarily thus; for the machine is not a thinking being, but simply
> an automaton which acts according to the laws imposed upon it. This being
> fundamental, one of the earliest researches its author had to undertake, was
> that of finding means for effecting the division of one number by another
> without using the method of guessing indicated by the usual rules of
> arithmetic.

So the main goal was finding a possibility to make the machine
calculating without 'thinking'. Hence, the machine could only be as
powerful as its inventor, who had to find this very fundamental way of
solving mathematical equations.

One of the major inventions in connection with the Analytical Engine,
which improved its flexibility very much, came from the textile
industry. Those days mechanical looms already had been equipped with a
punched card system which contained information about how to weave the
particular material. Babbage was the first person who had the idea of
using a similar system to store information needed for mathematical
calculations. His second machine used punched cards for two different

> Arrangements analogous to those just described have been introduced into the
> Analytical Engine. It contains two principal species of cards: first,
> Operation cards, [...] secondly, cards of the
> Variables,

> This example illustrates how the cards are able to reproduce all the
> operations which intellect performs in order to attain a determinate result,
> if these operations are themselves capable of being precisely defined.

> Observe that we should thus require of the
> machine to interpret a result not of itself evident, and that this is not
> amongst its attributes, since it is no thinking being.

To summarize things Menabrea gives the following conclusion:

> Resuming what we have explained concerning the Analytical Engine, we may
> conclude that it is based on two principles: the first, consisting in the
> fact that every arithmetical calculation ultimately depends on four
> principal operations - addition, subtraction, multiplication, and division;
> the second, in the possibility of reducing every analytical calculation to
> that of the coefficients for the several terms of a series. If this last
> principle be true, all the operations of analysis come within the domain of
> the engine.

> Since the engine has a mode of acting peculiar to itself, it will in every
> particular case be necessary to arrange the series of calculations
> conformably to the means which the machine possesses; for such or such a
> process which might be very easy for a calculator may be long and
> complicated for the engine, and vice versā.

So the way how the Analytical Engine has to be instructed to solve a
particular problem corresponds to a programming language. Nowadays
there exist dozens of different programming languages, each with
particular advantages and disadvantages. According to the equivalence
theorem the power of all these languages is the same, because the task
solved by a program in any language can be simulated by a turing
machine. Therefore a machine would be optimal if it was able to choose
always the most efficient approach to solve a problem. Unfortunately it
already has been proven that there is no such algorithm which can
determine whether a program is optimal or not.

> Thus, although it is not itself
> the being that reflects, it may yet be considered as the being which
> executes the conceptions of intelligence. The cards receive the impress
> of these conceptions, and transmit to the various trains of mechanism
> composing the engine the orders necessary for their action. When once the
> engine shall have been constructed, the difficulty will be reduced to the
> making out of the cards; but as these are merely the translation of
> algebraical formulae, it will, by means of some simple notations, be easy to
> consign the execution of them to a workman. Thus the whole intellectual
> labour will be limited to the preparation of the formulae, which must be
> adapted for calculation by the engine.

Here Menabrea says explicitly that the only intelligence in conjunction
with this machine has to be in the head of the designer of the cards,
who can be considered as the 'programmer'. Neither the workman nor the
machine itself need to have a (high level) of intelligence.

> it will afford the following advantages: - First, rigid accuracy. [...]
> Now the engine, by the very nature of its mode of acting, which
> requires no human intervention during the course of its operations, presents
> every species of security under the head of correctness: besides, it carries
> with it its own check; for at the end of every operation it prints off, not
> only the results, but likewise the numerical data of the question; [...]
> Secondly, economy of time: to convince ourselves of this, we need only
> recollect that the multiplication of two numbers, consisting each of twenty
> figures, requires at the very utmost three minutes. [...]
> Thirdly, economy of intelligence: [...]
> Now the engine, from its capability of performing by itself all these purely
> material operations, spares intellectual labour, which may be more
> profitably employed. Thus the engine may be considered as a real manufactory
> of figures, which will lend its aid to those many useful sciences and arts
> that depend on numbers.

According to the first point, in my opinion it would make less sense to
verify every calculation with the help of the printout, because then
one could nearly have done the work without the machine right from the
beginning. On the other hand if it is only wanted to check some
particular results, then the output of course is of great help.
Furthermore, assuming that printing the input values and possibly some
provisional results should not be too difficult, there is no reason not
to implement this security feature. Secondly, as long as we deal with
the creation of large mathematical tables it is of course more time
efficient to use a machine to calculate them. On the other hand from
our point of view nowadays we can say, that there will never be enough
computation power and memory capacity, because the complexity of the
tasks we want to cope with rises at least as fast as the performance of
our computers.

In my opinion Menabrea's interpretation of the third point - economy of
intelligence - is quite interesting. Though he already pointed out that
the machine does not have any intelligence itself, according to his
point of view it still rises the amount of intelligence available. It
does so by not bothering an intelligent human being with monotonous
tasks which can be fulfilled automatically. The question is just if
human beings really use their intelligence to think about more complex
problems than the ones that the machine can work on, or if it rather
prefers to use the regained time for recreational matters.

For further information about the very early days of arithmetic and
early calculating machines have a look at the German paper: "Arithmetik
und Frhe Rechenmaschinen" by Florian Hasibether, Kirstein, Simon and
Egerland, Matthias:

Pictures from the Differencing and the Analytical Engine can be found here:

Egerland, Matthias <>

This archive was generated by hypermail 2b30 : Tue Feb 13 2001 - 16:36:26 GMT