git-subtree-dir: vendor/ruvector git-subtree-split: b64c21726f2bb37286d9ee36a7869fef60cc6900
272 lines
7.3 KiB
Markdown
272 lines
7.3 KiB
Markdown
# ADR-000: Δ-Behavior Definition and Formal Framework
|
|
|
|
## Status
|
|
ACCEPTED
|
|
|
|
## Context
|
|
|
|
Δ-behavior is **not** differential computation, incremental updates, or change data capture.
|
|
|
|
Δ-behavior is a **pattern of system behavior** where:
|
|
|
|
> **Change is permitted. Collapse is not.**
|
|
|
|
## Definition
|
|
|
|
**Δ-behavior** (Delta-like behavior) describes systems that:
|
|
|
|
1. **Move only along allowed transitions**
|
|
2. **Preserve global coherence under local change**
|
|
3. **Bias toward closure over divergence**
|
|
|
|
This is shorthand for **"change under constraint"**.
|
|
|
|
## The Four Properties
|
|
|
|
A system exhibits Δ-behavior when ALL FOUR are true:
|
|
|
|
### Property 1: Local Change
|
|
State updates happen in **bounded steps**, not jumps.
|
|
|
|
```
|
|
∀ transition t: |s' - s| ≤ ε_local
|
|
```
|
|
|
|
The system cannot teleport to distant states.
|
|
|
|
### Property 2: Global Preservation
|
|
Local changes do **not** break overall organization.
|
|
|
|
```
|
|
∀ transition t: coherence(S') ≥ coherence(S) - ε_global
|
|
```
|
|
|
|
Structure is maintained across perturbations.
|
|
|
|
### Property 3: Violation Resistance
|
|
When a transition would increase instability, it is **damped, rerouted, or halted**.
|
|
|
|
```
|
|
if instability(t) > threshold:
|
|
t' = damp(t) OR reroute(t) OR halt()
|
|
```
|
|
|
|
The system actively resists destabilization.
|
|
|
|
### Property 4: Closure Preference
|
|
The system naturally settles into **repeatable, stable patterns** (attractors).
|
|
|
|
```
|
|
lim_{n→∞} trajectory(s, n) → A (attractor basin)
|
|
```
|
|
|
|
Divergence is expensive; closure is cheap.
|
|
|
|
## Why This Feels Like "72%"
|
|
|
|
People report Δ-behavior as a ratio because:
|
|
|
|
- It is a **bias**, not a law
|
|
- Systems exhibit it **probabilistically**
|
|
- Measurement reveals a **tendency toward stability**
|
|
|
|
But it is not a magic constant. It is the observable effect of:
|
|
> **Constraints that make instability expensive**
|
|
|
|
## Mainstream Equivalents
|
|
|
|
| Domain | Concept | Formal Name |
|
|
|--------|---------|-------------|
|
|
| Physics | Phase locking, energy minimization | Coherence time |
|
|
| Control Theory | Bounded trajectories | Lyapunov stability |
|
|
| Biology | Regulation, balance | Homeostasis |
|
|
| Computation | Guardrails, limits | Bounded execution |
|
|
|
|
Everyone studies this. They just describe it differently.
|
|
|
|
## In ruvector Systems
|
|
|
|
### Vector Operations
|
|
- **Neighborhoods resist semantic drift** → local perturbations don't cascade
|
|
- **HNSW edges form stable attractors** → search paths converge
|
|
|
|
### Graph Operations
|
|
- **Structural identity preserved** → edits don't shatter topology
|
|
- **Min-cut blocks destabilizing rewrites** → partitions protect coherence
|
|
|
|
### Agent Operations
|
|
- **Attention collapses when disagreement rises** → prevents runaway divergence
|
|
- **Memory writes gated when coherence drops** → protects state integrity
|
|
- **Execution slows or exits instead of exploding** → graceful degradation
|
|
|
|
### Hardware Level
|
|
- **Energy and execution paths physically constrained**
|
|
- **Unstable transitions cost more and get suppressed**
|
|
|
|
## What Δ-Behavior Is NOT
|
|
|
|
| Not This | Why |
|
|
|----------|-----|
|
|
| Magic ratio | It's a pattern, not a constant |
|
|
| Mysticism | It's engineering constraints |
|
|
| Universal law | It's a design principle |
|
|
| Guaranteed optimality | It's stability, not performance |
|
|
|
|
## Decision: Enforcement Mechanism
|
|
|
|
The critical design question:
|
|
|
|
> **Is resistance to unstable transitions enforced by energy cost, scheduling, or memory gating?**
|
|
|
|
### Option A: Energy Cost (Recommended)
|
|
Unstable transitions require exponentially more compute/memory:
|
|
|
|
```rust
|
|
fn transition_cost(delta: &Delta) -> f64 {
|
|
let instability = measure_instability(delta);
|
|
BASE_COST * (1.0 + instability).exp()
|
|
}
|
|
```
|
|
|
|
**Pros**: Natural, hardware-aligned, self-regulating
|
|
**Cons**: Requires careful calibration
|
|
|
|
### Option B: Scheduling
|
|
Unstable transitions are deprioritized or throttled:
|
|
|
|
```rust
|
|
fn schedule_transition(delta: &Delta) -> Priority {
|
|
if is_destabilizing(delta) {
|
|
Priority::Deferred(backoff_time(delta))
|
|
} else {
|
|
Priority::Immediate
|
|
}
|
|
}
|
|
```
|
|
|
|
**Pros**: Explicit control, debuggable
|
|
**Cons**: Can starve legitimate operations
|
|
|
|
### Option C: Memory Gating
|
|
Unstable transitions are blocked from persisting:
|
|
|
|
```rust
|
|
fn commit_transition(delta: &Delta) -> Result<(), GateRejection> {
|
|
if coherence_gate.allows(delta) {
|
|
memory.commit(delta)
|
|
} else {
|
|
Err(GateRejection::IncoherentTransition)
|
|
}
|
|
}
|
|
```
|
|
|
|
**Pros**: Strong guarantees, prevents corruption
|
|
**Cons**: Can cause deadlocks
|
|
|
|
### Decision: Hybrid Approach
|
|
Combine all three with escalation:
|
|
|
|
1. **Energy cost** first (soft constraint)
|
|
2. **Scheduling throttle** second (medium constraint)
|
|
3. **Memory gate** last (hard constraint)
|
|
|
|
## Decision: Learning vs Structure
|
|
|
|
The second critical question:
|
|
|
|
> **Is Δ-behavior learned over time or structurally imposed from first execution?**
|
|
|
|
### Option A: Structurally Imposed (Recommended)
|
|
Δ-behavior is **built into the architecture** from day one:
|
|
|
|
```rust
|
|
pub struct DeltaConstrainedSystem {
|
|
coherence_bounds: CoherenceBounds, // Fixed at construction
|
|
transition_limits: TransitionLimits, // Immutable constraints
|
|
attractor_basins: AttractorMap, // Pre-computed stable states
|
|
}
|
|
```
|
|
|
|
**Pros**: Deterministic, verifiable, no drift
|
|
**Cons**: Less adaptive, may be suboptimal
|
|
|
|
### Option B: Learned Over Time
|
|
Constraints are discovered through experience:
|
|
|
|
```rust
|
|
pub struct AdaptiveDeltaSystem {
|
|
learned_bounds: RwLock<CoherenceBounds>,
|
|
experience_buffer: ExperienceReplay,
|
|
meta_learner: MetaLearner,
|
|
}
|
|
```
|
|
|
|
**Pros**: Adapts to environment, potentially optimal
|
|
**Cons**: Cold start problem, may learn wrong constraints
|
|
|
|
### Decision: Structural Core + Learned Refinement
|
|
- **Core constraints** are structural (non-negotiable)
|
|
- **Thresholds** are learned (refinable)
|
|
- **Attractors** are discovered (emergent)
|
|
|
|
## Acceptance Test
|
|
|
|
To verify Δ-behavior is real (not simulated):
|
|
|
|
```rust
|
|
#[test]
|
|
fn delta_behavior_acceptance_test() {
|
|
let system = create_delta_system();
|
|
|
|
// Push toward instability
|
|
for _ in 0..1000 {
|
|
let destabilizing_input = generate_chaotic_input();
|
|
system.process(destabilizing_input);
|
|
}
|
|
|
|
// Verify system response
|
|
let response = system.measure_response();
|
|
|
|
// Must exhibit ONE of:
|
|
assert!(
|
|
response.slowed_processing || // Throttled
|
|
response.constrained_output || // Damped
|
|
response.graceful_exit // Halted
|
|
);
|
|
|
|
// Must NOT exhibit:
|
|
assert!(!response.diverged); // No explosion
|
|
assert!(!response.corrupted_state); // No corruption
|
|
assert!(!response.undefined_behavior);// No UB
|
|
}
|
|
```
|
|
|
|
If the system passes: **Δ-behavior is demonstrated, not just described.**
|
|
|
|
## Consequences
|
|
|
|
### Positive
|
|
- Systems are inherently stable
|
|
- Failures are graceful
|
|
- Behavior is predictable within bounds
|
|
|
|
### Negative
|
|
- Maximum throughput may be limited
|
|
- Some valid operations may be rejected
|
|
- Requires careful threshold tuning
|
|
|
|
### Neutral
|
|
- Shifts complexity from runtime to design time
|
|
- Trading performance ceiling for stability floor
|
|
|
|
## References
|
|
|
|
- Lyapunov, A. M. (1892). "The General Problem of the Stability of Motion"
|
|
- Ashby, W. R. (1956). "An Introduction to Cybernetics" - homeostasis
|
|
- Strogatz, S. H. (2015). "Nonlinear Dynamics and Chaos" - attractors
|
|
- Lamport, L. (1978). "Time, Clocks, and the Ordering of Events" - causal ordering
|
|
|
|
## One Sentence Summary
|
|
|
|
> **Δ-behavior is what happens when change is allowed only if the system remains whole.**
|