Algorithms: cooking up programs -- Finite automata: the black box -- Systems of logic: boolean bases -- Simulation: the Monte Carlo method -- Gödel's theorem: limits on logic -- Game trees: the minimax method -- The Chomsky hierarchy: four computers -- Random numbers: the Chaitin-Kolmogoroff theory -- Program correctness: ultimate debugging -- Search trees: traversal and maintenance -- Error-correcting codes: pictures from space -- Boolean logic: expressions and circuits -- Regular languages: pumping words -- Time and space complexity: the big-O notation -- The random access machine: an abstract computer -- Spline curves: smooth interpolation -- Computer vision: polyhedral scenes -- Karnaugh maps: circuit minimization -- Minimum spanning trees: a fast algorithm -- Generative grammars: Lindenmeyer systems.
Text of Note
Cellular automata: the game of life -- Cook's theorem: nuts and bolts -- Self-replicating computers: Codd's machine -- Storing images: a cat in a quad tree -- The scram: a simplified computer -- Shannon's theory: the elusive codes -- Detecting primes: an algorithm that almost always works -- Universal turing machines: computers as programs -- Text compression: Huffman coding -- NP-complete problems: the tree of intractability -- Iteration and recursion: the towers of Hanoi -- VSLI computers: circuits in silicon -- Linear programming: the simplex method -- Predicate calculus: the resolution method -- The halting problem: the uncomputable -- Searching strings: the Boyer-Moore algorithm -- Parallel computing: processors with connections -- The word problem: dictionaries as programs -- Logic programming: prologue to an expert system -- Church's thesis: all computers are created equal -- Relational data bases: do-it-yourself queries.
Text of Note
Recursion: the Sierpinski curve -- Fast multiplication: divide and conquer -- Nondetermination: automata that guess correctly -- Neural nets: attempt at a brain -- Encoders and multiplexers: manipulating memory -- Cat scanning: cross-sectional X-rays -- The partition problem: a pseudofast algorithm -- Turing machines: the simplest computers -- The fast fourier transform: redistributing images -- Analog computation: spaghetti computers -- Satisfiability: a central problem -- Sequential sorting: a lower bound on speed -- Perceptrons: a lack of vision -- Public key cryptography: intractable secrets -- Sequential circuits: a computer memory -- Noncomputable functions: the busy beaver problem -- Heaps and merges: the fastest sorts of sorts -- NP-completeness: the wall of intractability -- Number systems for computing: Chinese arithmetic -- Storage by hashing: the key is the address.