charles babbage, ada lovelace, and the bernoulli numbers

CHARLES BABBAGE,
ADA LOVELACE,
AND THE BERNOULLI
NUMBERS
Thomas J. Misa
Charles Babbage Institute
University of Minnesota
www.cbi.umn.edu | FB/BabbageInstitute
Stevens Institute of Technology:
Ada Lovelace Conference 18 Oct. 2013
CHARLES BABBAGE, ADA LOVELACE,
AND THE BERNOULLI NUMBERS
✤“Was Ada
LoveLace first
computer programmer?”
• Popular
acclaim = yes !
• Scholar’s
evidence ~ no
• examine: Lovelace’s ‘note
G’
to 1842 Menabrea Sketch
• and: AL–CB
letters
Ada Lovelace days 3/24 + 10/15
ADA LOVELACE: FIRST COMPUTER PROGRAMMER ?
• “founder of scientific computing”
<www.sdsc.edu/ScienceWomen>
• “In
1842, Ada Lovelace ... wrote the first
computer program” <NYT 10.15.2013>
• “the
first algorithm intended to be
processed by a machine ... world’s first
computer programmer” <Wikipedia>
ADA LOVELACE: FIRST COMPUTER PROGRAMMER ?
• “extent
of [her] intellectual contribution to
Sketch ... much exaggerated” CKA (2013): 44
• “most
of technical content and all of the
programs” were Babbage’s CKA (2013): 44
• “[her]
achievements ... not [sic] to deserve
the recognition accorded” D.Stein, Ada–Life [MIT
1985] xii (CKA’s source? 1st ed. Computer = 1996)
• Cf. Fuegi
and Francis, “Lovelace & Babbage . . .
1843 notes.” IEEE Annals 25#4 [2003]: 16-26.
ADA LOVELACE: FIRST COMPUTER
PROGRAMMER ?
Babbage, Passages [1864]:
• “various
illustrations [Sketch]
... selection entirely her own.
So was the algebraic ...
problems, except ...”
• ... Bernoulli
numbers that CB “offered to do
to save Lady Lovelace the trouble.”
• “This
she sent back to me ... having detected
a grave mistake which I had made....”
ADA LOVELACE: FIRST COMPUTER PROGRAMMER ?
Charles Babbage:
•born 1791
•Cambridge 1810-4
•1822-: Difference Engine
•1834-: Analytical Engine
•1842: lecture in Italy
➥ Menabrea Sketch
•1846-8: Difference #2
•1871 died ‘irascible’
Ada Byron Lovelace:
•born 1815; ‘Lady King’
1835-; ‘Countess...’ 1838•Mary Somerville (CB)
•private math studies
de Morgan: “drowning in
Calculus” [11/1841]
•1843: translation of
Menabrea + A-G ‘notes’
•1852 died (£600 to CB)
ADA LOVELACE: FIRST COMPUTER PROGRAMMER ?
AL to CB [summer 1843] N=23:
• “I
want to put in ... Bernoulli’s numbers ... how
an implicit function ... worked out by the
engine ... [without] human head & hands first.
Give me the necessary ... formulae.” [n.d.]
• “I
am doggedly attacking ... all the ways of
deducing the Bernoulli Numbers.” [5 July]
• “Table
& Diagram ... infinite patience & pains ...
are seriously wrong.... I have done them [over] in
a beautiful manner, much improved....” [Sat. 6:oo]
Toole: 198 + Stein: 107
ADA LOVELACE: STEAMPUNK MOMENT
Lovelace talks to paleontologist Mallory FRS
• “Fundamental
relations in science of
harmony ... are susceptible to mechanical
expression....”
• “... my
marshaled regiments shall ably serve
the rulers of the earth. And of what
materials...? Vast numbers.”
• Numbers
of Bernoulli ➳
Gibson & Sterling’s Difference Engine [1991]: 94
ADA LOVELACE: FIRST COMPUTER PROGRAMMER ?
“Numbers of Bernoulli”
• sequence
of ‘rational’ numbers
• Swiss
mathematician Jakob Bernoulli [1713]
+ Japanese mathematician Seki Kowa [1712]
• Taylor
series for (hyperbolic) tangent
Euler-Maclaurin formula [integrals~series]
• number
theory (Riemann zeta function)
ADA LOVELACE: FIRST COMPUTER PROGRAMMER ?
Lovelace’s note G to Menabrea Sketch:
<www.fourmilab.ch/babbage/sketch.html>
•
“steps ... engine could compute the Numbers of
Bernoulli ... a rather complicated example”
•
“in which B1, B3 ... are the Numbers of Bernoulli”
•
expand . . . divide, derive, multiply, multiply, write
general form . . . .
(8.)
ADA LOVELACE: FIRST COMPUTER PROGRAMMER ?
Lovelace’s note G to Menabrea Sketch:
<www.fourmilab.ch/babbage/sketch.html>
• (8.) “enables us to find ... any nth Number of
Bernoulli B2n-1, in terms of all the preceding ones,
if we but know the values of B1, B3…B2n-3.
‣ Let n=1, and calculate (8.). The result is B1.
‣ Let n=2. Calculate (8.) for this value of n,
substituting the value of B1. The result is B3.
‣ Let n=3. Calculate (8.), substituting the values of
B1, B3. The result is B5. And so on, to any extent.
• We append to this Note a Diagram and Table”
ADA LOVELACE: FIRST COMPUTER PROGRAMMER ?
Lovelace’s note D to Menabrea Sketch:
Lovelace’s note G to Menabrea Sketch:
<www.fourmilab.ch/babbage/figures/menat6_1-5k.png> [high-res]