{"slug": "rei-labs-reasoning-approach", "title": "REI Labs Reasoning Approach", "summary": "REI Labs introduced Core, a self-contained reasoning substrate that changes state with each query, forming persistent structures that compete for support before returning an answer along with the formation that produced it. The system records what activated, conflicted, resolved, and changed for the next query, with observed runs typically in the tens of milliseconds to 200ms–2s in current local/runtime conditions. Core represents knowledge as graph-like, symbolic, vector, temporal, or domain-specific structures, and domains become learned operating regimes inside the substrate.", "body_md": "# Formation over\n\na changing substrate.\n\nCore is a self-contained reasoning substrate. Its state changes as it is used. Each query enters a persistent field that already holds concepts, constraints, bindings, examples, procedures, corrections, and unresolved candidates.\n\nActive structures in that field compete for support. Well-supported ones strengthen, conflicts get resolved or carried, and weakly supported candidates stay provisional. Core returns the answer together with the formation that produced it: what activated, what conflicted, what resolved, what remains missing, and what changed for the next query.\n\n[Read the article→](/blog/emergence-toward-autonomous-structure-discovery)\n\nThe formation view is the structure that formed around the answer. It records what was active, what conflicted, what resolved, and what observations the run expects next.\n\n## The query enters a field that already has shape.\n\nBefore an answer forms, the substrate already has shape. Concepts have activation depth, bindings have strength, constraints press against candidate structures, and local procedures carry prior contribution.\n\nA query perturbs the current field. Several structures become active at once and compete for support. The answer appears once the field settles enough to expose a stable surface.\n\nCore can represent knowledge as graph-like, symbolic, vector, temporal, or domain-specific structures. What a query exposes is the formation built over persistent state as active structures compete. The run does not walk a graph.\n\n## Core forms working formations before it answers.\n\nWhen a query enters, related concepts, constraints, bindings, examples, procedures, corrections, and prior failures become active together. Candidate formations appear, explaining different parts of the input, and some of them conflict.\n\nThe formation is a working structure inside the substrate. Its useful parts stabilize and stay. Weak parts fade. Corrections change what future queries activate.\n\n## Domains become local operating regimes.\n\nA domain is a learned operating regime inside the substrate. Entities, signals, constraints, procedures, corrections, failure modes, and hypotheses reinforce each other through exposure. It is not a folder of documents or a prompt context.\n\nAs exposure accumulates, Core has less to reconstruct for each query. A query wakes an already-shaped field where useful structures have consolidated and weak signals have faded. Corrections change what the substrate is likely to activate next.\n\n## The answer is only the visible surface.\n\nUnder the answer, Core has activated evidence, candidate structures, weighted procedures, conflicts, resolutions, carried uncertainty, expected observations, missing observations, and substrate change.\n\nThe output can be a direct answer, or an unresolved state with a reason to wait. The run leaves an inspectable formation that records what supported the answer, what conflicted, what resolved, what remains missing, and what changed for the next query.\n\n- baseline · normal feed\n- intervention · feed restriction\n- sensor conflict · inline vs manual\n- process observation\n- outcome · titer below target\n\n- feed restriction\n- sensor masking\n- contamination\n\nstandard_tubing ↔ narrow_tubing\n\n- lower manual substrate readings\n- fewer delivered pulses\n- lactate rise after restriction\n\n- direct feed-rate measurement\n- manual substrate series\n- calibration report\n\n*↑*restriction relation reinforced\n\n*↻*feedpump.uses binding revised\n\n*•*sensor masking held provisional\n\n*↓*weak contamination candidate fades\n\n## Formation stays in the loop.\n\nCore is built for direct, low-latency use. On the direct Core path, observed runs are typically in the tens of milliseconds, roughly 200ms–2s in current local/runtime conditions.\n\nThat matters because the formation stays close to the run that produced it. The answer, active structures, conflict, resolution, expected observations, missing observations, and substrate delta arrive together with it.\n\nAn instance can be queried, inspected, corrected, and queried again while the substrate is still the object of work.\n\nRuntime varies by instance size, environment, and surface. Exact methodology belongs in the technical overview. This page states the architectural affordance: direct Core use is fast enough for formation to stay in the loop.\n\n## The substrate is the system.\n\nCore can be reached through chat, API calls, agents, logs, or embedded workflows. These surfaces format and relay information. The reasoning happens in the substrate underneath them.\n\nThe substrate holds the structure that gets formed, revised, stabilized, forgotten, and inspected. The same instance can answer as a machine-readable payload or in plain language, and swapping the interface does not change what the instance holds.\n\n``` js\nconst instance = await core.instance(\"bioprocess-ops\");   // your persistent instance\nawait instance.ingest(\"./bioprocess.kb\");          // records, events, corrections\n\nconst r = await instance.ask({\n  query: \"why did yield fall after the maintenance window?\",\n  formation: true,\n});\n\n// r.answer + r.formation returned together\n{\n  answer:    \"...\",\n  formation: {\n    evidence:   5,\n    candidates: [\"feed_restriction\", \"sensor_masking\", \"contamination\"],\n    conflict:   \"feedpump.uses: standard_tubing | narrow_tubing\",\n    resolution: \"narrow_tubing\",\n    expects:    [\"lower_substrate\", \"lactate_rise\"],\n    missing:    [\"feed_rate_measurement\", \"calibration_report\"],\n    carryover:  [\"binding_revised\", \"restriction_reinforced\"],\n  },\n}\n```\n\n[fig 05.b · conversational surfacesys.chatRei ChatAgentic conversational surface · LLM-interfacedRei Chat is a conversational surface onto the same instance. It is agentic: it plans, calls the instance, and articulates the result through an LLM. Any capable model works, since the reasoning happens in Core and the model only handles language. It replies in plain prose.userWhy did the yield drop after the last maintenance window?assistantThe likely story is feed restriction. After maintenance the line came back with narrower tubing, which quietly limited how much feed reached the culture. That fits the lower substrate readings and the lactate rise you’d expect under depletion. An inline sensor disagreed with the manual check, so Core flagged the conflict and kept the narrower-tubing reading. Confirm it with a direct feed-rate measurement and the calibration report before you commit.](https://app.reilabs.org)\n\nCore is a self-contained reasoning substrate for complex domains. Each instance carries a persistent field of concepts, bindings, constraints, procedures, corrections, unresolved candidates, and learned structure. Queries perturb that field and can change what future queries activate.\n\nCore forms inspectable reasoning structures over persistent state, then carries useful changes back into the substrate.\n\nNo. Retrieval can supply evidence to a query. Core’s job is the formation built over persistent state, where active structures compete, conflict, resolve, stabilize, fade, or carry forward. That formation is what Core returns.\n\nNo. Core can be paired with models or tools. The instance itself is the reasoning substrate. External systems may contribute observations, language, calculations, or procedures, and they do not define the substrate.\n\nObservations, records, domain entities, schemas, constraints, procedures, corrections, feedback, failures, examples, and outcomes. Repeated exposure to this material lets an instance form a usable operating regime for a domain.\n\nAn instance is a persistent substrate. It carries the learned structure for a domain or workflow and exposes that state through machine-readable payloads, formation views, or plain-language surfaces.\n\nNot by default. Instances should be treated as isolated substrates unless sharing, export, or transfer is explicitly configured.\n\nThrough use. Repeated evidence reinforces useful structure, corrections revise bad bindings, weak signals fade, unresolved candidates can be carried forward, and domain procedures gain or lose contribution as the substrate changes.\n\nAdapt-1 is the direct surface for working with an instance as an object: spawn it, feed it, query it, inspect it. It returns machine-readable payloads. Rei Chat is a conversational surface over the same substrate that replies in plain language.\n\nYes. The formation view exposes active structures, supporting evidence, conflicts, resolutions, hypotheses, expected observations, missing observations, and substrate change. You can inspect what formed around the answer.\n\nDeleting an instance should remove that substrate and its learned state. No other instance should depend on it unless explicit sharing or export has been configured.", "url": "https://wpnews.pro/news/rei-labs-reasoning-approach", "canonical_source": "https://reilabs.org/approach", "published_at": "2026-08-28 12:39:03+00:00", "updated_at": "2026-08-28 12:48:27.096707+00:00", "lang": "en", "topics": ["artificial-intelligence", "ai-research", "ai-infrastructure"], "entities": ["REI Labs", "Core"], "alternates": {"html": "https://wpnews.pro/news/rei-labs-reasoning-approach", "markdown": "https://wpnews.pro/news/rei-labs-reasoning-approach.md", "text": "https://wpnews.pro/news/rei-labs-reasoning-approach.txt", "jsonld": "https://wpnews.pro/news/rei-labs-reasoning-approach.jsonld"}}