|
|
1 | (12) |
|
|
1 | (1) |
|
|
2 | (2) |
|
|
4 | (4) |
|
|
4 | (1) |
|
|
5 | (1) |
|
1.3.3 Integrated Circuits |
|
|
5 | (2) |
|
|
7 | (1) |
|
1.4 Von Neumann Architecture |
|
|
8 | (1) |
|
1.5 Hardware and Software |
|
|
9 | (1) |
|
|
10 | (1) |
|
|
10 | (1) |
|
|
11 | (2) |
|
2 Foundations of Computing |
|
|
13 | (18) |
|
|
13 | (1) |
|
2.2 Step Reckoner Calculating Machine |
|
|
14 | (1) |
|
|
15 | (2) |
|
2.4 The Difference Engine |
|
|
17 | (2) |
|
2.5 The Analytic Engine---Vision of a Computer |
|
|
19 | (3) |
|
2.5.1 Applications of Analytic Engine |
|
|
21 | (1) |
|
2.6 Boole's Symbolic Logic |
|
|
22 | (5) |
|
2.6.1 Switching Circuits and Boolean Algebra |
|
|
25 | (2) |
|
2.7 Application of Symbolic Logic to Digital Computing |
|
|
27 | (1) |
|
|
28 | (1) |
|
|
28 | (1) |
|
|
29 | (2) |
|
3 Overview of Mathematics in Computing |
|
|
31 | (30) |
|
|
31 | (1) |
|
|
32 | (9) |
|
3.2.1 Set-Theoretical Operations |
|
|
35 | (2) |
|
3.2.2 Properties of Set-Theoretical Operations |
|
|
37 | (1) |
|
|
38 | (2) |
|
3.2.4 Computer Representation of Sets |
|
|
40 | (1) |
|
|
41 | (8) |
|
3.3.1 Reflexive, Symmetric and Transitive Relations |
|
|
42 | (2) |
|
3.3.2 Composition of Relations |
|
|
44 | (2) |
|
|
46 | (1) |
|
3.3.4 Applications of Relations to Databases |
|
|
47 | (2) |
|
|
49 | (4) |
|
3.5 Application of Functions to Functional Programming |
|
|
53 | (3) |
|
|
54 | (2) |
|
|
56 | (1) |
|
|
57 | (1) |
|
|
58 | (1) |
|
3.9 Computability and Decidability |
|
|
58 | (1) |
|
|
59 | (1) |
|
|
60 | (1) |
|
|
60 | (1) |
|
4 Introduction to Algorithms |
|
|
61 | (16) |
|
|
61 | (1) |
|
|
62 | (6) |
|
4.2.1 Greatest Common Divisors (GCD) |
|
|
63 | (1) |
|
4.2.2 Euclid's Greatest Common Divisor Algorithm |
|
|
63 | (2) |
|
4.2.3 Sieve of Eratosthenes Algorithm |
|
|
65 | (1) |
|
4.2.4 Early Cipher Algorithms |
|
|
66 | (2) |
|
|
68 | (3) |
|
4.4 Binary Trees and Graph Theory |
|
|
71 | (1) |
|
4.5 Modem Cryptographic Algorithms |
|
|
72 | (1) |
|
4.6 Computational Complexity |
|
|
73 | (1) |
|
|
74 | (1) |
|
|
74 | (1) |
|
|
75 | (2) |
|
|
77 | (22) |
|
|
77 | (2) |
|
5.2 Elementary Number Theory |
|
|
79 | (5) |
|
|
84 | (8) |
|
5.3.1 Greatest Common Divisors (GCD) |
|
|
86 | (1) |
|
5.3.2 Least Common Multiple (LCM) |
|
|
87 | (1) |
|
|
88 | (1) |
|
5.3.4 Distribution of Primes |
|
|
89 | (3) |
|
5.4 Theory of Congruences |
|
|
92 | (3) |
|
5.5 Binary System and Computer Representation of Numbers |
|
|
95 | (1) |
|
|
96 | (1) |
|
|
97 | (1) |
|
|
98 | (1) |
|
|
99 | (18) |
|
|
99 | (1) |
|
6.2 Simple and Simultaneous Equations |
|
|
100 | (3) |
|
|
103 | (3) |
|
6.4 Indices and Logarithms |
|
|
106 | (1) |
|
6.5 Homer's Method for Polynomials |
|
|
107 | (1) |
|
|
108 | (6) |
|
|
108 | (2) |
|
|
110 | (1) |
|
|
111 | (1) |
|
|
112 | (2) |
|
|
114 | (1) |
|
|
114 | (3) |
|
7 Sequences, Series and Permutations and Combinations |
|
|
117 | (14) |
|
|
117 | (1) |
|
|
118 | (1) |
|
7.3 Arithmetic and Geometric Sequences |
|
|
119 | (1) |
|
7.4 Arithmetic and Geometric Series |
|
|
120 | (1) |
|
7.5 Simple and Compound Interest |
|
|
121 | (2) |
|
7.6 Time Value of Money and Annuities |
|
|
123 | (1) |
|
7.7 Permutations and Combinations |
|
|
124 | (4) |
|
|
128 | (1) |
|
|
129 | (2) |
|
8 Mathematical Induction and Recursion |
|
|
131 | (10) |
|
|
131 | (3) |
|
|
134 | (2) |
|
|
136 | (2) |
|
|
138 | (1) |
|
|
139 | (1) |
|
|
139 | (1) |
|
|
140 | (1) |
|
|
141 | (14) |
|
|
141 | (2) |
|
|
143 | (5) |
|
|
147 | (1) |
|
|
148 | (2) |
|
|
149 | (1) |
|
|
150 | (1) |
|
9.5 Graph Colouring and Four-Colour Problem |
|
|
150 | (2) |
|
|
152 | (1) |
|
|
152 | (1) |
|
|
153 | (2) |
|
|
155 | (16) |
|
|
155 | (2) |
|
10.2 Breaking the Enigma Codes |
|
|
157 | (3) |
|
10.3 Cryptographic Systems |
|
|
160 | (1) |
|
10.4 Symmetric-Key Systems |
|
|
161 | (5) |
|
|
166 | (3) |
|
10.5.1 RSA Public-Key Cryptosystem |
|
|
168 | (1) |
|
10.5.2 Digital Signatures |
|
|
169 | (1) |
|
|
169 | (1) |
|
|
170 | (1) |
|
|
170 | (1) |
|
|
171 | (14) |
|
|
171 | (1) |
|
11.2 Mathematical Foundations |
|
|
172 | (1) |
|
|
173 | (1) |
|
|
174 | (3) |
|
11.4.1 Error Detection and Correction |
|
|
176 | (1) |
|
|
177 | (5) |
|
11.5.1 Parity Check Matrix |
|
|
180 | (1) |
|
11.5.2 Binary Hamming Code |
|
|
180 | (2) |
|
11.5.3 Binary Parity Check Code |
|
|
182 | (1) |
|
11.6 Miscellaneous Codes in Use |
|
|
182 | (1) |
|
|
182 | (1) |
|
|
183 | (1) |
|
|
183 | (2) |
|
12 Language Theory and Semantics |
|
|
185 | (24) |
|
|
185 | (1) |
|
|
186 | (1) |
|
|
187 | (6) |
|
|
190 | (1) |
|
12.3.2 Parse Trees and Derivations |
|
|
191 | (2) |
|
12.4 Programming Language Semantics |
|
|
193 | (4) |
|
12.4.1 Axiomatic Semantics |
|
|
193 | (2) |
|
12.4.2 Operational Semantics |
|
|
195 | (1) |
|
12.4.3 Denotational Semantics |
|
|
196 | (1) |
|
|
197 | (2) |
|
|
199 | (7) |
|
12.6.1 Partially Ordered Sets |
|
|
199 | (2) |
|
|
201 | (2) |
|
12.6.3 Complete Partial Orders |
|
|
203 | (1) |
|
|
204 | (2) |
|
|
206 | (1) |
|
|
206 | (1) |
|
|
206 | (3) |
|
13 Computability and Decidability |
|
|
209 | (12) |
|
|
209 | (1) |
|
13.2 Logicism and Formalism |
|
|
210 | (3) |
|
|
213 | (2) |
|
|
215 | (3) |
|
13.5 Computational Complexity |
|
|
218 | (1) |
|
|
219 | (1) |
|
|
219 | (1) |
|
|
220 | (1) |
|
|
221 | (14) |
|
|
221 | (2) |
|
|
223 | (2) |
|
|
225 | (3) |
|
|
228 | (2) |
|
14.5 Eigenvectors and Values |
|
|
230 | (1) |
|
14.6 Gaussian Elimination |
|
|
230 | (2) |
|
|
232 | (1) |
|
|
232 | (1) |
|
|
233 | (2) |
|
15 A Short History of Logic |
|
|
235 | (12) |
|
|
235 | (1) |
|
|
236 | (2) |
|
15.3 Paradoxes and Fallacies |
|
|
238 | (2) |
|
|
240 | (1) |
|
15.5 Boole's Symbolic Logic |
|
|
241 | (2) |
|
15.5.1 Switching Circuits and Boolean Algebra |
|
|
242 | (1) |
|
|
243 | (1) |
|
|
244 | (1) |
|
|
245 | (1) |
|
|
245 | (2) |
|
16 Prepositional and Predicate Logic |
|
|
247 | (28) |
|
|
247 | (1) |
|
|
248 | (15) |
|
|
250 | (2) |
|
16.2.2 Properties of Propositional Calculus |
|
|
252 | (1) |
|
16.2.3 Proof in Propositional Calculus |
|
|
253 | (3) |
|
16.2.4 Semantic Tableaux in Propositional Logic |
|
|
256 | (2) |
|
|
258 | (1) |
|
16.2.6 Sketch of Formalization of Propositional Calculus |
|
|
259 | (2) |
|
16.2.7 Applications of Propositional Calculus |
|
|
261 | (1) |
|
16.2.8 Limitations of Propositional Calculus |
|
|
262 | (1) |
|
|
263 | (8) |
|
16.3.1 Sketch of Formalization of Predicate Calculus |
|
|
265 | (2) |
|
16.3.2 Interpretation and Valuation Functions |
|
|
267 | (1) |
|
16.3.3 Properties of Predicate Calculus |
|
|
268 | (1) |
|
16.3.4 Applications of Predicate Calculus |
|
|
268 | (1) |
|
16.3.5 Semantic Tableaux in Predicate Calculus |
|
|
269 | (2) |
|
|
271 | (1) |
|
|
272 | (1) |
|
|
273 | (2) |
|
17 Advanced Topics in Logic |
|
|
275 | (18) |
|
|
275 | (1) |
|
|
276 | (1) |
|
|
277 | (2) |
|
17.4 Intuitionistic Logic |
|
|
279 | (2) |
|
|
281 | (5) |
|
17.5.1 Logic of Partial Functions |
|
|
281 | (2) |
|
|
283 | (1) |
|
17.5.3 Dijkstra and Undefinedness |
|
|
284 | (2) |
|
|
286 | (4) |
|
|
290 | (1) |
|
|
290 | (1) |
|
|
291 | (2) |
|
18 The Nature of Theorem Proving |
|
|
293 | (10) |
|
|
293 | (3) |
|
18.2 Early Automation of Proof |
|
|
296 | (2) |
|
18.3 Interactive Theorem Provers |
|
|
298 | (2) |
|
18.4 A Selection of Theorem Provers |
|
|
300 | (1) |
|
|
300 | (1) |
|
|
300 | (2) |
|
|
302 | (1) |
|
19 Software Engineering Mathematics |
|
|
303 | (16) |
|
|
303 | (3) |
|
19.2 What Is Software Engineering? |
|
|
306 | (5) |
|
19.3 Early Software Engineering Mathematics |
|
|
311 | (3) |
|
19.4 Mathematics in Software Engineering |
|
|
314 | (1) |
|
19.5 Software Inspections and Testing |
|
|
315 | (1) |
|
19.6 Process Maturity Models |
|
|
316 | (1) |
|
|
317 | (1) |
|
|
317 | (1) |
|
|
318 | (1) |
|
20 Software Reliability and Dependability |
|
|
319 | (14) |
|
|
319 | (1) |
|
20.2 Software Reliability |
|
|
320 | (7) |
|
20.2.1 Software Reliability and Defects |
|
|
321 | (2) |
|
20.2.2 Cleanroom Methodology |
|
|
323 | (1) |
|
20.2.3 Software Reliability Models |
|
|
324 | (3) |
|
|
327 | (2) |
|
|
329 | (1) |
|
|
330 | (1) |
|
20.6 Safety-Critical Systems |
|
|
330 | (1) |
|
|
331 | (1) |
|
|
331 | (1) |
|
|
332 | (1) |
|
21 Overview of Formal Methods |
|
|
333 | (22) |
|
|
333 | (2) |
|
21.2 Why Should We Use Formal Methods? |
|
|
335 | (2) |
|
21.3 Industrial Applications of Formal Methods |
|
|
337 | (1) |
|
21.4 Industrial Tools for Formal Methods |
|
|
338 | (1) |
|
21.5 Approaches to Formal Methods |
|
|
339 | (2) |
|
21.5.1 Model-Oriented Approach |
|
|
339 | (2) |
|
21.5.2 Axiomatic Approach |
|
|
341 | (1) |
|
21.6 Proof and Formal Methods |
|
|
341 | (1) |
|
21.7 Mathematics in Software Engineering |
|
|
342 | (1) |
|
21.8 The Vienna Development Method |
|
|
343 | (1) |
|
21.9 VDM the Irish School of VDM |
|
|
344 | (1) |
|
21.10 The Z Specification Language |
|
|
345 | (1) |
|
|
346 | (1) |
|
21.12 Predicate Transformers and Weakest Preconditions |
|
|
347 | (1) |
|
21.13 The Process Calculi |
|
|
348 | (1) |
|
21.14 Finite-State Machines |
|
|
349 | (1) |
|
|
350 | (1) |
|
|
350 | (1) |
|
21.17 Usability of Formal Methods |
|
|
351 | (1) |
|
|
352 | (1) |
|
|
353 | (1) |
|
|
354 | (1) |
|
22 Z Formal Specification Language |
|
|
355 | (18) |
|
|
355 | (3) |
|
|
358 | (1) |
|
|
359 | (2) |
|
|
361 | (1) |
|
|
362 | (1) |
|
|
363 | (1) |
|
22.7 Schemas and Schema Composition |
|
|
364 | (3) |
|
22.8 Reification and Decomposition |
|
|
367 | (1) |
|
|
368 | (1) |
|
22.10 Industrial Applications of Z |
|
|
369 | (1) |
|
|
370 | (1) |
|
|
370 | (1) |
|
|
371 | (2) |
|
|
373 | (10) |
|
|
373 | (1) |
|
23.2 Finite-State Machines |
|
|
374 | (3) |
|
|
377 | (2) |
|
|
379 | (2) |
|
|
381 | (1) |
|
|
382 | (1) |
|
|
382 | (1) |
|
|
383 | (10) |
|
|
383 | (4) |
|
24.2 Modelling Concurrent Systems |
|
|
387 | (1) |
|
24.3 Linear Temporal Logic |
|
|
388 | (1) |
|
24.4 Computational Tree Logic |
|
|
389 | (1) |
|
24.5 Tools for Model Checking |
|
|
390 | (1) |
|
24.6 Industrial Applications of Model Checking |
|
|
390 | (1) |
|
|
391 | (1) |
|
|
391 | (1) |
|
|
392 | (1) |
|
25 Probability and Statistics |
|
|
393 | (18) |
|
|
393 | (1) |
|
|
394 | (6) |
|
25.2.1 Laws of Probability |
|
|
395 | (1) |
|
|
396 | (4) |
|
|
400 | (9) |
|
25.3.1 Abuse of Statistics |
|
|
400 | (1) |
|
25.3.2 Statistical Sampling |
|
|
401 | (1) |
|
25.3.3 Averages in a Sample |
|
|
402 | (1) |
|
25.3.4 Variance and Standard Deviation |
|
|
403 | (1) |
|
25.3.5 Bell-Shaped (Normal) Distribution |
|
|
403 | (3) |
|
25.3.6 Frequency Tables, Histograms and Pie Charts |
|
|
406 | (1) |
|
25.3.7 Hypothesis Testing |
|
|
407 | (2) |
|
|
409 | (1) |
|
|
409 | (1) |
|
|
410 | (1) |
|
26 Complex Numbers and Quaternions |
|
|
411 | (14) |
|
|
411 | (1) |
|
|
412 | (5) |
|
|
417 | (6) |
|
26.3.1 Quaternion Algebra |
|
|
418 | (4) |
|
26.3.2 Quaternions and Rotations |
|
|
422 | (1) |
|
|
423 | (1) |
|
|
424 | (1) |
|
|
425 | (20) |
|
|
425 | (4) |
|
|
429 | (3) |
|
27.2.1 Rules of Differentiation |
|
|
431 | (1) |
|
|
432 | (5) |
|
27.3.1 Definite Integrals |
|
|
434 | (3) |
|
27.3.2 Fundamental Theorems of Integral Calculus |
|
|
437 | (1) |
|
|
437 | (2) |
|
|
439 | (2) |
|
27.6 The Laplace Transform |
|
|
441 | (1) |
|
27.7 Differential Equations |
|
|
442 | (1) |
|
|
443 | (1) |
|
|
444 | (1) |
|
|
444 | (1) |
|
|
445 | (4) |
Glossary |
|
449 | (4) |
Bibliography |
|
453 | (2) |
Index |
|
455 | |