First five minutes
Get started
Install Axiom, maintain a matching through live updates, and verify the result without leaving this site.
Alpha installation
Axiom is currently installed directly from the repository. Package distribution and reproducible release artifacts remain open qualification work; follow the alpha-state page for progress.
pip install git+https://github.com/sachncs/axiom.gitCreate a matcher
The examples below use the in-memory Matcher API. For durable local operation, use Durable or the thread-safe Service; both use the same two supported matching modes, basic and multilevel. Basic is the default.
from axiom import Matcher
matcher = Matcher(n=6, mode="basic")
matcher.insert(0, 1)
matcher.insert(2, 3)
matcher.delete(1, 0)
print(matcher.matching())
print(matcher.partner(2))
print(matcher.stats()["matching_size"])
print(matcher.maximal())Expected result
{(2, 3)}
3
1
TrueWhat to expect
- Vertices are numbered from
0throughn - 1. - Updates are explicit: insert an edge before deleting it.
- Maximality is maintained after each accepted update.
- Both modes are deterministic for the same input sequence.
Implementation and qualification are distinct. Durable and Service support both Basic and Multilevel, including bounded atomic update batches and version-coherent read snapshots. Current paper-mode performance and deployment reliability are not yet qualified against the project targets. The former native matcher and native checkpoint path have been removed; historical native measurements do not qualify these modes.
Use the state safely
matching(), partners(), and stats() return inspection data. They do not become a second mutation API. Keep one owner for each matcher and serialize updates when a stream is shared across workers.
Choose your next step
- Follow a complete update recipe for a stream of graph changes.
- Compare basic and multilevel before selecting a mode.
- Read the API reference for validation and inspection methods.