resilience-core — P40
Domänenübergreifende Systemresilienzgröße Ρ
GenesisAeon Package 40 · MOR Research Collective · Johann Römer
What is Ρ?
resilience-core implements the domain-overarching system resilience metric Ρ derived from UTAC (Universal Tipping Attractor Cascade) fixpoint analysis:
Ρ(t) = |λ*(t)| · (1 - Γ(t)/Γ_max) · (1 - Σ_j |C_ij(t)|/C_critical)
Three multiplicative factors:
| Factor | Meaning |
|---|---|
|λ*| = r · tanh²(σΓ) |
Intrinsic return rate to attractor (Pimm 1984 engineering resilience) |
1 - Γ/Γ_max |
Criticality margin — buffer before bifurcation |
1 - Σ C_ij/C_crit (positive contributions only) |
Coupling penalty — external destabilisation from other domains |
Ρ → 0 when a system is simultaneously near its tipping point (Γ → Γ_max) AND receiving strong destabilising coupling (C_ij → C_critical). This formally captures cascade collapse.
Installation
pip install resilience-core
# or
uv add resilience-core
Quick Start
from resilience_core import ResilienceCore, compute_rho
# Single domain -- these are the real numbers with the r=1.0 default
# (see "Uncalibrated defaults" below; this is not yet AMOC's real target)
core = ResilienceCore(domain="amoc")
core.run_cycle(gamma=0.251)
print(core.get_resilience_state())
# {'rho': 0.18337286132702, 'lambda_star': 0.2521719468174266,
# 'recovery_time': 3.965548161167997, 'near_collapse': False, ...}
# Convenience function
rho_arctic = compute_rho(gamma=0.920, domain="arctic") # = 0.0 (near_collapse=True)
# With inter-domain coupling
core_amoc = ResilienceCore(domain="amoc")
core_amoc.run_cycle(
gamma=0.251,
coupling_updates={("arctic_ice", "amoc"): 0.15, ("amazon", "amoc"): 0.08}
)
print(core_amoc.get_resilience_state()["rho"]) # ≈ 0.099 (reduced from 0.183 by coupling)
Uncalibrated defaults — read this before trusting a Ρ number
The table below shows what compute_rho/ResilienceCore actually return
with the default r=1.0 for every domain. r (the intrinsic return
rate) has not been fitted to each domain's real dynamics yet -- see
benchmarks/amoc_calibration.py, which documents this openly for AMOC:
reaching the literature-motivated target Ρ≈0.65 needs r≈3.54
(calibration_status: "OPEN — pending amoc-utac (P18) timeseries"), not
the default r=1.0, which gives Ρ≈0.18. The same caveat applies to every
row below -- these are real, reproducible outputs of this code, not yet
domain-calibrated targets.
| Domain | Γ | Ρ (r=1.0 default) | near_collapse |
|---|---|---|---|
| Quantum bit | 0.050 | 0.01135 | True |
| Sandpile SOC | 0.296 | 0.22229 | False |
| AMOC | 0.251 | 0.18337 | False |
| Arctic ERA5 | 0.920 | 0.0 | True |
near_collapse is rho < COLLAPSE_THRESHOLD, computed by the code itself
-- e.g. Quantum's low Γ does not mean high Ρ once actually computed;
with the default r it flags as near-collapse, the opposite of an earlier
version of this table which described it as "Very resilient."
Diamond Interface
ResilienceCore implements all 6 GenesisAeon Diamond methods:
core.run_cycle(gamma) # Method 1: execute one step
core.get_crep_state() # Method 2: CREP snapshot {C, R, E, P, Gamma}
core.get_utac_state() # Method 3: UTAC snapshot {H, H_star, K_eff}
core.get_phase_events() # Method 4: near-collapse & cascade events
core.to_zenodo_record() # Method 5: Zenodo deposition metadata
core.get_resilience_state() # Method 6 (NEW): full Ρ breakdown
get_resilience_state() is the 6th Diamond method — a standard interface for all GenesisAeon packages to optionally expose via resilience-core.
Frame-Principle Boundary
σ_Φ ≈ 1/16 = 0.0625 defines the collapse threshold:
from resilience_core import frame_principle_report
report = frame_principle_report(gamma=0.9, rho=0.03)
# {'status': 'critical', 'frame_principle_warning': True, ...}
Structure
resilience_core/
├── constants.py # σ, σ_Φ, Γ_max, C_critical
├── eigenrate.py # λ*(t) = -r·tanh²(σΓ)
├── coupling.py # CouplingMatrix: C_ij inter-domain effects
├── cascade.py # CascadeDetector: multi-domain collapse warning
├── rho_calculator.py # RhoCalculator: Ρ = |λ*|·margin·coupling_factor
├── frame_principle.py # σ_Φ boundary analysis
├── system.py # ResilienceCore — Diamond Interface main class
└── benchmarks/ # Calibration scripts (AMOC, Arctic, Sandpile)
Citation
@software{romer2026resiliencecore,
author = {Römer, Johann},
title = {resilience-core: UTAC-derived system resilience (Ρ)},
year = 2026,
publisher = {Zenodo},
doi = {10.5281/zenodo.21398177},
url = {https://github.com/GenesisAeon/resilience-core}
}
Part of the GenesisAeon ecosystem · related: diamond-setup (P-INFRA-1), scope-resilience (P41)
Metadata
Release files for resilience-core 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| resilience_core-1.0.1.tar.gz | 100.1 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| resilience_core-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 117.9 kB
Release files / resilience_core-1.0.1.tar.gz
| Download URL | resilience_core-1.0.1.tar.gz |
|---|---|
| Size | 100.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
521e446f050359e67344ed76aea360ecc063bca1fea97576a907e4acdb7d279a
|
|
BLAKE2b-256 checksum How to use checksums |
340af47f1f70dbc2ed83bd8ed1a69055448cb92a1ec42c932066f7bcc24f003a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 15, 2026.
Transparency logRelease files / resilience_core-1.0.1-py3-none-any.whl
| Download URL | resilience_core-1.0.1-py3-none-any.whl |
|---|---|
| Size | 17.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
450cb58bd85f5d7d4c360a2b0444a009620a9291eb9776738038417d967d756c
|
|
BLAKE2b-256 checksum How to use checksums |
88600aa0a93e53fa2e90cbe75ec91b45913b964ea4574d388454a92f08710f8a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 15, 2026.
Transparency logSecurity for resilience-core 1.0.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for resilience_core-1.0.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 15, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.