Exact pair-oracle observations and guarded trial reports #
This module contains data only: exact oracle observations, finite traces,
observable scalar guard checks, and the three possible trial outcomes. In
particular, a TrialReport does not contain a proof of a target gradient
bound, a radius classification, or successful controller termination.
Those properties live in the separate proposition TrialValid and must be
proved by the regime-specific trial modules.
A finite, chronological list of counted pair-oracle observations.
Equations
- O3.OracleTrace d = List (O3.Observation d)
Instances For
Each observation in the trace is one counted pair-oracle call.
Equations
- O3.oracleCallCount trace = List.length trace
Instances For
Every recorded observation is the exact answer returned at its point.
Equations
- O3.TraceExact oracle trace = ∀ o ∈ trace, o = oracle.observe o.point
Instances For
A point was actually queried in the given trace.
Equations
- O3.WasQueried trace x = ∃ o ∈ trace, o.point = x
Instances For
An observable guard is stored through its scalar margin. The convention is
that the checked inequality passes exactly when 0 ≤ margin.
- kind : GuardKind
The analytic condition tested by this observable guard.
- margin : ℝ
The signed slack of the tested inequality, with nonnegative values denoting success.
Instances For
The guard's inequality holds exactly when its signed margin is nonnegative.
Instances For
Margin for f(y) ≤ f(x) + linear + (M/2) * stepSq.
Equations
- O3.upperModelGuard fx fy linear stepSq M = { kind := O3.GuardKind.upperModel, margin := fx + linear + M / 2 * stepSq - fy }
Instances For
Margin for gradDiff ≤ M * stepNorm.
Equations
- O3.gradientGuard gradDiff stepNorm M = { kind := O3.GuardKind.gradientLipschitz, margin := M * stepNorm - gradDiff }
Instances For
Margin for the ordered Euclidean finite-data interpolation guard
f_i-f_j-pairing-(2M)^{-1} gradDiffSq ≥ 0.
Equations
- O3.interpolationGuard fi fj pairing gradDiffSq M = { kind := O3.GuardKind.interpolation, margin := fi - fj - pairing - gradDiffSq / (2 * M) }
Instances For
Every guard recorded in the list has a nonnegative margin.
Equations
- O3.allGuardsPass guards = ∀ check ∈ guards, check.Holds
Instances For
The list contains a failed guard of the specified kind.
Instances For
Data-level outcome of a deterministic guarded local trial.
- success {d : ℕ} (point : Vec d) : TrialOutcome d
- scale {d : ℕ} (failedKind : GuardKind) : TrialOutcome d
- radius {d : ℕ} (finalPoint : Vec d) : TrialOutcome d
Instances For
Finite data emitted by a local trial. calls is deliberately not a free
field: it is the length of the exact observation trace.
- observations : OracleTrace d
The chronological oracle responses obtained during the local trial.
- guards : List GuardCheck
The observable inequality checks performed by the local trial.
- outcome : TrialOutcome d
The trial's success or rejection outcome.
Instances For
The number of counted pair-oracle calls in the trial report.
Equations
- report.calls = O3.oracleCallCount report.observations
Instances For
Purely data-level consistency of the recorded outcome.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Semantic obligations proved by a regime-specific local trial. This is a proposition, not a certificate field. The scale and radius conclusions are exactly the directional implications used by the frozen outer-controller lemma.
Equations
- One or more equations did not get rendered due to their size.