Lifecycle System Reference
API reference for the D-P-D’ lifecycle circuit (Feature 030).
The lifecycle system tracks intergenerational class reproduction through population cohort dynamics, legitimation indices, Pareto-distributed inheritance, Chetty-calibrated class mobility, and ideology transmission. It executes per-tick on territory nodes, writing population state and legitimation metrics to the simulation graph.
Enums
LegitimationClassification
Crisis regime classification for the legitimation index.
Value |
Threshold |
Description |
|---|---|---|
|
index < 0.3 |
D’ promise not credible. Agitation routes to bifurcation. |
|
0.3 <= index < 0.5 |
D’ promise weakening. Risk accumulating. |
|
index >= 0.5 |
D’ promise credible. Acquiescence maintained. |
Defined in LegitimationClassification.
EventTypes
Five event types added to EventType.
Event |
Description |
|---|---|
|
Population moved between phases (emitted every tick per territory). |
|
Legitimation classification changed to CRISIS. |
|
Classification improved from CRISIS to STABLE. |
|
D’ death triggered inheritance flow. |
|
Resource competition or dispossession short-circuit detected. |
Models
DPDState
Frozen Pydantic model. Per-county population distribution across lifecycle phases.
Field |
Type |
Default |
Description |
|---|---|---|---|
|
float |
required |
Population in D phase (pre-productive). >= 0. |
|
float |
required |
Population in P phase (productive). >= 0. |
|
float |
required |
Population in D’ phase (post-productive). >= 0. |
|
float |
required |
Annual transition rate D to P. [0, 1]. |
|
float |
required |
Annual transition rate P to D’. [0, 1]. |
|
float |
required |
Annual mortality rate in D’. [0, 1]. |
|
float |
required |
Births per P-phase person per tick. [0, 1]. |
|
Currency |
0.0 |
Aggregate wealth held by D’ cohort. |
Computed properties:
total_population– Sum of all three phase populations.dependency_ratio–(pop_d + pop_d_prime) / pop_p. Returnsinfifpop_pis zero.
Defined in DPDState.
LegitimationState
Frozen Pydantic model. Weighted legitimation index components per county.
Field |
Type |
Description |
|---|---|---|
|
Probability |
Fraction of P-phase with pension access. |
|
Probability |
Social Security replacement ratio. |
|
Probability |
Fraction with secure D’ healthcare. |
|
Probability |
P-phase home ownership rate. |
|
Probability |
Subjective D’ security assessment. |
All fields required. No defaults.
Defined in LegitimationState.
InheritanceFlow
Frozen Pydantic model. Intergenerational wealth transfer at D’ terminus.
Field |
Type |
Description |
|---|---|---|
|
Currency |
Total wealth transferred at D’ death. |
|
Currency |
Wealth consumed by end-of-life care costs. |
|
Currency |
Net inheritance (total minus care costs). |
|
Gini |
Gini coefficient of inheritance distribution. |
Validation: care_consumed cannot exceed total_transferred.
Defined in InheritanceFlow.
ClassMobilityParams
Frozen Pydantic model. Chetty-derived class mobility parameters per county. Static after initialization; read-only during simulation.
Field |
Type |
Default |
Description |
|---|---|---|---|
|
float |
0.445 |
KFR pooled at P25 (Chetty Opportunity Atlas). |
|
float |
0.580 |
KFR pooled at P75. |
|
float |
0.134 |
Black-White KFR gap at P25. |
|
float |
2.8 |
Incarceration rate multiplier on P to D’ transition. [0, 10]. |
|
float |
1.24 |
Premature death multiplier on P to D’ transition. [0, 10]. |
|
Gini |
0.485 |
County Gini coefficient (Chetty Table 8). |
|
Probability |
0.126 |
Fraction below poverty line. |
|
Probability |
0.60 |
Employment-to-population ratio. |
|
Probability |
0.234 |
Single-parent household share. |
|
Probability |
0.33 |
College graduation rate. |
Validation: mobility_base_rate_p75 >= mobility_base_rate;
mobility_racial_gap <= mobility_base_rate.
Defined in ClassMobilityParams.
Formulas
Six pure functions in babylon.formulas.lifecycle.
compute_population_flow
compute_population_flow(
*, pop_d: float, pop_p: float, pop_d_prime: float,
birth_rate: float, rate_d_to_p: float,
rate_p_to_d_prime: float, rate_d_prime_to_death: float,
) -> tuple[float, float, float, float, float]
Computes one-tick population transitions. Returns
(new_pop_d, new_pop_p, new_pop_d_prime, births, deaths).
All outputs clamped to non-negative.
compute_dependency_ratio
compute_dependency_ratio(
*, pop_d: float, pop_p: float, pop_d_prime: float,
) -> float
Returns (pop_d + pop_d_prime) / pop_p, or inf if pop_p
is zero.
compute_legitimation_index
compute_legitimation_index(
*, pension_coverage: float, ss_replacement_rate: float,
healthcare_security: float, home_ownership_rate: float,
retirement_confidence: float,
w_home: float, w_health: float, w_retire: float,
w_pension: float, w_ss: float,
) -> float
Weighted sum of five legitimation components, clamped to [0, 1].
Default weights: 0.35, 0.30, 0.20, 0.10, 0.05.
compute_pareto_gini
compute_pareto_gini(*, alpha: float) -> float
Computes Gini coefficient from Pareto shape parameter.
Raises ValueError if alpha <= 0.5.
compute_ideology_transmission
compute_ideology_transmission(
*, caregiver_ideology: float, institutional_hegemony: float,
caregiver_weight: float, institutional_weight: float,
) -> float
Blends caregiver and institutional influence for D-to-P ideology transfer.
Default weights: caregiver 0.7, institutional 0.3.
compute_shadow_subsidy
compute_shadow_subsidy(
*, p_g2_labor_value: float, wage_paid_for_d_g2: float,
) -> float
Returns the difference between next-generation labor value and wages paid for child-rearing. Always >= 0.
Calculators
Four calculator protocols with default implementations following the Protocol + Default pattern used across the economics module.
Protocol |
Default Implementation |
Purpose |
|---|---|---|
|
|
Population transitions, conservation, differential rates, ideology |
|
|
Legitimation index, blending, crisis classification |
|
|
Pareto inheritance, care costs, Gini computation |
|
|
Premature exit rates, carceral/mortality modifiers |
Defined in babylon.economics.lifecycle.
LifecycleSystem
Registered at position 7 in the system execution order, between CommunitySystem (6) and SolidaritySystem (8).
System name: "lifecycle"
Module: babylon.engine.systems.lifecycle
Step Phases
The step() method executes seven phases per territory node per tick:
Read or initialize DPDState from graph node. If absent, initializes from
LifecycleDefinesdefaults using the territory’s population attribute.Compute population transitions via
CohortDynamicsCalculator. Applies birth, transition, and death rates. Verifies conservation invariant (< 0.1% drift).Compute legitimation index from five material indicators. Classifies into CRISIS / UNSTABLE / STABLE. Emits
LEGITIMATION_CRISISorLEGITIMATION_RECOVERYevents on state transitions.Compute inheritance flow when D’ deaths occur. Applies Pareto distribution and care cost fraction. Emits
INHERITANCE_TRANSFERevent with transfer amounts and Gini.Compute ideology transmission for the D-to-P cohort. Blends caregiver ideology with institutional hegemony, applies regression toward mean.
Apply class mobility parameters from Chetty data. Computes adjusted P-to-D’ rate incorporating early mortality modifier.
Apply differential rates for structural inequality. Writes differential P-to-D’ rate incorporating racial and carceral modifiers.
Graph Mutations
Node |
Attribute |
Effect |
|---|---|---|
Territory |
|
Updated DPDState dict each tick. |
Territory |
|
|
Territory |
|
Weighted legitimation score [0, 1]. |
Territory |
|
LegitimationClassification value string. |
Territory |
|
D-to-P ideology blend. |
Territory |
|
ClassMobilityParams dict. |
Territory |
|
P-to-D’ rate with mortality modifier. |
Territory |
|
P-to-D’ rate with racial + carceral modifiers. |
Error Handling
Condition |
Response |
|---|---|
Missing DPDState on node |
Initialize from LifecycleDefines defaults. |
Conservation violation > 0.1% |
Log warning. Populations are not normalized. |
Negative population after transitions |
Clamped to 0.0 by |
Division by zero (pop_p = 0) |
|
Configuration
GameDefines.lifecycle provides all tuning coefficients via
LifecycleDefines (36 parameters).
Population Rates
Parameter |
Default |
Source |
Description |
|---|---|---|---|
|
0.0107 |
CDC NVSS 2023 |
Births per P-phase person per tick. |
|
0.0556 |
Census |
D to P transition (1/18 years). |
|
0.0213 |
Census |
P to D’ transition (1/47 years). |
|
0.039 |
CDC WONDER 2023 |
D’ annual mortality. |
Initial Population Fractions
Parameter |
Default |
Source |
Description |
|---|---|---|---|
|
0.215 |
Census 2024 |
Initial D phase fraction. |
|
0.605 |
Census 2024 |
Initial P phase fraction. |
|
0.180 |
Census 2024 |
Initial D’ phase fraction. |
Legitimation Weights
Parameter |
Default |
Description |
|---|---|---|
|
0.35 |
Rank 1. Home ownership weight. |
|
0.30 |
Rank 2. Healthcare security weight. |
|
0.20 |
Rank 3. Retirement confidence weight. |
|
0.10 |
Rank 4. Pension coverage weight. |
|
0.05 |
Rank 5. SS replacement weight. |
Legitimation Thresholds
Parameter |
Default |
Description |
|---|---|---|
|
0.6 |
Structural vs agitation blend for bifurcation feed. |
|
0.3 |
Index below this is CRISIS. |
|
0.5 |
Index below this is UNSTABLE. |
Inheritance
Parameter |
Default |
Source |
Description |
|---|---|---|---|
|
1.5 |
Fed SCF |
Pareto shape for wealth distribution. |
|
0.4 |
– |
Fraction of D’ wealth consumed by care. |
Chetty Mobility
Parameter |
Default |
Description |
|---|---|---|
|
0.445 |
KFR pooled at P25. |
|
0.580 |
KFR pooled at P75. |
|
0.134 |
Black-White KFR gap at P25. |
|
2.8 |
Incarceration rate multiplier. |
|
1.24 |
Premature death multiplier. |
Chetty Table 8 Covariates
Parameter |
Default |
Description |
|---|---|---|
|
0.485 |
National median Gini. |
|
0.126 |
National average poverty share. |
|
0.60 |
National average employment rate. |
|
0.234 |
National average single-parent fraction. |
|
0.33 |
National average college graduation rate. |
Ideology Transmission
Parameter |
Default |
Description |
|---|---|---|
|
0.7 |
Caregiver influence in D-to-P transmission. |
|
0.3 |
Institutional hegemony weight. |
|
0.4 |
Regression toward mean strength. |
Dual Circuit
Parameter |
Default |
Description |
|---|---|---|
|
0.6 |
Dependency ratio triggering sandwich effect. |
Module Structure
Module |
Contents |
|---|---|
|
DPDState, LegitimationState, InheritanceFlow, ClassMobilityParams |
|
CohortDynamicsCalculator protocol + default implementation |
|
LegitimationCalculator protocol + default implementation |
|
InheritanceCalculator protocol + default implementation |
|
ClassMobilityCalculator protocol + default implementation |
|
DualCircuitCalculator protocol + default implementation |
Six pure formula functions |
|
LifecycleSystem orchestrator |
See Also
D-P-D’ Lifecycle Circuit – Theoretical foundations and dual circuit interference
Community System Reference – Community hypergraph layer (lifecycle phases)
Simulation Systems Reference – System execution order
Formulas Reference – All simulation formulas
Configuration System – GameDefines parameter system