Build the foundations of TDA: understand point clouds as data representations and simplicial complexes as the building blocks for topological analysis.
A scatter of dots can hide a loop, a few clusters, or a hollow shell. Topological Data Analysis recovers that hidden shape by joining nearby dots into edges and triangles.
Switch between shapes: the circle has one loop (H₁ = 1), the figure-8 has two (H₁ = 2), and the three clusters are three pieces (H₀ = 3). In custom mode, click to draw your own cloud.
Points sampled from a circle
Expected Topology
H₀ = 1, H₁ = 1
Topological Data Analysis begins with point clouds — collections of points sampled from some underlying space. The fundamental question is: can we recover the "shape" of the original space just from these discrete samples?
The answer involves building simplicial complexes — combinatorial structures that approximate the continuous space. Just as a mesh of triangles can approximate a curved surface, simplicial complexes provide a discrete representation of topological features like connectivity, loops, and voids.
Step through the dimensions from a point to a tetrahedron, then tick "Boundary" to see each shape's boundary as an alternating sum of its faces. The boundary of a boundary is always zero (∂² = 0).
A filled triangle with three vertices and three edges.
A k-simplex is the simplest possible k-dimensional shape:
The key property is that every simplex includes all of its faces. A triangle includes its three edges and three vertices. A tetrahedron includes its four triangular faces, six edges, and four vertices. This nesting property is what makes simplicial complexes well-behaved for computing homology.
A simplicial complex is a collection of simplices that fit together nicely: if a simplex is in the complex, all its faces must also be in the complex, and any two simplices can only intersect along a common face.
A triangle with all its edges and vertices included. Every face of every simplex is present.
A triangle missing one edge, or two triangles that share only a vertex from the interior of an edge.
The boundary operator ∂ maps each k-simplex to an alternating sum of its (k-1)-dimensional faces:
The crucial property is ∂² = 0: the boundary of a boundary is empty. This is because each (k-2)-face appears twice with opposite signs and cancels out. This nilpotency is what allows us to define homology groups.
Spot a mistake or have an idea?