Conflict-serializability is decided by a deterministic graph cycle check.

highlighted = computed this step

Why the check is exact

The engine does not estimate serializability. It builds a graph from conflicts, checks for a cycle, and renders the resulting facts. Note: deterministic graph order makes the result stable.

exact graph check\text{exact graph check}

Deterministic facts

The recomputed edge count is 2 and the cycle length is 2. Note: rerunning the compile produces the same graph facts.

edges=2,cycle length=2\text{edges}=2,\quad \text{cycle length}=2

conflict-serializability is an exact SUFFICIENT criterion; a cyclic precedence graph is provably not conflict-serializable; view-serializability, lock scheduling, and recovery are beyond these tiny traces - no product claims.

Exact cycle checkstepT1T20R(A)1W(A)2W(B)3W(B) conflict-serializable: no; cycle: T1,T2T1T2

Summary

The exact core is conflict edges plus a cycle check. Note: conflict-serializability is exact here; view-serializability, locks, and recovery are deferred.

exact core\text{exact core}