SSM-JTK – Overview (0)

Purpose. This document defines the Shunyaya Symbolic Mathematics — Jyotish Transit Kernel (SSM-JTK): a deterministic, ephemeris-independent way to evaluate rasi-based planetary transits using SSM’s two-channel numbers.

Goal: on-device forward/backward projections from a tiny, audit-ready manifest per planet — no runtime ephemeris. The public reference is a Golden day-grid CSV (daily 1990–2030) verified with strict rasi and node-identity checks and a one-screen public validator.

Architecture at a glance.

  • Two kernel families.
    Fixed-n: bodies with a stable mean motion use n = 360 / P_sid, optionally with small harmonics.
    Free-n: bodies fit once to a slope n plus the same small harmonic scaffold (design-ready; optional).
  • One manifest per planet holds the parameters; the evaluator is a few lines.
  • Output per day is an SSM number x = (m, a) with phi((m,a)) = m.

Alignment (recap; rapidity-safe).
eps_a = 1e-6, eps_w = 1e-12, clamp_a(z) = max(-1+eps_a, min(+1-eps_a, z))
u = atanh(clamp_a(a)) ; pooled alignment a_total = tanh( (sum w_i*atanh(clamp_a(a_i))) / max(sum w_i, eps_w) )
Binary ops: a_mul = tanh(atanh(clamp_a(a1)) + atanh(clamp_a(a2))) ; a_div = tanh(atanh(clamp_a(af)) - atanh(clamp_a(ag)))

Ephemeris-independent angle evaluator (sidereal, Lahiri).
wrap360(x) = x - 360*floor(x/360)
L(t) = wrap360( a0 + n*t + sum_j sum_{k=1..H_j} [ c_{j,k}*sin(k*w_j*t) + d_{j,k}*cos(k*w_j*t) ] )
Carriers: n = 360 / P_sid (fixed for some bodies; learned once for others), w_j = 2*pi / P_j.
From tropical to sidereal (CSV math):
lon_sidereal_lahiri_deg = wrap360(lon_tropical_deg - ayanamsa_deg) with a linearized ayanamsa for CSV math; rasi index rasi = floor(wrap360(L_hat_deg)/30).

Nodes relation. Ketu(t) = wrap360(Rahu(t) + 180).

Minimal manifest schema (per planet, concept).

{
  "name": "jupiter",
  "t0": "2100-01-01",
  "a0_deg": 123.456789,
  "n_deg_per_day": 0.083056,
  "harmonics": [
    { "P_days": 398.88, "H": 2, "c": [c1, c2], "d": [d1, d2] },
    { "P_days": 365.25, "H": 1, "c": [c1],     "d": [d1] }
  ]
}

Determinism rules.

  • Day grid is integer-spaced from t0.
  • Apply one wrap360 at the end of L(t).
  • No hidden state, no network calls; outputs are pure functions of (manifest, t).
  • Collapsing with phi recovers classical scalars; alignment composes via M1/M2 policies.

Tiny reference pseudocode (angle evaluator).

PI = 3.141592653589793
wrap360(x) = x - 360.0 * floor(x/360.0)
L = wrap360( a0_deg + n_deg_per_day * t + SUM_k [ c_k*sin(k*w*t) + d_k*cos(k*w*t) ] )
# For the linear base, set harmonic lists empty; rasi = floor(L/30).

Navigation
Back: SSM-JTK – Primer — Shunyaya Symbolic Mathematics (00)
Next: SSM-JTK – Benefits (0A)