Keep every explanation and worked example on the page. Nothing moves or plays by itself, and the larger instruments load only when you ask.
Special relativity · Clock synchronization
How do distant clocksagree on a time?
A signal goes out, bounces off a distant clock, and comes back. Splitting the round-trip time in half is Einstein's stated procedure for giving a time to something far away. It is a stated agreement, not an independent measurement of the two one-way travel times.
An executable model
Clock synchronization with the event ledger
Static worked example
Model note
Assigned remote time (stated procedure) (assignedRemoteTime), Round-trip speed of light (roundTripSpeed) and Criterion check (declared clock B) (criterionOffset): Host calculation, by the site's own reference code. Computed in events.synchronizationRound.
Rod chase, outbound leg (section 2) (chaseOutboundLeg) and Rod chase, return leg (section 2) (chaseReturnLeg): Host calculation, by the site's own reference code. Computed in events.movingRodLegs.
Desynchronization of the moving pair (platform frame) (desynchronization): Host calculation, by the site's own reference code. Computed in events.desynchronizationObserved.
One-way speed of light (by convention) (oneWayLightSpeed): Host calculation, by the site's own reference code. Computed in events.byConvention.
Computed from the settings last applied (settings revision 1, result 1).
Not modeled: signal delays in cables or electronics; gravitational effects; accelerated or rotating clocks; clock mechanisms; the optical appearance of distant clocks; detector response times; any measurement of one-way light speed.
Predict before the numbers
A pair of clocks rides past at a steady speed, and the riders set their clocks with the same light-signal rule. Judged by our clocks, what do theirs show?
The result appears when you choose, say you have one in mind, or skip.
Event ledger (frame of description: v/c = 0)
Event
Kind
Clock
Clock's own reading (s)
Coordinate time (s)
Coordinate position (ls)
emission-a
emission
A
0
0
0
reflection-b
reflection
B
10
10
10
reception-a
reception
A
20
20
0
Assigned remote time (stated procedure)
10 s
Round-trip speed
1 ls/s
Criterion check (declared clock B)
synchronized by definition
Section 2 rod chase: outbound / return legs
10 s / 10 s
Desynchronization of the moving pair (platform frame)
6 s
One-way light speed
not applicable (The model defines the one-way light speed by convention (Einstein's synchronization procedure), rather than measuring it independently.)
Three-station transitivity (A, B, C, mutually at rest)
transitive
Presets:
Worked example: the light-signal rule sets the clock at B, 10 ls from A, to 10 s; the pair moving at 0.6c, 10 ls apart, has clocks that read 6 s apart, judged from the platform.
To give a time to something that happens far away, send a light signal there, let it bounce back, and take the moment halfway between sending and return. Two clocks set this way while riding together do not agree when they are judged from a platform they pass.
Section 1 starts from the fact that every statement of time is a statement about simultaneous events: the train arrives, and the small hand of my watch points to 7. A clock at A times the events near A, and a like clock at B times the events near B, but nothing yet gives A and B a common time. Einstein supplies one by definition: the time light takes from A to B is set equal to the time it takes from B back to A. A ray leaves A at A-time tA, is reflected at B at B-time tB, and returns at A-time t′A; the clocks run synchronously when tB − tA = t′A − tB. He then fixes, in agreement with experience, that 2AB/(t′A − tA) = V, the speed of light in empty space, is a universal constant. In the lab a flash sent at 0 s and returned at 10 s gives the reflection the time 5 s; the one-way speed is never measured, and the lab reports it as not applicable. Section 2 applies the same test to clocks at the ends of a rod of length rAB that moves at v, with the clocks set in the resting system. Riders find tB − tA = rAB/(V − v) and t′A − tB = rAB/(V + v), 25 s and 6.25 s for 10 light-seconds at 0.6V, so they judge the clocks out of step. By the transformation of section 3, a pair set in step by its own riders a distance L apart reads out of step on the platform by vL/V²: 6 s for L = 10 light-seconds at 0.6V, with the trailing clock ahead.
Why a definition is needed: to measure how long light takes from A to B you must read the departure on A's clock and the arrival on B's, and that already assumes the two clocks agree, which is the thing to be settled. So section 1 does not measure the one-way time; it stipulates that the two legs take equally long. The rule gives B's clock the reading at reflection tB = tA + (t′A − tA)/2, halfway between sending and return on A's clock. With stations 5 light-seconds apart, a flash sent at 0 s is back at 10 s, so the reflection is assigned 5 s; a second flash sent at 20 s is back at 30 s and is assigned 25 s, which is consistent with the first. The round trip needs only A's clock, so it is a real measurement: with stations 10 light-seconds apart the flash is back after 20 s, and 2 × 10/20 = 1 light-second per second, the speed V. Einstein also assumes, without proof, that the rule is symmetric (if B is in step with A, then A is in step with B) and transitive (two clocks in step with a third are in step with each other). Section 2 moves the rod. Its clocks are set in the resting system, and riders test them with the same rule. Going out, the light must catch the far end, which recedes at v: after a time T the light has gone VT and the end has reached rAB + vT, so T = rAB/(V − v) = 10/(1 − 0.6) = 25 s. Coming back, the near end runs to meet the light: T = rAB/(V + v) = 10/1.6 = 6.25 s. The legs are unequal, so by the riders' own test the clocks are not in step. For a pair set in step by its riders, section 3's transformation τ = β(t − vx/V²), with β = 1/√(1 − v²/V²), gives the answer on the platform. At one platform time t, the two clocks stand L/β apart, so their readings differ by β × v × (L/β)/V² = vL/V². For L = 10 light-seconds and v = 0.6V that is 0.6 × 10 = 6 s. The clock at smaller x, the trailing one, reads more, and at v = 0 the offset vanishes.
Modern qualifications
Einstein writes V for the speed of light (today's c) and states the rule 'durch Definition': the equal legs are a stipulation, the constancy of the round-trip speed is fixed 'der Erfahrung gemäß', and symmetry and transitivity are assumed. In 1900 Poincaré had described observers who set their clocks by exchanging light signals while moving through the ether and so obtain Lorentz's local time, to first order in v/V. Whether the equal-legs rule is a free choice was argued later, as a modern lens: Reichenbach (1928) wrote the reflection time as tA + ε(t′A − tA), with Einstein's choice ε = 1/2; Ellis and Bowman (1967) showed that slowly carried clocks agree with ε = 1/2 only in the limit of vanishing transport speed; Malament (1977) argued that the standard choice is the only one definable from the causal structure of one inertial frame, a claim still debated. The paper does not say that light is the only way to compare distant clocks.
Show the code
The site’s own reference code for this law, in TypeScript. It computes the numbers above when the page runs it, and it is what the page uses wherever a FrankenSim result is not available.
synchronizationRound · src/physics/reference/events.ts · this site’s source, as built · sha256:1557f3d2d285dee31050bddc7756e77ad268c548679ea2df033a0cc82ce8329b
This function computes the listed outputs when it runs.
In words
This is § 1's definition, computed. Given the time a signal left A, the time its echo returned to A, and the separation, it assigns the distant clock the average of the two local readings, and reports the round-trip speed over that separation. It also returns criterionOffset, which is the outward interval minus the return interval as the definition assigns them, and which is therefore zero by construction.
Implementation
exportfunctionsynchronizationRound(input:SynchronizationRoundInput,):KinematicResult<SynchronizationRoundResult>{const{emissionTimeA,receptionTimeA,separationLs}=input;if(!finite(emissionTimeA,receptionTimeA)){returnoutsideDomain("nonfinite-input","Emission and reception times must be finite.");}if(receptionTimeA<=emissionTimeA){returnoutsideDomain("invalid-round-trip","A round trip's reception must occur strictly after its emission.",);}constbadSeparation=refuseSeparation(separationLs);if(badSeparation)returnbadSeparation;constassignedRemoteTime=(emissionTimeA+receptionTimeA)/2;constroundTripSpeedLsPerS=(2*separationLs)/(receptionTimeA-emissionTimeA);constcriterionOffset=assignedRemoteTime-emissionTimeA-(receptionTimeA-assignedRemoteTime);returnok({assignedRemoteTime,roundTripSpeedLsPerS,equalsC:Math.abs(roundTripSpeedLsPerS-C)<=1e-9,criterionOffset,});}
The site’s own reference code for this law, in TypeScript. It computes the numbers above when the page runs it, and it is what the page uses wherever a FrankenSim result is not available.
movingRodLegs · src/physics/reference/events.ts · this site’s source, as built · sha256:869f8dd7ae1e8ef5ed98cd28e30e035ff460262b1e9283049cf6506176530b22
This function computes the listed outputs when it runs.
In words
A light signal runs from one end of a moving rod to the other and back. Measured in the resting system the light travels at c while the far end runs away at beta, so the gap closes at c minus beta on the way out; on the return the near end runs to meet the light and the gap closes at c plus beta. The function returns both legs and, as criterionSatisfiedInStationaryFrame, whether they are equal, which happens only when beta is zero.
The site’s own reference code for this law, in TypeScript. It computes the numbers above when the page runs it, and it is what the page uses wherever a FrankenSim result is not available.
desynchronizationObserved · src/physics/reference/events.ts · this site’s source, as built · sha256:1c9a8f695ba4e2c163566af44652e1a0b949caa26c80de55c70ab629d4c04dfb
This function computes the listed outputs when it runs.
In words
Two clocks synchronised in their own system are not synchronised in the system they move through: the trailing one reads ahead, by the separation times the speed over the square of the light speed, and the function returns that magnitude with which clock leads.
The two one-way transit times of the synchronizing signal are set equal by definition, not measured: Einstein's stated procedure (paper 3, section 1). Alternative: slow clock transport. Requires a dynamical assumption about how a clock's rate depends on its motion, not merely a convention about signals. In the limit of vanishingly slow transport, within one inertial frame, it agrees with the light convention; at any finite transport speed the two differ by an amount that goes to zero with the transport speed. This is a limiting statement, never an exact equivalence at finite speed.
Open the derivation
Einstein's criterion
A signal leaves clock A at time tA, reflects at the distant clock B, and returns to A at tA′. The paper does not measure B's reading at reflection; it assigns it by definition as the midpoint:
The round-trip speed 2⋅AB/(tA′−tA) then equals c in the frame where the procedure is applied. The procedure was built to give that result; it does not measure the speed of light.
Section 2: the moving rod
Running the same procedure on the two ends of a moving rod gives two different leg times in the stationary frame: an outbound leg rAB/(c−u) and a return leg rAB/(c+u), because the receiving end has moved during the light's travel. For observers moving with the rod, the criterion that held for the stationary observer fails.
Clocks that move disagree, once you compare them
A pair of clocks synchronized this way in their own rest frame, but moving together at speed v, is found out of step by vL/c² in the platform frame, with the trailing clock ahead. Try the moving-pair preset above and predict the answer before revealing it.
Light is not the only way
The paper chooses light because it makes the assumption it is making visible, not because light is the only possible way to compare distant clocks. Slow clock transport is a coherent alternative: carry a clock, synchronized side by side with another, out to the distant station. It requires its own assumption, about how a clock's rate depends on its motion, and agrees with the light convention only in the limit of vanishingly slow transport.
Einstein's 1905 argument about simultaneity uses lightning striking the two ends of a moving train.
The paper's argument uses clocks at two places, A and B, and a light signal sent from A, reflected at B and returned. There is no train and no lightning in it.