Closing loops in the timing graph¶
Where two independent routes reach the same clock, the offsets around the loop must sum to zero. Three measured loops close within their noise; the BIS loop closes up to a constant latency; the proposed EMR loop is not a loop at all.
| Date | 2026-10-13 |
| Status | current |
| Methods | One event, two clocks |
| Techniques | Null controls |
| Clocks | SNUADC sample clock, BIS clock, Primus clock, CardioQ clock, Recorder PC clock, Hospital records clock |
| Devices | SNUADC, BIS monitor, Primus anaesthesia machine, CardioQ, EV1000, Vital Recorder, Clinical records |
| Variables | Arterial pressure (SNUADC), CardioQ pressure and flow, EV1000 mean arterial pressure, BIS EEG, Airway pressure (Primus), Anaesthesia record events |
Background¶
The links outward from UTC form a tree. Any further link between two nodes closes a loop, and a loop that does not close means one of its links rests on a wrong assumption. Where two routes meet is where an assumption can be tested rather than defended. With several loops, all links can be fitted together as a network adjustment, as in survey levelling or clock ensembles.
Data¶
Four loops, each from data measured for another study:
- Arterial pressure three ways: the 15 cases with SNUADC, CardioQ and EV1000 arterial pressure; 14 had usable 30-minute EV1000 blocks (145 blocks).
- BIS EEG: the burst lags of 145 benchmark cases with BIS (Shared bursts between the ECG and the EEG) against both devices' stamps.
- Ventilation: 57 large changes in the breath-matched Primus lag from The Primus ventilator against SNUADC, by breaths.
- EMR clock and recorder clock: the EMR times and the recorder EVENT track in all 6,388 cases.
Method¶
For each loop, the offset measured directly between two devices was compared with the sum of the offsets along the other route:
- Arterial pressure three ways: EV1000 − SNUADC against (EV1000 − CardioQ) + (CardioQ − SNUADC), per 30-minute EV1000 block; EV1000 − CardioQ is measured without SNUADC.
- BIS EEG: the burst lag's ramps, steps and constant against both devices' own stamps.
- Ventilation: jumps in the breath-matched Primus lag against Primus stamp re-anchors; two physiological arms (CVP; systolic pressure) against each other.
- EMR clock and recorder clock: the proposed offset from where entries cluster on 5-minute marks.
Results¶
| Loop | Result | Verdict |
|---|---|---|
| Arterial pressure three ways | 14 cases, 145 blocks: residual median +0.13 s (p10–p90 −0.97 to +1.18 s); within 1 s in 75%, 2 s in 96% | Closes, within the CardioQ's re-anchoring spread |
| BIS EEG | Drift within 25 ppm in 108 of 145 cases (r = 0.88); 79% of lag jumps on a stamp step (chance 12%); a constant −0.80 s (step mode) or −0.69 s (frequent mode; −0.66 s over the whole release) remains | Closes in drift and steps; the constant is a latency |
| Ventilation | 72% of 57 large lag changes fall on a Primus stamp jump; the physiological arms differ by 37–46 ppm | Partly closes; physiological arms too weak |
| EMR and recorder | Both arms are measured from the recorder's case start, so any offset cancels; the recorder EVENT track repeats the clinical table's times exactly | Degenerate: not a loop |
Network adjustment over the whole release (20 October). Every measured link of every recording is now an edge
with a value and a standard error (2,077 recordings; tools/clock_edges.py), and each
recording's clock network is adjusted by weighted least squares
(tools/clock_reconcile.py, on the dataset-independent physiosync/network.py).
Its fundamental loops give the misclosures:
| Loop | Loops | Misclosure, median (p25–p75) | Share with abs(z) > 3 |
|---|---|---|---|
| BIS–SNUADC–PC (BIS steps, ECG–EEG bursts, SNUADC resets) | 253 | +1.3 ppm (−3.7 to +7.8) | 17% |
| Primus–PC, two routes (breath matching, PIP numerics) | 166 | −2.9 ppm (−48.9 to +46.7) | 5% |
Both close on average. The variance factors (2 to 5 by method; 1 would mean the stated standard errors are right) show the standard errors are still too small, so single-recording flags are not yet trusted.
Discussion¶
The relative uncertainty between two signals depends only on the links between them and their nearest common node; everything above that node is shared and cancels. The BIS constant belongs in the BIS link as a latency. The EMR clock's offset cannot be separated from documentation lag without a time from outside the release.
Observations it supports¶
| Observation | Status | Summary |
|---|---|---|
| The EEG–ECG offset is fixed by the SNUADC correction mode | established | After the stamp model, BIS EEG still lags the SNUADC ECG by a constant: −804 ms in step mode and −660 ms in frequent-correction mode over the whole release, tight within a port or unit. The mode, a property of the setup, sets the constant. |
| The EMR clock's offset cannot be separated from documentation lag | established | Both routes between the EMR clock and the recorder run through the case start, so any EMR clock offset cancels. Without a time from outside the release it is confounded with how late entries are made. |
| The EVENT track repeats the clinical table | established | In 411 random cases the recorder EVENT track's four entries equal the clinical table's case start, operation start, operation end and case end exactly: the release generated them from the table. |
Open questions¶
- The BIS constant as processing latency (weakly supported hypothesis). The loop closes in drift and steps but leaves −0.80 s (step mode) or −0.69 s (frequent mode; −0.66 s over the whole release). A processing latency in the BIS is the working explanation; it fits the sign and size but has no direct evidence, and it does not explain why the constant differs between modes.
- The ventilation loop only partly closes (unexplained phenomenon). The ventilation loop only partly closes: its two physiological arms differ by 37–46 ppm.