The Logician and the Engineer: How George Boole and Claude Shannon Created the Information Age
“Paul J. Nahin really knows how to tell a good story. The Logician and the Engineer is truly a gem.”
Paul J. Nahin really knows how to tell a good story. The Logician and the Engineer in part is the biography of two very important persons in computer history, George Boole and Claude Shannon, but there’s more; this book encompasses a wide range of computer history and computer design, and there are logic puzzles and brainteasers throughout. George Boole, a pure mathematician, and Claude Shannon, a practical electrical engineer, never met as they were born a hundred years apart.
Though today’s software and hardware engineers may be taught Boolean algebra as a matter of course, most students will be unaware of Claude Shannon’s contribution to logic design, his tying of Boolean algebra to switching circuits in the late 1930s becoming (and remaining) the foundation of computer logic and design.
Born in England, George Boole born was a child prodigy. His formal education stopped at the equivalent of junior high. At the age of 16 he became an assistant teacher, which didn’t last long. After being let go for yelling at his charges (and doing math on Sundays), Boole started his own school.
Though only the administrator, he began writing papers on mathematics. The question of who would publish an obscure day school administrator without a degree was answered by the then new Cambridge Mathematical Journal. This journal was willing to publish riskier fare, and George Boole found a sympathetic editor. His papers improved to the point that the editor refused to publish them, instead submitting Boole’s papers to more prestigious journals.
Boole authored one of the first papers on symbolic algebra, that is, the subject of treating symbols as numbers. “On a General Method in Analysis” was published in 1844 in the Transactions of the Royal Society of London. It won best paper by an author under 30 and earned him a royal medal. In 1849 at the age of 34, he applied for and received a professorship of mathematics at Queen’s College in Ireland despite not having a degree. In 1854 he authored the paper on Boolean logic, “Investigation of the Laws of Thought.” He continued making achievements and receiving honors until 1864 when at the tender age of 49 he caught and died of pneumonia.
An American, Claude Shannon, completed his Bachelor of Science degree in Electrical Engineering at the University of Michigan in 1936 then moved Massachusetts to attend MIT. There he worked for Vannevar Bush on the differential analyzer, at the time the world’s most advanced analog computer, and got his epiphany that ties Boolean algebra to the design of switching circuits.
His master’s thesis on this subject, “A Symbolic Analysis of Relay and Switching Circuits,” was published in 1938 and lead to winning the Alfred Noble Prize in 1940, an engineering award not related to The Nobel Award. In a profile in Scientific American, Shannon downplayed his discovery. “It just happened no one else was familiar with both those fields at the same time.”
Shannon then moved to Bell Labs to work on cryptography with Alan Turing. In 1948 he wrote his second masterpiece, “A Mathematical Theory of Communication.” Shannon retired from MIT in 1978. Tragically, 15 years later dementia forced him to enter a nursing home, where he died in 2001.
To follow along past the biographies it would be helpful to have a smattering of electric circuit theory, though not much is required—that electricity has plus and minus polarity, Ohm’s law, and how to add resistors in parallel, are details the author helpfully provides in an appendix. And never fear, you won’t be bogged down by too much detail. “Any specific technology is simply secondary . . . to the spirit of the book.”
The point of having some knowledge of circuit theory is the author actually explains step-by-step how to design a computer from first principles—and does this quite well. He begins by both illustrating and explaining relay circuits (Shannon’s switching-circuits), and this, along with the mathematical concepts of Boolean logic, Mr. Nahin builds circuits that implement the algebra: the AND, the OR, and the NOT function. He also explains how a semiconductor diode works. The semiconductor diode is a modern device, which can be used as a switch like the relay. (The author does not go on to explain the transistor, which this reviewer considers a minor nitpick).
By use of relays and diodes the author turns analog circuitry into digital combinational logic and bi-stable latches, which are primitive memory cells and the sequential logic necessary to hold “state,” the building blocks of state-machines. He then designs several higher mathematical functions out of combinational logic, turning logic gates into more complex functions such as adders and half-adders.
Both Boole and Shannon shared a deep interest in probability. The author provides an introduction to the mathematics of probability but not so much as to cause the reader’s brain to hurt. Mr. Nahin states, “My intent here is to simply give you a flavor of how they reasoned and of the sort of probabilistic problem that caught their attention.” He starts with the probability of coin flips and advances to slightly more complex examples, including that of conditional probability.
Conditional probability is a technique used to model signals in the presence of noise, something that for Shannon was very important. Shannon used combinational logic to model what he called “crummy” relays in order to make reliable designs out of less reliable components.
The author also provides an introduction to information theory and data transmission. Conditional probability is also valid for data communication and the author shows how to compose logic for error detection and correction. The simple example used is Morse code: an operator has to distinguish dots from dashes from noise and empty space. The author also covers the Turing machine, which is the first conceptual treatment of a computer. The Turing machine is the model that provided Turing the ability to recognize that not all numbers one can imagine are in fact computable.
Mr. Nahin wanders down other fascinating tangents in computer design including the thermodynamics of computing, reversible computing, and quantum computing. And although the author claims that usable quantum computers have not yet been built, a Google search turns up “D Wave One,” a quantum computer available for $20 million though at that price the question as to “usable” is still open.
At the end there’s a chapter on mixing time machines with computers and paradoxes that might result. The final chapter is a reprint of a short story, something Mr. Nahin originally wrote for Omni in 1979.
The Logician and the Engineer will be enjoyed by budding computer scientists, engineers and more experienced readers. The Logician and the Engineer is truly a gem.