Main Content

Art, Graphics, and Procedural Generation

Designing Non-repeating Patterns with Prime Numbers
Low-Complexity Art
Random Psychedelic Art
Seam-carving for Content-Aware Image Scaling
The Cellular Automaton Method for Procedural Cave Generation
Bezier Curves and Picasso
Making Hybrid Images

Signal Processing

The Fast Fourier Transform Algorithm, and Denoising a Sound Clip
The Two-Dimensional Fourier Transform and Digital Watermarking
Making Hybrid Images
The Welch-Berlekamp Algorithm for Correcting Errors in Data

Machine Learning and Data Mining

K-Nearest-Neighbors and Handwritten Digit Classification
The Perceptron, and All the Things it Can’t Perceive
Decision Trees and Political Party Classification
Neural Networks and the Backpropagation Algorithm
K-Means Clustering and Birth Rates
Linear Regression
Eigenfaces, for Facial Recognition (via Principal Component Analysis)
Bandit Learning: the UCB1 Algorithm
Bandit Learning: the EXP3 Algorithm
Bandits and Stocks
Weak Learning, Boosting, and the AdaBoost Algorithm
Fairness in machine learning (introduction, statistical parity)
The Johnson-Lindenstrauss Transform
Singular Value Decomposition (motivation, algorithms)

Graphs and Network Science

Trees and Tree Traversal
Breadth-First and Depth-First Search
The Erdős-Rényi Random Graph
The Giant Component and Explosive Percolation
Zero-One Laws for Random Graphs
Community Detection in Graphs, a Casual Tour
Google’s PageRank Algorithm:
A First Attempt,
The Final Product,
Why It Doesn’t Work Anymore

Combinatorial Optimization

When Greedy is Good Enough: Submodularity and the 1 – 1/e Approximation
When Greedy Algorithms are Perfect: the Matroid
Linear Programming and the Most Affordable Healthy Diet Part 1
Linear Programming and the Simplex Algorithm
The Many Faces of Set Cover

Algorithmic Game Theory

Stable Marriages and Designing Markets
Serial Dictatorships and Housing Allocation

Quantum Computing

A Motivation for Quantum Computing
The Quantum Bit
Multiple Qubits and the Quantum Circuit
Concrete Examples of Quantum Gates


Elliptic Curves Introduction
Elliptic Curves as Elementary Equations
Elliptic Curves as Algebraic Structures
Elliptic Curves as Python Objects (over the rational numbers)
Programming with Finite Fields
Connecting Elliptic Curves with Finite Fields
Elliptic Curve Diffie-Hellman
Sending and Authenticating Messages with Elliptic Curves (Shamir-Massey-Omura and ElGamal)
The Mathematics of Secret Sharing
Zero Knowledge Proofs (primer, zero knowledge proofs for NP, definitions and theory)

Streaming and Sublinear Algorithms

Load Balancing and the Power of Hashing
Program Gallery entries

Natural Language

Metrics on Words
Word Segmentation, or Makingsenseofthis
Cryptanalysis with N-Grams

Computational Category Theory

A Sample of Standard ML (and a Preview of Monoids)
Categories, What’s the Point?
Introducing Categories
Categories as Types
Properties of Morphisms
Universal Properties
The Universal Properties of Map, Fold, and Filter

Computational Topology

Computing Homology
Fixing Bugs in Computing Homology
The Čech complex and the Vietoris-Rips complex


The Wild World of Cellular Automata
Turing Machines and Conway’s Dreams
Conway’s Game of Life in Conway’s Game of Life
Optimally Stacking the Deck: Kicsi Poker
Optimally Stacking the Deck: Texas Hold ‘Em
Want to make a great puzzle game? Get inspired by theoretical computer science.


Hunting Serial Killers
Learning to Love Complex Numbers
Holidays and Homicide
Numerical Integration
Busy Beavers, and the Quest for Big Numbers
Row Reduction over a Field
Complete Sequences and Magic Tricks
Well Orderings and Search


Teaching Mathematics – Graph Theory
Learning Programming – Finger-Painting and Killing Zombies
How to Take a Calculus Test
Why There’s no Hitchhiker’s Guide to Mathematics
Deconstructing the Common Core Mathematical Standard

Guest Posts

Math and Baking: Torus-Knotted Baklava
With High Probability: What’s up with Graph Laplacians?

5 thoughts on “Main Content

  1. Pingback: Cryptanalysis with N-Grams | Math ∩ Programming

  2. Pingback: Matemática e Álgebra Computacional - Márcio Francisco Dutra e Campos

  3. Pingback: The Universal Properties of Map, Fold, and Filter | Math ∩ Programming

  4. Pingback: Introducing Categories | Math ∩ Programming

  5. Pingback: Introducing Elliptic Curves | Math ∩ Programming

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s