v0.79.2 — open research platform

A System‑2 coprocessor for the language models
that already know almost everything.

TENSA is a neuro‑symbolic reasoning engine over a typed temporal hypergraph. It treats confidence and maturity as orthogonal first‑class annotations, exposes configurable fuzzy semantics per query, and returns every answer with the TensaQL derivation that produced it — auditable by construction.

  • License AGPL‑3.0 + commercial
  • Lang Rust · TypeScript
  • Author Radoslav Lovecký · Arperon
60+inference engines
180MCP tools
90+REST endpoints
240+TensaQL grammar rules
~2 000automated tests
~200 Klines of Rust

Three things the field underserves.

We claim conceptual novelty against each. The remaining contributions — engine catalogue, hierarchical planning, two‑domain instantiation — are the open research substrate.

01

Multi‑fidelity reasoning

Confidence (continuous, data‑quality) and maturity (discrete, epistemic standing) propagate as independent annotations through every reasoning trace. A peer‑reviewed result held with low confidence and a tabloid rumour that happens to be true become formally distinct.

maturity ∈ { Candidate ≺ Reviewed ≺ Validated ≺ GroundTruth }
confidence ∈ [0, 1]
02

Configurable fuzzy semantics

Four canonical t‑norm families (Gödel · Goguen · Łukasiewicz · Hamacher), OWA + Choquet aggregation, graded Allen relations, intermediate quantifiers, Peterson syllogisms, Bělohlávek FCA, Mamdani rules — selectable per query. Every result is tagged with the configuration that produced it.

ASK "..." OVER "narrative"
  WITH TNORM 'lukasiewicz'
  AGGREGATE choquet BY 'measure-A'
03

Traceable derivation

Debug mode returns every answer atomically as ⟨answer, query, rows⟩. The TensaQL query is the canonical symbolic derivation. The rows are the data that instantiated it. A regulator can re‑execute and verify reproduction. Explainability by construction, not by reconstruction.

{ answer: "...",
  query:  "MATCH ... RETURN ...",
  rows:   [ /* exact data */ ] }

EU AI Act Article 13 transparency & Article 14 meaningful‑oversight requirements are met by structural design, not by post‑hoc rationalisation.

A five‑layer stack with a fuzzy spine.

Build bottom‑up — each layer depends only on layers below it. The fuzzy layer is orthogonal: it reads layers 2–3 and feeds layer 4.

L5 API · Studio · MCP REST (Axum, 90+ routes) · MCP server (180 tools) · OpenAI‑compatible chat completions · SSE streaming · React Studio
L4 Query — TensaQL Pest PEG (240+ rules) · INSTANT/JOB bifurcated planner · executor · 7‑mode RAG · token budget
L3a Inference causal · game · motivation · analytical · temporal · probabilistic · dynamical · reconstruction
L3b Narrative WL kernels · Reagan 6‑arc · Propp · NarrativeFingerprint · missing‑event prediction
L3c Synth EATH surrogates · null models · hybrid mixtures · opinion dynamics · SINDy reconstruction
L2 Hypergraph entities · situations · multi‑role participation (seq) · causal DAG · bi‑temporal state versioning · maturity lifecycle
L1 Storage KVStore trait · MemoryStore (BTreeMap) · RocksDBStore · WorkspaceStore (multi‑tenant prefix isolation)
L0 Types UUID v7 time‑ordered identifiers · serde · TensaError

TensaQL — declarative reasoning with auditable trails.

A bifurcated planner separates symbolic execution (instant) from inference‑job submission (async). Confidence semantics are configurable on the same query.

~/tensa $ tensa-query --debug ↳ READY
-- Match temporal patterns under graded Allen relations
MATCH (a:Actor)-[:PARTICIPATES]->(s:Situation)
AT    s.temporal AS FUZZY 'overlaps' THRESHOLD 0.7
WHERE s.narrative_id = "crime-and-punishment"
      AND a.confidence > 0.6
WITH TNORM      'lukasiewicz'
AGGREGATE       'owa'
RETURN a, collect(s) AS situations

-- Submit a counterfactual job under do-calculus
INFER COUNTERFACTUAL(s_id, ASSUMING a.action = "cooperate")
       UNDER "narrative-id"

-- RAG with hierarchical Leiden communities + DRIFT search
ASK  "who held veto power before the merger?"
     OVER "merger-corpus"
     MODE drift
     SUGGEST
     RESPOND AS "bullet points"

-- Discover patterns ACROSS narratives
DISCOVER PATTERNS ACROSS NARRATIVES
   WHERE tag = "19th-century-russian"

Sixty engines registered at startup.

Keyed by std::mem::Discriminant<InferenceJobType>, so payload‑bearing variants route to a single engine instance. Eight families.

Causal

  • DAGMA with LLM‑augmented priors + adaptive scheduling
  • NOTEARS (alternative)
  • do‑calculus interventions
  • Counterfactual beam search (width 5, depth 20)
  • Missing links

Game‑theoretic

  • Game structure classifier
  • QRE equilibrium solver
  • Mean‑field games (large populations)
  • Sub‑game decomposition for N>4

Motivation

  • MaxEnt IRL per actor trajectory
  • Archetype classification (sparse data)
  • Temporal ILP with Allen‑aware bodies

Analytical

  • Centrality (PageRank · Eigenvector · HITS · Harmonic)
  • Topology (articulation pts · bridges · K‑Core)
  • Pathfinding (Dijkstra · Yen's K · max‑flow)
  • Communities (Leiden · Label Propagation)

Belief & Evidence

  • Recursive belief modelling (depth‑2)
  • Dempster–Shafer with claim‑aware mass
  • Probabilistic Soft Logic (PSL)
  • SymbolicToM seeding

Argumentation

  • Dung frameworks (grounded · preferred · stable)
  • h‑Categoriser, weighted h‑Cat, max‑based, card‑based
  • Influence‑step t‑norm coupling

Contagion & Dynamics

  • Classical SIR information contagion
  • Iacopini higher‑order SIR on hypergraphs
  • Bounded‑confidence opinion dynamics (Hickok · Schawe)

Synthesis & Reconstruction

  • EATH surrogate generation (Mancastroppa)
  • Null‑model significance (K=100 default)
  • SINDy hypergraph reconstruction (Delabays)
  • Trajectory embeddings (TGN‑style)

One substrate, two open instantiations.

Identical code paths. Domain‑appropriate t‑norm and aggregator defaults. The substrate is domain‑agnostic; subsequent work on legal reasoning, criminal investigation, scientific argumentation, and adversarial wargaming can build on the same surfaces.

SPEC‑05 six‑level branching tree
Hierarchical narrative structure as a six‑level branching tree, drawn in fine pen on cream paper

Narrative analysis

hierarchical generation · verifiable structural properties

  • Six narrative levels — Story → Arc → Sequence → Scene → Beat → Event
  • Eight architecture patterns — setup/payoff, fabula/sjužet, focalisation, character arcs, subplots, scene–sequel rhythm, promise/progress/payoff, commitments
  • Reagan 6‑arc classification + Propp 31 functions
  • Twelve‑axis NarrativeFingerprint as a candidate general‑purpose abstraction primitive
SPEC‑04 coordinated inauthentic clusters
Coordinated information networks shown as a sparse hypergraph: filled circles for actors, translucent ellipses grouping coordinated behaviour

Disinformation detection

opinion dynamics · CIB · higher‑order contagion

  • Coordinated‑inauthentic‑behaviour analysis on null hypergraph models
  • Higher‑order SIR contagion (Iacopini, Petri, Barrat — Nat Commun 2019)
  • Bounded‑confidence opinion dynamics on hypergraphs (Hickok 2022; Schawe‑Hernández 2022)
  • Behavioural fingerprints & superspreader ranking with auditable derivations

An Observatory Console for the substrate.

Narrative‑centric IA. Workspace shell at /n/:narrativeId/:tab. Sixteen canvases from Graph and Timeline through Workshop, Reconstruction, and Fuzzy. One Inspector panel reacts to selection across every lens.

SPEC‑03 refined reasoning‑analysis interface
Studio interface mockup on a thin laptop on a wooden desk: an abstract knowledge‑graph visualisation in the main panel, an inspector strip on the right
studio · v0.79.x LIVE
  • 12 primary sidebar items across LIBRARY · INGEST · INTELLIGENCE · SYSTEM
  • 16 per‑narrative canvases — Graph, Timeline, Map, Matrix, Embeddings, Ask, Manuscript, Plan, Cast, Workshop, History, Analysis, Fingerprint, Debugger, Adaptation, Synth
  • 4 tiers of shared components — Inspectors, shell state, detail blocks, chrome
  • ⌘K Command palette across narratives, entities, situations, sources, tabs, settings

A platform, not a black box.

The system paper

“TENSA: Multi‑Fidelity Neuro‑Symbolic Reasoning over Temporal Hypergraphs with Configurable Fuzzy Semantics and Traceable Derivation.” — Radoslav Lovecký (Arperon).

Cites Klement‑Mesiar‑Pap, Yager (OWA), Grabisch & Bustince (Choquet), Schockaert‑De Cock + Dubois‑Prade (fuzzy Allen), Murinová & Novák, Bělohlávek, Mamdani, Iacopini · Petri · Barrat, Hickok, Delabays, Amgoud · Ben‑Naim, Nebel‑Bürckert.

Read the paper (Zenodo) →

Get the code

# clone
git clone https://github.com/arperon-labs/tensa
# build (no C++ toolchain required)
cargo build --no-default-features
# run the API + Studio
cargo run --features server,studio-chat
arperon-labs/tensa →

Cite

@misc{lovecky2026tensa,
  author = {Lovecký, Radoslav},
  title  = {TENSA: Multi‑Fidelity
            Neuro‑Symbolic Reasoning over
            Temporal Hypergraphs},
  year   = {2026},
  note   = {Arperon · open research platform}
}
Back to top ↑