## 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

Introduction

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)

## 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:

Introduction,

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

## Cryptography

RSA

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

## 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

Functoriality

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

## Games

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.

## Miscellaneous

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

## Education

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

Pingback: Cryptanalysis with N-Grams | Math ∩ Programming

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

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

Pingback: Introducing Categories | Math ∩ Programming

Pingback: Introducing Elliptic Curves | Math ∩ Programming