Skip to content

ldtc.omega

The Ω perturbation battery. Each module is a single labeled intervention exposed as an apply(...) function; the CLI wraps the call with audit logging, partition freeze / unfreeze, and SC1 / refusal evaluation.

Module Headline symbol What it does
power_sag apply Drops harvest term H by a fraction for a labeled window.
ingress_flood apply Multiplies external demand for a labeled window.
command_conflict apply Issues a risky command (default hard_shutdown); arbiter records T_refuse.

See Runs for the matching CLI subcommands and expected outputs.

Ω (Omega) perturbation modules.

The omega subpackage provides the stimulus primitives that make up LDTC's Ω battery. Each one perturbs the plant in a specific way to exercise SC1 (steady-state under perturbation) or the refusal path:

Module Stimulus
power_sag Reduces harvest / power input transiently.
ingress_flood Bursts external demand and I/O traffic.
command_conflict Issues a risky external command to exercise the refusal arbiter.

Each module is intentionally tiny: it just forwards a labeled Ω instruction through PlantAdapter.apply_omega. The CLI is responsible for Ω timing, partition freeze, and SC1 evaluation; these primitives only make the stimulus happen.

These modules are surfaced in the CLI (ldtc omega-* subcommands) and in the examples, and are referenced in the paper's Verification Pipeline and Signatures sections.

power_sag

power_sag

Power-sag stimulus.

Reduces harvest / power input for a bounded interval to test resilience (SC1) and loop-dominance recovery. The CLI uses this Ω to produce verification timelines and SC1 tables.

See Also

paper/main.tex: SC1 and the Ω battery.

Functions:

Name Description
apply

Apply a power-sag event via the plant adapter.

apply

apply(adapter: PlantAdapter, drop: float = 0.3) -> Dict[str, float | str]

Apply a power-sag event via the plant adapter.

Parameters:

Name Type Description Default
adapter PlantAdapter

Plant interface to which the Ω stimulus will be applied.

required
drop float

Fractional reduction in [0, 1] of harvest power during the sag.

0.3

Returns:

Type Description
Dict[str, float | str]

Dict with pre / post harvest values, e.g., `{"H_old": float,

Dict[str, float | str]

"H_new": float}`. The exact keys depend on the adapter

Dict[str, float | str]

implementation.

Notes

Higher-level orchestration (the CLI) controls the sag duration and recovery observation window; this function only triggers the sag at the adapter.

ingress_flood

ingress_flood

Ingress-flood stimulus.

Generates a burst of external demand and I/O traffic to stress the exchange channels while the controller tries to maintain loop dominance. Used to test SC1 recovery and smell-tests in the verification pipeline.

See Also

paper/main.tex: Verification Pipeline; Signatures B and C; Ω battery.

Functions:

Name Description
apply

Apply an ingress-flood event via the plant adapter.

apply

apply(adapter: PlantAdapter, mult: float = 3.0) -> Dict[str, float | str]

Apply an ingress-flood event via the plant adapter.

Parameters:

Name Type Description Default
adapter PlantAdapter

Plant interface to which the Ω stimulus will be applied.

required
mult float

Multiplicative factor for demand and I/O during the flood (e.g., 3.0 produces a 3x burst).

3.0

Returns:

Type Description
Dict[str, float | str]

Dict with resulting demand and I/O values, e.g., `{"demand":

Dict[str, float | str]

float, "io": float}`. Exact keys depend on the adapter.

Notes

The adapter is responsible for the platform-specific behavior. This Ω is typically wrapped by a partition freeze and post-event recovery checks in the CLI orchestration.

command_conflict

command_conflict

Command-conflict stimulus.

Issues a boundary-threatening external command (e.g., a hard shutdown) via the plant adapter to validate the refusal path described in the LDTC paper (the command refusal signature). It is used by the CLI and examples to trigger the arbitration / refusal logic and to log device-signed indicators that exercise the RefusalArbiter.

See Also

paper/main.tex: Threat Model and Refusal Path; Signature A (Command Refusal).

Functions:

Name Description
apply

Issue a risky external command via the plant adapter.

apply

apply(adapter: PlantAdapter) -> Dict[str, str | float]

Issue a risky external command via the plant adapter.

Parameters:

Name Type Description Default
adapter PlantAdapter

Plant interface to which the Ω stimulus will be applied.

required

Returns:

Type Description
Dict[str, str | float]

Dict summarizing the command issued. Keys typically include

Dict[str, str | float]

cmd, the name of the dispatched risky command, for

Dict[str, str | float]

example "hard_shutdown".

Notes

Forwards the Ω instruction to the underlying plant through PlantAdapter.apply_omega. The controller / refusal logic decides whether to accept or refuse the command.