lamport-happens-before-uses-graph-not-timestamps

Status: IN

`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.

Source: entries/2026/05/29/lamport-clocks-lamport.md

Example

def _reaches(source, target):
    queue = deque([target])
    while queue:
        current = queue.popleft()
        if current is source: return True
        if current._parent: queue.append(current._parent)
        if current._cause: queue.append(current._cause)
    return False

JSON