Chapter 15
Your Spacetime Simulator
Everything you built, working together, plus the Paradox Court.
What this chapter does
This is the last chapter. You put the functions from the whole course together into one working simulator of space and time. Then you call it as the witness in six famous arguments that relativity contradicts itself.
- Meet your simulator (about 20 minutes). Fly the twin trip from Chapter 11 again, jump between frames, and see what each twin sees. Then open it up and check whose code each number comes from.
- The Paradox Court (about 45 minutes). Six cases. In each one you look from both frames, measure, and give a verdict.
- Finish the toolkit (about 25 minutes). Build one last function, take the final checkpoint, and get a first look at gravity.
You don’t need to have written every function. Where a part of yours is missing, the simulator borrows ours and tells you so.
Warm-up
Three quick ones. Each is a part your simulator runs on today.
From Chapter 5. What is the stretch factor \(\g\) at \(v = 3/5\)? Fractions like 5/4 are fine.
That’s \(\sqrt{1 - v^2}\), which is \(1/\g\). Which of the two is bigger than 1?
Hint
\(1 - 0.6^2 = 0.64\), and \(\sqrt{0.64} = 0.8\). Now take one over that.
Solution
\(\g = 1/\sqrt{1 - 0.36} = 1/0.8 = 5/4 = 1.25\). It’s the 3-4-5 triangle again: Lin measures 5 for every 4 of Rae’s.
From Chapter 6. Event A is at (t 0, x 0) and event B is at (t 5, x 3), in meters. How are they separated?
Hint
Compute \(\Delta t^2 - \Delta x^2\) and look at its sign.
Solution
\(\inv{\tau^2} = 5^2 - 3^2 = 16 > 0\): timelike. A clock moving at \(0.6\) gets from A to B and reads 4 on arrival.
From Chapter 10. Rae’s rocket moves at \(v = 0.6\). Find the rocket coordinates of the lab event (t 5, x 3).
That’s \(t - vx\) without the \(\g\). The machine stretches it by \(\g = 1.25\). What do you get?
Hint
\(t' = \g(t - vx)\) and \(x' = \g(x - vt)\), with \(\g = 1.25\).
Solution
\(t' = 1.25\,(5 - 1.8) = 4\) and \(x' = 1.25\,(3 - 3) = 0\). The event sits on Rae’s own worldline, and her clock reads 4 there.
The puzzle
Fifteen chapters ago you wrote one small function: the hypotenuse of a triangle. Since then you’ve written a stretch factor, an interval, a Lorentz machine, an odometer for wristwatch time, a Doppler factor, a rule for adding speeds and a recipe for energy. Each one is a law of Nature in your own hand, checked against Nature’s numbers.
Today we bolt them together into a small universe: ships, flashes of light, firecrackers, and clocks that age the way real clocks do. Build your own universe. Then we take it to court. Six famous paradoxes are waiting, each a place where common sense says relativity contradicts itself. Your simulator is the witness.
“What I cannot create, I do not understand.”
Written on Richard Feynman’s blackboard at the time of his death, 1988
Experiment
Below is your simulator, loaded with the trip from Chapter 11. Lin stays home. Rae flies 3 light-years out at \(v = 3/5\) and comes back. Each ship is a worldline with a tick for every year on its own wristwatch. The dashed line is the now-line: all the events that the frame you’re viewing from calls “now”. The clocks read each ship’s wristwatch time where its worldline crosses that line.
Other kinds of line turn up as you explore. Each time a new one appears, the key under the diagram says what it is.
- Drag the time slider, or press Space to play.
- Click a ship’s clock (or its worldline) to jump into its frame. The diagram redraws itself in that ship’s coordinates, and the now-line becomes the ship’s now.
- In “What they see”, pick whose eyes to use. It starts with Lin’s. The strip shows where each ship appears to be, which is not where it is.
Three things to try, each about a minute. Read one, do it in the simulator just below, then come back for the next.
Try it 1
Before you touch anything: at the reunion, whose clock will read more, and by how much? Commit to a guess. Then drag the lab time to 10 and read both clocks.
Check your reading
Lin 10.00 y and Rae 8.00 y, the numbers of Chapter 11: 10 years against 8.
Try it 2
Set the lab time to 4.9, just before Rae turns, and click Rae’s clock to jump into her outbound frame. What does Lin’s clock read on Rae’s now-line? Write it down. Now guess: two tenths of a year later in the lab, at 5.1, just after the turn, will Lin’s clock on Rae’s new now-line read about the same, a little more, or years more? Then go back to the lab (the “Back to the lab frame” button), set 5.1, jump into Rae’s frame again, and read Lin’s clock.
Check your reading
About 3.14 at 4.9, then about 6.86 at 5.1: years more, for only 0.2 years of lab time. Exactly at the turn the two readings are 3.2 and 6.8, a jump of 3.6 years. (4.9 and 5.1 sit a tenth of a year either side of the turn, so their readings land a little outside 3.2 and 6.8.) We work out 3.2 and 6.8 by hand below.
Try it 3
“What they see” starts with Lin’s eyes. Predict first: while Rae flies away, does Lin see Rae’s clock sped up or slowed down? Then read the Doppler factor \(k\) on the strip. When does the light from the turn reach Lin, and what does she see after that?
Check your reading
Slowed: \(k = 0.5\) while Rae recedes, so Lin sees Rae’s clock run at half speed. The light from the turn reaches Lin at \(t = 8\), and from then on \(k = 2\): Lin sees Rae’s clock run twice as fast.
At the reunion H, Lin’s clock reads 10 years and Rae’s reads 8. With JavaScript on, this becomes a working simulator.
Describe this lab
A spacetime diagram (time up, space across, light at 45°) shows each ship as a worldline with a tick mark for every year of its own wristwatch time. Gold lines are flashes of light. A dashed now-line marks the events that the chosen frame calls simultaneous. Under the diagram, a strip shows where each ship appears to the chosen observer, tinted by the Doppler factor, beside where the frame reckons it is.
Beside the diagram: a time slider with Play (Space), a row of clocks (one per ship, each a button that jumps into that ship’s frame), and a measure panel for two events (interval, class, wristwatch time) and a ruler between two ships. The scene list holds a free-play scene, six court cases and four challenges. “Edit the scene” adds ships, turning points, events and flashes, with number inputs for every coordinate. Scenes can be exported and imported as files of plain data. The Describe button gives a text summary and a table of every clock.
Then make it yours. The scene list holds the six court cases and four challenges. “Edit the scene” adds ships, turning points, events and flashes. Export your universe as a file and send it to a friend; import theirs. A scene file is plain data, numbers and names, and never code.
How your simulator thinks
Nothing in the simulator is new physics. Every number it shows comes from one of ten small functions, each built in an earlier chapter. The simulator holds two versions of each. One is ours: the reference library. The other is yours, if you wrote it and it passed its tests. Your code runs in a sandbox, a sealed corner of the page where it can compute numbers but can’t touch anything else.
The table below is the parts list. Each part is in one of three states:
- Yours. You wrote it and it passes its tests, so the simulator runs your code. A Use reference button appears beside it in the table. Press it and the simulator runs ours instead. If yours passes, nothing on screen moves: that is what passing means.
- Failing. You wrote it, but it doesn’t pass yet. The simulator uses ours until it does.
- Not written yet. The simulator uses ours. The button appears once you build the part in its chapter (linked in the table) and it passes. Until then, the swap test under the table shows the same thing with a sample solution.
Your status for each part appears here when JavaScript is on.
| Part | Status | Built in | The simulator uses it to… |
|---|---|---|---|
gamma(v) | — | Ch 5 | give each ship’s stretch factor in the frame you view from |
intervalSquared(a, b) | — | Ch 6 | give the squared interval between two chosen events |
classify(a, b) | — | Ch 6 | decide whether one event can influence another |
properTime(a, b) | — | Ch 6 | give the wristwatch time between two chosen events |
simultaneityLine(v, t′) | — | Ch 7 | draw the now-line of the frame you view from |
lorentz(event, v) | — | Ch 10 | place events in the frame you jump into |
wristwatchTime(path) | — | Ch 11 | run every ship’s clock |
dopplerFactor(v) | — | Ch 12 | tint what each ship sees |
addVelocities(u, v) | — | Ch 13 | find each ship’s speed relative to the frame you view from |
momenergy(m, v) | — | Ch 14 | give each ship’s energy and momentum per unit mass |
One more part, trip(d, v), isn’t in the simulator. You build it at the end of this chapter, and it runs the trip planner there.
The swap test
Passing the tests means something you can check. Two different versions of wristwatchTime() that pass the tests should give the same clock readings to at least nine decimal places, far more than the clocks show. This test runs one trip through two versions, prints each answer to nine decimal places, and shows how far apart they are.
With JavaScript on, the swap test runs here. For Rae’s whole trip, the reference gives 8.000000000 years, and a sample solution written a different way gives 8.000000000 years.
That is what passing the tests meant. Ours and the sample part company only around the twelfth or thirteenth decimal place (the Difference line shows it), where a computer rounds its arithmetic.
To see the parts cooperate, let’s do by hand what the simulator did when you jumped into Rae’s frame. The question is the one that worried Sagredo: what does Lin’s clock read on Rae’s now-line, just before and just after the turn?
- The turn is the event T = (t 5, x 3). Rae’s outbound frame moves at \(v = 0.6\), so \(\g = 1.25\). In that frame, T happens at \(\rkt{t'} = 1.25\,(5 - 0.6 \times 3) = 1.25 \times 3.2 = 4\). This is your
lorentz(). The outbound frame’s clocks were set to 0 at O, where Rae’s watch also read 0, and she rides with that lattice. So its clock beside her agrees with her watch: 4. - Lin sits at \(x = 0\), so any event on her worldline, (t, 0), has \(\rkt{t'} = 1.25\,t\). Put \(x = 0\) into the same formula.
- “Now”, for Rae, means the same \(t'\) as T. So \(1.25\,t = 4\), and \(t = 3.2\): Lin’s clock reads 3.2. Lin is at rest in the lab, so her wristwatch reads lab time.
wristwatchTime()of her straight path from (0, 0) to (3.2, 0) is 3.2. - After the turn, Rae’s frame moves at \(v = -0.6\). Now T has \(\rkt{t'} = 1.25\,(5 + 0.6 \times 3) = 8.5\), and the event on Lin’s worldline with \(t' = 8.5\) has \(t = 6.8\). Same machine, new frame: only the sign of \(v\) changed. The inbound lattice was also set to \(t' = 0\) at O, so its clock beside T reads 8.5, even though Rae’s watch there reads 4. A frame’s time is its lattice’s, not the traveler’s; only the slope of the now-line matters for the question.
- So Rae’s “now at Lin” leaps from 3.2 to 6.8 as she turns. Lin’s clock never leapt. Rae changed which of Lin’s events she calls “now”. The 3.6 years between were always there, ticked off one by one on Lin’s worldline. Rae’s outbound now-lines sweep up to 3.2, her inbound ones start from 6.8.
The shorthand for steps 1 to 3 is the now-line of a frame moving at \(v\), written in lab coordinates:
\[ \lab{t} = v\,\lab{x} + \frac{\rkt{t'}}{\g}. \]
That is your simultaneityLine(v, tPrime) from Chapter 7: slope \(v\), intercept \(t'/\g\). The simulator draws that line, slides it up as time runs, and finds where each worldline crosses it. Each clock then reads wristwatchTime() of its path, cut off at the crossing. In code, the clock bar is two of your functions with a little glue between them:
// yours (Ch 7): which events are "now"
const line = simultaneityLine(v, tNow);
// a helper of ours: where this ship's worldline meets that line
const where = crossing(path, line);
// yours (Ch 11): the wristwatch time along the path, cut there
const clock = wristwatchTime(pathUpTo(where));
Myth
“At the turnaround, the stay-at-home twin suddenly ages 3.6 years.” No clock jumped. Lin’s watch ticked steadily through all of it. What jumped is Rae’s choice of which faraway events count as “now”, a bookkeeping convention of her lattice, not something that happens to Lin. The reunion ages, 10 and 8, come from the lengths of two worldlines. No now-line is needed to get them.
Pitfall
Reading a clock off the now-line of the wrong frame. A clock reading belongs to an event; a now-line is one frame’s choice of which events count as “now”. Before you compare two readings, name both: whose clock, and whose now.
Why, really?
Why can one small machine settle six paradoxes? Because underneath, every part you wrote is one idea seen from a different side. Wristwatch time is the interval added up along a path. The Lorentz machine is whatever keeps the interval fixed. The Doppler factor is that machine’s squeeze along a light line. Energy and momentum obey the same minus sign. Learn the one hero, \(\inv{\tau^2} = \dt^2 - \dx^2\), and the rest is bookkeeping.
Deep dive: how “What they see” finds the light arriving now
The eye sits at an event O. The light reaching O right now left each other ship at an event E on O’s past light cone: \(t_O - t_E = |x_O - x_E|\). Along a ship’s worldline the quantity \(t + |x_O - x|\) only ever grows (the ship is slower than light), so the simulator finds E by halving the search over and over, like a guessing game.
The ship’s velocity at E, seen from the eye’s frame, is addVelocities(vShip, −vEye). Call its part toward the eye \(w\) (negative if the ship is moving away). The light arrives with factor \(k\) = dopplerFactor(w): above 1 when the ship was approaching, below 1 when it was receding. The dot sits where the ship was when it sent the light, and the tick sits where the frame reckons it is. Their gap is the light-travel delay of Chapter 12. The tint is illustrative: a true \(k = 2\) pushes green light into the ultraviolet.
Deep dive: what’s inside a scene file
A scene is a short list of facts, in a format called JSON:
{ "version": 1, "units": "years",
"ships": [{ "id": "rae", "name": "Rae", "kind": "rkt",
"path": [{ "t": 0, "x": 0 }, { "t": 5, "x": 3 }, { "t": 10, "x": 0 }] }],
"flashes": [{ "t": 2, "x": 0, "dir": 1 }],
"events": [{ "id": "T", "t": 5, "x": 3, "label": "T" }] }
Because files travel between people, the simulator treats every imported scene as a stranger. It reads at most 64 KB, keeps only the fields above, limits a scene to 12 ships of 64 points, 200 flashes and 100 events, refuses numbers bigger than a million, and shows names only as plain text. A scene can describe a universe; it can never run code in yours.
Now you know what the witness knows. Time to call it.
Practice
Welcome to the Paradox Court. Each case is a famous argument that relativity contradicts itself. For each one, load the scene, look at it from both frames (click a clock to jump), measure what you need, and give your verdict. Then write the judgment in your own words and compare it with the court’s.
The court has one rule, the rule of the whole course: frames may disagree about coordinates. An argument that needs them to agree is the argument that’s wrong.
Case 1 · The pole in the barn
The charge. A 10 m pole is carried at \(v = 4/5\) toward a barn 8 m long, open at both ends. The farmer reckons the pole contracted to 6 m, so at one instant she flicks both doors shut, and open again, with the whole pole inside (events A and B). The pole carrier reckons the barn contracted, to 4.8 m. A 10 m pole can’t fit in a 4.8 m barn. Somebody is lying.
In the scene, R is the pole’s rear passing the entrance and F its front reaching the exit. Put the ruler on the pole, then on the barn, in both frames. Then pick A and B in the measure panel and read their \(\Delta t\): first in the barn’s frame, then after pressing a pole clock.
What to look for
In the barn’s frame, A and B happen at the same time: \(\Delta t = 0\). In the pole’s frame, the exit door flicks 10.67 m of time before the entrance door.
Don’t be thrown by the pole’s clocks. Every clock in this scene reads its own frame’s time. The pole’s two clocks agree with each other in the pole’s frame, so in the barn’s frame the Pole front clock reads 8 m of time behind the Pole rear clock. That is why it starts out negative, at −7.40. You don’t need that 8 for the verdict. The deep dive at the end of this case explains it, and where 10.67 comes from.
Barn frame: the pole is 6 m and both doors flick at t = 1. Pole frame (v = 0.8): the barn is 4.8 m, and the exit door flicks first, 10.67 m of time before the entrance door. Numbers: pole 10 m, barn 8 m, v = 0.8.
Describe this lab
A compact simulator. The entrance (x = 0) and exit (x = 8) of the barn are vertical blue worldlines; the rear and front of the pole are dashed vermilion lines moving at 0.8. Events: R (rear at entrance, t 0), A and B (the doors flick at t = 1), F (front at exit, t 2.5). Clocks, a time slider, a ruler between any two ships and a panel for two events are beside the diagram. Pressing a clock views the scene from that object’s frame.
Your verdict on the pole and the barn:
Hint
Use the measure panel on A and B, first in the lab, then after pressing a pole clock.
Solution
In the barn frame, A = (1, 0) and B = (1, 8) are simultaneous. In the pole frame (\(\g = 5/3\)): \(t'_A = \tfrac53(1 - 0) = 1.67\) and \(t'_B = \tfrac53(1 - 6.4) = -9\), so \(\Delta t' = -10.67 = -\g v\,\Delta x\). In the pole frame the order is B (−9), then F (front at the exit, −6.5), then R (rear at the entrance, 0), then A (1.67). The exit door flicks before the front arrives and the entrance door after the rear has passed. Nothing collides, and both rulers are honest.
Write the court’s judgment: what does each frame measure, and why don’t the two accounts contradict each other?
Model answer
Each frame measures the other’s object as contracted: the farmer gets a 6 m pole, the carrier a 4.8 m barn. “The pole is inside with both doors shut” means two door events at the same time, and only the barn frame calls A and B simultaneous. In the pole frame the exit door flicks 10.67 m of time earlier, before the front arrives, and the entrance door flicks after the rear has passed. Both frames agree on every event and on every invariant; they disagree only about which events happen “at once”.
- Gives both contracted lengths (6 m and 4.8 m)
- Points to the simultaneity of the door events as the hidden assumption
- Says nothing collides in either frame: same events, different “nows”
Deep dive: the three clock numbers in this case (8, 6.4 and 10.67)
All three come from one rule of Chapter 7. Two clocks synchronized in their own frame, a distance \(L\) apart in that frame, moving at \(v\): seen from the other frame, the front one (the one leading the motion) lags behind the rear one by \(vL\).
- 8 m: the pole’s clocks, seen from the barn. The pole is 10 m long in its own frame, so the front clock lags by \(0.8 \times 10 = 8\) m of time. When Pole rear reads 0.60, Pole front reads \(0.60 - 8 = -7.40\).
- 6.4 m: the barn’s clocks, seen from the pole. In the pole’s frame the barn moves toward \(-x\), so its leading end is the entrance. The barn is 8 m long in its own frame, so the Entrance clock lags by \(0.8 \times 8 = 6.4\) m of time: the Exit clock is 6.4 ahead. Press a pole clock and compare the Entrance and Exit clocks.
- 10.67 m: the gap between the door flicks. Each door flicks when its own clock reads 1. The Exit clock gets there first. At that moment, in the pole’s frame, the Entrance clock reads \(1 - 6.4 = -5.4\), so it still has 6.4 m of its own time to tick. In the pole’s frame the barn’s clocks run slow by \(\g = 5/3\), so those 6.4 m take \(\tfrac53 \times 6.4 = 10.67\) m of the pole’s time. In one line: \(\Delta t' = \g v L = \tfrac53 \times 0.8 \times 8\).
Case 2 · The twins
The charge. Lin stays home; Rae flies to a star 3 light-years away at \(3/5\) and back. Rae argues: “From my rocket, Lin was the one moving the whole time. So Lin’s clock ran slow, so Lin should be younger.” The setup looks symmetric. Is it?
Scrub to the reunion R. Jump into Rae’s frame on each leg. Try Lin’s eyes and Rae’s eyes in the strip; the gold lines are Lin’s yearly birthday flashes.
At the reunion R, Lin’s clock reads 10 years and Rae’s reads 8. Rae receives Lin’s birthday flashes slowly on the way out (one every 2 of her years) and quickly on the way back (two every year). Lin turns 10 as Rae turns 8.
Describe this lab
Lin’s worldline runs from D (0, 0) to R (10, 0). Rae’s runs from D out to T (5, 3) and back to R. Nine gold flashes leave Lin at t = 1 to 9, heading toward Rae. The clocks, the now-line, the strip of what each twin sees and the measure panel work as in the main simulator.
Your verdict on the twins:
Hint
Ask the measure panel for the wristwatch time from D to R along a straight line. Then compare Rae’s clock at R.
Solution
Lin’s straight worldline from D to R has \(\tau = 10\). Rae’s has two legs, each with \(\tau = \sqrt{5^2 - 3^2} = 4\), so 8 in all. The straight path ages the most. Rae’s argument fails at the turn, where her now at Lin leaps from 3.2 to 6.8: the 3.6 years she leaves out are exactly the difference between Lin’s \(2 \times 3.2 = 6.4\) and 10.
Write the judgment for the twins, in both frames.
Model answer
The two twins are not in symmetric situations: Lin’s worldline is straight and Rae’s is bent. Both start at D and end at R, and wristwatch time is the length of the path in spacetime, which is greatest for the straight one: 10 years for Lin, 8 for Rae. On each leg, Rae correctly measures Lin’s clock running slow, but her frame changes at the turn, and her now at Lin leaps from 3.2 to 6.8. Adding up her slow-clock readings leaves out those 3.6 years, which is why her argument gets the wrong answer.
- Same two events, two different worldlines
- The straight worldline has the most wristwatch time
- Rae’s “Lin is slow” is true on each leg but skips 3.6 years at the turn
Case 3 · The tachyon telephone
The charge. Suppose Lin had a tachyon telephone: its signal is instantaneous in the sender’s frame. At S she calls Rae, who is passing 3 light-years away at 0.6, and the call arrives at Q. Rae replies at once, instantaneous in her frame, and the reply reaches Lin at B. Harmless gadget, or broken universe?
In the measure panel, pick S and Q, then Q and B. Then compare S and B in the lab, and in Rae’s frame.
S = (5, 0), Q = (5, 3), B = (3.2, 0), in years and light-years. Both signals join spacelike-separated events. The reply reaches Lin at B, 1.8 years before she made the call at S.
Describe this lab
Lin stays at x = 0; Rae moves at 0.6, passing x = 0 at t = 0. Dotted links: the call from S (5, 0) to Q (5, 3), flat in Lin’s frame, and the reply from Q to B (3.2, 0), flat in Rae’s frame. The measure panel classifies any pair and gives its time difference in the chosen frame.
Your verdict on the tachyon telephone:
Hint
In Rae’s frame, which happens first: S or Q?
Solution
S → Q is spacelike (\(\tau^2 = 0 - 9 < 0\)). In Rae’s frame, \(t'_S = 1.25 \times 5 = 6.25\) but \(t'_Q = 1.25\,(5 - 1.8) = 4\): the call arrives before it is sent. Her reply, flat in her frame, lands on Lin’s worldline where \(1.25\,t = 4\): at \(t = 3.2\), which is 1.8 years before S. A reply before the question lets you change your own past, so physics forbids signals outside the light cone.
Write the judgment for the tachyon telephone.
Model answer
Both signals join spacelike-separated events, and for such pairs the time order depends on the frame. The call is instantaneous for Lin, but in Rae’s frame it arrives before it leaves; Rae’s instantaneous reply then reaches Lin at t = 3.2, before the call at t = 5. A device like that could warn Lin not to make the call, which is a contradiction. Since every free-float frame is equally good, the only way out is that no signal can travel faster than light: only timelike and lightlike pairs can be cause and effect, and their order is the same in every frame.
- Both signals are spacelike
- The reply arrives before the call: a causal loop
- Conclusion: causes and effects must be timelike or lightlike separated
Case 4 · Bell’s spaceships
The charge. Two identical rockets wait 100 m apart, a thread tied between them. At A and B, simultaneous in the launch frame, both fire identical engines and reach 0.6 almost at once. In the launch frame they stay 100 m apart forever, and their engines did exactly the same thing at the same time. Surely the thread is fine?
Use the ruler between the ships. Read it in the lab, then jump into the front ship’s frame once both are moving.
Launch frame: the gap stays 100 m. Ships’ frame (v = 0.6): the gap is 125 m. A thread with a rest length of 100 m must stretch by 25%, and it breaks.
Describe this lab
Two dashed worldlines sit at x = 0 and x = 100 m until t = 0, then both move at 0.6. The ruler between the ships reads the gap on the current now-line: 100 m in the launch frame, 125 m in the ships’ frame once both are moving.
Your verdict on Bell’s spaceships:
Hint
What is \(\g \times 100\) at \(v = 0.6\)?
Solution
In the ships’ frame the front ship launched first, by \(\g v \times 100 = 75\) m of time, and pulled ahead. Once both are coasting, the ruler reads \(\g \times 100 = 1.25 \times 100 = 125\) m. The thread, at rest in that frame, has a proper length of 100 m, so it must stretch by 25%. In the launch frame the same story reads: a coasting thread would be \(100/\g = 80\) m long, but it is held across a 100 m gap. Same verdict, as it must be.
Write the judgment for Bell’s spaceships, in both frames.
Model answer
In the launch frame, the gap is held at 100 m, but a thread moving at 0.6 has a length of only 80 m there, so it is being stretched. In the ships’ frame, the front ship launched 75 m of time earlier, and once both coast the gap is 125 m while the thread’s rest length is 100 m. Both frames agree: the thread is stretched and breaks. Contraction itself puts no stress on anything; stress comes when something forces a proper length to change, as the identical engines do here.
- Launch frame: gap fixed at 100 m, thread would be 80 m
- Ships’ frame: gap 125 m because the launches weren’t simultaneous there
- Both frames agree it breaks
Case 5 · The muon’s side of the story
The charge. A muon is born 10 km up and falls at 0.995. In its own frame its clock ticks normally, as every clock does, and it lives about 2.2 μs, which is 659 m of time. So, argues the defense, in its own frame it can’t possibly cross 10 km of air. Yet the ground frame says about 22% reach the ground.
Read the muon’s clock when it lands. Then jump into the muon’s frame and put the ruler on the atmosphere.
Ground frame: the trip takes 10 050 m of time, and the muon’s clock reads 1003.8 m of time (3.35 μs) on landing. Muon frame: the atmosphere is 998.7 m thick and rushes past in the same 1003.8 m of muon time. Survival is about 0.218 either way: the muon at 0.995 over 10.0 km.
Describe this lab
The sky at x = 0 and the ground at x = −10 000 m are blue worldlines. The muon’s dashed worldline runs from Born (0, 0) to Lands (10 050, −10 000), at 0.995. Ticks mark every 200 m of wristwatch time: between Born and Lands the sky and ground lines carry 50 ticks each, the muon’s only 5. The ruler between sky and ground reads 10 000 m in the ground frame and 998.7 m in the muon’s frame. The muon’s clock reads 1003.8 m of time on landing.
Your verdict on the muon’s defense:
Hint
What does the ruler between sky and ground read in the muon’s frame?
Solution
Ground frame: lab time \(10\,000/0.995 = 10\,050\) m, muon wristwatch \(\sqrt{10\,050^2 - 10\,000^2} = 1003.8\) m \(\approx 1.52\) lifetimes, survival \(e^{-1.52} \approx 0.218\). Muon frame: the atmosphere is \(10\,000/\g = 998.7\) m thick and passes in \(10\,000/(0.995\,\g) = 1003.8\) m of time. Same wristwatch reading, same survival.
Write the judgment for the muon, in both frames.
Model answer
The defense is right that the muon’s clock runs normally in its own frame, but wrong about the distance. In the ground frame the muon’s clock is the one present at both birth and landing, so it reads the wristwatch time, 1003.8 m of time, about 1.5 lifetimes. In the muon’s frame the atmosphere moves past at 0.995 and is contracted to 998.7 m, which takes the same 1003.8 m of time. The wristwatch reading between birth and landing is invariant, so both frames predict the same survival, about 22%.
- Ground frame: time stretching
- Muon frame: a contracted atmosphere
- The muon’s wristwatch time between birth and landing is the invariant both agree on
Case 6 · The searchlight spot
The charge. A lighthouse sweeps its beam across a far wall. Sweep fast enough and the bright spot races across the wall faster than light. In the scene, the spot crosses 8 m in 4 m of time: twice light speed. Relativity is broken.
Compare spot events 1 and 5 in the measure panel. Then jump into the passing probe’s frame: which spot event comes first there?
Spot events 1 to 5 sit on a line twice as flat as light: 8 m in 4 m of time. Spots 1 and 5 are spacelike-separated; in a frame moving at 0.6, spot 5 comes first. A flash from Rover A at spot 1 reaches Rover E at t = 8, long after the spot.
Describe this lab
Rover A (x = 0) and Rover E (x = 8 m) stand still on the wall. Spot events 1 to 5 run from (0, 0) to (4, 8). A gold flash leaves Rover A at spot 1. A probe moves past at 0.6; in its frame spot 5 happens before spot 1.
Your verdict on the searchlight spot:
Hint
What does classify say about spot 1 and spot 5?
Hint
A cause reaches its effect along a line at 45° or steeper. Is there any such line from spot 1 to spot 5? Where did the light that made spot 5 come from?
Solution
\(\tau^2 = 4^2 - 8^2 = -48 < 0\): spacelike. In the probe’s frame (\(v = 0.6\)) spot 5 has \(t' = 1.25\,(4 - 4.8) = -1\), before spot 1 at \(t' = 0\). A message can’t arrive before it leaves, so the spot carries none. The fastest real signal from Rover A, its flash, reaches Rover E at \(t = 8\).
Write the judgment for the searchlight spot.
Model answer
The rule is that no signal, information or massive object can outrun light. The spot is none of these: each spot event is made by light that left the lighthouse earlier, so no spot causes the next. Spots 1 and 5 are spacelike-separated, and a frame moving at 0.6 even reckons spot 5 to happen first. Anyone who wants to send a message from Rover A to Rover E has to send something real, and nothing real beats the flash, which arrives at t = 8.
- The spot is a pattern, not an object or signal
- Spot events are spacelike-separated; their order depends on the frame
- Real signals between the rovers still obey the light cone
Challenges
Four more scenes ship with the simulator as challenges. Work each one by hand first, then load it and check. In “Edit the scene”, every turning point has number boxes, so you can type your answer in exactly.
A crew sets out for Canopus, about 310 light-years away, and wants to age only 10 years on the way. What speed do they need? Give \(v\) to five decimal places, then say how far below light speed that is: \(\varepsilon = 1 - v\).
That ε comes from a rounded \(v\). All the interesting digits of a speed this close to 1 sit at the end, so keep five decimal places of \(v\) before you subtract.
That’s \(v\) itself. \(\varepsilon\) is the small gap between \(v\) and 1.
That’s 310 light-years in 10 years of Earth time: 31 times light speed. But the 10 years are on the crew’s clock. Which clock is present at both departure and arrival?
Hint
The crew’s clock is present at both departure and arrival: \(\tau = 10\) years, over \(x = 310\) light-years.
Hint
\(x = v t\) and \(t = \g\tau\), so \(\g v = x/\tau = 31\). Square it: \(\g^2 v^2 = v^2/(1 - v^2) = 961\).
Solution
\(\g v = 31\) gives \(v^2 = 961/962\), so \(v = 31/\sqrt{962} = 0.99948\), and \(\varepsilon = 1 - v = 0.00052\). Near light speed all the interesting digits sit in that gap, which is why planners quote \(\varepsilon\) rather than \(v\). Earth reckons the trip at \(310/v = 310.16\) years, while the crew ages 10. In the challenge scene the crew flies at 0.99 and ages about 44.2 years. Type an arrival time of 310.1613 (that is, \(310/v\) to four decimals) for the crew’s last point and watch its clock read 10. Even 310.16 is not close enough: it gives 9.96.
Completion problem. A one-way inertial trip: the traveler ages 1 year while Earth ages 5. How far away is the destination? Fill in the blanks.
- The traveler’s wristwatch time is the interval: \(1^2 = 5^2 - x^2\).
- So \(x^2 = \) ▢.
- So \(x = \) ▢ light-years.
That adds the squares. The interval has a minus sign: \(\tau^2 = t^2 - x^2\).
Hint
Move \(x^2\) to one side: \(x^2 = 25 - 1\).
Solution
\(x^2 = 25 - 1 = 24\), so \(x = \sqrt{24} = 4.899\) light-years.
What speed does the trip in the last problem need?
Hint
Speed is distance over Earth’s time.
Solution
\(v = 4.899/5 = 0.980\). Check: \(\g = 5\), and \(5\) Earth years \(/ \g = 1\) year for the traveler.
Bell’s thread starts out 100 m long. At \(v = 0.6\), what proper length would it need, to span the gap between the coasting ships?
That’s the length a coasting 100 m thread has in the launch frame. The question asks for the thread’s length in its own frame, the ships’ frame.
Hint
In the ships’ frame the gap is \(\g\) times the launch-frame gap.
Solution
\(\g \times 100 = 1.25 \times 100 = 125\) m. A 100 m thread would have to stretch by 25 m, so it breaks.
Design a trip. The traveler leaves home at \(t = 0\) and is back at \(t = 10\) years. Make the traveler age exactly 7.0 years (within 0.1), and reach at least 3 light-years from home. Drag the turning point, or click “Edit the trip” to add more.
No pointer? Open “Edit the trip” under the diagram and type the coordinates of each turning point.
Hint
One symmetric turn at \(t = 5\) works. Each half then needs \(\tau = 3.5\).
Hint
\(3.5^2 = 5^2 - x^2\), so \(x^2 = 25 - 12.25\).
Solution
A single turn at \((5, \sqrt{12.75}) = (5, 3.571)\) gives \(2 \times 3.5 = 7\) years, and 3.571 light-years is past 3. Many bent paths work too: any path that ends at (10, 0) and whose leg intervals add to 7.
The three brothers. An outbound brother passes Lin at \(t = 0\), moving at 0.6, and never turns. At the meeting event (5, 3) he passes an inbound brother moving at −0.6. The inbound brother carries a blank clock. At the meeting he copies the outbound clock’s reading onto it and carries it home to Lin. What does that clock read when it reaches Lin? No clock in this story ever accelerates.
10 is Lin’s reading. The relay clock covers two legs of \(\sqrt{5^2 - 3^2}\) each.
Hint
Each brother’s leg is a straight line with \(\Delta t = 5\) and \(|\Delta x| = 3\).
Solution
The outbound clock reads \(\sqrt{25 - 9} = 4\) at the meeting; the inbound brother adds another 4 on the way home: 8 years, against Lin’s 10. The same answer as the twins, with no acceleration anywhere: the difference is in the paths.
Back to the pole and barn. Put these four events in time order in the pole’s frame.
- B: the exit door flicks shut and open
- F: the front of the pole reaches the exit
- R: the rear of the pole passes the entrance
- A: the entrance door flicks shut and open
Hint
Use \(t' = \tfrac53\,(t - 0.8\,x)\) with B = (1, 8), F = (2.5, 8), R = (0, 0) and A = (1, 0).
Solution
\(t'_B = -9\), \(t'_F = -6.5\), \(t'_R = 0\), \(t'_A = 1.67\). In the barn frame the order is R, then A and B together, then F. Only the spacelike pairs changed order.
In the tachyon case, how many years before Lin’s call at S does Rae’s reply reach her at B, in Lin’s frame?
Hint
Rae’s reply runs along her now-line through Q = (5, 3): slope 0.6 in the lab diagram.
Solution
The line \(t = 5 + 0.6\,(x - 3)\) meets \(x = 0\) at \(t = 3.2\). The call left at \(t = 5\), so the reply is \(5 - 3.2 = 1.8\) years early.
Stuck on a case? Every judgment above used the same three moves: ask which events are being compared, ask which frame each claim belongs to, and look for the invariant. The formula card has every equation on one page.
Build it
The last function is the shortest, because it stands on the others. trip(distanceLy, v) plans a round trip to a star and back at speed \(v\). It returns the years that pass on Earth and the years the traveler ages. Earth’s years are distance over speed, there and back. The traveler’s years are the same trip read by the one clock present at both departure and return, so divide by \(\g\). And \(\g\)? You wrote it in Chapter 5.
Code you need
A function can call another function by name. Here sumOfSquares leans on square:
function square(n) { return n * n; }
function sumOfSquares(a, b) { return square(a) + square(b); }
The sandbox loads your passing gamma() before trip(), so you can call it the same way. If your gamma isn’t passing yet, the sandbox lends you ours.
Build it: trip(distanceLy, v)
Return { earthYears, travelerYears } for a trip out to a star and straight back. Refuse speeds that aren’t strictly between 0 and 1: at 0 you never arrive, and at 1 no clock can ride along.
Once trip() passes, the planner below runs on it. Pick a distance and a speed, then fly the trip in the simulator.
With JavaScript on, a trip planner appears here.
Checkpoint
Six items from across the course. Five are checked for you, and the sixth you compare with a model answer. Feedback waits until you submit.
A round trip to a star 4 light-years away at \(v = 0.8\). How many years does the traveler age?
That multiplies by \(\g\). Whose clock is present at both departure and return, and does it read the longer or the shorter time?
10 years is Earth’s time, \(2 \times 4/0.8\). The traveler’s clock reads less.
Solution
Earth: \(2 \times 4/0.8 = 10\) years. Traveler: \(10/\g = 10 \times 0.6 = 6\) years. This is trip(4, 0.8).
What makes the traveling twin younger at the reunion?
Solution
Geometry: two paths between the same two events, and the straight one ages most. The three-brothers relay gives the same result with no acceleration at all.
Sort each quantity: do all free-float frames agree on it?
- The squared interval between two events
- The time order of two spacelike-separated events
- The time order of two timelike-separated events
- A particle’s mass
- A particle’s energy
- The length of a moving rod
- The speed of light
Solution
Invariant: the interval, the order of timelike pairs, mass and light’s speed. Frame-dependent: the order of spacelike pairs, energy and length.
Rae passes the origin O at \(v = 0.6\); her axes are drawn dashed. Place the event P that Rae reckons happens at the same time as O, 5 m away from her in the \(+x'\) direction.
No pointer? Type P’s lab coordinates t and x into the boxes under the diagram.
Solution
P has \(t' = 0\), \(x' = 5\). Run the machine backward (replace \(v\) with \(-v\)): \(t = 1.25\,(0 + 0.6 \times 5) = 3.75\) and \(x = 1.25\,(5 + 0) = 6.25\). P = (3.75, 6.25), on Rae’s \(x'\) axis, the line \(t = 0.6\,x\). Lin reckons P happens 3.75 m of time after O.
Two ships leave Lin in opposite directions, at \(+0.6\) and \(-0.6\). How fast does one ship measure the other moving? Two decimal places are enough.
That adds speeds the Galilean way. Which formula combines them in our universe?
Solution
\(w = \dfrac{0.6 + 0.6}{1 + 0.36} = \dfrac{1.2}{1.36} = \dfrac{15}{17} \approx 0.882\). Doppler factors multiply: \(2 \times 2 = 4\), and \(k = 4\) means \(v = 15/17\). (Lin may still measure the gap between them growing by 1.2 light-years per year: that is a lab-frame rate, not anybody’s speed.)
In two or three sentences: why is it fair to call relativity a theory of invariants rather than a theory of “everything is relative”? Use one court case as your example.
Model answer
Every verdict in the court came from a quantity all frames agree on: the interval, wristwatch time along a worldline, the class of a pair of events, or light’s speed. Coordinates such as times, lengths and “now” differ between frames, but they always differ in exactly the way that keeps those invariants fixed. In the twins case, for example, both frames compute the same 10 and 8 years from the lengths of the two worldlines.
- Names at least one invariant
- Says coordinates change in a way that preserves it
- Uses a court case as evidence
Explain it to Sagredo
Sagredo, at the end of the course: “Every observer disagrees about time, about length, even about which came first. So what, exactly, is real?” Answer him.
Model answer
What’s real is what every free-float frame agrees on: the events themselves; the interval between any two of them, and so the wristwatch time along any worldline and the ages at every reunion; light’s speed, and so the light cone, which decides what can cause what; and the mass of every object. Times, lengths and “now” are each frame’s honest bookkeeping of those invariants, like the north and east offsets of the surveyors in Chapter 1, who disagreed about directions but never about distances.
- Lists invariants: the interval, wristwatch time, light’s speed, mass, causal order
- Calls coordinates bookkeeping, not illusion
- Connects back to the surveyors’ distance
What’s invariant here?
- The interval \(\inv{\tau^2} = \dt^2 - \dx^2\) between any two events, in every free-float frame.
- So the wristwatch time along any worldline, and so the ages at every reunion.
- Light’s speed, so the light cone, so whether one event can influence another.
- Mass: \(\inv{m^2} = E^2 - p^2\).
- Everything else in the simulator (every \(t\), \(x\), length, Doppler tint and “now”) depends on the frame you chose to view from.
Still strange?
Nobody knows why spacetime has a minus sign where space has a plus; we only know, to many decimal places, that it does. And the clocks don’t care how strange it feels: each one quietly ticks off the length of its own worldline.
Epilogue: toward gravity
Everything in this course lived in free-float frames, and we kept adding fine print: free-float to a stated accuracy, over a stated region. Here is why the fine print matters. Drop two balls side by side in a small falling room, and they float together. Make the room wide, a few hundred kilometers, and both balls fall toward the center of the Earth, so they drift slowly together. No single free-float lattice covers both. That drift is a tide, and it is the signature of gravity: a spacetime that can’t be flattened into one lattice.
Your simulator already explains part of the clock budget of GPS satellites. Reckoned in a frame centered on Earth that doesn’t spin with it, the satellite clocks fall behind by about 7.2 μs a day because they move, as you found in Chapter 8. Yet compared with clocks on the ground they actually gain, about 38.5 μs a day net: an extra 45.7 μs a day comes from height. A clock higher up in Earth’s gravity runs faster than one lower down, as the two can confirm by exchanging signals.
Now put that next to the principle of Chapter 11: a free worldline between two events has the most wristwatch time. Let clocks run faster with height. A thrown stone that rises, spends a while where clocks run fast, and comes back down can age more than a stone that sits still. The path of greatest aging between “thrown” and “caught” turns out to be the arc a stone really follows. Falling is maximal aging, in a spacetime where height changes the pace of time. That is the doorway to general relativity, and you already know the hero waiting on the other side.
Real numbers
38.5 μs a day sounds like nothing. But GPS turns time into distance at light’s speed, so uncorrected it would add up to kilometers of error every day. (Receivers share a clock correction, so treat that as the size of the problem, not as a map error you’d see.)
Where to read next
- Edwin F. Taylor and John Archibald Wheeler, Spacetime Physics (2nd ed., 1992), the book this course’s order of ideas follows. Free from the author’s site, eftaylor.com.
- Edwin F. Taylor, John Archibald Wheeler and Edmund Bertschinger, Exploring Black Holes: general relativity taught with the same maximal-aging idea. Also on eftaylor.com.
- The Feynman Lectures on Physics, Volume I, chapters 15 to 17. Free at feynmanlectures.caltech.edu.
- Hermann Bondi, Relativity and Common Sense: the Doppler-factor approach of Chapter 12, from one of its inventors.
Your Spacetime Surveyor card
One last thing to take with you: a card listing the parts you built and the checkpoints you passed. It’s made in your browser from your saved progress, and printing it sends nothing anywhere.
With JavaScript on, you can make and print your card here.
Going further
Two last problems that lean toward gravity: a head-scratcher and a pencil-and-paper one.
A ship holds a steady 1 g, which is 1.0323 ly/y², for one year of its own time, starting from rest. With the constant-acceleration formula \(t = \sinh(a\tau)/a\) from Chapter 13, how many years pass on Earth? Two decimal places are enough. Need a refresher?
Hint
\(a\tau = 1.0323\). Compute \(\sinh(1.0323) = (e^{1.0323} - e^{-1.0323})/2\).
Solution
\(\sinh(1.0323) = 1.2257\), so \(t = 1.2257/1.0323 = 1.187\) years. The ship then moves at \(\tanh(1.0323) = 0.775\) and has covered 0.564 light-years.
GPS clocks gain a net 38.5 μs per day. How far does light travel in 38.5 μs, in kilometers?
That’s the distance in meters. The question asks for kilometers.
Hint
Light covers 299 792.458 km each second.
Solution
\(38.5 \times 10^{-6} \times 299\,792.458 = 11.54\) km. That’s why GPS engineers correct the satellite clocks for relativity before launch.
If you’ve come this far, you can compute, draw, explain and program special relativity. That was the promise on page one, and you kept your end of it.