Tutorials#

Lessons that take you through a complete task, step by step.

Until the Python tutorials exist, A first update in Python and the Python sections of sssp: dynamic single-source shortest paths and cycle_count: exact k-bounded directed simple-cycle histograms show the same steps.

Planned, each written when its code exists:

Tutorial

Release

Dynamic SSSP in Python in 10 minutes

0.2.x

Cycle counting on a changing graph

0.2.x

Aggregate deltas (triangle_delta: signed recounts with an ownership rule; the code and its page exist since 0.2)

later

MOSP with preferences

0.2.x

Hypergraph triads, and counting a new hypergraph pattern

0.3

Streaming label propagation

0.4

Your first dynamic algorithm (0.2) builds my_bfs, a dynamic BFS, from a fresh clone to a green conformance kit with scripts/new_algorithm.py and the fixed-point template. Its reference solution is in examples/tutorial_algorithms/my_bfs/; the tutorial quotes it by marked ranges (a change that removes a marker breaks the documentation build), and ci/scaffold_check.sh scaffolds my_bfs, makes the tutorial’s edits in the scaffold’s files where the prose puts them (ci/tutorial_edits.py) and runs its kit, so a framework or scaffold change that breaks the tutorial, or a step whose prose does not build, breaks CI. The two teaching algorithms of the library, dynamic_bfs: BFS levels under edge batches (tutorial) and triangle_delta: the triangle count under edge batches (tutorial) (maturity tutorial), are the finished versions on every backend (ADR 0033).