A complete difference engine in the 1820s

The first computer ever designed, a mechanical one, was designed by Charles Babbage. Called the difference engine. What if either the difference engine, analytical engine or even both had been completed?
 
You get this:

TheDifferenceEngine%281stEd%29.jpg


Maybe...
 
You get this:

TheDifferenceEngine%281stEd%29.jpg


Maybe...

Lolnope.

What I could see is it'll help Britain minutely. Britain will have better log tables, and later Difference Engines are put directly on ships (they seem to be small enough for that purpose) and Britain has a slightly easier time in each of their wars. Babbage would probably see his role in its creation recognized, and he gets the funding for the Analytical Engine. They would probably be larger than vacuum-sized computers, and they could do anything a modern computer could do, albeit much slower. And that would be truly revolutionary.

As well, being able to calculate the differences of functions has more applications than just projectile motion, but I'm no expert in that regard.
 
The first computer ever designed, a mechanical one, was designed by Charles Babbage. Called the difference engine. What if either the difference engine, analytical engine or even both had been completed?
Why was this moved to non-political chat?

Anyway, there's every possibility that the difference engine would have remained a curiosity, used primarily to calculate artillery tables like it had been intended. The enormous expense means that even if one is completed, the Admiralty may not wish to commission another, preferring instead the three ships of the line or whatever that were equivalent in cost.

One, or a handful, of difference engines would be used to calculate artillery tables, and might see some more use for other things that are easily tabulated by annoying to do by hand; for example: tables for celestial navigation, trigonometric tables, digits of pi or of e. I can see the Greenwich Observatory getting some use out of it if the Admiralty lets them, calculating precise orbits.

An analytical engine, the fully-programmable (Turing complete) successor that Babbage had planned to the difference engine, could be much more flexible but was also more expensive. And the speed and size would probably limit both to niche scientific and engineering applications, like most computers OTL until the PC - and mechanical computers can't really be miniaturized. Still, such things might, for example, allow for a quicker development for nuclear power once nuclear theory is discovered, or perhaps help optimize industrial chemical reactions.
 
The primary purpose of the table would probably not take up too much of its time, so I can see it being used by mathematicians in doing the grunt work of calculating various tables. For example, you could feed the output back in and work on recurrence equations, fixed-point analysis, and integration approximation. As the mathematicians with access to the engine develop more ways to use the engine to solve problems, then I can easily see those methods being used to construct more engineering tables.

As long as the difference engine continues being useful, I'd imagine that Babbage and successors would work on devising improvements to its capabilities. For example, with the introduction of the solenoid switch, a lot of the guts of the machine could be replaced by electromechanical parts. Or before that, an automatic, configurable feeding-in of output to input to automate recurrences, a carry store to allow the engine to produce solutions of higher precision by taking more time rather than needing more space, and a punch-card-reader to configure the machine. Altogether they would bring the difference engine close to the analytical engine in power, but this would probably be too expensive and complex to develop without electromechanical parts.

Assuming such an engine, with close-to-analytical-engine capabilities, then I can see it being rented out to solve industrial optimization problems, military engineering problems, and other things which will give the users of the engine small increases in efficiency and small decreases in calculation error and clerk/calculator/engineer costs.

This would leave Britain in a very different position come the first major war -- they'd doubtless be far ahead in terms of cryptography, unless of course one of their opponents built an analytical engine of their own...
 
Why was this moved to non-political chat?

It is indeed about alternative history.

Anyway, there's every possibility that the difference engine would have remained a curiosity, used primarily to calculate artillery tables like it had been intended. The enormous expense means that even if one is completed, the Admiralty may not wish to commission another, preferring instead the three ships of the line or whatever that were equivalent in cost.

What are the "three ships of line"?

An analytical engine, the fully-programmable (Turing complete) successor that Babbage had planned to the difference engine, could be much more flexible but was also more expensive. And the speed and size would probably limit both to niche scientific and engineering applications, like most computers OTL until the PC - and mechanical computers can't really be miniaturized. Still, such things might, for example, allow for a quicker development for nuclear power once nuclear theory is discovered, or perhaps help optimize industrial chemical reactions.

Yes, had this machine been complete, it would have been hard work which paid off before personal computers.

The primary purpose of the table would probably not take up too much of its time, so I can see it being used by mathematicians in doing the grunt work of calculating various tables. For example, you could feed the output back in and work on recurrence equations, fixed-point analysis, and integration approximation. As the mathematicians with access to the engine develop more ways to use the engine to solve problems, then I can easily see those methods being used to construct more engineering tables.

No comment.

As long as the difference engine continues being useful, I'd imagine that Babbage and successors would work on devising improvements to its capabilities. For example, with the introduction of the solenoid switch, a lot of the guts of the machine could be replaced by electromechanical parts. Or before that, an automatic, configurable feeding-in of output to input to automate recurrences, a carry store to allow the engine to produce solutions of higher precision by taking more time rather than needing more space, and a punch-card-reader to configure the machine. Altogether they would bring the difference engine close to the analytical engine in power, but this would probably be too expensive and complex to develop without electromechanical parts

What "guts"? No comment on the rest of this.

Assuming such an engine, with close-to-analytical-engine capabilities, then I can see it being rented out to solve industrial optimization problems, military engineering problems, and other things which will give the users of the engine small increases in efficiency and small decreases in calculation error and clerk/calculator/engineer costs.

I don't quite get this.

This would leave Britain in a very different position come the first major war -- they'd doubtless be far ahead in terms of cryptography, unless of course one of their opponents built an analytical engine of their own...

I didn't think a mechanical computer would be used for encryption.
 
What "guts"? No comment on the rest of this.

One example would be the carry detection arms -- arms shaped much like the pendulum ratchet on a pendulum clock, which get turned by the digit gears when there is a carry. These have to mechanically transduce the detected carry into an extra digit of rotation on the next wheel of the same column, a task which could be faster if it uses an electrical switch for precise detection and a solenoid for a precise motion of the succeeding digit gear. Carry detection and propagation is the slowest part of the difference engine's basic operation, so a system where the carries are propagated much more quickly, and with fewer mechanical parts that might jam, skip a tooth, or otherwise err, would greatly cut down on calculation time.

More solenoids and switches could be used instead of the addition/subtraction wheels, or perhaps simply in addition to them so the addition/subtraction mechanism is simpler and faster. Indeed, everything could be replaced by solenoids and simple switches to make a binary machine.

Here's a possible scenario: The difference engine is successful, and sees a lot of use in tabulation etc. Over time (I'm unsure how long this would take), various mechanisms within are replaced with electromechanical components for faster and less error-prone operation. So, when Babbage decides to build an improved engine (after a series of experimental bits of engines, a lot of abandoned designs, etc), he decides to builds a binary electromechanical engine. The need for more digits in a binary engine is compensated for by the simplicity of the elements required, meaning many more digits can be added at reduced cost, increased speed, and increased fidelity of operation.

Then, when he decides to embark on an analytical engine, he's more likely to actually succeed because a binary electromechanical machine would be much cheaper to manufacture parts for, construct, and operate.

I don't quite get this.

There are a lot of problems engineering firms might find better solutions for, and spend less doing it, if they have access to a good mechanical computer. So I suggested that maybe the university or research park that houses the analytical engine would sell some of its time to corporations who want to crunch numbers, optimize some problem, create some proprietary tables, etc. And much like early computers in the US, they'd see a lot of use by academics who would often later apply their findings in business, not to mention the valuable work of more pure mathematics and computer science, of course.

I didn't think a mechanical computer would be used for encryption.

I wasn't thinking about that, and yeah I agree that it wouldn't be that useful for encryption (too slow for encrypting all the traffic that needs encryption, and you'd likely need another to decrypt anyway). But much like the use of electromechanical computers as aids in breaking codes, I imagine that a working analytical engine would be able to do various computations to aid in quick code-breaking. For example, with an analytical engine that can read punch-card data and a punch-card typewriter, a codebreaker could quickly test a ciphertext corpus against a bunch of different analytical tools (eg, frequency analysis, or ciphertext self-subtraction). This doesn't directly decrypt the ciphertext, but would be very useful in speeding up analysis. With additional intelligence on the encryption methods of the enemy (like what Britain got from the Poles in WWII on Enigma) it might be possible to nearly-automate the process of finding likely keys.
 
So I found some good videos and websites on the workings of the analytical engine, and Babbage had a brilliant design for a fast, parallel mechanical carry propagator (the thing that makes carries travel across multiple digits, when for example adding 6428 with 3573) which conveniently is amenable to adaptation for an electromechanical binary computer.

And with a much simpler mechanism for storing a number (it could be as simple as, essentially, a row of light switches), you could have a much larger store for working data (ie, allowing faster calculations cuz you don't need to write to punch card as often). There might even be a semi-mechanical, reusable alternative to punch cards that I haven't thought of.

And with cheaper memory, and the same format for storing both program and data, the analytical engine could even have a von neumann architecture, which I think is pretty cool. I'm not sure if it would necessarily be all that useful, but it would certainly be more flexible.
 
One example would be the carry detection arms -- arms shaped much like the pendulum ratchet on a pendulum clock, which get turned by the digit gears when there is a carry. These have to mechanically transduce the detected carry into an extra digit of rotation on the next wheel of the same column, a task which could be faster if it uses an electrical switch for precise detection and a solenoid for a precise motion of the succeeding digit gear. Carry detection and propagation is the slowest part of the difference engine's basic operation, so a system where the carries are propagated much more quickly, and with fewer mechanical parts that might jam, skip a tooth, or otherwise err, would greatly cut down on calculation time.

Do you mean something that mechanical odometers have?

More solenoids and switches could be used instead of the addition/subtraction wheels, or perhaps simply in addition to them so the addition/subtraction mechanism is simpler and faster. Indeed, everything could be replaced by solenoids and simple switches to make a binary machine.

See below.

Here's a possible scenario: The difference engine is successful, and sees a lot of use in tabulation etc. Over time (I'm unsure how long this would take), various mechanisms within are replaced with electromechanical components for faster and less error-prone operation. So, when Babbage decides to build an improved engine (after a series of experimental bits of engines, a lot of abandoned designs, etc), he decides to builds a binary electromechanical engine. The need for more digits in a binary engine is compensated for by the simplicity of the elements required, meaning many more digits can be added at reduced cost, increased speed, and increased fidelity of operation.

So it would now be an electromechanical computer. What is the "fidelity" of operation? This is a digital computer.

Then, when he decides to embark on an analytical engine, he's more likely to actually succeed because a binary electromechanical machine would be much cheaper to manufacture parts for, construct, and operate.

No mention was made of whether the difference machine was designed as binary or not.

There are a lot of problems engineering firms might find better solutions for, and spend less doing it, if they have access to a good mechanical computer. So I suggested that maybe the university or research park that houses the analytical engine would sell some of its time to corporations who want to crunch numbers, optimize some problem, create some proprietary tables, etc. And much like early computers in the US, they'd see a lot of use by academics who would often later apply their findings in business, not to mention the valuable work of more pure mathematics and computer science, of course.

I can think of another use, see below.

I wasn't thinking about that, and yeah I agree that it wouldn't be that useful for encryption (too slow for encrypting all the traffic that needs encryption, and you'd likely need another to decrypt anyway). But much like the use of electromechanical computers as aids in breaking codes, I imagine that a working analytical engine would be able to do various computations to aid in quick code-breaking. For example, with an analytical engine that can read punch-card data and a punch-card typewriter, a codebreaker could quickly test a ciphertext corpus against a bunch of different analytical tools (eg, frequency analysis, or ciphertext self-subtraction). This doesn't directly decrypt the ciphertext, but would be very useful in speeding up analysis. With additional intelligence on the encryption methods of the enemy (like what Britain got from the Poles in WWII on Enigma) it might be possible to nearly-automate the process of finding likely keys.

I didn't say they wouldn't be useful for encryption, but I didn't think of that. But if they can break codes made with simple pen-and-paper, they might also be able to make more complex codes than even the enigma code.

So I found some good videos and websites on the workings of the analytical engine, and Babbage had a brilliant design for a fast, parallel mechanical carry propagator (the thing that makes carries travel across multiple digits, when for example adding 6428 with 3573) which conveniently is amenable to adaptation for an electromechanical binary computer.

What sites?

And with a much simpler mechanism for storing a number (it could be as simple as, essentially, a row of light switches), you could have a much larger store for working data (ie, allowing faster calculations cuz you don't need to write to punch card as often). There might even be a semi-mechanical, reusable alternative to punch cards that I haven't thought of.

I have no idea about this.

And with cheaper memory, and the same format for storing both program and data, the analytical engine could even have a von neumann architecture, which I think is pretty cool. I'm not sure if it would necessarily be all that useful, but it would certainly be more flexible.

I'm not sure what this means.

By the way, I imagine simple mechanical computers being used to control railways signals of the time.
 
Babbage fortune
Apparently, Mr. Babbage actually married without permission and lost access to the Babbage fortune. Had he had his father's permission or not married, he would have had access, and may have had enough money to finish the difference engine.
 
Top