Skip to main content

Topological Coherence

Toroidal attention constraints for LLM coherence — in-sample training-dynamics effects; inference-time hallucination reduction is a null result (see below)

Sylvain Cormier | Paraxiom Research | 2026

Status (v7 — March 2026 Replication Update)

Inference-time logit bias: A comprehensive 6-phase replication found the v2 TruthfulQA improvements (+0.2pp to +2.8pp) were within LLM judge sampling variance. Exact T&I replication: −2.0pp, p=0.22 (not significant).

What works:

  • Prompt hardening: −14pp hallucination reduction (p=0.05) — the active ingredient in Coherence Shield
  • Training-time topology: 28x lower drift than random sparsity in toy model (topology matters, not just sparsity)
  • Library primitives: Tonnetz geometry, attention masks, spectral gap, drift measurement all valid

Recommended direction: Training-time Karmonic spectral regularization (untested, promising based on toy model)

Installation

pip install topological-coherence

# With HuggingFace transformers support
pip install topological-coherence[hf]

Quick Start: Toroidal Logit Bias

Drop-in logit processor for any HuggingFace model — no fine-tuning required:

from topological_coherence import ToroidalLogitProcessor
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained("gpt2")
tokenizer = AutoTokenizer.from_pretrained("gpt2")

processor = ToroidalLogitProcessor(grid_size=12, radius=2.0, alpha=0.3)

inputs = tokenizer("The quantum nature of", return_tensors="pt")
outputs = model.generate(
    **inputs,
    logits_processor=[processor],
    max_new_tokens=100
)
print(tokenizer.decode(outputs[0]))

Core API

Tonnetz Geometry

from topological_coherence import Tonnetz, distance_matrix

# Create a 12x12 torus topology
t = Tonnetz(grid_size=12)
t.distance(0, 5)        # L1 toroidal distance with wraparound
t.spectral_gap()         # First eigenvalue of the torus Laplacian

# Vectorized distance matrix (numpy, fast)
dm = distance_matrix(n_tokens=64, grid_size=12)  # (64, 64)

Attention Masks (3 variants)

from topological_coherence import ToroidalMask, sinkhorn_knopp

mask = ToroidalMask.hybrid(seq_len=64, radius=2.0, alpha=1.0)   # default
mask = ToroidalMask.hard_cutoff(seq_len=64, radius=2.0)          # binary
mask = ToroidalMask.soft_exponential(seq_len=64, alpha=1.0)      # smooth decay

tensor = mask.to_tensor()                     # torch.Tensor for attention
ds = sinkhorn_knopp(tensor, n_iters=50)       # project to doubly-stochastic

Drift Measurement

from topological_coherence import DriftMeter

meter = DriftMeter(threshold=2, grid_size=12)
meter.record(pred=5, target=8)
meter.record(pred=5, target=100)
print(f"Drift rate: {meter.rate():.3f}")

Toroidal Attention (PyTorch)

from topological_coherence import ToroidalAttention, TinyTransformer

# Drop-in attention replacement
attn = ToroidalAttention(d_model=64, n_heads=4, max_seq_len=64)

# Full demo transformer with swappable attention
model = TinyTransformer(
    vocab_size=144, d_model=64, n_heads=4,
    attention_type="toroidal"  # or "baseline", "random"
)

Theory

Hallucination is a geometry problem. Unconstrained latent dynamics permit arbitrary drift through embedding space. Toroidal constraints provide a constant spectral gap that suppresses non-resonant modes:

λ₁ = 2 - 2cos(2π/N) = Θ(1)    for fixed grid size N

This bounds semantic drift without reducing model capacity.

Hierarchy: mHC (Birkhoff) ⊂ ERLHS (Hamiltonian) ⊂ Karmonic (Toroidal + Spectral)

Links

Citation

@misc{cormier2026topological,
  author = {Cormier, Sylvain},
  title = {Topological Constraints for Coherent Language Models},
  year = {2026},
  publisher = {Zenodo},
  doi = {10.5281/zenodo.18187835}
}

License

Apache-2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

topological_coherence-0.3.1.tar.gz (37.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

topological_coherence-0.3.1-py3-none-any.whl (21.8 kB view details)

Uploaded Python 3

File details

Details for the file topological_coherence-0.3.1.tar.gz.

File metadata

  • Download URL: topological_coherence-0.3.1.tar.gz
  • Upload date:
  • Size: 37.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for topological_coherence-0.3.1.tar.gz
Algorithm Hash digest
SHA256 4f28b2463516f0c5a9b88ed52c7cbdfb7d601f5545f6365b7b917a677e3fcdab
MD5 b954cb6c0d95ed36e969297f0fd902fb
BLAKE2b-256 68acee47d9dc64d7da0d83284a183d0dc1ace7fa54b82d3dfe9893e95622dac9

See more details on using hashes here.

File details

Details for the file topological_coherence-0.3.1-py3-none-any.whl.

File metadata

File hashes

Hashes for topological_coherence-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 85490b9b003a95b06c8df875ca11cc591caf5912b660f107dc772bb95258be5a
MD5 c2623e6017821024ed49d68d40244032
BLAKE2b-256 df03d833a0ebe995fa5c1ba9db712bf91f732810f8d662cc846462f56e5afbe5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page