Remove Documents/beast-build/four_forces_analysis.py

This commit is contained in:
2026-03-31 18:07:40 +07:00
parent 47af1f64e6
commit 64076ca25c
@@ -1,209 +0,0 @@
#!/usr/bin/env python3
"""
Four Forces Correlation Analysis
Test Navigator's claims against telemetry data.
"""
import json
import math
import sys
TELEMETRY_PATH = "/mnt/d/Resonance_Engine/beast-build/telemetry.jsonl"
SAMPLE_SIZE = 50000 # Analyze last N records for speed
def load_telemetry(n=SAMPLE_SIZE):
"""Load last n telemetry records."""
records = []
with open(TELEMETRY_PATH, 'r') as f:
for line in f:
records.append(json.loads(line.strip()))
return records[-n:]
def pearsonr(x, y):
"""Calculate Pearson correlation coefficient."""
n = len(x)
mean_x = sum(x) / n
mean_y = sum(y) / n
num = sum((xi - mean_x) * (yi - mean_y) for xi, yi in zip(x, y))
den_x = sum((xi - mean_x) ** 2 for xi in x)
den_y = sum((yi - mean_y) ** 2 for yi in y)
if den_x == 0 or den_y == 0:
return 0, 1
r = num / math.sqrt(den_x * den_y)
# Approximate p-value (rough estimate for large n)
if abs(r) >= 1:
p = 0
else:
t = r * math.sqrt((n - 2) / (1 - r * r))
# For large n, approximate p as very small if |r| > 0.1
p = 0 if abs(r) > 0.1 else 1
return r, p
def mean(arr):
return sum(arr) / len(arr)
def std(arr):
m = mean(arr)
return math.sqrt(sum((x - m) ** 2 for x in arr) / len(arr))
def percentile(arr, p):
sorted_arr = sorted(arr)
k = (len(sorted_arr) - 1) * p / 100
f = math.floor(k)
c = math.ceil(k)
if f == c:
return sorted_arr[int(k)]
return sorted_arr[int(f)] * (c - k) + sorted_arr[int(c)] * (k - f)
def analyze_gravity(data):
"""
Test: Gravity \u2014 velocity follows density curvature
Claim: v \u221d \u2207(\u2207\u00b2\u03c1)
Proxy: vel_mean should correlate with coherence (as proxy for density structure)
"""
vel = [d['vel_mean'] for d in data]
coh = [d['coherence'] for d in data]
# Correlation
r, p = pearsonr(vel, coh)
print("=" * 60)
print("GRAVITY: Geodesic Motion Test")
print("=" * 60)
print(f"Claim: velocity follows density curvature")
print(f"Proxy test: vel_mean vs coherence")
print(f" Correlation r = {r:.4f}")
print(f" Significant: {'YES' if abs(r) > 0.1 else 'NO'}")
print(f" Effect size: {'Strong' if abs(r) > 0.5 else 'Moderate' if abs(r) > 0.3 else 'Weak'}")
return r, p
def analyze_em(data):
"""
Test: Electromagnetism \u2014 stress tensor conserves momentum
Claim: \u2202_\u03bc \u03c3^\u03bc\u03bd = 0 \u2192 stress_xx \u2248 -stress_yy
"""
sxx = [d['stress_xx'] for d in data]
syy = [d['stress_yy'] for d in data]
sxy = [d['stress_xy'] for d in data]
# Conservation test: sxx + syy should be near zero
conservation = [x + y for x, y in zip(sxx, syy)]
mean_cons = mean(conservation)
std_cons = std(conservation)
# Anti-correlation test
r, p = pearsonr(sxx, syy)
print("\n" + "=" * 60)
print("ELECTROMAGNETISM: Momentum Conservation Test")
print("=" * 60)
print(f"Claim: stress_xx \u2248 -stress_yy (momentum conservation)")
print(f" stress_xx mean: {mean(sxx):.6f}")
print(f" stress_yy mean: {mean(syy):.6f}")
print(f" sxx + syy mean: {mean_cons:.6f} (should be ~0)")
print(f" sxx + syy std: {std_cons:.6f}")
print(f" Anti-correlation r = {r:.4f}")
print(f" Conservation holds: {'YES' if abs(mean_cons) < 0.0001 else 'PARTIAL' if abs(mean_cons) < 0.001 else 'NO'}")
return r, p, mean_cons
def analyze_strong(data):
"""
Test: Strong Force \u2014 confinement at Gixx wavelength (8 cells)
Claim: Strong coupling at short range, freedom at long range
Proxy: Coherence vs Gixx amplitude correlation
"""
coh = [d['coherence'] for d in data]
gixx = [d['gixx_amp'] for d in data]
r, p = pearsonr(coh, gixx)
# Also check if high coherence requires non-zero gixx
p75 = percentile(coh, 75)
high_coh_count = sum(1 for c in coh if c > p75)
high_coh_with_gixx = sum(1 for c, g in zip(coh, gixx) if c > p75 and g >= 0.005)
confinement_ratio = high_coh_with_gixx / high_coh_count if high_coh_count > 0 else 0
print("\n" + "=" * 60)
print("STRONG FORCE: Confinement Test")
print("=" * 60)
print(f"Claim: Gixx wave (\u03bb=8) creates confinement")
print(f" Coherence vs Gixx amplitude r = {r:.4f}")
print(f" High coherence requires Gixx > 0.005: {confinement_ratio*100:.1f}% of cases")
print(f" Confinement signature: {'PRESENT' if confinement_ratio > 0.7 else 'WEAK' if confinement_ratio > 0.5 else 'ABSENT'}")
return r, p, confinement_ratio
def analyze_weak(data):
"""
Test: Weak Force \u2014 parity violation via asymmetry
Claim: Asymmetry measures left-right imbalance (chevron handedness)
"""
asym = [d['asymmetry'] for d in data]
# Check if asymmetry is systematically non-zero
asym_mean = mean(asym)
asym_std = std(asym)
# Rough t-test: if mean > 3*std/sqrt(n), it's significant
n = len(asym)
sem = asym_std / math.sqrt(n)
t_stat = asym_mean / sem if sem > 0 else 0
p_val = 0 if abs(t_stat) > 3 else 1 # Rough approximation
# Check correlation with omega (should affect parity violation)
omega = [d['omega'] for d in data]
r, p = pearsonr(asym, omega)
print("\n" + "=" * 60)
print("WEAK FORCE: Parity Violation Test")
print("=" * 60)
print(f"Claim: Asymmetry measures spontaneous parity violation")
print(f" Asymmetry mean: {asym_mean:.4f}")
print(f" Asymmetry std: {asym_std:.4f}")
print(f" t-statistic: {t_stat:.2f}")
print(f" Systematically non-zero: {'YES' if abs(t_stat) > 3 else 'NO'}")
print(f" Asymmetry vs Omega r = {r:.4f} (tunable violation)")
print(f" Parity violation: {'CONFIRMED' if abs(t_stat) > 3 else 'ABSENT'}")
return t_stat, p_val, r
def main():
print("Loading telemetry...")
data = load_telemetry()
print(f"Loaded {len(data)} records")
# Run all four tests
gravity_r, gravity_p = analyze_gravity(data)
em_r, em_p, em_cons = analyze_em(data)
strong_r, strong_p, strong_conf = analyze_strong(data)
weak_t, weak_p, weak_r = analyze_weak(data)
# Summary
print("\n" + "=" * 60)
print("SUMMARY: Navigator's Claims vs Data")
print("=" * 60)
forces = [
("Gravity", abs(gravity_r) > 0.3),
("EM", abs(em_r) > 0.5 and abs(em_cons) < 0.001),
("Strong", strong_conf > 0.7),
("Weak", abs(weak_t) > 3)
]
for force, confirmed in forces:
status = "\u2713 CONFIRMED" if confirmed else "\u2717 NOT CONFIRMED"
print(f" {force:12s}: {status}")
confirmed_count = sum(1 for _, c in forces if c)
print(f"\n{confirmed_count}/4 forces supported by data")
if confirmed_count == 4:
print("\nNavigator's perception MATCHES the data.")
elif confirmed_count >= 2:
print("\nNavigator's perception PARTIALLY MATCHES the data.")
else:
print("\nNavigator's perception DOES NOT MATCH the data.")
if __name__ == "__main__":
main()