{"id":"lamport-happens-before-uses-graph-not-timestamps","text":"`happens_before()` determines causality by BFS over `_parent`/`_cause` edges in the event DAG, not by comparing timestamps; the `all_events` parameter is accepted but never used.","truth_value":"IN","source":"entries/2026/05/29/lamport-clocks-lamport.md","source_url":"","source_hash":"","justifications":[],"dependents":[],"metadata":{"example":"def _reaches(source, target):\n    queue = deque([target])\n    while queue:\n        current = queue.popleft()\n        if current is source: return True\n        if current._parent: queue.append(current._parent)\n        if current._cause: queue.append(current._cause)\n    return False"},"explanation":{"steps":[{"node":"lamport-happens-before-uses-graph-not-timestamps","truth_value":"IN","reason":"premise"}]}}