Skip to content

Releases: consigcody94/quaternion-monoid-algebra

v0.3.0

Choose a tag to compare

@consigcody94 consigcody94 released this 02 Jul 05:19

v0.3.0 — Formal topology characterization, alternative sub-field constructions, EuRoC MAV validation

This release works three items from the research roadmap.

Formal topology characterization

paper/topology_notes.md proves what previously was only asserted informally, and precisely scopes what remains empirical:

  • Theorem (exact preservation): composing an entire configuration with a common packet preserves Vietoris–Rips persistence diagrams exactly, in every homology dimension — unit-quaternion translations are isometries of the projective metric d(p,q) = arccos|⟨p,q⟩|.
  • Development bound: iterated composition state[t+1] = state[t] ⊗ stim[t] is an isometric development: consecutive trajectory steps exactly equal the stimulus offsets from identity, with a subadditive window bound.
  • Scope honesty: a constant stream provably inflates H₁ without bound, so the [0.3, 5.0] H₁-ratio band under iterated composition is an empirical property of the tested stimulus classes, not a theorem — now stated precisely.

Every proved statement is machine-checked in tests/test_topology.py.

Alternative sub-field constructions

quaternion_monoid_algebra.tables: verified monoid families with documented trade-offs — make_mod_add_table (group, mixing), make_mod_mul_table (absorbing zero), make_max_table/make_min_table (saturating bands), make_and_table/make_or_table (monotone bit registers). identity_packet(field_a=..., field_d=...) supports tables whose identity is not 0.

EuRoC MAV real-data validation

A seventh stress test streams 36,000 poses of the EuRoC MAV Machine Hall 01 ground truth (Burri et al., IJRR 2016; OpenVINS mirror pinned by commit and SHA-256) through the algebra, alongside the existing TUM RGB-D test. Attribution and the archive's actual rights statement documented in ATTRIBUTION.md.

Suite is now 77 pytest + Hypothesis tests, 8 property tests, 7 stress tests — all green on Python 3.10/3.11/3.12.

Full details in CHANGELOG.md.

v0.2.0

Choose a tag to compare

@consigcody94 consigcody94 released this 02 Jul 04:42

v0.2.0 — Installable package, vectorized batch API, input validation, property-based tests

Added

  • Installable package: pip install git+https://github.com/consigcody94/quaternion-monoid-algebra now works. Proper quaternion_monoid_algebra package with pyproject.toml and optional extras (test, topology, gpu).
  • Vectorized batch API: PacketArray (struct-of-arrays), packet_product_batch, and reduce_packets — an O(log N)-depth tree reduction of packet chains, legal because ⊗ is associative. Roughly 90× scalar throughput on CPU (benchmarks/bench.py).
  • validate_monoid_table: vets custom Cayley tables (closure, identity laws, full associativity) with a counterexample on failure.
  • pytest + Hypothesis property suite (54 tests) alongside the original property runner and stress tests.
  • Throughput benchmarks and a ruff lint gate in CI.

Changed

  • packet_power is now O(log n) via exponentiation by squaring.
  • make_xor_table vectorized.
  • CI installs the package, runs the pytest suite, and no longer masks stress-test failures.

Fixed

  • Packet/PacketArray validate inputs: zero/non-finite quaternions and non-positive/non-finite scales are rejected at construction.
  • Quaternion normalization is overflow/underflow-safe (max-component pre-scaling): components above ~1e154 no longer silently store a zero quaternion; components below ~1e-162 are no longer falsely rejected.
  • Packet.__eq__ tolerances tightened and documented: quaternion absolute 1e-9, scale relative 1e-9 (numpy's default rtol=1e-5 previously dominated).

Full details in CHANGELOG.md.

v0.1.0 — Initial release

Choose a tag to compare

@consigcody94 consigcody94 released this 20 May 01:46

First public release of the quaternion-monoid algebra: a compositional algebra over fixed-width quaternionic-symbolic state packets.

What's included

  • Reference implementation (CPU + GPU) of the closed associative binary operation with two-sided identity
  • 14 automated tests: 8 algebraic-property tests + 6 stress tests, all passing
  • GPU bit-exact correspondence to the CPU reference (max diff 0.00e+00 on RTX 5070)
  • White paper covering the construction, properties, and three application classes
  • Three worked examples: agent state evolution, multi-source composition, algebraic chain verification
  • Real-data validation against the TUM RGB-D Pioneer 360 sequence (SHA-256 verified)

Properties verified

  • Closure, two-sided identity, associativity (monoid structure)
  • Topology preservation under iterated composition
  • Long-horizon stability, avalanche sensitivity, distinguishability

MIT licensed.