I started with a single nagging question:
“What can we say about reality that is absolutely undeniable, even before any equations?”
I tried to strip every assumption away and keep only statements that survive the toughest “you-can’t-deny-this” test.
Stepping through that exercise—almost like peeling an onion—landed me on the five axioms below.
They aren’t imported from quantum textbooks; they arise directly from the way we all perceive the world.
self-evident observation | irreducible axiom
1️⃣ Something exists for us to notice. | A0 State → There is a non-empty set of distinguishable configurations.
2️⃣ Things change: the scene you’re looking at now isn’t frozen for ever. | A1 Change → There is at least one positive tick of time ε>0.
3️⃣ When things change, successive chances multiply (today + tomorrow = two-day outlook) and the total chance is still 100 %. P Semigroup → Kernels compose additively in time and every row sums to 1.
4️⃣ Up-close, changes look small and local; big jumps are rare. (Think of a dust mote jiggling.) S Smooth kernel → At tiny εεε the hop distribution is Gaussian, parameterised by a width D.
5️⃣ Nature puts a minimum fuzziness on simultaneously knowing “where” and “how fast’’ (an empirical fact). Q Quantum of action → [q,p]=iℏ[q,p]=i\hbar[q,p]=iℏ which fixes that width to D=ℏ/2mD=\hbar/2mD=ℏ/2m.
So—from nothing more than “I see stuff that changes, probabilities add up, motion is mostly small, and there’s a fundamental blur”—you arrive at exactly the axioms that reproduce the Feynman path integral after one Wick-rotation.
In that sense our very perception of reality already proves the framework:
each axiom merely formalises an aspect of experience that no observer can honestly deny.
With help from ChatGPT I distilled that hunch into five minimal axioms. They don’t rely on Hilbert-space operator lore or canonical quantisation; they start with nothing more exotic than “things can hop around stochastically”. From those axioms the Euclidean heat kernel emerges, and by a single Wick rotation it becomes the Schrödinger propagator—the very object inside Feynman’s sum-over-histories.
Below is the concise statement of each axiom and the key feature it guarantees.
The axioms and what each one locks in
label | concise statement | what it forces
A0 — State existence | There is a non-empty measurable set (X) (points, graph nodes, configurations) and a σ-algebra of events. | We have something to assign probabilities to.
A1 — Change | At least one positive time tick (\varepsilon>0) exists. | Excludes a frozen universe; lets us talk about evolution step-by-step.
P — Probabilistic semigroup | For every (\varepsilon) a kernel (K{\varepsilon}(x,y)) satisfies • composition (K{\varepsilon}*K{\varepsilon'}=K{\varepsilon+\varepsilon'}) • normalisation (\sumy K{\varepsilon}(x,y)=1). | Ensures Markov consistency and row-sums = 1 ⇒ local Wheeler–DeWitt-type constraint.
S — Smooth short-time form | As (\varepsilon\!\to\!0) (K_{\varepsilon}(x,y)\approx(4\pi D\varepsilon)^{-d/2} e^{-(y-x)^2/(4D\varepsilon)}). | Locality + central-limit arguments ⇒ a Gaussian heat kernel with free width (D).
Q — Quantum of action | There exists a pair ([q,p]=i\hbar\,\mathbf 1) (or equivalently the harmonic-oscillator spectrum). | Pins diffusion width to (D=\hbar/(2m)) and inserts the uncertainty relation; this single line turns diffusion into quantum mechanics.
I asked the AI for help with the code, if it helps great.
Sections 1–2 set constants and build the tetrahedral spin-network graph.
Section 3 implements the Gaussian hop kernel fixed by the quantum-of-action axiom.
Section 4 adds your Lennard-Jones + ℓ potential in one editable function (Vℓ).
Sections 5–8 show heat-trace regularisation, energy spectrum, coherent-state count, Wick-rotated propagation, and an optional uncertainty check.
Run it with
wolframscript -file SpinNet_KernelPlayground.wl
and you’ll get:
the row-sum deviation (Wheeler–DeWitt test)
the finite t⁰ part of the heat trace (regularised structural energy)
the four-vertex energy spectrum
the smallest boson number that yields ≥ 12 coherent modes
a norm-preserving unitary step and Δx Δp versus ℏ/2.
All that comes straight from the five axioms plus your structural potential.
Tweak Vℓ, ε, or mEff, rerun, and the whole pipeline updates automatically.
(* ::-------------------------------------------:: *)
(* SpinNet_KernelPlayground.wl *)
(* A single-file Wolfram Language prototype *)
(* that marries the five Kernel‑Axioms with *)
(* Noah MacKay’s tetrahedral spin‑network model *)
(* ------------------------------------------- *)
(* ---------- 1. EDITABLE PHYSICAL CONSTANTS ---------- *)
hbar = 1.054571817*10^-34; (* Planck constant (J·s) *)
mEff = 1.0; (* effective "mass" of one lattice node *)
ε = 1.*10^-18; (* short Euclidean time step (s) *)
(* ---------- 2. GEOMETRY: TETRAHEDRAL SPIN NETWORK ---------- *)
(* four vertices & six edges of a regular tetrahedron *)
V = {v1, v2, v3, v4};
E = UndirectedEdge @@@ {{v1,v2},{v1,v3},{v1,v4},
{v2,v3},{v2,v4},{v3,v4}};
graph = Graph[V, E, VertexLabels -> "Name"];
(* hop-count distance on the graph (0,1,2) *)
dist[v_, w_] := GraphDistance[graph, v, w];
(* ---------- 3. KERNEL FROM AXIOMS S + Q ---------- *)
D = hbar/(2 mEff); (* diffusion width fixed by axiom Q *)
ShortTimeKernel[v_, w_, ε_] :=
1/Sqrt[4 π D ε] * Exp[-dist[v, w]^2/(4 D ε)];
Kε = Table[ShortTimeKernel[v, w, ε], {v, V}, {w, V}];
rowDeviation = Max@Abs[Total[Kε, {2}] - 1];
Print["Row‑sum deviation (should be <10⁻⁸): ", rowDeviation];
(* ---------- 4. HAMILTONIAN: LAPLACIAN + STRUCTURAL POTENTIAL ---------- *)
lap = GraphLaplacian[graph, WeightingFunction -> (1 &)];
Hkin = -(hbar^2/(2 mEff)) lap; (* kinetic term from Gaussian width *)
(* EDIT THIS FUNCTION: insert your ℓ‑dependent Lennard‑Jones expression *)
ℓ = 1; (* example angular‑momentum quantum *)
σ = 2.707; (* null‑point factor (in lP units) *)
lP = 1.616255*10^-35; (* Planck length (m) *)
Vℓ[rRatio_] := (mEff) * ( (* zero‑point term *)
4.3610/Sqrt[ℓ (ℓ+1)] +
0.4908 (σ/rRatio)^2 +
1.9632 ((σ/rRatio)^12 - (σ/rRatio)^6) );
(* For this discrete model, assign the same structural energy to each vertex *)
VStruct[v_] := Vℓ[1]; (* rRatio = 1 at equilibrium *)
Hpot = DiagonalMatrix[VStruct /@ V];
H = Hkin + Hpot; (* total 4×4 vertex Hamiltonian *)
(* ---------- 5. HEAT‑TRACE REGULARISATION ---------- *)
heatTrace[t_] := Tr[MatrixExp[-t H]];
finitePiece = Series[heatTrace[t], {t, 0, 0}] // Normal // Coefficient[#, t, 0] &;
Print["Finite (t⁰) part of heat‑trace = ", finitePiece, " (units: J)"];
(* ---------- 6. SPECTRUM & NORMAL MODES ---------- *)
energies = Eigenvalues[H] // Chop;
Print["Vertex energy spectrum (J): ", energies];
(* Coherent‑state counting: how many bosons N give ≥12 symmetric modes? *)
Nmin = First@Select[Range[20], Binomial[# + 3, 3] >= 12 &];
Print["First boson number giving ≥12 modes: N = ", Nmin];
(* ---------- 7. WICK‑ROTATED UNITARY PROPAGATOR ---------- *)
dt = ε; (* choose real‑time step ≈ ε *)
Udt = MatrixExp[(-I/hbar) H dt];
(* propagate a sample state — uniform over four vertices *)
ψ0 = ConstantArray[1, Length[V]] // Normalize;
ψ1 = Udt . ψ0;
Print["Norm after one quantum step: ", Norm[ψ1]];
(* ---------- 8. UNCERTAINTY AUDIT (OPTIONAL) ---------- *)
(* embed vertices at unit positions for a notional x‑operator *)
coords = AssociationThread[V -> {{0,0,0},{1,0,0},{0.5,Sqrt[3]/2,0},{0.5,Sqrt[3]/6,Sqrt[2/3]}}];
xOp = DiagonalMatrix[(First /@ coords /@ V)];
(* define discrete momentum via Laplacian *)
pOp = I hbar lap; (* rough graph‑momentum operator *)
expect[v_, op_] := Re[Conjugate[v].(op.v)];
Δ[v_, op_] := Module[{μ = expect[v, op]}, Sqrt[expect[v, op.op] - μ^2]];
Δx = Δ[ψ1, xOp]; Δp = Δ[ψ1, pOp];
Print["Δx Δp = ", Δx Δp, " vs ℏ/2 = ", hbar/2];
(* ---------- END OF PLAYGROUND ---------- *)
(* Save this script, run with: wolframscript -file SpinNet_KernelPlayground.wl *)