This page presents the “modules”, or the topics that are covered in this course.

Click on the tile associated with a module to go to a page containing that module’s contents.

Assertions and propositions, connectives, tautologies, contradictions, implications, equivalences, proofs.

Predicates, quantifiers, free and bound variables, implications, equivalences, inference rules, proof techniques.

Sets, set notation, relationships between sets, set operations, set properties, proving set properties, Russell’s Paradox.

Operations on functions, classification of total functions, cardinality, set membership, logarithms, exponentiation.

Applications of linear algebra, systems of linear equations, gaussian elimination with back substitution, Gauss-Jordan elimination, Cramer’s Rule.

Sequences, recurrence systems, series, generating functions.

Positional number systems (binary, octal, hexadecimal), natural numbers, signed integers, floating point, characters.

Algorithms, computational complexity, asymptotic notations, pseudocode, greedy algorithms, easy vs. hard problems.

Number theory, least common multiple (LCM), greatest common divisor (GCD), primes, factorization, congruences, modular arithmetic.

Inductive definitions, recurrence systems, proof by induction, recursive algorithms, recursion vs. iteration.

Combinatorics, permutations, combinations, selections, pigeonhole principle, inclusion-exclusion.

Probability theory, computing discrete probabilities, random variables, discrete distribution functions, Bayes’ Theorem, expected values, Central Limit Theorem.