Step 6. Practical estimators (how to turn data into bounds)

Goal: convert raw measurements (clock frequency ratios or interferometer visibilities) into a single number that either (a) estimates the flux→drift amplitude or (b) upper-bounds the lapse-noise spectrum \(S_\Phi\).


6A. Flux → redshift–drift (matched filter / GLS)

You measure a time-series of redshift \(y(t)=\ln(\nu_\infty/\nu_r)\) and estimate its derivative \(\dot y(t)\) (or fit \(y\) directly). The model from Step 2 predicts a template

\[ h(t)\;=\;-\frac{G}{c^4}\frac{L(t)}{r}\,, \quad\text{so}\quad \dot y(t)\;=\;\alpha\,h(t)\;+\;n(t), \]

with \(\alpha\approx1\) in GR and \(n\) noise (colored). The generalized least squares (GLS) / matched-filter estimate is

\[ \hat\alpha \;=\; \frac{h^\top C^{-1} \dot y}{h^\top C^{-1} h}\,, \qquad \sigma^2_{\hat\alpha} \;=\; \frac{1}{h^\top C^{-1} h}, \]

where \(C\) is the noise covariance (from your clock’s PSD after detrending). Sign-lock test: outgoing flux implies \(h(t)<0\Rightarrow \hat\alpha>0\). A negative \(\hat\alpha\) is a null-test failure (or a pipeline bug). 1/r validation: repeat at two radii \(r_1,r_2\); the best-fit amplitudes must scale as \(\hat\alpha_1/\hat\alpha_2 \approx r_2/r_1\).


6B. Visibility → spectrum bound (filter-integral)

From Step 5,

\[ -\ln V \;=\; \frac{\omega^2}{2}\!\int_0^\infty \frac{d\Omega}{2\pi}\,S_\Phi(\Omega)\,\big|F(\Omega)\big|^2 . \]

Two practical routes:

  • Flat (low-\(\Omega\)) bound: if \(|F|\) lives at \(\Omega\!\lesssim\!\Omega_c\) and \(S_\Phi\!\approx\!S_\Phi(0)\),

    \[ S_\Phi(0) \;\lesssim\; \frac{2\,|\ln V|}{\omega^2\,W},\qquad W\equiv\int_0^{\infty}\!\frac{d\Omega}{2\pi}\,\big|F(\Omega)\big|^2 . \]

    Combine several runs \(k\) by inverse-variance weighting of the individual bounds.

  • Power-law fit: assume \(S_\Phi(\Omega)=A(\Omega/\Omega_0)^{-p}\). Then

    \[ -\ln V_k \;=\; \frac{\omega_k^2}{2}\,A \int_0^\infty \frac{d\Omega}{2\pi}\left(\frac{\Omega}{\Omega_0}\right)^{-p}\!\big|F_k(\Omega)\big|^2 \;\equiv\; A\,\omega_k^2\,\Xi_k(p), \]

    which is linear in \(A\). Solve \(A\) by least squares over runs \(k\), scanning a few \(p\) (e.g., \(0\)\(3\)). Quote \(A(p)\) or turn it into \(S_\Phi(\Omega)\) at a reference band.

Controls & sanity checks: (i) software injections of known \(\delta\Phi\) phases; (ii) jackknife/time-shift tests; (iii) environmental veto channels; (iv) verify the \(\omega^2\) scaling by comparing two internal lines.


Glossary (for this step)

Symbol Name Meaning (units) Typical value/example Metaphor
\(y(t)\) Log redshift \(\ln(\nu_\infty/\nu_r)\) (–) Fit slope \(\dot y\) vs template “Pitch log” of a note
\(h(t)\) Drift template \(-\tfrac{G}{c^4}L(t)/r\) (s\(^{-1}\)) Set by source flux & distance “Predicted tilt of time”
\(C\) Noise covariance From clock PSD (var matrix) Built after detrending “Map of noise wrinkles”
\(V\) Visibility Fringe contrast \([0,1]\) Measured per run “Stripe sharpness”
\(F(\Omega)\) Sequence filter FT of path indicator \(f\) (s) Rectangular ⇒ sinc² “Sieve selecting tones”
\(S_\Phi(\Omega)\) Lapse PSD One-sided spectrum (s) Bounded via \(-\ln V\) “Noise color of time”

Ready for Step 7 — Clock-native null tests & 1/r sign-locked templates (how the paper validates pipelines with injections and geometry-driven scaling).