1.1 Programming and Mathematics
3.1 Geometric Properties of Integers
3.3 Implementing and Optimizing the Code
3.6 A Fatal Flaw in the Program
4.2 Euclid’s Greatest Common Measure Algorithm
4.3 A Millennium without Mathematics
4.4 The Strange History of Zero
4.5 Remainder and Quotient Algorithms
5 The Emergence of Modern Number Theory
5.1 Mersenne Primes and Fermat Primes
5.4 Proving Fermat’s Little Theorem
5.6 Applying Modular Arithmetic
6.3 Some Theorems about Groups
6.4 Subgroups and Cyclic Groups
6.7 Examples of Categorical and Non-categorical Theories
7 Deriving a Generic Algorithm
7.1 Untangling Algorithm Requirements
7.5 Turning Multiply into Power
7.6 Generalizing the Operation
7.7 Computing Fibonacci Numbers
8.1 Stevin, Polynomials, and GCD
8.2 Göttingen and German Mathematics
8.3 Noether and the Birth of Abstract Algebra
8.5 Matrix Multiplication and Semirings
8.6 Application: Social Networks and Shortest Paths
8.8 Fields and Other Algebraic Structures
9 Organizing Mathematical Knowledge
9.3 Euclid and the Axiomatic Method
9.4 Alternatives to Euclidean Geometry
9.5 Hilbert’s Formalist Approach
10 Fundamental Programming Concepts
10.1 Aristotle and Abstraction
10.5 Iterator Categories, Operations, and Traits
11.1 Permutations and Transpositions
11.7 Memory-Adaptive Algorithms
12.1 Hardware Constraints and a More Efficient Algorithm
12.2 Generalizing Stein’s Algorithm
13.4 The RSA Algorithm: How and Why It Works
C.3 Declaration Syntax and Typed Constants
C.5 Preconditions, Postconditions, and Assertions
C.6 STL Algorithms and Data Structures
C.8 Type Aliases and Type Functions with using in C++11
C.9 Initializer Lists in C++11
18.116.118.198