iTranslated by AI

The content below is an AI-generated translation. This is an experimental feature, and may contain errors. View original article
😺

B13: Keeping Schrödinger's Cat — A Column

に公開

Keeping Schrödinger's Cat

I made the phase of a wavefunction complete a full rotation without using trigonometric functions or π, and the error was within ±1.


Starting with the cat

Schrödinger's cat is in a state of superposition, being both "alive" and "dead" inside the box.

Until it is observed, it is both.

Today's column is much the same. "Is this physics?" or "Is this just playing with integers?"—you won't know until you observe it.

Let's open the box.


Normal wavefunction phase update

To put it simply, the Schrödinger equation states:

\psi(t) = e^{-iEt/\hbar}\,\psi(0)

The e^{i\theta} on the right side is "a complex number rotating on a unit circle."

Implementing this looks like this:

import math

def update_phase_normal(theta):
    return math.cos(theta), math.sin(theta)

math.cos(), math.sin(), floating-point numbers, and π appear.

Let's rotate it a full circle:

import math

x, y = 0.0, 0.0
for k in range(360):
    rad = math.radians(k)
    x += math.cos(rad)
    y += math.sin(rad)

print(f"({x:.2e}, {y:.2e})")
# → (-3.41e-14, 8.97e-15)

It's not zero. Errors are accumulating. The cat is in a state where we don't know if it's alive or dead.


The B13 approach: A full rotation with integers

In the B13 theory (3120B unit system), direction vectors for every 36-degree increment are pre-defined as integers.

# BASE = 3120 = 13×8×5×3×2×1×1 (product of Fibonacci numbers)
# No trigonometric functions used at all

EDGE_DIRS = [
    ( 3120,     0),   #   0 degrees
    ( 2524,  1834),   #  36 degrees
    (  964,  2967),   #  72 degrees
    ( -964,  2967),   # 108 degrees
    (-2524,  1834),   # 144 degrees
    (-3120,     0),   # 180 degrees
    (-2524, -1834),   # 216 degrees
    ( -964, -2967),   # 252 degrees
    (  964, -2967),   # 288 degrees
    ( 2524, -1834),   # 324 degrees
]

cos(36°) = 2524/3120, sin(36°) = 1834/3120.

This isn't an approximation; it's a definition of the 3120 unit system.

The phase update is as follows:

def update_phase_b13(px, py, step):
    dx, dy = EDGE_DIRS[step % 10]
    return px + dx, py + dy

Only addition. No multiplication. You don't even need import math.


Trying a full rotation

x, y = 0, 0
for k in range(10):  # 36 degrees × 10 = 360 degrees
    dx, dy = EDGE_DIRS[k]
    x += dx
    y += dy

print(x, y)  # → 0 0

(0, 0). Completely within ±1.

The cat is alive and well (or dead). The superposition has not collapsed.


What we can learn

Normal Implementation B13
Phase Representation Floating-point Integer
Functions Used cos / sin / π Addition only
Full Rotation Error ~10⁻¹⁴ Zero
Table Access Speed Base 2.8x faster

It being within ±1 doesn't mean it's "highly accurate"; it just means the error is within ±1 for the required number of digits. It is designed so that the sum of 10 integer steps results in exactly 0, converging to zero error using balanced base-13 numbers.


The box is still half-closed

I still don't know if this means the Schrödinger equation is actually a deterministic value.
However, I can say that it is trying to become zero.

It is certain that by using B13, the error fell within the specified range of ±1 (not zero).

But inside the tiny fractal box, there is another cat of the same shape.


Summary

With B13, trigonometric functions return to (0, 0) after a full rotation.
* However, there is an error within ±1.

Schrödinger's cat continues to thrive in superposition on a fractal integer grid today.


B13 Theory / 3120B Unit System exploration notes. The code works by copy-pasting (no dependencies).


Postscript: I also reduced FFT to just addition and mod. The reveal is in "The Gentle B13 Course."

Discussion