DRIVIA · CS LAB v1
study
00:00
total 0h
Day streak0🔥
Mastered0 / 35
Drivia CS Lab · v1 · undergrad → PhD

Computer science, start to research.

35 topics across 20 chapters. History first, then formal definitions, then code in multiple languages, then citations to the papers that created the field. Watch · Hear · Speak · Master.

Chapter 01 Foundations & History 1830s · Babbage → 1936 · Turing → 1948 · Shannon Where the field came from. The dreams of Babbage and Lovelace, the rigor of Hilbert, the cut of Turing, the channel of Shannon. Read this once and the rest of the curriculum maps to a place.

▶ Watch first — chapter intro
Topic 01 · 1 of 35 undergrad

Turing machine

Formal statement
M=(Q,Σ,Γ,δ,q0,qaccept,qreject)M = (Q, \Sigma, \Gamma, \delta, q_0, q_{accept}, q_{reject})
click ANIMATE — Kokori narrates each step as it appears
ready
Plain English

An imagined device with an infinite tape and a tiny rulebook. At each step it reads the symbol under its head, looks up the rule for that symbol in its current state, writes a new symbol, moves left or right, and changes state. Anything any computer can compute, a Turing machine can compute.

History

Alan Turing proposed this model in 1936 in 'On Computable Numbers, with an Application to the Entscheidungsproblem' to formalize what 'computable' means and to prove the Halting Problem undecidable. The Entscheidungsproblem was Hilbert's challenge: is there a mechanical procedure that decides every mathematical statement? Turing's answer: no.

Analogy

A diligent clerk with an infinite scroll, a one-symbol stamp, and a flip-card of rules. The clerk has no memory of what came before this step — every decision is made from the current state and the symbol they're staring at.

Example

A two-state Turing machine can recognize the language { 0^n 1^n | n ≥ 1 }: zero out each 0 and the matching 1 alternately, walking the tape back and forth.

In code
# A 5-state Turing machine that accepts 0^n 1^n
def step(tape, head, state, delta):
    sym = tape[head]
    new_state, new_sym, move = delta[(state, sym)]
    tape[head] = new_sym
    head += 1 if move == "R" else -1
    return tape, head, new_state
data Move = L | R
type Delta = (State, Sym) -> (State, Sym, Move)
step :: Delta -> Tape -> Int -> State -> (Tape, Int, State)
step delta tape head state =
  let (s', sym', mv) = delta (state, tape !! head)
      tape' = update head sym' tape
      head' = if mv == R then head + 1 else head - 1
  in (tape', head', s')
Reading
Sipser, Introduction to the Theory of Computation, Ch. 3Hopcroft & Ullman, Ch. 8
SAY IT BACK · ELOCUTION
Turing machine
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 02 · 2 of 35 undergrad

Church–Turing thesis

▶ Watch first — set the context before you drill in
Formal statement
f effectively computable    f Turing-computablef \text{ effectively computable} \iff f \text{ Turing-computable}
ready
Plain English

Every function that is effectively computable by any method — lambda calculus, recursive functions, Turing machines, your laptop, a quantum computer — is computable by a Turing machine. It is a thesis, not a theorem: it claims that our intuitive notion of 'effectively computable' coincides with a specific formal definition.

History

Alonzo Church developed the lambda calculus in 1932-1936 to formalize functions. Turing developed his machines independently in 1936. Stephen Kleene proved the two models compute the same class of functions. Church and Turing each proposed their model captured 'effective calculability'; together they form the thesis.

Analogy

Different ways to describe a recipe — pictogram, English prose, a chef's flow chart — all reduce to the same dishes. Different models of computation all reduce to the same set of computable functions.

Example

JavaScript, x86 assembly, Lisp, Conway's Game of Life, the lambda calculus, and a Turing machine are all Turing-complete — each can simulate the others. Their computable sets are identical.

Papers
Church, A.1936 — An Unsolvable Problem of Elementary Number TheoryKleene, S.C.1936 — General Recursive Functions of Natural Numbers
SAY IT BACK · ELOCUTION
Church–Turing thesis
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 03 · 3 of 35 grad

Lambda calculus

Formal statement
e::=xλx.eeee ::= x \mid \lambda x.\, e \mid e\, e
click ANIMATE — Kokori narrates each step as it appears
ready
Plain English

A tiny programming language with just three pieces: a variable, a function (lambda x. body), and an application (function argument). With those three you can express every computable function. Numbers, booleans, lists, recursion — all encoded as functions.

History

Alonzo Church, 1932-1936. He wanted a foundation for math that didn't depend on set theory. Russell's paradox had broken Frege's set theory; Church's calculus avoided self-reference by carefully distinguishing functions from their arguments. Type theory grew out of this, eventually giving us ML, Haskell, and modern type systems.

Analogy

A vending machine. Insert an argument, the machine substitutes it into a slot, hands you the result. Stack vending machines and you can compute anything.

Example

Church-encoded booleans: TRUE = λx.λy.x, FALSE = λx.λy.y. AND = λp.λq.p q p. NOT = λp.λx.λy.p y x. Numbers: 0 = λf.λx.x, 1 = λf.λx.f x, 2 = λf.λx.f (f x). Successor: SUCC = λn.λf.λx.f (n f x).

In code
-- Identity, application, composition
id' = \x -> x
apply f x = f x
compose f g = \x -> f (g x)
-- Church numerals
zero  = \f x -> x
one   = \f x -> f x
succ' = \n f x -> f (n f x)
# Lambda calculus is a one-liner in Python
TRUE  = lambda x: lambda y: x
FALSE = lambda x: lambda y: y
AND   = lambda p: lambda q: p(q)(p)
# Church numerals
ZERO  = lambda f: lambda x: x
SUCC  = lambda n: lambda f: lambda x: f(n(f)(x))
def to_int(n): return n(lambda x: x + 1)(0)
Papers
Church, A.1936 — An Unsolvable Problem of Elementary Number TheoryBarendregt, H.1984 — The Lambda Calculus: Its Syntax and Semantics
Reading
Pierce, TAPL Ch. 5–6Selinger, Lecture Notes on the Lambda Calculus
SAY IT BACK · ELOCUTION
Lambda calculus
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 04 · 4 of 35 undergrad

Information & entropy

Formal statement
H(X)=xXp(x)log2p(x)H(X) = -\sum_{x \in \mathcal{X}} p(x) \log_2 p(x)
click ANIMATE — Kokori narrates each step as it appears
ready
Plain English

Information measures surprise. A coin flip carries 1 bit because two outcomes are equally likely. A six-sided die carries log₂(6) ≈ 2.58 bits. Shannon entropy is the average surprise of a probability distribution — the lower bound on how few bits per symbol you need to encode it.

History

Claude Shannon, 1948, 'A Mathematical Theory of Communication' in Bell System Technical Journal. He single-handedly created the field of information theory. The paper introduced bits, entropy, channel capacity, and the noisy-channel coding theorem. Every modern modem, codec, and compression algorithm traces to it.

Analogy

How many yes/no questions you need to ask to pin down a random outcome on average. Two equiprobable options: 1 question. Eight equiprobable options: 3 questions. Skewed distribution: fewer, because guessing the common one first wins.

Example

English text averages about 1.0–1.5 bits per character even though there are 27 possible symbols (log₂(27) ≈ 4.75). Compression algorithms exploit that gap.

Reading
Cover & Thomas, Elements of Information Theory, Ch. 2MacKay, ITILA, Ch. 2
SAY IT BACK · ELOCUTION
Information & entropy
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 02 Mathematical Foundations 1850s · Boole → 1879 · Frege → 1931 · Gödel The math your code stands on. Sets, logic, proof, induction, combinatorics, graphs, probability. Skip nothing — these are the load-bearing axioms.

▶ Watch first — chapter intro
Topic 05 · 5 of 35 undergrad

Sets, relations, functions

Formal statement
f:AB    aA, !bB:(a,b)ff : A \to B \iff \forall a \in A,\ \exists!\, b \in B : (a, b) \in f
ready
Plain English

A set is an unordered collection of distinct elements. A relation between two sets is a subset of their Cartesian product. A function is a relation where every input maps to exactly one output. From these three you build every data structure in computing.

History

Georg Cantor founded modern set theory in the 1870s. Russell's paradox (1901) broke naive set theory — 'the set of all sets that don't contain themselves.' Zermelo and Fraenkel patched it with axiomatic set theory (ZFC, 1908-1922), the foundation most working mathematicians use today.

Analogy

A set is a sack with no order and no duplicates. A function is a no-cheating lookup table: every key has exactly one value.

Example

Database keys form a set. A foreign-key constraint is a function from one table's rows to another's primary keys. SQL's GROUP BY partitions rows into an equivalence relation.

Papers
Cantor, G.1874 — Über eine Eigenschaft des Inbegriffes aller reellen algebraischen Zahlen
Reading
Halmos, Naive Set TheoryEnderton, Elements of Set Theory
SAY IT BACK · ELOCUTION
Sets, relations, functions
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 06 · 6 of 35 undergrad

Mathematical induction

▶ Watch first — set the context before you drill in
Formal statement
(P(0)n.P(n)P(n+1))nN.P(n)(P(0) \land \forall n.\, P(n) \Rightarrow P(n+1)) \Rightarrow \forall n \in \mathbb{N}.\, P(n)
ready
Plain English

Prove a property P holds for every natural number by showing two things: P(0) is true, and if P(n) is true then P(n+1) is true. The dominos all fall. Strong induction lets you assume P(k) for every k ≤ n.

History

Pascal, Fermat, and others used induction informally in the 17th century. Peano's axioms (1889) made it rigorous. It's the workhorse proof technique for algorithms — almost every correctness proof of a recursive algorithm is induction on input size.

Analogy

A domino chain. Knock over the first, and prove each domino knocks the next, and the whole chain falls.

Example

Prove 1 + 2 + ... + n = n(n+1)/2. Base: n=1 gives 1 = 1·2/2 ✓. Step: assume true for n, then 1 + ... + (n+1) = n(n+1)/2 + (n+1) = (n+1)(n+2)/2. ✓

Reading
Lehman, Leighton & Meyer, Mathematics for Computer Science, Ch. 5
SAY IT BACK · ELOCUTION
Mathematical induction
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 03 Computability & Theory of Computation 1936 · Turing → 1956 · Chomsky → 1971 · Cook What can be computed, what cannot, and what costs how much. Finite automata, pushdown automata, Turing machines, the Chomsky hierarchy, decidability, the halting problem.

▶ Watch first — chapter intro
Topic 07 · 7 of 35 undergrad

Deterministic finite automaton (DFA)

Formal statement
M=(Q,Σ,δ,q0,F),δ:Q×ΣQM = (Q, \Sigma, \delta, q_0, F),\quad \delta : Q \times \Sigma \to Q
ready
Plain English

A machine with a finite set of states and a transition table. Read one input symbol, jump to the state the table says, repeat. Accept if you end in an accepting state. DFAs recognize exactly the regular languages — same expressive power as regular expressions.

History

Kleene's theorem (1956) proved DFAs, NFAs, and regular expressions all recognize the same languages. The Chomsky hierarchy (1956) placed regular languages at the bottom of a four-tier ladder of formal-language complexity.

Analogy

A vending machine. Press a coin button — state changes. Press another — state changes again. Reach the 'dispense' state and you get a soda; reach 'invalid combo' and you get nothing.

Example

Match the language of strings over {0,1} that contain '101'. Three states: 'haven't started', 'saw 1', 'saw 10', 'saw 101' (accept). On each input symbol the state machine advances.

Papers
Kleene, S.C.1956 — Representation of Events in Nerve Nets and Finite Automata
Reading
Sipser, Theory of Computation, Ch. 1
SAY IT BACK · ELOCUTION
Deterministic finite automaton (DFA)
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 08 · 8 of 35 grad

The Halting problem

Formal statement
H:Σ×Σ{0,1} s.t. H(P,I)=1    P(I) halts\nexists\, H : \Sigma^* \times \Sigma^* \to \{0, 1\} \text{ s.t. } H(P, I) = 1 \iff P(I) \text{ halts}
click ANIMATE — Kokori narrates each step as it appears
ready
Plain English

There is no algorithm that takes a program P and an input I and decides whether P halts on I. Not 'we haven't found one' — proven impossible. Turing's proof: assume HALT exists, build a program that asks HALT about itself and does the opposite — contradiction.

History

Turing, 1936, in the same paper that defined the Turing machine. The proof is the prototype for every undecidability result that followed: Rice's theorem, the Post correspondence problem, the word problem for groups.

Analogy

A perfect lie detector that turns itself on. If a perfect lie detector exists, ask it 'will you say no?' — and both answers are contradictions. The Halting problem is the lie detector for 'does this program halt?'

Example

while True: pass — clearly doesn't halt. print('hi') — clearly halts. But: while not is_perfect(n): n += 1 where is_perfect tests if n equals the sum of its proper divisors — does this halt? Open problem.

Papers
Turing, A.1936 — On Computable Numbers
Reading
Sipser Ch. 4Hopcroft & Ullman Ch. 9
SAY IT BACK · ELOCUTION
The Halting problem
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 09 · 9 of 35 grad

NP-completeness

Formal statement
LNP-complete    LNPLNP, LpLL \in \text{NP-complete} \iff L \in \text{NP} \land \forall L' \in \text{NP},\ L' \le_p L
ready
Plain English

P is the class of decision problems solvable in polynomial time. NP is the class where a 'yes' answer can be verified in polynomial time given a witness. An NP-complete problem is in NP AND every other NP problem reduces to it in polynomial time. If any one NP-complete problem has a polynomial-time algorithm, P = NP.

History

Cook (1971) proved SAT is NP-complete — the foundational result. Karp (1972) showed 21 classical problems reduce to SAT, exploding the NP-complete class. The P vs NP question is one of the Clay Millennium Prize Problems; whoever resolves it wins $1M.

Analogy

P = problems where you can quickly find an answer. NP = problems where you can quickly check an answer if someone hands you one. P = NP would mean checking is as easy as finding, which most computer scientists doubt.

Example

3-SAT, the traveling salesman decision version, vertex cover, subset sum, graph coloring, Sudoku, and Tetris are all NP-complete. Cracking any one of them in polynomial time cracks them all.

Papers
Cook, S.1971 — The Complexity of Theorem-Proving ProceduresKarp, R.1972 — Reducibility Among Combinatorial ProblemsLevin, L.1973 — Universal Sequential Search Problems
Reading
Sipser Ch. 7Garey & Johnson, Computers and Intractability
SAY IT BACK · ELOCUTION
NP-completeness
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 04 Algorithms & Complexity 1950s · Hoare → today Sorting, searching, divide-and-conquer, dynamic programming, greedy, graph algorithms. Big-O is the price tag on every algorithm.

▶ Watch first — chapter intro
Topic 10 · 10 of 35 undergrad

Big-O notation

▶ Watch first — set the context before you drill in
Formal statement
f(n)=O(g(n))    c,n0:nn0, f(n)cg(n)f(n) = O(g(n)) \iff \exists c, n_0 : \forall n \ge n_0,\ f(n) \le c \cdot g(n)
ready
Plain English

An asymptotic upper bound on a function's growth. f(n) = O(g(n)) if there are constants c, n₀ such that f(n) ≤ c·g(n) for all n ≥ n₀.

SAY IT BACK · ELOCUTION
Big-O notation
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 11 · 11 of 35 undergrad

Merge sort

▶ Watch first — set the context before you drill in
Formal statement
T(n)=2T(n/2)+Θ(n)T(n)=Θ(nlogn)T(n) = 2T(n/2) + \Theta(n) \Rightarrow T(n) = \Theta(n \log n)
ready
Plain English

Recursively split the array in half, sort each half, merge them. O(n log n) worst case, O(n) extra space, stable.

SAY IT BACK · ELOCUTION
Merge sort
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 12 · 12 of 35 grad

Dynamic programming

▶ Watch first — set the context before you drill in
ready
Plain English

Solve a problem by combining solutions to overlapping subproblems. Memoize: cache subproblem results so each is computed once.

SAY IT BACK · ELOCUTION
Dynamic programming
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 05 Data Structures 1960s · Knuth → today Arrays, lists, trees, BSTs, heaps, hash tables, tries, B-trees, graphs, skip lists, persistent data structures.

▶ Watch first — chapter intro
Topic 13 · 13 of 35 undergrad

Hash table

▶ Watch first — set the context before you drill in
ready
Plain English

An array indexed by hash(key). Average O(1) lookup, insert, delete. Worst case O(n) when many keys collide.

SAY IT BACK · ELOCUTION
Hash table
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 14 · 14 of 35 grad

B-tree

▶ Watch first — set the context before you drill in
ready
Plain English

A self-balancing tree where each node holds many keys and many children. Designed for disk/SSD where reading a block is the dominant cost. Postgres, MySQL, and SQLite all use B-tree variants for indexes.

SAY IT BACK · ELOCUTION
B-tree
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 06 Computer Architecture 1945 · von Neumann → today Logic gates, ALUs, CPU pipelines, cache hierarchies, memory, I/O, RISC vs CISC, branch prediction, speculative execution.

▶ Watch first — chapter intro
Topic 15 · 15 of 35 undergrad

Von Neumann architecture

▶ Watch first — set the context before you drill in
ready
Plain English

Code and data live in the same memory; a single bus moves both to the CPU. Almost every computer you've ever touched is von Neumann.

SAY IT BACK · ELOCUTION
Von Neumann architecture
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 16 · 16 of 35 grad

Cache hierarchy

▶ Watch first — set the context before you drill in
ready
Plain English

L1 (per-core, ~1ns), L2 (per-core, ~5ns), L3 (shared, ~15ns), DRAM (~100ns), SSD (~100μs), disk (~10ms). Each level is 10–100x slower and 10–100x bigger than the one above.

SAY IT BACK · ELOCUTION
Cache hierarchy
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 07 Operating Systems 1965 · Multics → today Processes, threads, scheduling, virtual memory, file systems, concurrency, synchronization, syscalls.

▶ Watch first — chapter intro
Topic 17 · 17 of 35 undergrad

Process vs thread

▶ Watch first — set the context before you drill in
ready
Plain English

A process is an isolated address space — its own memory map, file descriptors, signals. A thread is an execution context inside a process; threads in the same process share memory.

SAY IT BACK · ELOCUTION
Process vs thread
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 18 · 18 of 35 grad

Virtual memory

▶ Watch first — set the context before you drill in
ready
Plain English

Each process sees its own contiguous address space; the MMU maps virtual pages to physical frames via page tables. Pages can be swapped to disk on demand.

SAY IT BACK · ELOCUTION
Virtual memory
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 08 Networks 1969 · ARPANET → today OSI/TCP-IP layers, routing, congestion control, DNS, HTTP, TLS, BGP, the actual Internet.

▶ Watch first — chapter intro
Topic 19 · 19 of 35 undergrad

TCP/IP

▶ Watch first — set the context before you drill in
ready
Plain English

Four layers: link (Ethernet/WiFi), network (IP — routing across networks), transport (TCP for reliable, UDP for fast), application (HTTP, DNS, SSH). Each layer wraps the one above.

SAY IT BACK · ELOCUTION
TCP/IP
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 20 · 20 of 35 grad

TLS 1.3

▶ Watch first — set the context before you drill in
ready
Plain English

Transport-layer security. Modern TLS does a Diffie-Hellman key exchange to derive a shared secret, authenticates the server via certificate signature, then encrypts the rest of the conversation with AES-GCM or ChaCha20-Poly1305.

SAY IT BACK · ELOCUTION
TLS 1.3
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 09 Databases 1970 · Codd → today Relational model, SQL, normalization, indexes, transactions, ACID, NoSQL, distributed databases.

▶ Watch first — chapter intro
Topic 21 · 21 of 35 undergrad

ACID transactions

▶ Watch first — set the context before you drill in
ready
Plain English

Atomicity (all-or-nothing), Consistency (DB invariants hold before and after), Isolation (concurrent txns don't see each other's partial work), Durability (committed data survives crashes).

SAY IT BACK · ELOCUTION
ACID transactions
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 22 · 22 of 35 undergrad

Indexes

▶ Watch first — set the context before you drill in
ready
Plain English

A separate data structure (usually a B-tree) that maps column values to row pointers, so range queries don't have to scan the whole table.

SAY IT BACK · ELOCUTION
Indexes
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 10 Programming Languages 1958 · Lisp → today Type systems, parsers, semantics, paradigms: imperative, functional, logic, OO. Where languages come from and how they differ.

▶ Watch first — chapter intro
Topic 23 · 23 of 35 grad

Type system

▶ Watch first — set the context before you drill in
ready
Plain English

A set of rules that assigns each expression a type, used to prove (statically or at runtime) that the program won't go wrong. Hindley-Milner inferred types automatically; dependent types let types depend on values.

SAY IT BACK · ELOCUTION
Type system
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 11 Compilers 1957 · FORTRAN → today Lexing, parsing, AST, type checking, IR, optimization, codegen, register allocation.

▶ Watch first — chapter intro
Topic 24 · 24 of 35 undergrad

Parsers

▶ Watch first — set the context before you drill in
ready
Plain English

A parser takes a stream of tokens and builds a syntax tree according to a grammar. LL(k) parsers look k tokens ahead; LR parsers use a stack and a state table; PEG parsers express grammar as recursive descent with ordered choice.

SAY IT BACK · ELOCUTION
Parsers
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 12 Software Engineering 1968 · NATO conference → today Testing, code review, version control, CI/CD, observability, design patterns. The craft of shipping code that doesn't fall over.

▶ Watch first — chapter intro
Topic 25 · 25 of 35 undergrad

Git internals

▶ Watch first — set the context before you drill in
ready
Plain English

Git is a content-addressed object store. Every blob, tree, commit, and tag is identified by the SHA-1 (or SHA-256) of its content. Branches are just pointers to commits.

SAY IT BACK · ELOCUTION
Git internals
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 13 Artificial Intelligence & ML 1956 · Dartmouth → today Search, planning, neural networks, RL, NLP, computer vision, transformers, RLHF. The discipline that's eating computer science.

▶ Watch first — chapter intro
Topic 26 · 26 of 35 grad

Backpropagation

▶ Watch first — set the context before you drill in
Formal statement
Lwi=jLzjzjwi\frac{\partial L}{\partial w_i} = \sum_j \frac{\partial L}{\partial z_j} \cdot \frac{\partial z_j}{\partial w_i}
ready
Plain English

The chain rule applied to a computational graph. Compute the gradient of the loss with respect to each parameter by walking the graph backwards from the output to the inputs.

SAY IT BACK · ELOCUTION
Backpropagation
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 27 · 27 of 35 research

Attention

▶ Watch first — set the context before you drill in
Formal statement
Attn(Q,K,V)=softmax ⁣(QKdk)V\text{Attn}(Q, K, V) = \text{softmax}\!\left(\frac{QK^\top}{\sqrt{d_k}}\right) V
ready
Plain English

An attention head computes a weighted average over a set of values, where the weights come from a similarity (softmax of QK^T) between the query and each key. Stacking many heads is what makes a Transformer.

SAY IT BACK · ELOCUTION
Attention
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 14 Cryptography 1976 · Diffie–Hellman → today Symmetric, asymmetric, hashing, PKI, zero-knowledge proofs, post-quantum.

▶ Watch first — chapter intro
Topic 28 · 28 of 35 grad

Diffie–Hellman key exchange

▶ Watch first — set the context before you drill in
Formal statement
K=gabmodpK = g^{ab} \mod p
ready
Plain English

Two parties pick private numbers a and b. Each sends g^a mod p and g^b mod p over the wire. Each can compute g^(ab) mod p, but nobody listening can — that's their shared secret.

SAY IT BACK · ELOCUTION
Diffie–Hellman key exchange
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 15 Distributed Systems 1978 · Lamport → today CAP, consensus, Paxos, Raft, gossip, replicated state machines, distributed transactions.

▶ Watch first — chapter intro
Topic 29 · 29 of 35 grad

CAP theorem

▶ Watch first — set the context before you drill in
Formal statement
P¬(CA)P \Rightarrow \neg(C \land A)
ready
Plain English

In a partition, you must choose: consistency (every read sees the latest write) or availability (every request gets a response). You cannot have both during a network partition.

SAY IT BACK · ELOCUTION
CAP theorem
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.
Topic 30 · 30 of 35 research

Raft consensus

▶ Watch first — set the context before you drill in
ready
Plain English

An understandable consensus algorithm. A cluster elects one leader; the leader appends every command to its log and replicates to followers. A majority quorum commits each entry.

SAY IT BACK · ELOCUTION
Raft consensus
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 16 Quantum Computing 1981 · Feynman → today Qubits, gates, superposition, entanglement, Shor's algorithm, Grover's algorithm, error correction.

▶ Watch first — chapter intro
Topic 31 · 31 of 35 grad

Qubit & superposition

▶ Watch first — set the context before you drill in
Formal statement
ψ=α0+β1,α2+β2=1|\psi\rangle = \alpha|0\rangle + \beta|1\rangle,\quad |\alpha|^2 + |\beta|^2 = 1
ready
Plain English

A qubit is a unit vector in ℂ². Measured in the {|0⟩, |1⟩} basis it collapses to 0 with probability |α|² or 1 with probability |β|². Until measurement, it's both.

SAY IT BACK · ELOCUTION
Qubit & superposition
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 17 Formal Methods 1969 · Hoare → today Hoare logic, model checking, type theory, theorem provers (Coq, Lean, Isabelle).

▶ Watch first — chapter intro
Topic 32 · 32 of 35 grad

Hoare logic

▶ Watch first — set the context before you drill in
Formal statement
{P} C {Q}\{P\}\ C\ \{Q\}
ready
Plain English

Reason about programs with triples {P} C {Q}: if P holds before executing C, then Q holds after — provided C terminates. The basis of every program verifier from Frama-C to Dafny to F*.

SAY IT BACK · ELOCUTION
Hoare logic
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 18 Computational Geometry 1975 · Shamos → today Convex hulls, Voronoi diagrams, range trees, BSPs, computational topology.

▶ Watch first — chapter intro
Topic 33 · 33 of 35 undergrad

Convex hull

▶ Watch first — set the context before you drill in
ready
Plain English

The smallest convex polygon containing a set of points. Graham scan: sort by angle, walk around, pop on right turns. O(n log n).

SAY IT BACK · ELOCUTION
Convex hull
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 19 Approximation & Randomized Algorithms 1979 · Karp → today PTAS, FPTAS, Las Vegas, Monte Carlo, randomized rounding, MCMC.

▶ Watch first — chapter intro
Topic 34 · 34 of 35 grad

Monte Carlo algorithms

▶ Watch first — set the context before you drill in
ready
Plain English

A randomized algorithm with bounded runtime and bounded probability of error. Miller-Rabin primality is the textbook example: O(k) tests, error ≤ 4^-k.

SAY IT BACK · ELOCUTION
Monte Carlo algorithms
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

Chapter 20 Research Methodology Now Reading papers, writing proofs, finding open problems, navigating a PhD. The meta-skill that turns the previous 19 chapters into research output.

▶ Watch first — chapter intro
Topic 35 · 35 of 35 undergrad

Reading a CS paper

▶ Watch first — set the context before you drill in
ready
Plain English

Three passes: skim (read title, abstract, intro, section headers, conclusion), reread (figures, theorems, results), and rebuild (try to derive the proofs yourself, find a hole, propose a follow-up).

SAY IT BACK · ELOCUTION
Reading a CS paper
Tap Hear it first to listen, then Say it back. Speak naturally — we score how closely you match.

⌨ Keyboard Shortcuts

Jump to chapter N
19
Hear pronunciation of nearest chapter
H
Toggle record
R
Animate formula breakdown
A
Focus typing on nearest chapter
T
Typing: auto-indent / skip to end of line
Tab
Typing: newline + auto-indent next line
Enter
Reset current chapter typing
Esc Esc
Toggle this overlay
?