CDM
A reversible one-dimensional cellular automaton and its inverse.
Description
This course is about the computational aspects of some of the standard concepts of discrete mathematics (relations, functions, logic, graphs, algebra, automata), with emphasis on efficient algorithms and their mathematical underpinnings. We begin with a brief introduction to computability and computational complexity. Other topics include: iteration, orbits and fixed points; order and equivalence relations; actions and enumeration; finite state machines and cellular automata; finite fields, shift register sequences and pseudo-random numbers; propositional logic and satisfiability testing.
To get a better impression, take a look at some of the homework problems that were used in previous versions of this course: CDM Assignments. A few pictures can be found here: CDM Gallery. A paper outlining the course philosophy can be found at Jeric.
