Mathematics book cover

Your technical library

Mathematics

21 modules · 129 topics

About this book
Concepts · Mathematics

Mathematics

This course teaches, from the ground up, the mathematics a working programmer needs for the library's mathematical courses: proof, functions and series, counting, calculus, linear algebra, probability, statistics, optimisation, sampling, information theory and the number theory behind cryptography. Nothing is assumed beyond school arithmetic and the ability to read code. It is the single home for general mathematics here: Machine Learning, Deep Learning and Reinforcement Learning teach none of their own, and link each tool they use to the topic that builds it. Each topic starts from a problem earlier topics could not solve, derives the idea step by step and works a numerical example.

Language and proof gives the vocabulary of sets, logic and proof. Functions, sequences and series and counting follow, then calculus — limits and derivatives and integrals and Taylor series — with numbers on a computer showing what floating point does to all of it. Linear algebra runs from vectors and matrices through linear systems and vector spaces, orthogonality and eigenvalues and matrix factorisations, and multivariable calculus joins calculus and linear algebra.

Probability, several random variables, limit theorems and concentration and Markov chains build up randomness. Optimality and convexity and optimisation algorithms find the best of many choices; statistical inference and sampling and Monte Carlo draw conclusions from data and from simulation; information theory measures information and surprise; and number theory and finite fields supplies the arithmetic behind cryptography and error-correcting codes. Where a full proof needs machinery beyond the course, the lesson gives the proof idea, the exact result and its assumptions.

129 topics across 21 modules, in dependency order.

Read the argument in each derivation card, work through the numerical examples, and answer the self-checks before revealing their solutions. Where a lesson gives an algorithm, it is in pseudocode or short Python you could implement from; a computation checks the instance it runs, never the general claim.

129 of 129 topics are authored. Unwritten lessons are labelled and excluded from progress. Glossary and decision-guide entries cover the authored material and grow with the course.

Course map

Read at your own pace. Each topic is one continuous page; mark it done as you finish.

Start with 01.1 · Sets and notation: naming collections preciselyReview what you have finished