babylon.formulas.reactionary
Reactionary-subject formulas (spec-071).
The fascism branch of the George Jackson bifurcation (Constitution I.4). When the imperial bribe (Φ) decays, crisis agitation that would route to revolution under solidarity instead routes to fascism in its absence. The privileged strata (labor aristocracy, petty/comprador bourgeoisie) carry an entitlement — a stake in the imperial order — that amplifies agitation into a fascist pull.
Structural provenance (Constitution III.8): entitlement is the material
stake in imperial rent; solidarity in the denominator is the
cross-colonial bridge (I.4) that reroutes agitation to revolution — its
presence suppresses the fascist pull. These are pure, deterministic
functions; all defaults trace to babylon.config.defines.ReactionaryDefines.
See also
babylon.engine.systems.reactionary.FascistFactionSystem: thesystem that applies these formulas.
babylon.formulas.consciousness_routing.route_agitation_to_ternary():the revolutionary-vs-fascist split of raw agitation.
Functions
|
Probability an entitled org member defects under crisis. |
|
Effective entitlement under threat (a threatened stake reacts harder). |
|
Fascist pull on an entitled stratum under crisis. |
|
Undirected-disorder risk for the declassed lumpenproletariat. |
- babylon.formulas.reactionary.calculate_defection_probability(chauvinism, discipline)[source]
Probability an entitled org member defects under crisis.
P_defection = sigmoid(chauvinism − discipline). Chauvinism is the accumulated reactionary sentiment of a labor-aristocratic recruit; discipline is the organization’s counter-pressure. At parity the probability is 0.5.- Parameters:
- Return type:
- Returns:
Defection probability in [0, 1] (bounded by the sigmoid).
Example
>>> calculate_defection_probability(chauvinism=0.5, discipline=0.5) 0.5
- babylon.formulas.reactionary.calculate_entitlement_effective(base_entitlement, threat, threat_gain=_REACT.entitlement_threat_gain)[source]
Effective entitlement under threat (a threatened stake reacts harder).
effective = clamp(base + threat_gain × threat × (1 − base), 0, 1). A stake under threat (loss of privilege) amplifies toward the ceiling; with no threat the effective value passes the base through unchanged.- Parameters:
- Return type:
- Returns:
Effective entitlement in [0, 1].
Example
>>> calculate_entitlement_effective(base_entitlement=0.8, threat=0.0) 0.8
- babylon.formulas.reactionary.calculate_fascist_pull(agitation, entitlement, solidarity, epsilon=_REACT.solidarity_pull_epsilon)[source]
Fascist pull on an entitled stratum under crisis.
Fascist_Pull = Agitation × (Entitlement / (Solidarity + ε)).Crisis-gated: with zero agitation the pull is zero (hegemony holds — the Fundamental Theorem). Solidarity in the denominator suppresses the pull (I.4: solidarity across the colonial divide reroutes agitation to revolution). The
εguard both prevents division by zero and sets the maximal unsuppressed pull.- Parameters:
agitation (
float) – Raw crisis energy [0, ∞) from falling wages / rising exploitation (babylon.formulas.consciousness_routing).entitlement (
float) – The stratum’s stake in the imperial order [0, 1].solidarity (
float) – Incident solidarity strength [0, 1] — the cross-colonial bridge that dampens reaction.epsilon (
float) – Denominator guard (default from ReactionaryDefines).
- Return type:
- Returns:
The fascist pull (≥ 0). Compared against
ReactionaryDefines.fascist_pull_thresholdby the system.
Example
>>> calculate_fascist_pull(agitation=2.0, entitlement=0.8, solidarity=0.0, epsilon=0.1) 16.0 >>> calculate_fascist_pull(agitation=0.0, entitlement=0.8, solidarity=0.0) 0.0
- babylon.formulas.reactionary.calculate_spontaneous_riot_risk(volatility, discipline)[source]
Undirected-disorder risk for the declassed lumpenproletariat.
riot_risk = volatility × (1 − discipline), clamped to [0, 1]. High volatility with low organizational discipline produces spontaneous, non-revolutionary disorder — the reactionary inverse of the organized, solidarity-building UPRISING (it destroys wealth but builds no solidarity).- Parameters:
- Return type:
- Returns:
Riot risk in [0, 1]. Compared against
ReactionaryDefines.spontaneous_riot_threshold.
Example
>>> calculate_spontaneous_riot_risk(volatility=0.8, discipline=0.0) 0.8 >>> calculate_spontaneous_riot_risk(volatility=0.8, discipline=1.0) 0.0