〈LAW OF DEVELOPMENT.〉

The Analytical Engine is therefore a machine of the most general nature. Whatever formula it is required to develop, the law of its development must be communicated to it by two sets of cards. When these have been placed, the engine is special for that particular formula. The numerical value of its constants must then be put on the columns of wheels below them, and on setting the Engine in motion it will calculate and print the numerical results of that formula. {119}

Every set of cards made for any formula will at any future time recalculate that formula with whatever constants may be required.

Thus the Analytical Engine will possess a library of its own. Every set of cards once made will at any future time reproduce the calculations for which it was first arranged. The numerical value of its constants may then be inserted.

It is perhaps difficult to apprehend these descriptions without a familiarity both with analytical forms and mechanical structures. I will now, therefore, confine myself to the math­e­mat­i­cal view of the Analytical Engine, and illustrate by example some of its supposed difficulties.

An excellent friend of mine, the late Professor MacCullagh, of Dublin, was discussing with me, at breakfast, the various powers of the Analytical Engine. After a long conversation on the subject, he inquired what the machine could do if, in the midst of algebraic operations, it was required to perform logarithmic or trigonometric operations.

〈ITS USE OF TABLES.〉

My answer was, that whenever the Analytical Engine should exist, all the developments of formula would be directed by this condition—that the machine should be able to compute their numerical value in the shortest possible time. I then added that if this answer were not sat­is­fac­tory, I had provided means by which, with equal accuracy, it might compute by logarithmic or other Tables.

〈DISCOVERS A MISTAKE.〉

I explained that the Tables to be used must, of course, be computed and punched on cards by the machine, in which case they would undoubtedly be correct. I then added that when the machine wanted a tabular number, say the logarithm of a given number, that it would ring a bell and then stop itself. On this, the attendant would look at a certain part of the machine, and find that it wanted the logarithm of a given {120} number, say of 2303. The attendant would then go to the drawer containing the pasteboard cards representing its table of logarithms. From amongst these he would take the required logarithmic card, and place it in the machine. Upon this the engine would first ascertain whether the assistant had or had not given him the correct logarithm of the number; if so, it would use it and continue its work. But if the engine found the attendant had given him a wrong logarithm, it would then ring a louder bell, and stop itself. On the attendant again examining the engine, he would observe the words, “Wrong tabular number,” and then discover that he really had given the wrong logarithm, and of course he would have to replace it by the right one.