Skip to content
ABRAMS EVENT ADDRESS · OPEN SPACETIME COORDINATE STANDARD

If you had a time machine, what coordinates would you enter?

GPS can tell you where something is on Earth right now. It cannot, by itself, describe one exact place at one exact moment in the physical universe.

The Abrams Event Address (AEA) is an open standard I built to explore that problem: a machine-readable address for an event in spacetime.

What is the Abrams Event Address?

Modern physics describes the universe as spacetime, with three dimensions of space and one dimension of time forming a single four-dimensional structure. Under the block-universe interpretation of relativity, events do not simply appear and disappear as time passes. They occupy a coordinate and a position within that four-dimensional structure. The past, present, and future can therefore be thought of as different, unique locations and addresses in spacetime: a singular four-dimensional block.

The Question

If you could travel anywhere in spacetime, what coordinates would you enter?

Our existing coordinate systems are very good at the jobs they were created to do. GPS can locate something on or near Earth. Astronomical reference frames can describe positions in space. Clocks can identify moments in time.

But none of those, by itself, is a complete address for an event in spacetime.

A latitude and longitude such as 52.205878° N, 0.117867° E can identify Cambridge, England, but that location exists at every moment. We tend to think of Cambridge as stationary because our maps move with the Earth. But zoom out: Earth rotates while it orbits the Sun, and the Solar System is being carried through the Milky Way. Over the 17-odd years since Stephen Hawking hosted his famous party for time travelers in 2009, Cambridge has traveled tens of billions of miles along a trajectory in the galactic frame. Attempting to navigate to those raw terrestrial coordinates from outside our frame without accounting for that macro-cosmic drift would result in a massive spatial displacement, missing the intended target by billions of miles.

The location hasn't contradicted itself by being stationary and moving billions of miles: both are true, depending on the reference frame. Because the map itself is moving, space and time are not just two arbitrary fields glued together. You cannot know where Cambridge was in 2009 without knowing the exact epoch to determine Earth's position and orientation at that moment. Time is fundamentally required to resolve the spatial coordinate.

Furthermore, relativity dictates that time does not flow at the same rate everywhere; a clock in deep space ticks at a different rate than a clock deep within Earth's gravity well. The AEA eliminates this ambiguity by explicitly declaring the atomic time scale (such as TAI) alongside the reference frame.

So the question is not simply where?

It is: Where, when, relative to what, and in what physical state?

If a hypothetical traveler were approaching from outside our Earth-fixed frame, entering “Cambridge, 2009” would not work. That prompt fails to specify the atomic time scale, the coordinate frame, Earth's orientation at that epoch, or how the local coordinate transforms into the larger frame of the approach.

To resolve a location like Cambridge in 2009, the AEA translates the destination into explicit parameters: target body, continuous atomic time, time scale, coordinate frame, position, velocity, orientation, and an integrity seal. This results in a complete address capable of unambiguously defining a physical state at a specific epoch.

Furthermore, even if you hit the exact spatial point at the exact time, you are still not necessarily in the same physical state. A point stationary on a floor is moving at tens of thousands of miles per hour in other frames. You must specify how that destination is moving (its kinematics) within the declared frame.

I created the Abrams Event Address, or AEA, to bring those pieces together into one explicit spacetime address.

AEA does not attempt to encode the trajectory of the entire galaxy into a single string. Instead, it identifies the celestial body, the exact epoch, and the reference frame. Established ephemerides and transformation models can then place that frame at that time. The AEA record carries the event's precise state inside that declared frame: its three-dimensional location, its velocity, its orientation, and an integrity seal so the encoded address can be checked for alteration.

The invention is not simply storing space and time together. It is making the assumptions that ordinary coordinates leave implicit explicit enough that a location can be resolved as a physical state at a particular epoch and within a declared frame. The map itself is moving. The frame is moving. The destination is moving. Therefore “where?” cannot be separated from “when?” and “relative to what?”

And I did not leave this as a thought experiment.

I turned that concept into a working open specification called AEA-STATE/1. The current implementation encodes an event into a deterministic 136-byte record and includes a bare-metal Rust core, C/C++ interface, Python tools, test vectors, cryptographic verification, and a browser-based inspector. It is designed to work alongside existing navigation, telemetry, robotics, and flight systems rather than replace them.

The idea began with a question about how you would address a destination in spacetime. I turned that question into an actual coordinate specification you can run, inspect, test, and build software against.

Position·Time·Reference Frame·Motion·Orientation·Integrity

“Addresses precede transportation. Before asking whether travel through spacetime is possible, you need a rigorous way to describe the destination.”

Ordinary Navigation · 2D/3D Surface

WHERE?

Earth → latitude / longitude / altitude

Spacetime Addressing · 4D Manifold

WHERE + WHEN + RELATIVE TO WHAT?

Universe → body → frame → time → position → motion

“A time machine is the thought experiment. The coordinate problem is real.”

What would an addressing system look like if the address space were spacetime itself?

Human description vs. Machine-readable AEA

Explore real physical events encoded into the AEA format. Switch between Stephen Hawking's 2009 party on Earth, the Perseverance Rover touchdown on Mars, and the Starship booster catch:

How a human describes it

Stephen Hawking's Reception

Gonville & Caius College · Cambridge, UK

June 28, 2009 · 12:00:00 UTC

52.205878° N, 0.117867° E · 56.0 m elevation

Ambiguous across epochs · Assumes stationary observer
How AEA describes it (Friendly Decoded View)
BODYEarth (NAIF: 399)
TIME1,246,190,426.0 TAI
FRAMEITRF2020
POSITION[3,916,909.52 m, 8,057.75 m, 5,016,918.65 m]
VELOCITY[0, 0, 0 m/s]
ORIENTATION[0, 0, 0, 1]
Canonical Machine Address String (Field-Delimited)1:1 Bijective Mapping

AEA:399:TAI:1246190426.0:ITRF2020:3916909.5232774816,8057.749278632174,5016918.648210711:0,0,0:0,0,0,1:9f6cc1096562729a902167fd622e66a264a239f3e9a9d804414659e3ab97800e

Same event. Machine-readable. Deterministic. Verifiable across planetary bodies.

Notice the body switch: Earth uses NAIF ID 399 and frame ITRF2020; Mars uses NAIF ID 499 and frame IAU_MARS.Explore repository on GitHub →

A location isn't just latitude and longitude.

Classical coordinates assume you are standing on Earth's surface right now. But physical space never sits still:

Earth is rotatingCambridge spins at 289 m/s around Earth's axis.
Earth is orbitingPlanet hurtles at ~30 km/s around the Sun.
Solar System movesPlunging at ~230 km/s through the Milky Way.
Earth's crust movesEurasian plate drifts 2.2 cm/year at Cambridge.
Clocks divergeCivil UTC had 34 leap seconds offset from atomic TAI.
Motion state mattersArriving at rest relative to Sun causes 30 km/s collision.

A real spacetime address therefore needs more than “where.” It needs enough physical context to reconstruct where, when, relative to what, and in what state.

What goes into a spacetime address?

Seven intuitive questions on top. Rigorous engineering specifications underneath:

Where?

POSITION

3D Cartesian coordinates [X,Y,Z][X, Y, Z] in meters from center of mass + geoid calibration so arriving craft don't strike bedrock.

When?

TIME (TAI)

Continuous International Atomic Time (TAI) integer seconds and subsecond nanoseconds, immune to civil leap-second pauses.

Relative to what?

BODY

Central gravitational body origin via NASA NAIF IDs (Earth = 399, Mars = 499, Moon = 301, Barycenter = 0).

In which coordinate chart?

FRAME

Declared reference frame (ITRF2020 for crust, GCRS for geocentric orbit, BCRS for deep space, ICRF3 quasars).

How is it moving?

KINEMATICS

3D velocity vector [Vx,Vy,Vz][V_x, V_y, V_z] in m/s. Required for kinetic momentum matching to eliminate fatal impact shear.

Which way is it facing?

ORIENTATION

Unit quaternion [qx,qy,qz,qw][q_x, q_y, q_z, q_w] on SO(3)SO(3) Lie group. Eliminates Euler angle gimbal-lock singularities.

Has the record changed?

SEAL (SHA-256)

32-byte FIPS 180-4 cryptographic seal. Instantly detects cosmic-ray memory bit-flips or tampering before coordinates enter a flight loop.

06 / Open Source Implementation

Don't take my word for it. Run the code.

Inspect the C reference implementation, Python CLI, Rust harness, and verification suites on GitHub.

View Repository
01 · The Idea

Can an event have a permanent machine-address in spacetime?

02 · The Standard

The AEA specification defining mandatory physical context.

03 · Implementation

136-byte wire binary, C-ABI header, and #![no_std] Rust core.

04 · The Research

Relativistic transformation chains, geodesy, and astrometry.

UNDER THE HOOD · FOR ENGINEERS & SCIENTISTS

Everything above is the intuitive narrative. Below are the formal proofs, IAU transformation chains, wire specifications, and bare-metal SDKs. Click any drawer to inspect:

01Four Physical Hazards & Mathematical Proofs
Proof 01

The Vacuum Trap: 34-Second Leap Offset

Civil UTC periodically inserts leap seconds. On June 28, 2009, civil UTC had diverged from continuous atomic time (TAI) by +34.0 seconds. Materializing 34 seconds early along Earth's 29.78 km/s29.78\text{ km/s} orbit leaves you in vacuum:

Δx=vorbit×Δtleap≈(29.78 km/s)×34.0 s≈1,012 km\Delta x = v_{\text{orbit}} \times \Delta t_{\text{leap}} \approx (29.78\text{ km/s}) \times 34.0\text{ s} \approx \mathbf{1{,}012\text{ km}}

Outcome: 1,012 kilometers out in interplanetary vacuum, waiting for Earth to arrive.

Proof 02

Kinetic Impact Shear: 33.25 GJ Collision

Arriving at coordinates while stationary relative to the Sun results in Earth smashing into you at orbital velocity (29.78 km/s29.78\text{ km/s}). For a 75 kg human mass:

ΔEk=12mv2=12(75)(29,780)2≈33.25 GJ\Delta E_k = \frac{1}{2} m v^2 = \frac{1}{2}(75)(29{,}780)^2 \approx \mathbf{33.25\text{ GJ}}

Outcome: Kinetic shear releasing energy equivalent to the explosive detonation of 7.95 tons of TNT.

Proof 03

Bedrock Burial: 46.3 m Geoid Undulation

GPS elevation (hh) measures against the smooth mathematical WGS84 ellipsoid. Under the EGM2008 gravitational geoid, Cambridge sits N=+46.300 mN = +46.300\text{ m} above the ellipsoid:

h=H+N=12.000 m+46.300 m=58.300 mh = H + N = 12.000\text{ m} + 46.300\text{ m} = \mathbf{58.300\text{ m}}

Outcome: Targeting uncorrected ellipsoidal height buries arrival 46.3 meters deep inside Cretaceous chalk bedrock.

Proof 04

Tectonic Plate Drift: The 2040 Drift

Under the ITRF2020 Plate Motion Model, the Eurasian plate rotates as a rigid body with angular velocity ΩEurasia\boldsymbol{\Omega}_{\text{Eurasia}}, displacing Cambridge at 22.1 mm/yr22.1\text{ mm/yr}:

vplate=Ω×xECEF≈22.1 mm/yr  ⟹  Δx2009→2040≈68.5 cm\mathbf{v}_{\text{plate}} = \boldsymbol{\Omega} \times \mathbf{x}_{\text{ECEF}} \approx 22.1\text{ mm/yr} \implies \Delta \mathbf{x}_{2009 \to 2040} \approx \mathbf{68.5\text{ cm}}

Outcome: 68.5 cm physical displacement relative to geocenter between 2009 and 2040.

02Relativistic Astrometry & IAU 2000/2006 Transformation Chains
AEA=Fframe∘Bbody∘x(tTAI)∥SHA-256(bytes0..104)\text{AEA} = \mathcal{F}_{\text{frame}} \circ \mathcal{B}_{\text{body}} \circ \mathbf{x}(t_{\text{TAI}}) \parallel \text{SHA-256}(\text{bytes}_{0..104})
xGCRS(t)=Q(t)⋅R(t)⋅W(t)⋅xITRF(t)\mathbf{x}_{\text{GCRS}}(t) = Q(t) \cdot R(t) \cdot W(t) \cdot \mathbf{x}_{\text{ITRF}}(t)
xBCRS=xGCRS+rEarth/SSB(t)+O(c−2)\mathbf{x}_{\text{BCRS}} = \mathbf{x}_{\text{GCRS}} + \mathbf{r}_{\text{Earth/SSB}}(t) + \mathcal{O}(c^{-2})
ds2=−(1−2wc2+2w2c4)c2dt2+4c2(w⃗⋅dx⃗) c dt+(1+2wc2)δijdxidxjds^2 = -\left(1 - \frac{2w}{c^2} + \frac{2w^2}{c^4}\right) c^2 dt^2 + \frac{4}{c^2} (\vec{w} \cdot d\vec{x})\, c\, dt + \left(1 + \frac{2w}{c^2}\right) \delta_{ij} dx^i dx^j
εmax≈σsensor⋅eλ⋅Δtreset\varepsilon_{\text{max}} \approx \sigma_{\text{sensor}} \cdot e^{\lambda \cdot \Delta t_{\text{reset}}}
03The 136-Byte AEA-STATE/1 Wire Specification & Embedded Guarantees
OffsetSizeTypeFieldPhysical Definition & Semantic Bounds
0..34 Buint32_tversionWire format protocol version (1 for AEA-STATE/1).
4..74 Buint32_tbody_naifNASA NAIF identifier (399 = Earth geocenter, 499 = Mars, 0 = Barycenter).
8..158 Bint64_ttime_secContinuous atomic seconds elapsed since epoch on declared time scale.
16..194 Buint32_ttime_nsecFractional subsecond nanoseconds (0 ≤ nsec ≤ 999,999,999).
20..212 Buint16_tframeReference frame enum (1 = ITRF2020, 2 = GCRS, 3 = BCRS, 4 = BODY).
22..232 Buint16_ttime_scaleTime scale enum (1 = TAI atomic time, 2 = TT, 3 = TCB, 4 = TDB).
24..4724 Bdouble[3]pos_mCartesian position [X, Y, Z] in meters relative to frame origin.
48..7124 Bdouble[3]vel_mpsCartesian velocity [Vx, Vy, Vz] in meters/second in declared frame.
72..10332 Bdouble[4]quat_xyzwUnit attitude quaternion [qx, qy, qz, qw]. Identity null: [0, 0, 0, 1].
104..13532 Buint8_t[32]hashFIPS 180-4 SHA-256 seal computed over 104-byte canonical prefix.
Zero Heap Allocation0 malloc, 0 free. Verified with llvm-nm libaea.a | grep malloc == 0.
Bounded Stack DepthExecution stack depth strictly bounded under 512 bytes. Zero recursion.
Radiation Bit-Flip DefenseAny single-event upset (SEU) flipping 1 bit in flash causes instant hash mismatch.
04Related Research & Downstream Systems
Deep Space Delta Telemetry

Predict-and-transmit fixed-point state updates compressing 200+ byte ephemerides into 32-byte residual bursts for constrained deep-space links.

Read specification notes
Wire-Speed FPGA Timestamping

Sub-50 nanosecond Ethernet MAC packet arrival sealing for high-frequency defense radar telemetry and financial matching engines.

Explore hardware systems
Post-Quantum CNSA 2.0 Integration

NIST Classic McEliece syndrome verification on embedded ARM CPUs in 0.226 ms, securing telemetry records against quantum adversaries.

Security posture
Tactical Edge AI (BitNet Ternary GEMM)

Sub-15W integer inference running 134 MB neural weights in 148 MB RAM on host ARM CPUs without discrete GPU hardware.

Explore engineering work

Download AEA Reference SDK & C-ABI Bundle (v1.0.0)

C headers, #![no_std] Rust core, Cambridge KAT vectors, and Python verification CLI.

1. Verify in 5 Seconds

# Python standard library only

python tools/aea.py verify tests/kat/cambridge.bin

2. Test Bare-Metal Core

# Cargo test suite

cargo test

3. Build C Static Library

# ARM Cortex-M target

cargo build --release

Engineering Scope: AEA is an immutable state sealer, 4D coordinate standard, and flight blackbox serialization schema. It is not an active trajectory propagator or orbital Kalman filter. Zero heap allocations (0 malloc, 0 free).

Technical Peer Review & Collaboration

Bring your mission specifications.

I welcome technical peer review from astrodynamics specialists, defense avionics contractors, embedded systems engineers, and research institutions.