Hold time protects the captured value after the clock edge, so a next data change that arrives too early can invalidate an otherwise planned capture. The seconds in this ledger are exact training times for the setup/hold inequality; real timing closure uses characterized device delays, clock uncertainty, metastability risk, and measurement margins.
Negative hold slack rejects the capture attempt. Exact arithmetic here means exact results for the stated model inputs; measured inputs still carry uncertainty and significant-figure limits.
highlighted = computed this step
An early next change makes hold slack negative
The next data change is at 17/2 seconds, which is too soon after the edge.
217s+(−8s)+(−1s)=2−1s
Earlier next-change rows cross the hold boundary
The data-arrival row stays safely before setup while the next change moves toward the edge.