| Preface |
|
xiii | |
| Acknowledgments |
|
xv | |
| About the Authors |
|
xvii | |
|
Chapter 1 The Dawn of Counting |
|
|
1 | (6) |
|
1.1 ARCHEOLOGICAL EVIDENCE: PALEOLITHIC ART |
|
|
1 | (1) |
|
|
|
2 | (1) |
|
1.3 THE USE OF TALLY STICKS AND REPRESENTATIONAL SYMBOLS: THE FIRST INFORMATION REVOLUTION |
|
|
2 | (2) |
|
|
|
4 | (1) |
|
1.5 THE USE OF TOKENS AND THE SECOND INFORMATION REVOLUTION |
|
|
5 | (2) |
|
|
|
6 | (1) |
|
Chapter 2 Representation of Numbers |
|
|
7 | (8) |
|
2.1 POSITIONAL NUMBER SYSTEMS |
|
|
8 | (2) |
|
2.2 MORE ABOUT NUMBER SYSTEMS |
|
|
10 | (1) |
|
2.3 FURTHER DISCUSSIONS OF ZERO |
|
|
10 | (5) |
|
|
|
14 | (1) |
|
Chapter 3 Rational and Irrational Numbers |
|
|
15 | (8) |
|
3.1 APPEARANCE OF FRACTIONS |
|
|
15 | (2) |
|
|
|
17 | (2) |
|
|
|
19 | (4) |
|
|
|
21 | (2) |
|
|
|
23 | (12) |
|
|
|
23 | (6) |
|
4.2 THE PRIME NUMBER THEOREM |
|
|
29 | (6) |
|
|
|
33 | (2) |
|
Chapter 5 Euclid's Elements |
|
|
35 | (8) |
|
|
|
40 | (3) |
|
Chapter 6 Diophantus of Alexandria and Arithmetica |
|
|
43 | (8) |
|
|
|
49 | (2) |
|
Chapter 7 Secret Writing in Ancient Civilization |
|
|
51 | (8) |
|
|
|
51 | (1) |
|
|
|
52 | (7) |
|
|
|
57 | (2) |
|
|
|
59 | (10) |
|
|
|
59 | (2) |
|
8.2 THE SALAMIS TABLET AND THE ROMAN HAND ABACUS |
|
|
61 | (3) |
|
|
|
64 | (1) |
|
|
|
65 | (4) |
|
|
|
66 | (3) |
|
Chapter 9 Book of Calculation by Fibonacci |
|
|
69 | (8) |
|
|
|
75 | (2) |
|
Chapter 10 Decimal Fractions and Logarithms |
|
|
77 | (8) |
|
10.1 Appearance Of Decimal Fractions |
|
|
77 | (2) |
|
|
|
79 | (6) |
|
|
|
83 | (2) |
|
Chapter 11 Calculating Machines |
|
|
85 | (12) |
|
11.1 The Rechen Uhr Or "Calculating Clock" Of Wilhelm Schickard |
|
|
86 | (1) |
|
|
|
87 | (1) |
|
11.3 Leibniz And The Stepped Reckoner |
|
|
88 | (1) |
|
|
|
89 | (2) |
|
11.5 Babbage's Mechanical Computers |
|
|
91 | (1) |
|
11.6 Ada Lovelace, The First Computer Programmer |
|
|
92 | (1) |
|
11.7 Herman Hollerith And His Amazing Tabulator |
|
|
93 | (4) |
|
|
|
96 | (1) |
|
Chapter 12 Solutions to Algebraic Equations |
|
|
97 | (10) |
|
|
|
98 | (1) |
|
|
|
99 | (1) |
|
|
|
100 | (1) |
|
12.4 Quartic And Quintic Equations |
|
|
101 | (6) |
|
|
|
105 | (2) |
|
Chapter 13 Real and Complex Numbers |
|
|
107 | (8) |
|
|
|
107 | (3) |
|
|
|
110 | (2) |
|
13.3 Complex-Valued Functions |
|
|
112 | (3) |
|
|
|
113 | (2) |
|
|
|
115 | (6) |
|
|
|
120 | (1) |
|
Chapter 15 Boolean Algebras and Applications |
|
|
121 | (8) |
|
|
|
128 | (1) |
|
Chapter 16 Computability and Its Limitations |
|
|
129 | (8) |
|
16.1 Godel's Incompleteness Theorem |
|
|
129 | (1) |
|
|
|
130 | (1) |
|
|
|
131 | (3) |
|
16.4 Church-Turing's Thesis |
|
|
134 | (3) |
|
|
|
136 | (1) |
|
Chapter 17 Cryptography from the Medieval to the Modern Ages |
|
|
137 | (12) |
|
17.1 The Arab Cryptanalysts |
|
|
137 | (2) |
|
17.2 Polyalphabetic Substitution Ciphers |
|
|
139 | (2) |
|
17.3 Homophonic Substitution Ciphers |
|
|
141 | (2) |
|
|
|
143 | (1) |
|
17.5 Breaking Enigma Codes |
|
|
144 | (1) |
|
|
|
145 | (4) |
|
|
|
146 | (3) |
|
Chapter 18 Electronic Computers |
|
|
149 | (12) |
|
|
|
149 | (1) |
|
|
|
150 | (1) |
|
18.3 The Colossus Computer |
|
|
151 | (2) |
|
18.4 The En I Ac Computer |
|
|
153 | (2) |
|
18.5 Von Neumann Architecture For Computers |
|
|
155 | (1) |
|
18.6 Other Notable Early Electronic Computers |
|
|
156 | (5) |
|
18.6.1 National Physics Laboratory and the ACE |
|
|
156 | (1) |
|
18.6.2 The MARK 1 at Manchester University |
|
|
157 | (1) |
|
18.6.3 Electronic Delay Storage Automatic Calculator (EDSAC) |
|
|
158 | (1) |
|
|
|
158 | (1) |
|
18.6.5 Standards Eastern Automatic Computer (SEAC) |
|
|
158 | (1) |
|
18.6.6 Standards Western Automatic Computer (SWAC) |
|
|
158 | (1) |
|
|
|
158 | (3) |
|
Chapter 19 Numerical Methods |
|
|
161 | (12) |
|
19.1 Numerical Calculation In Ancient Civilizations |
|
|
161 | (3) |
|
19.2 Numerical Solution Of Algebraic Equations |
|
|
164 | (6) |
|
19.3 Modern Numerical Analysis And Its Problem Domains |
|
|
170 | (3) |
|
|
|
172 | (1) |
|
Chapter 20 Modular Arithmetic |
|
|
173 | (8) |
|
|
|
173 | (2) |
|
20.2 Chinese Remainder Theorem |
|
|
175 | (3) |
|
20.3 Fermat's Little Theorem |
|
|
178 | (3) |
|
|
|
179 | (2) |
|
Chapter 21 Cybernetics and Information Theory |
|
|
181 | (12) |
|
21.1 Norbert Wiener And Cybernetics |
|
|
181 | (2) |
|
21.2 Shannon's Information Theory |
|
|
183 | (3) |
|
21.3 Shannon-Fano Coding And Huffman Coding |
|
|
186 | (3) |
|
|
|
189 | (4) |
|
|
|
190 | (3) |
|
Chapter 22 Error Detecting and Correcting Codes |
|
|
193 | (12) |
|
|
|
193 | (1) |
|
|
|
194 | (4) |
|
|
|
198 | (7) |
|
|
|
202 | (3) |
|
Chapter 23 Automata and Formal Languages |
|
|
205 | (12) |
|
23.1 Autonomous Apparatus |
|
|
205 | (1) |
|
23.2 Automata As Computing Models |
|
|
206 | (5) |
|
|
|
211 | (6) |
|
|
|
214 | (3) |
|
Chapter 24 Artificial Intelligence |
|
|
217 | (14) |
|
|
|
218 | (1) |
|
|
|
219 | (5) |
|
|
|
224 | (3) |
|
|
|
227 | (4) |
|
|
|
229 | (2) |
|
Chapter 25 Programming Languages |
|
|
231 | (14) |
|
|
|
231 | (1) |
|
25.2 Interpretative Crutches |
|
|
232 | (1) |
|
25.3 The First High-Level Language: Fortran |
|
|
232 | (1) |
|
25.4 Overview: Imperative Programming |
|
|
233 | (1) |
|
25.5 Overview: Declarative Programming |
|
|
234 | (1) |
|
25.6 The Second High-Level Language: Lisp |
|
|
234 | (1) |
|
25.7 Overview: Functional Programming |
|
|
235 | (1) |
|
25.8 Standardization And Compromise: Algol 60 |
|
|
235 | (2) |
|
25.9 From Science To Business: Cobol |
|
|
237 | (1) |
|
|
|
238 | (1) |
|
25.11 Overview: Logical Programming |
|
|
239 | (1) |
|
25.12 PROGRAMMING LOGIC: PROLOG |
|
|
239 | (1) |
|
25.13 OVERVIEW: OBJECT-ORIENTED PROGRAMMING |
|
|
239 | (1) |
|
25.14 THE FIRST OBJECT-ORIENTED PROGRAMMING LANGUAGE: SMALLTALK |
|
|
240 | (1) |
|
25.15 IMPERATIVE AND OBJECT ORIENTED: C++ |
|
|
240 | (1) |
|
25.16 OBJECT ORIENTED, HOLD THE IMPERATIVE: JAVA |
|
|
241 | (1) |
|
25.17 THE BEST OF BOTH WORLDS: C# |
|
|
242 | (3) |
|
|
|
244 | (1) |
|
Chapter 26 Algorithms and Computational Complexity |
|
|
245 | (10) |
|
|
|
253 | (2) |
|
Chapter 27 The Design of Computer Algorithms |
|
|
255 | (16) |
|
27.1 SORTING AND SEARCHING |
|
|
255 | (3) |
|
|
|
258 | (2) |
|
|
|
260 | (5) |
|
27.4 RANDOMIZED ALGORITHMS |
|
|
265 | (6) |
|
|
|
268 | (3) |
|
Chapter 28 Parallel and Distributed Computing |
|
|
271 | (12) |
|
|
|
271 | (2) |
|
|
|
273 | (2) |
|
|
|
275 | (4) |
|
28.4 DISTRIBUTED COMPUTING |
|
|
279 | (4) |
|
|
|
281 | (2) |
|
Chapter 29 Computer Networks |
|
|
283 | (12) |
|
29.1 PACKET SWITCHING NETWORKS |
|
|
283 | (1) |
|
|
|
284 | (3) |
|
|
|
287 | (2) |
|
29.4 CLOUD AND GRID COMPUTING |
|
|
289 | (2) |
|
29.5 UBIQUITOUS COMPUTING |
|
|
291 | (4) |
|
|
|
292 | (3) |
|
Chapter 30 Public-Key Cryptography |
|
|
295 | (14) |
|
30.1 THE SITUATION IN THE 1960s AND 1970s BEFORE THE PUBLIC KEYS |
|
|
295 | (2) |
|
30.2 THE BIRTH OF PUBLIC-KEY CRYPTOGRAPHY |
|
|
297 | (3) |
|
|
|
300 | (3) |
|
|
|
303 | (2) |
|
30.5 ANOTHER STORY OF PUBLIC-KEY CRYPTOGRAPHY FROM ENGLAND |
|
|
305 | (4) |
|
|
|
306 | (3) |
|
Chapter 31 Quantum Computing |
|
|
309 | (10) |
|
31.1 THE BASICS OF QUANTUM COMPUTING |
|
|
309 | (3) |
|
31.2 QUANTUM COMPUTATION LOGIC AND GATES |
|
|
312 | (1) |
|
31.3 FAMOUS QUANTUM ALGORITHMS |
|
|
312 | (3) |
|
31.3.1 Deutsch's Algorithm (1989) |
|
|
313 | (1) |
|
31.3.2 Grover's Search Algorithm (1995) |
|
|
313 | (1) |
|
31.3.3 Shor's Factoring Algorithm (1994) |
|
|
314 | (1) |
|
31.4 DIFFICULTIES AND LIMITS OF QUANTUM COMPUTING |
|
|
315 | (1) |
|
|
|
316 | (3) |
|
|
|
316 | (3) |
| Index |
|
319 | |