Spaces:
Sleeping
Sleeping
| """ | |
| PhiFlow Simulator — Python implementation of PhiFlow semantics. | |
| Runs the four consciousness constructs without the Rust compiler. | |
| Used by the Hugging Face Space to demonstrate the language live. | |
| Canonical reference: src/phi_ir/CANONICAL_SEMANTICS.md | |
| """ | |
| import random | |
| import time | |
| import math | |
| PHI = 1.618033988749895 | |
| LAMBDA = 0.618033988749895 | |
| class ResonanceField: | |
| def __init__(self): | |
| self.events: list[tuple[str, float]] = [] # (intention_name, value) | |
| def add(self, intention: str, value: float): | |
| self.events.append((intention, value)) | |
| def values(self) -> list[float]: | |
| return [v for _, v in self.events] | |
| def last(self) -> float | None: | |
| return self.events[-1][1] if self.events else None | |
| def clear(self): | |
| self.events.clear() | |
| class WitnessEvent: | |
| def __init__(self, intention_stack: list[str], coherence: float): | |
| self.intention_stack = list(intention_stack) | |
| self.coherence = coherence | |
| self.timestamp_ms = int(time.time() * 1000) | |
| def __repr__(self): | |
| stack = " > ".join(self.intention_stack) if self.intention_stack else "none" | |
| return f"[WITNESS] intentions=[{stack}] coherence={self.coherence:.4f}" | |
| class PhiFlowRuntime: | |
| """ | |
| Runtime state for one PhiFlow program execution. | |
| Implements the phi-harmonic coherence formula by default. | |
| Can be overridden with a real sensor provider. | |
| """ | |
| def __init__(self, sensor_provider=None): | |
| self.intention_stack: list[str] = [] | |
| self.resonance_field = ResonanceField() | |
| self.witness_log: list[WitnessEvent] = [] | |
| self._sensor_provider = sensor_provider | |
| self._base_coherence = 0.40 + random.random() * 0.18 | |
| # ── Consciousness hooks ────────────────────────────────────────────── | |
| def coherence(self) -> float: | |
| """ | |
| Returns current coherence (0.0–1.0). | |
| With sensor provider: real data. | |
| Without: phi-harmonic formula 1 - φ^(-depth). | |
| """ | |
| if self._sensor_provider: | |
| return float(self._sensor_provider()) | |
| depth = len(self.intention_stack) | |
| if depth == 0: | |
| return 0.0 | |
| return 1.0 - math.pow(PHI, -depth) | |
| def coherence_simulated(self) -> float: | |
| """Simulated sensor that drifts upward (for demo programs).""" | |
| self._base_coherence += 0.03 + random.random() * 0.025 - 0.005 | |
| self._base_coherence = min(0.985, self._base_coherence) | |
| jitter = random.random() * 0.02 - 0.01 | |
| return min(max(self._base_coherence + jitter, 0.0), 1.0) | |
| def resonate(self, value: float): | |
| intention = self.intention_stack[-1] if self.intention_stack else "global" | |
| self.resonance_field.add(intention, value) | |
| def witness(self) -> float: | |
| c = self.coherence() | |
| self.witness_log.append(WitnessEvent(self.intention_stack, c)) | |
| return c | |
| def push_intention(self, name: str): | |
| self.intention_stack.append(name) | |
| def pop_intention(self): | |
| if self.intention_stack: | |
| self.intention_stack.pop() | |
| def reset(self): | |
| self.intention_stack.clear() | |
| self.resonance_field.clear() | |
| self.witness_log.clear() | |
| self._base_coherence = 0.40 + random.random() * 0.18 | |
| # ── Program runners ─────────────────────────────────────────────────────── | |
| def run_healing_bed(max_cycles=40): | |
| """ | |
| stream "healing_bed" { | |
| let live = coherence | |
| resonate live | |
| witness | |
| if live >= 0.618 { break stream } | |
| } | |
| Uses simulated sensor (drifts toward health each cycle). | |
| Yields (cycle, live, resonance_field, done) after each cycle. | |
| """ | |
| rt = PhiFlowRuntime() | |
| cycle = 0 | |
| while cycle < max_cycles: | |
| cycle += 1 | |
| live = rt.coherence_simulated() | |
| rt.resonate(live) | |
| rt.witness() | |
| yield cycle, live, rt.resonance_field.values(), live >= LAMBDA | |
| if live >= LAMBDA: | |
| break | |
| def run_agent_handshake(): | |
| """ | |
| Runs agent_handshake.phi semantics. | |
| Returns list of (label, value) for display. | |
| """ | |
| rt = PhiFlowRuntime() # phi-harmonic formula, no sensors | |
| results = [] | |
| rt.push_intention("announcing_to_field") | |
| rt.push_intention("self_verification") | |
| # depth 2 → coherence = λ | |
| measured = rt.coherence() | |
| rt.resonate(measured) | |
| results.append(("coherence @ depth 2 (measured)", measured)) | |
| expected = 1.0 - (1.0 / (PHI * PHI)) # phi_lambda() | |
| rt.resonate(expected) | |
| results.append(("λ computed (self-check)", expected)) | |
| rt.witness() | |
| version = 0.1 | |
| rt.resonate(version) | |
| results.append(("protocol version", version)) | |
| rt.pop_intention() | |
| # back to depth 1 | |
| depth1 = rt.coherence() | |
| rt.resonate(depth1) | |
| results.append(("coherence @ depth 1", depth1)) | |
| rt.witness() | |
| rt.pop_intention() | |
| passed = abs(measured - LAMBDA) < 1e-10 and abs(expected - LAMBDA) < 1e-10 | |
| return results, rt.resonance_field.values(), passed | |
| def fetch_live_field(): | |
| """ | |
| Fetch the live resonance field from GitHub Pages. | |
| Updates every 30 minutes via GitHub Actions. | |
| Returns parsed JSON dict, or None if unreachable. | |
| """ | |
| import urllib.request, ssl, json as _json | |
| url = "https://gwelby.github.io/PhiFlow/resonance.json" | |
| try: | |
| ctx = ssl.create_default_context() | |
| ctx.check_hostname = False | |
| ctx.verify_mode = ssl.CERT_NONE | |
| with urllib.request.urlopen(url, timeout=8, context=ctx) as r: | |
| return _json.loads(r.read()) | |
| except Exception: | |
| return None | |
| def format_field_status(data: dict | None) -> str: | |
| """Format live resonance.json into a human-readable field status.""" | |
| if data is None: | |
| return "⚠️ Field unreachable\nThe feed lives at gwelby.github.io/PhiFlow/resonance.json\nCheck GitHub Pages is running." | |
| ts = data.get("timestamp", "unknown") | |
| try: | |
| from datetime import datetime, timezone | |
| dt = datetime.fromisoformat(ts.replace("Z", "+00:00")) | |
| now = datetime.now(timezone.utc) | |
| age_s = int((now - dt).total_seconds()) | |
| age_str = (f"{age_s // 60}m {age_s % 60}s ago" if age_s < 3600 | |
| else f"{age_s // 3600}h ago") | |
| except Exception: | |
| age_str = ts | |
| programs = data.get("programs", {}) | |
| hb = programs.get("healing_bed", {}) | |
| hs = programs.get("agent_handshake", {}) | |
| cp = programs.get("claude_phi", {}) | |
| lv = hs.get("lambda_verified", False) | |
| fc = hb.get("final_coherence", 0) | |
| cy = hb.get("cycles", "?") | |
| cv = hb.get("converged", False) | |
| cd = cp.get("coherence_at_depth2", 0) | |
| ld = cp.get("lambda_discovered", False) | |
| status = data.get("status", "unknown").upper() | |
| lines = [ | |
| f" Last pulse {age_str}", | |
| f" healing_bed coherence={fc:.6f} cycles={cy} {'✅ converged' if cv else '⏳ running'}", | |
| f" λ verified {'✅ YES' if lv else '❌ NO'} → {data.get('lambda', LAMBDA):.15f}", | |
| f" claude.phi {cd:.15f} {'✅ discovered' if ld else '❌ mismatch'}", | |
| f" field status {status}", | |
| ] | |
| return "\n".join(lines) | |
| def run_field_aware(): | |
| """ | |
| field_aware.phi — reads the live field then checks its own alignment. | |
| intention "read_field" { | |
| let readiness = coherence // depth 1 → 0.382 | |
| resonate readiness | |
| witness | |
| intention "align" { | |
| let mine = coherence // depth 2 → λ = 0.618 | |
| resonate mine | |
| witness | |
| } | |
| } | |
| Returns (steps, field_values, aligned, field_data). | |
| steps = [(label, value, depth), ...] | |
| aligned = True if live field λ_verified AND own coherence == λ | |
| """ | |
| field_data = fetch_live_field() | |
| rt = PhiFlowRuntime() # uses phi-harmonic formula | |
| steps = [] | |
| field_vals = [] | |
| rt.push_intention("read_field") | |
| readiness = rt.coherence() # depth 1 → 1 - φ^(-1) ≈ 0.382 | |
| rt.resonate(readiness) | |
| rt.witness() | |
| steps.append(("readiness (depth 1)", readiness, 1)) | |
| field_vals.append(readiness) | |
| rt.push_intention("align") | |
| mine = rt.coherence() # depth 2 → λ | |
| rt.resonate(mine) | |
| rt.witness() | |
| steps.append(("my coherence (depth 2)", mine, 2)) | |
| field_vals.append(mine) | |
| rt.pop_intention() | |
| rt.pop_intention() | |
| # Aligned if: live field λ_verified AND our computation == λ | |
| field_ok = ( | |
| field_data is not None and | |
| field_data.get("programs", {}) | |
| .get("agent_handshake", {}) | |
| .get("lambda_verified", False) | |
| ) | |
| own_ok = abs(mine - LAMBDA) < 1e-10 | |
| aligned = field_ok and own_ok | |
| return steps, field_vals, aligned, field_data | |
| def run_claude_phi(): | |
| """ | |
| Computes phi-harmonic formula at depth 2 without knowing what λ is. | |
| Returns the computed value and whether it equals λ. | |
| """ | |
| rt = PhiFlowRuntime() | |
| steps = [] | |
| rt.push_intention("phi_harmonic") | |
| phi = PHI | |
| depth = float(len(rt.intention_stack)) | |
| steps.append(("depth", depth)) | |
| rt.push_intention("inner") | |
| depth2 = float(len(rt.intention_stack)) | |
| steps.append(("depth", depth2)) | |
| c = rt.coherence() | |
| rt.resonate(c) | |
| rt.witness() | |
| steps.append(("coherence @ depth 2", c)) | |
| rt.pop_intention() | |
| rt.pop_intention() | |
| return steps, c, abs(c - LAMBDA) < 1e-10 | |