The twin paradox supposes a scenario where an astronaut embarks on a journey near the speed of light, leaving their twin counterpart behind on Earth. Due to the time dilation effect that occurs when traveling at high speeds, the astronaut experiences the journey as a shorter time than the counterpart on Earth and returns younger than their twin.

For the paradox, you need only ask what makes the astronaut so special? Why can't the twin on Earth be regarded as the one in motion, and why aren't the roles reversed, making the astronaut the one who is older at the end of the journey? The symmetry of the situation seems to demand that neither twin will be older than the other when the journey is finished!

The resolution of this apparent paradox hinges on the full use of the Lorentz Transformations, rather than a simplistic application of the time dilation effect.

The Lorentz Transformations can be used to convert the space-time coordinates of an event in a moving frame ($x^{\prime}$ and $t^{\prime}$) to the corresponding space-time coordinates in a stationary observer frame ($x$ and $t$):

$$t = \frac {t^{\prime} + x^{\prime} \left ( \frac v {c^2} \right )} {\sqrt{1-\frac {v^2}{c^2}}}$$

$$x = \frac {x^{\prime} + v t^{\prime}} {\sqrt{1-\frac {v^2}{c^2}}}$$

Let's set up an actual scenario with our intrepid twins to see exactly what will happen.

Let's start with some assumptions:

- For the sake of simplicity, let's assume that the spacecraft is capable of instantaneous acceleration to 8/10 of the speed of light (ouch!).
- The destination is a star, two light-years away.
- There is a clock on Earth and in the spacecraft.
- There is a clock at the destination star, which is synchronized with the Earth clock. Synchronization means that if, for example, the Earth clock sends out a radio signal at midnight on January 1, 2050, the destination star's clock will receive that Earth signal at midnight on January 1, 2052.
- The Earth twin, an observer at the remote star, and the astronaut all start their stopwatches at the moment of departure (January 1, 2050).

At midnight, 1/1/2050, the astronaut departs Earth at 8/10 the speed of light. Although the Earth twin can't directly observe what happens at the distant star, they know that the spacecraft is designed to brake to a stop there, and will return to Earth immediately at 8/10 the speed of light. Therefore, this is a simple time and distance problem and the return time is easy to predict:

In [8]:

```
dly = 2 # remote star is 2 light-years away
c = 3.00E8 # the speed of light, meters per second
year = 365.25 * 24 * 60 * 60 # (seconds) days per year, hours per day, minutes per hour, seconds per minute
v = 8/10 * c
d = dly * c * year # remote star distance, in meters
T = 2*d/v # total time, in seconds for a round trip at 8/10 c
print("Arrival Time (Earth perspective): {0:.4} seconds.".format(T))
```

At midnight, 1/1/2050, the remote observer starts their stopwatch. Knowing that the astronaut was to depart Earth at the same time, the observer expects to see the astronaut arrive somewhat longer than two years later:

In [7]:

```
Tstar = d/v # total time, in seconds for a one-way trip at 8/10 c
print("Arrival Time (remote star perspective): {0:.4} seconds.".format(Tstar))
```

This all occurs as expected, and appears to be trivially obvious.

Things start getting a little weird. Immediately upon starting their stopwatch at midnight on 1/1/2050, the astronaut observes the Earth falling behind at 8/10 the speed of light. Likewise, the remote star is approaching at the same speed. Because of that relative motion, the astronaut observes a length contraction of the distance between the Earth and the distant star! Furthermore, the astronaut is confident that the remote star will observe an arrival time of $T_{star}=d/v$, so they can predict what their stopwatch will say when they get there:

In [10]:

```
from math import *
gamma = lambda v,c: 1/sqrt(1 - v**2/c**2)
t_lorentz = lambda xp,tp,v,c: (tp + xp*(v/c**2))*gamma(v,c)
Tastronaut_star = t_lorentz(d, Tstar, -v, c) # -v because apparent motion of star is opposite astronaut's
print("Arrival Time at Remote Star (astronaut perspective): {0:.4} seconds.".format(Tastronaut_star))
```

Someone warned the astronaut that the trip wouldn't take as long as expected from Earth's perspective, and so far it seems to be true.

On the way back, the situation is no different from the outbound one: the gulf between the star and the Earth appears to shrink again, and moves in a direction that is opposite the spacecraft's motion. The Earth observer will see the return trip taking $T_{star}=d/v$ seconds, so it is easy to predict the arrival stopwatch time:

In [24]:

```
from datetime import timedelta, date
Tastronaut_earth = Tastronaut_star + t_lorentz(d, Tstar, -v, c)
print("Arrival Time at Earth (astronaut perspective): {0:.4} seconds.".format(Tastronaut_earth))
# translate to dates
dta = timedelta(seconds=int(Tastronaut_earth)) # travel time from astronaut perspective
dte = timedelta(seconds=int(T)) # travel time from Earth perspective
Dstart = date(2050,1,1) # launch date, both perspectives
print("Arrival Date (astronaut): {}".format(Dstart + dta))
print("Arrival Date (twin on earth): {}".format(Dstart + dte))
```

So the predicted time dilation still occurs for the traveling astronaut. Why? If the astronaut could observe the clocks on the Earth and at the star, wouldn't they also appear to be going slower?

The answer, surely, is yes, but the relativity of simultaneity throws a wrinkle into the problem. As soon as the astronaut is accelerated to their travel speed, they would testify that the stopwatches on the Earth and at the remote star *are no longer synchronized*. In fact, it would appear that the stopwatch at the remote star was started *before* the stopwatch on Earth was. Thus, when the astronaut arrives at the remote star the stopwatch will report a longer time because it appears to have started long before the journey even began! On the return journey, the situation is reversed and the Earth stopwatch appears to have been started before the star's stopwatch.

If that result seems nonsensical, then go back and think about the simultaneity effect in the simultaneity notebook. Once you understand how two events that are clearly simultaneous in one frame of reference can be clearly **not** simultaneous to an observer in a different frame, then the statement about the stopwatches will make perfect sense!

Special Relativity Jupyter notebook sources on Github - © 2018 by Eric Dennison