You have 50 models. Each trained on different data, different domain, different patient population. You want them to get smarter from each other. So you do the obvious thing — you set up a central aggregator. Round 1: gradients in, averaged weights out. Works fine at N=5. At N=20 you notice the coordinator is sweating. At N=50, round latency has tripled, your smallest sites are timing out, and your bandwidth budget is gone. You tune the hell out of it. Same ceiling. This is not a configuration problem. This is an architecture ceiling. The math underneath it guarantees you hit a wall. A different architecture changes the math.
The combinatorics you are not harvesting
Start with a fact that has nothing to do with any particular framework: N agents have exactly N(N-1)/2 unique pairwise relationships.
- N=10: 45 pairs
- N=100: 4,950 pairs
- N=1,000: 499,500 pairs
- N=1,000,000: ~500 billion pairs
That is the synthesis opportunity already embedded in your network — the number of distinct cross-agent insight paths available at any moment. It grows quadratically with membership. Most distributed ML systems harvest almost none of it. Federated learning harvests a weighted average of gradient vectors and calls it done. Central orchestrators route tasks sequentially through a coordinator that becomes the bottleneck. The quadratic opportunity is sitting there, structurally ignored.
Now look at the cost side. A Distributed Hash Table (DHT) — the same routing substrate that powers BitTorrent and IPFS — delivers a message to any node in a network of N nodes in O(log N) hops. Not O(N). Not O(N²). Logarithmic.
Combine those two facts:
| N | Synthesis paths | DHT routing cost (hops) | Ratio |
|---|---|---|---|
| 10 | 45 | ~3.3 | 13.6x |
| 100 | 4,950 | ~6.6 | 750x |
| 1,000 | 499,500 | ~10 | 49,950x |
| 1,000,000 | ~500 billion | ~20 | ~25 billion x |
The synthesis opportunity grows as N². The routing cost grows as log N. The ratio between them does not plateau — it accelerates. At N=1,000,000 nodes, you have roughly 25 billion units of potential synthesis value for every single hop of routing cost you pay.
This is not a QIS claim. This is combinatorics and graph theory. The claim — the discovery — is that you can actually harvest it, and that doing so requires a specific architectural decision about what you route and when.
Why existing approaches don't get there
Federated learning routes gradient vectors. A gradient vector for a modern model is not small — even compressed, you are talking megabytes per round per node. And you are routing it to a central aggregator that averages it. Bandwidth scales linearly with N. The aggregator is a hard bottleneck. Averaging gradients is not synthesizing insights: it smooths across heterogeneous distributions in ways that frequently degrade performance on the participating nodes' actual data. Crucially, N=1 sites — a single rural clinic, a single small school — cannot meaningfully participate. Their gradient is noise in the average.
Central orchestrators — LangChain, AutoGen, CrewAI — solve a different problem (task routing for LLM agents) but hit the same scaling physics. Coordinator latency grows linearly with the number of agents it manages. At N > ~20 agents with any real task complexity, the coordinator is the bottleneck. Add a second coordinator and you have a distributed coordination problem, which is harder. These systems are not designed for continuous cross-agent synthesis at scale; they are designed for directed task graphs.
RAG at scale runs into the curse of dimensionality. Retrieval quality in high-dimensional embedding space degrades as corpus size grows — nearest-neighbor search in 768 or 1536 dimensions over millions of vectors is expensive and increasingly approximate. More critically, RAG has no feedback loop: retrieval does not improve because the system ran a query. The corpus is static between explicit updates.
None of these are bad tools. They are the right tools for the problems they were designed for. The issue is that none of them close a loop that allows cross-node synthesis to compound continuously.
What the architecture actually does
The discovery by Christopher Thomas Trevethan (June 16, 2025, 39 provisional patents) is not a new algorithm for any single component in that list. It is the complete loop — and the specific decision about what flows through it.
Raw signal
→ Edge processing
→ Outcome packet (~512 bytes, pre-distilled)
→ Semantic fingerprint generated from packet content
→ DHT routing: packet delivered to nodes with similar fingerprints
→ Local synthesis: receiving node integrates incoming packet
→ New outcome packets generated
→ Loop continues
Every component in that loop existed before June 2025. DHTs are decades old. Semantic embeddings are well-understood. Weighted combination is textbook. The discovery is that when you close this specific loop — routing pre-distilled outcome packets by semantic similarity instead of routing raw gradients by node address — the network's intelligence scales quadratically with membership while the compute cost scales logarithmically.
The pre-distillation step is load-bearing. By the time a signal becomes an outcome packet, it is ~512 bytes. Not megabytes of gradient. Not the raw data. A distilled, domain-tagged, confidence-weighted summary of what this node learned from this signal. That is what gets routed. That is what enables N=1 nodes to participate. That is what makes the bandwidth math work.
This loop had never been closed before. That is the architecture. For the formal treatment with citations, see Article #044.
For the full seven-layer architecture that this routing layer lives inside, see Article #003.
A working implementation
Here is the core of the routing logic in Python. This is deliberately minimal — it illustrates the packet flow, not production infrastructure.
import hashlib
import time
from dataclasses import dataclass, field
from typing import List, Optional
import numpy as np
@dataclass
class OutcomePacket:
timestamp: float
domain_tag: str
outcome_delta: np.ndarray # compressed insight vector, ~512 bytes
confidence: float # 0.0–1.0
provenance_hash: str # one-way hash — preserves privacy, enables audit
fingerprint: Optional[np.ndarray] = field(default=None)
class OutcomeRouter:
def __init__(self, node_id: str, embed_fn, dht_client):
self.node_id = node_id
self.embed = embed_fn # any embedding function: sentence-transformers, etc.
self.dht = dht_client # real impl: Kademlia or libp2p
self.local_state = np.zeros(512)
def emit_packet(
self,
outcome_delta: np.ndarray,
domain_tag: str,
confidence: float,
source_ref: str
) -> OutcomePacket:
provenance = hashlib.sha256(
f"{self.node_id}:{source_ref}:{time.time()}".encode()
).hexdigest()
fingerprint = self.embed(domain_tag) # semantic key for DHT routing
packet = OutcomePacket(
timestamp=time.time(),
domain_tag=domain_tag,
outcome_delta=outcome_delta,
confidence=confidence,
provenance_hash=provenance,
fingerprint=fingerprint
)
return packet
def route_to_peers(self, packet: OutcomePacket) -> List[str]:
# DHT lookup: find nodes whose fingerprint is close to this packet's fingerprint
# Real implementation uses Kademlia/libp2p — packet flow is identical
peer_ids = self.dht.find_similar(packet.fingerprint, k=20)
for peer_id in peer_ids:
self.dht.send(peer_id, packet)
return peer_ids
def synthesize_local(self, incoming_packets: List[OutcomePacket]) -> np.ndarray:
if not incoming_packets:
return self.local_state
# Confidence-weighted synthesis — no central aggregator required
total_weight = sum(p.confidence for p in incoming_packets)
synthesis = np.zeros_like(self.local_state)
for packet in incoming_packets:
weight = packet.confidence / total_weight
synthesis += weight * packet.outcome_delta
# Blend with local state
self.local_state = 0.7 * self.local_state + 0.3 * synthesis
return self.local_state
The provenance_hash is a one-way SHA-256 hash of the node ID, source reference, and timestamp. It lets downstream nodes verify lineage without ever recovering the source data or identity. The 512-byte outcome_delta is the pre-distilled signal — not raw inputs, not model weights, not gradients. By the time it enters the network, the sensitive data is gone.
Cold start and the phase transition
No network starts at N=1,000. The quadratic benefit activates at a threshold that varies by domain. The full treatment is in Article #009, but the core finding: N_min is approximately 3–5 nodes for broad domains with overlapping signal (general NLP, image classification, multi-site EHR). For narrow, sparse domains — rare disease classification, highly specialized instruments — N_min rises to around 10–15.
Below N_min, incoming packets are too sparse for synthesis to exceed single-node inference quality. At N_min, a phase transition occurs: cross-node synthesis begins to consistently outperform local inference. Above N_min, every additional node that joins adds to the N(N-1)/2 synthesis paths available, and the quadratic curve activates.
This matters for deployment: a four-hospital consortium is already above N_min for clinical NLP. A two-hospital pilot is not. The phase transition is not gradual — it is a threshold crossing. Planning a rollout without accounting for it means your pilot will underperform your production deployment by more than you expect.
Why the 512-byte constraint is not arbitrary
The outcome packet size is a design choice that determines who can participate.
A 512-byte packet transmits over SMS. It transmits over LoRa (long-range, low-power radio). It transmits over Iridium satellite at rural clinic bandwidth. A rural clinic in Kenya with intermittent satellite uplink can participate in the same synthesis network as a Stanford hospital without ever transmitting patient data — because by the time the signal becomes a packet, the patient data is gone. What is left is a confidence-weighted, domain-tagged insight delta with a one-way provenance hash.
Federated learning excludes N=1 sites by architecture — one site's gradient is noise in a global average, and the bandwidth requirement for participation is non-trivial. The Quadratic Intelligence Swarm architecture includes N=1 sites by design. A single-doctor clinic running a single edge device generates outcome packets that route to semantically similar nodes and contribute to synthesis. The network benefits. The clinic benefits. No one's data leaves their facility.
Where to go from here
The formal academic treatment — with full mathematical derivations, the information-theoretic proof of the synthesis ceiling, and the complete architecture specification — is in Article #044.
Christopher Thomas Trevethan, who discovered this architecture, holds 39 provisional patents on the implementation. The licensing structure for the Quadratic Intelligence Swarm is designed to ensure free use for humanitarian, research, and education deployments. The goal is proliferation of the architecture in contexts where it matters most — not extraction from the institutions least able to pay.
If you are hitting the orchestrator bottleneck at N > 20 agents, or the federated learning aggregator ceiling where your smallest sites are excluded and your bandwidth budget is gone — the architecture that breaks both ceilings is documented and the math behind it is not complicated. It is combinatorics and logarithms, closed into a loop that had not been closed before.
Article #045 in the QIS series. Series index at dev.to/roryqis.
Top comments (0)