babylon.engine.dialectics.labor_process

LaborProcessDialectic — ConcreteLabor ↔ AbstractLabor (V1 Ch7§1).

Every act of labor has a dual character: it is simultaneously concrete (producing specific use-values) and abstract (creating value as expenditure of human labor-power in general).

See also

babylon.economics.value: ConcreteLabor and AbstractLabor pole models. babylon.engine.dialectics.base.Dialectic: Generic base class.

Classes

LaborProcessDialectic(**data)

The concrete ↔ abstract labor contradiction (V1 Ch1§2, Ch7§1).

class babylon.engine.dialectics.labor_process.LaborProcessDialectic(**data)[source]

Bases: Dialectic[ConcreteLabor, AbstractLabor]

The concrete ↔ abstract labor contradiction (V1 Ch1§2, Ch7§1).

Every act of labor has a dual character: it is simultaneously concrete (producing specific use-values) and abstract (creating value as expenditure of human labor-power in general).

Weight semantics:
weight < 0 → concrete labor dominant (A): craft production,

skill matters, qualitative differences prominent.

weight > 0 → abstract labor dominant (B): factory production,

labor is homogenized, only quantity matters.

Motion law:

Competitive pressure (from upstream) pushes weight positive (toward abstraction). Absent pressure, weight is stable.

Parameters:
type_tag: str
step(inputs, world)[source]

Motion law T for the labor process.

Parameters:
  • inputs (TickInputs) – Upstream outputs. Looks for competitive_pressure.

  • world (WorldView) – Read-only world context.

Return type:

LaborProcessDialectic

Returns:

New LaborProcessDialectic with updated weight and tick.

observe()[source]

Project labor process state.

Return type:

dict[str, Any]

Returns:

Base observation + labor-specific fields.

model_config: ClassVar[ConfigDict] = {'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

id: UUID
pole_a: A
pole_b: B
weight: float
parent_id: UUID | None
tick_created: int
tick_updated: int