We present ISUT, an auditable, code-backed evidence pack that explores a MOND-like reinterpretation of galactic rotation-curve phenomenology through an information/entropy lens.
Reinterpret the MOND response function as a clock/update-rate field:
ν(y) = α²(y), with y = gN/a0.
Instead of adding unseen mass, the apparent acceleration “boost” is framed as a time/information (clock-rate) effect.
The frame becomes physically distinctive if:
- α(y) is derived independently from an information/entropy principle, or
- it yields falsifiable deviations from MOND/DM in lensing, non-circular dynamics, or clusters.
We believe extraordinary claims require transparent code.
So we release the full workspace as an Open Evidence Pack:
A laptop-runnable Python simulation engine featuring a novel Relational Time stepping rule for long-integration numerical stability (bounded energy drift), plus a built-in Audit Suite.
Validated on SPARC All65 and Golden12 subsets. The pipeline reproduces key rotation-curve relations (e.g., RAR and BTFR) using visible-matter inputs within the tested framework.
A blind-recovery stress test using symbolic regression on noisy, pipeline-generated datasets. The solver repeatedly rediscovers an ISUT-equivalent functional form—suggesting the structure is present in the signal produced by the pipeline, not hand-crafted.
Reviewer-ready scripts regenerate concrete artifacts (CSV/PNG + run metadata) end-to-end:
- internal consistency checks of the clock-rate mapping (identity-by-construction),
- holdout/sensitivity sweeps, and
- “Dark Matter Reverse” extra-acceleration diagnostics.
This release is an auditable evidence pack (code + artifacts + blind symbolic-regression stress tests), not a claim of a fully completed fundamental theory.
This repository is an invitation: run the engine, inspect the logic, and reproduce the figures.
-
The Code
A Python-based simulation/analysis engine that runs on your laptop. It includes an optional Relational Time mode designed for long-integration numerical stability (bounded energy drift) and a built-in Audit Suite that regenerates reproducible artifacts. -
The Data & Pipeline
A consistent pipeline over SPARC-based samples (“All65”, “Golden12”), running key diagnostics and scaling relations such as RAR / TFR. -
The AI Check
(Optional) A Symbolic Regression track that inspects the data structure “without physics priors,” to test whether discovered patterns are intrinsic to the signal rather than hand-crafted. -
The Verification (reviewer-ready scripts)
Reviewer-ready scripts that regenerate concrete artifacts (CSV/PNG + run metadata).
They cover internal-consistency checks (identity-by-construction), holdout/sensitivity sweeps, and rebuttal-oriented diagnostics such as “DM-reverse (extra-acceleration)” tests.
This repository is an invitation.
Everything is open—from the core engine to the plotting scripts—so you don’t have to take our word for it.
Run it, challenge it, and inspect it end-to-end.
This repository provides two complementary layers:
-
Rotation-curve / RAR / TFR pipeline (observational-facing, fast)
Fits SPARC profiles using an algebraic response form such asg = ν(y) g_N(and related diagnostics), producing summary tables and running holdout / sensitivity / audit checks. -
Conservative QUMOND completion (engine-facing, potential-based)
Implements a QUMOND (two-Poisson) conservative completion that actually solves for the potential Φ and computes forces viaa = -∇Φ.
This layer aligns the implementation with the “potential-based / conservative” claims.
.
├── 01.Core_Engine/ # QUMOND conservative solver + engine-level audits
├── 02.Theoretical_Framework/ # derivations / theory checks exported as artifacts
├── 03.Advanced_Validation/ # population tests, holdouts, sensitivity scans, AI check
├── 04.Data_Pipeline/ # deterministic loaders + fitting tools
├── 05.Visualization_Suite/ # figure generation scripts
├── data/
│ └── galaxies/
│ ├── 65_galaxies/ # “All65” (packaged: 60 galaxies; legacy label kept)
│ └── 12_galaxies/ # “Golden12” (packaged: 11 galaxies; legacy label kept)
├── QUMOND_QUICKSTART.md
├── INSTALL.md
├── requirements.txt
└── isut_000_common.py # shared utilities (paths, JSON/CSV helpers, hashing, etc.)
For the full walkthrough, see QUMOND_QUICKSTART.md.
Minimal “does it run?” commands from the repo root:
python 01.Core_Engine/isut_121_engine_core_qumond.py --headlesspython 01.Core_Engine/isut_123_engine_audit_qumond.py --mode all --headlesspython 01.Core_Engine/isut_111_qumond_reviewer_pack_runner.py --fastFor environment setup (including VS Code kernel notes) and dependencies, see INSTALL.md.
pip install -r requirements.txtNotes:
- Python 3.9+ recommended
seabornis optional. Some figure scripts use it; most fall back to matplotlib.- Symbolic-regression scripts run without PySR (they fall back to a “mock mode”), but installing PySR enables the full AI blind-recovery experiment.
Scripts write outputs to a relative sibling folder next to the script:
.../isut_###_script.py- outputs →
.../isut_###_script/{data,figures,logs}
Some runner scripts additionally create timestamped run folders:
.../isut_###_script/runs/<run_id>/{data,figures,logs}
This convention makes runs self-contained and auditable.
Key scripts that can be executed as a “verification pack” even without the manuscript.
(Paths are relative to the repo root.)
- QUMOND reviewer pack runner:
01.Core_Engine/isut_111_qumond_reviewer_pack_runner.py - Poisson residual checks:
01.Core_Engine/isut_104_qumond_poisson_residuals.py - Curl-free field check:
01.Core_Engine/isut_106_qumond_curl_free_check.py - Convergence sweep (mesh/padding):
01.Core_Engine/isut_105_qumond_convergence_suite.py - Energy-drift audit:
01.Core_Engine/isut_103_qumond_energy_audit.py
- EFE sensitivity scan (scalar proxy):
03.Advanced_Validation/isut_314_efe_sensitivity_scan.py - EFE field-level proxy demo (in QUMOND source term):
01.Core_Engine/isut_109_qumond_efe_field_bc_demo.py
- Synthetic-data discriminability:
03.Advanced_Validation/isut_315_synthetic_dm_rejection_test.py - Laplace evidence (prior-dependent):
03.Advanced_Validation/isut_316_bayes_evidence_laplace.py - Residual whiteness test:
03.Advanced_Validation/isut_317_residual_whiteness_test.py - Solar-system sanity checks (high-g Newtonian limit + EFE quadrupole):
01.Core_Engine/isut_108_qumond_solar_system_sanity.py
01.Core_Engine/isut_110_qumond_solar_system_efe_quadrupole.py
03.Advanced_Validation/isut_313_solar_system_high_g_limit.py
- All65 proxy prediction (population-level ν prediction):
03.Advanced_Validation/isut_302_clockrate_proxy_predict_all65.py - Holdout + sensitivity sweeps (global-scale robustness):
03.Advanced_Validation/isut_303_clockrate_proxy_holdout_sensitivity.py - Clock-rate identity (equivalence) check:
01.Core_Engine/isut_126_verification_clock_gravity.py - Toy rotation-curve demo:
01.Core_Engine/isut_127_verification_rotationcurve_demo.py - DM-reverse local extra-acceleration test:
03.Advanced_Validation/isut_304_dm_reverse_local_test.py - DM-reverse holdout/weighted variant:
03.Advanced_Validation/isut_305_dm_reverse_local_test_holdout_weighted.py
- Artifact manifest (hashes + sizes + mtimes):
03.Advanced_Validation/isut_312_reviewer_artifact_manifest.py
See LICENSE.txt.
- Software code: MIT License
- Research documents & data: CC BY-NC 4.0 (attribution required; non-commercial)
Repository: https://github.com/soyoungkim0327/ISUT-Emergent-Gravity
