v0.1.0 -- First citable release: integer-token engine + Paper I continuous port
v0.1.0 -- First citable release: integer-token engine + Paper I continuous port
dcl_core v0.1.0 is the first Zenodo-deposited release of the core
library underlying the A=1 Discrete Causal Lattice framework. The
package ships two engines side-by-side: dcl_core.core
(continuous-amplitude, ported verbatim from Paper I) and
dcl_core.core3d (integer-token, the new design). Their
coexistence is deliberate -- Paper III's discrete-vs-continuous
probability comparison uses both -- and is documented as a
project-level decision in MEMORY.md.
Semver impact: MINOR. Pre-1.0 (0.X.Y) signals "API still
unstable"; downstream papers pinning to ==0.1.0 get a stable
reproducibility anchor, but consumers tracking main should
expect minor bumps to break them.
Why this is v0.1.0 and not 0.1.0-dev
0.1.0-dev was the template state with NotImplementedError stubs
everywhere in core3d. v0.1.0 closes that out: every public method
of every core3d class is implemented and tested, A=1 conservation
holds as an exact integer identity across 1000-tick runs, and the
public API surface in __init__.py is what downstream papers
should plan against.
Highlights
Public-API surface
dcl_core.core-- continuous-amplitude engine (Paper I port).
OctahedralLattice,CausalSession,CompositeCausalSession,
TickScheduler,PhaseOscillator,UnityConstraint.dcl_core.core3d-- integer-token engine (new design).
BipartiteLattice,DiscreteCausalSession(withdelta_at,
wavepacket,from_arraysfactories),BresenhamResidual,
HopOperator,TickScheduler.dcl_core.core3d.clifford-- opt-in Dirac gamma matrices
(gamma_0..gamma_3,ETA_MINKOWSKI,GAMMAS). Sympy is
lazy-imported; the module is safe to load without the
[sympy]extra.
New capabilities
- A=1 by integer arithmetic.
sum(N(x)) == n_unitsexactly
at every tick, with no float renormalisation. The
BresenhamResidualfloor + global top-up rebalance is what
enforces this -- see the docstring algorithm for the details. - Min-Δp wavepacket factory.
DiscreteCausalSession.wavepacket( ..., sigma=...)is the minimum-uncertainty Gaussian;Δp = 1 / (2 σ_x). Paper III's min-Δp scan is afor sigma in [...]
loop over this factory. - Two-engine cross-validation harness.
tests/test_cross_validation.py
exposes the discrete-vs-continuous comparison surface
(free-particle wavepacket convergence, two-body Bohr orbit,
conservation parity, Arnold-tongue frequency-locking). The
test bodies are stubbed pending Paper III's experimental
setup but the spec is in place.
Tooling / internals
experiments/exp_01_throughput.py-- tick-throughput sweep
across lattice shapes; outputs structured.npy+ JSON sidecar.experiments/exp_02_phase_profile.py-- cProfile breakdown of
one tick at a fixed shape.tools/diff_baselines.py-- compares twoexp_01_throughput
baselines, prints per-shape speedup ratios. Designed for the
pre-/post-hardware-upgrade comparison.on_tick_completecallback onTickScheduler-- third-party
instrumentation hook (Paper III's experiments hang timing /
observable extraction off it).
Tests
pytest tests/ reports 228 passed, 4 skipped, 26 xfailed. The
4 skips are cross-validation tests whose bodies live downstream.
The 26 xfails are pre-existing Paper I drift inherited verbatim with
the port (documented in CLAUDE.md).
Installing
pip install dcl_core==0.1.0For symbolic-verification tests (Clifford algebra) and GPU backend:
pip install "dcl_core[sympy]==0.1.0"
pip install "dcl_core[gpu]==0.1.0" # requires CUDA + CuPy buildFor the pre-PyPI / GitHub-pinned install (which downstream papers
should use until PyPI publication):
pip install "git+https://github.com/JackDMenendez/dcl-core@v0.1.0"What is NOT in v0.1.0
- GPU backend kernels (allocators wired,
RawKernelbodies
pending v0.2.0). - Pairwise multi-session interactions (Coulomb / gauge coupling /
emission pairs). - Complex
BresenhamResidual.carry-- the parked hypothesis
that the residual should be a virtual-particle amplitude tied
to the 51 extra generators in Paper II's algebra. The
determination is expected to live downstream in Paper III's
min-Δp experiments; the v0.1.0 carry is real as a known
placeholder.
Full roadmap: see CLAUDE.md (CURRENT STATUS) and
notes/bresenham_residual_design.md.
Citation. See CITATION.cff. Zenodo DOI for this release:
10.5281/zenodo.20350952.