babylon.engine.dialectics.volume_2
Capital Volume II dialectics — backward-compatibility re-export shim.
Deprecated since version Import: directly from the individual modules instead:
babylon.engine.dialectics.circulation,
babylon.engine.dialectics.turnover, etc.
- class babylon.engine.dialectics.volume_2.CirculationDialectic(**data)[source]
Bases:
Dialectic[CircuitState, EmptyPole]Circuit of capital dialectic.
Pole A holds the CircuitState tracking Money, Productive, and Commodity capital. Motion law feeds inputs through advance_circuit.
- Parameters:
- model_config: ClassVar[ConfigDict] = {'frozen': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- observe()[source]
Project circulation state for downstream dialectics.
Emits: -
total_capital: M + P + C’ aggregate. -realized_money: money-capital = realized money from sales. -commodity_overhang: unsold commodity fraction.
- step(inputs, world)[source]
Motion law T for the circuit of capital.
- Parameters:
inputs (
TickInputs) – Upstream outputs withelapsed_days,surplus_value, and optionalprofile_dict.world (
WorldView) – Read-only world context.
- Return type:
- Returns:
New CirculationDialectic with updated circuit state.
- sublate()[source]
Sublate to Realization Crisis if commodity overhang exceeds threshold.
- Return type:
Dialectic[Any, Any]|None- Returns:
RealizationCrisisDialectic if overhanging, else None.
- type_tag: str
- id: UUID
- pole_a: A
- pole_b: B
- weight: float
- parent_id: UUID | None
- tick_created: int
- tick_updated: int
- class babylon.engine.dialectics.volume_2.ConsumptionDialectic(**data)[source]
Bases:
Dialectic[ProductiveConsumption, IndividualConsumption]Productive ↔ Individual consumption (Grundrisse moment).
- Weight semantics:
weight < 0 → productive consumption dominant (accumulation). weight > 0 → individual consumption dominant (reproduction).
- Parameters:
id (UUID)
type_tag (str)
pole_a (ProductiveConsumption)
pole_b (IndividualConsumption)
parent_id (UUID | None)
tick_created (int)
tick_updated (int)
- model_config: ClassVar[ConfigDict] = {'frozen': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- observe()[source]
Project consumption state for downstream dialectics.
Emits the two renewal outputs that close the Grundrisse cycle: -
mp_renewed: means of production consumed (→ Production) -labor_power_renewed: labor-power reproduced (→ Production)
- step(inputs, world)[source]
Motion law T for consumption dynamics.
- Parameters:
inputs (
TickInputs) – Upstream outputs (currently unused).world (
WorldView) – Read-only world context.
- Return type:
- Returns:
New ConsumptionDialectic with updated tick.
- type_tag: str
- id: UUID
- pole_a: A
- pole_b: B
- weight: float
- parent_id: UUID | None
- tick_created: int
- tick_updated: int
- class babylon.engine.dialectics.volume_2.DisproportionalityCrisisDialectic(**data)[source]
Bases:
Dialectic[EmptyPole, EmptyPole]Triggered when ReproductionDialectic sublates due to departmental imbalance.
Department I and Department II fail to maintain the exchange relation I(v+s) = IIc required for simple reproduction.
- Parameters:
- model_config: ClassVar[ConfigDict] = {'frozen': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- step(inputs, world)[source]
Crisis persistence — disproportionality deepens.
- Parameters:
inputs (
TickInputs) – Upstream outputs (currently unused).world (
WorldView) – Read-only world context.
- Return type:
- Returns:
Updated crisis dialectic with new tick.
- type_tag: str
- id: UUID
- pole_a: A
- pole_b: B
- weight: float
- parent_id: UUID | None
- tick_created: int
- tick_updated: int
- class babylon.engine.dialectics.volume_2.DistributionDialectic(**data)[source]
Bases:
Dialectic[Wages, SurplusShares]Wages ↔ SurplusShares distribution (Grundrisse moment).
- Weight semantics:
weight < 0 → wages dominate surplus claims. weight > 0 → surplus claims squeeze wages (profit squeeze).
- Parameters:
- model_config: ClassVar[ConfigDict] = {'frozen': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- observe()[source]
Project distribution state for downstream dialectics.
Emits: -
wages_paid: total wages from pole A (→ Consumption) -surplus_distributed: total surplus from pole B (→ Consumption)
- step(inputs, world)[source]
Motion law T for distribution dynamics.
- Parameters:
inputs (
TickInputs) – Upstream outputs. Looks forprofit_squeezeevents.world (
WorldView) – Read-only world context.
- Return type:
- Returns:
New DistributionDialectic with updated weight.
- type_tag: str
- id: UUID
- pole_a: A
- pole_b: B
- weight: float
- parent_id: UUID | None
- tick_created: int
- tick_updated: int
- class babylon.engine.dialectics.volume_2.EmptyPole(**data)[source]
Bases:
BaseModelPlaceholder pole when a Dialectic represents a unary transformation or state wrapper.
- model_config: ClassVar[ConfigDict] = {'frozen': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class babylon.engine.dialectics.volume_2.IndividualConsumption(**data)[source]
Bases:
BaseModelIndividual consumption: reproduction of labor-power.
- labor_power_reproduced
Value of labor-power reproduced.
- model_config: ClassVar[ConfigDict] = {'frozen': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- labor_power_reproduced: float
- class babylon.engine.dialectics.volume_2.ProductiveConsumption(**data)[source]
Bases:
BaseModelProductive consumption: means of production consumed in production.
- means_of_production_value
Value of means of production consumed.
- model_config: ClassVar[ConfigDict] = {'frozen': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- means_of_production_value: float
- class babylon.engine.dialectics.volume_2.RealizationCrisisDialectic(**data)[source]
Bases:
Dialectic[EmptyPole, EmptyPole]Triggered when CirculationDialectic sublates due to realization failure.
Commodity capital cannot be reconverted to money capital because commodities cannot find buyers at their value.
- Parameters:
- model_config: ClassVar[ConfigDict] = {'frozen': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- step(inputs, world)[source]
Crisis persistence — realization crisis deepens.
- Parameters:
inputs (
TickInputs) – Upstream outputs (currently unused).world (
WorldView) – Read-only world context.
- Return type:
- Returns:
Updated crisis dialectic with new tick.
- type_tag: str
- id: UUID
- pole_a: A
- pole_b: B
- weight: float
- parent_id: UUID | None
- tick_created: int
- tick_updated: int
- class babylon.engine.dialectics.volume_2.ReproductionDialectic(**data)[source]
Bases:
Dialectic[DepartmentRow, DepartmentRow]Department I ↔ Department II contradiction.
Pole A handles Dept I (Means of Production). Pole B handles Dept II (Means of Consumption). Weight maps to the gap returned by check_simple_reproduction.
- Parameters:
id (UUID)
type_tag (str)
pole_a (DepartmentRow)
pole_b (DepartmentRow)
parent_id (UUID | None)
tick_created (int)
tick_updated (int)
- model_config: ClassVar[ConfigDict] = {'frozen': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- step(inputs, world)[source]
Motion law T for reproduction balance.
- Parameters:
inputs (
TickInputs) – Upstream outputs (currently unused — poles hold totals).world (
WorldView) – Read-only world context.
- Return type:
- Returns:
New ReproductionDialectic with updated weight.
- type_tag: str
- id: UUID
- pole_a: A
- pole_b: B
- weight: float
- parent_id: UUID | None
- tick_created: int
- tick_updated: int
Bases:
BaseModelSurplus shares distributed among claimants.
- Parameters:
Profit of enterprise distributed.
Interest on borrowed capital.
Ground rent paid to landowners.
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- profit_distributed: float
- interest_paid: float
- rent_paid: float
- class babylon.engine.dialectics.volume_2.TurnoverDialectic(**data)[source]
Bases:
Dialectic[TurnoverProfile, AnnualSurplusValue]Turnover cycle dialectic.
Pole A is TurnoverProfile (durations). Pole B is AnnualSurplusValue (computed turnover-adjusted rates).
- Parameters:
- model_config: ClassVar[ConfigDict] = {'frozen': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- step(inputs, world)[source]
Motion law T for turnover dynamics.
- Parameters:
inputs (
TickInputs) – Upstream outputs withvandsvalues.world (
WorldView) – Read-only world context.
- Return type:
- Returns:
New TurnoverDialectic with updated annual surplus value.
- type_tag: str
- id: UUID
- pole_a: A
- pole_b: B
- weight: float
- parent_id: UUID | None
- tick_created: int
- tick_updated: int
- class babylon.engine.dialectics.volume_2.Wages(**data)[source]
Bases:
BaseModelWage component of distribution.
- wages_paid
Total wages paid in the distribution round.
- model_config: ClassVar[ConfigDict] = {'frozen': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- wages_paid: float