Outcome-adaptive per-arm C-TMLE (parametric extensions)#

This study measures the interval of CTMLE(strategy="oat", oat_design="per_arm") with ParametricOutcome and ParametricMechanism in four settings that the two earlier studies leave out. The settings are three arms, a known observation weight, the population targets ey_obs, par and paf, and the simultaneous band. Each fit is an exact stacked Z-estimator, in sample or cross-fitted. The weight enters the stack as the normalized mass of each row.

The section Parametric per-arm intervals states the construction, its conditions and what the interval covers. The study ctmle-oat-per-arm-parametric measures the binary in-sample form. The study ctmle-oat-per-arm-parametric-crossfit measures the binary cross-fitted form and the median over draws.

Python property evidence, no comparator. No canonical implementation is compared. R drtmle with adapt_g = TRUE reports the shipped curve of Theorem 1 of Benkeser, Cai and van der Laan (2020). The stack corrects that curve, so no R program measures the corrected uncertainty. The empty equivalence artifact records the absence of a comparator. The evidence is the exact truth of each law, the declared calibration bands, and nine negative controls that must read red.

The study publishes under the gated policy. Every gated row passed, and all nine negative controls read red as declared. The red-cell ledger lists no cell of this study.

What was tested#

setting

declaration

subject

CTMLE(strategy="oat", oat_design="per_arm", n_folds=5, repeats=1) with ParametricOutcome(arm_columns=K - 1) and ParametricMechanism(degree=3). The fit is in sample or cross-fitted, by group. The study sets g_bounds=(0.01, 0.99), max_iter=100 and tol=1e-10, and leaves alpha at its default

primary phase

in sample at \(n = 1500\), 1,600 replications per law. The law binary_active reads par and paf. The law three_arm_active fits reference="0" and reads ey, ate, rr and or. Each replication must report the status "influence_curve" for every estimand. The harness gates its rows

property phase

9 fit groups. Each group fits one shared sample per replicate, and its cells read the same fits

truth

a quadrature of each law (tests/studies/oat_multi_arm_quadrature.py), so no truth comes from a simulation. The truth of a weighted law is the truth under the weight-tilted law

verdicts

each calibration cell needs its SE-ratio and coverage intervals inside the calibration bands. A band cell needs its joint-coverage interval inside the coverage band. A type-I cell needs its rejection bound under the ceiling. A control cell needs its SE-ratio interval outside the band on the declared side, or its joint-coverage upper endpoint below 0.95

failed replicates

a fit that raises, or a fit with an estimate whose status is not "influence_curve", is a failed replicate. A band cell loses a replicate when any estimate of its declared band set has another status. The run records the loss and draws no replacement. A cell may lose floor(0.01 R) replicates, and one more reads bound exceeded. No replicate was lost

The laws share \(W = (W_1, W_2, W_3)\), three independent standard normals.

law

role

construction

binary_active

binary population targets, two arms

a binary outcome with an arm-specific index in \(W_1\) and \(W_2\). The treatment law is a softmax in \(W_1\) and \(W_3\), so \(W_3\) is an instrument. The outcome model is correct

binary_active_weighted

known weight, two arms

binary_active under the known weight \(0.5 + 1\{W_1 > 0\}\). The truth is the truth under the weight-tilted law

three_arm_active

three arms

three arm-specific indices in \(W_1\) and \(W_2\), and a softmax treatment law in \(W_1\) and \(W_3\). The outcome model is correct

three_arm_shared

the cross-arm covariance

the mechanism of three_arm_active with one strong prognosis, \(\text{logit}\, \bar Q_0(a, W) = c_a + 3.5 W_1 + 0.8 W_2\) in every arm. The arm curves correlate at 0.25 to 0.26

three_arm_active_weighted

three arms and the known weight

three_arm_active under the known weight

three_arm_null

type-I error

every arm reads the index \(c = -0.3\), \(u = (0.8, -0.8)\), so every contrast is zero

The reference arm is a property of the group. The groups three_arm, three_arm_shared, composition and three_arm_null fit reference="1". The groups three_arm_crossfit, three_arm_generated_design and the primary phase fit reference="0", the setting of the earlier three-arm study. The budgets in the table are the declared replications of each fit group.

group

law

\(n\)

replications

fit

estimands

role

primary phase

binary_active and three_arm_active

1,500

1,600 per law

in sample

par, paf; ey, ate, rr, or

gated against truth

three_arm

three_arm_active

1,500

29,200

in sample, band fit

ey, ate, rr, or, ey_obs, par, paf

calibration, the band, and three controls

three_arm_shared

three_arm_shared

1,500

14,000

in sample

ey, ate

calibration, and the cross-term control

binary_population

binary_active

1,500

11,200

in sample, band fit

ey0, ey1, ate, ey_obs, par, paf

calibration, the band, and three controls

three_arm_crossfit

three_arm_active

1,500

18,800

cross-fitted, band fit

ey, ate

calibration, the band, and one control

three_arm_generated_design

three_arm_active, the estimated outcome and a pinned true outcome

1,500

80,000

cross-fitted

ate

the generated-design pair

weighted

binary_active_weighted

1,500

17,600

in sample

ey0, ey1, ate, rr, or, ey_obs, par, paf

calibration and one control

weighted_crossfit

binary_active_weighted

1,500

11,600

cross-fitted

ey0, ey1, ate

calibration

composition

three_arm_active_weighted

1,500

17,600

cross-fitted

ey, ate

calibration

three_arm_null

three_arm_null

1,000

1,600

in sample

ate

type-I error

Each band set is the exact set of estimates that the band must cover. The band of three_arm and composition reads ey[0], ey[1], ey[2], ate[0 vs 1] and ate[2 vs 1]. The band of three_arm_crossfit reads ey[0], ey[1], ey[2], ate[1 vs 0] and ate[2 vs 0]. The band of binary_population reads ey0, ey1, ate, ey_obs, par and paf.

The study sizes each unit so that the whole study passes with probability at least 0.95 when nothing is wrong. The count \(G\) is 19: eight calibration groups with the generated-design pair among them, one type-I group, the primary phase and nine negative controls. Each unit needs a pass probability of \(0.95^{1/19}\), which is 0.99730. A predictive model sets the size. It centres each row on its own pilot SE ratio and adds a pooled spread \(\tau_{80}\) over the gated rows. The deviations state where the model gives no size.

The declared-size pilot read every group at its declared budget on pilot-only seeds. The seeds of the first pass (5,000 replications per group) and of the declared-size pass differ. The predictive model, pooled over both passes with \(\tau_{80} = 0.0106\), gives a study-wise pass probability of 0.9844. The primary phase pilot passed all 11 rows at 1,600 replications per law.

Accuracy against known truth#

law

estimand

what was tested

implementation

bias (99% interval)

coverage

SE ratio

result

two arms, an arm-specific outcome index, an instrument, correct outcome regression

paf

population attributable fraction

cleverly per-arm outcome-adaptive C-TMLE with a parametric outcome and mechanism, at three arms, with known weights and for the population targets

-0.0024 to 0.0020

0.9537

1.0084

pass

two arms, an arm-specific outcome index, an instrument, correct outcome regression

par

population attributable risk

cleverly per-arm outcome-adaptive C-TMLE with a parametric outcome and mechanism, at three arms, with known weights and for the population targets

-0.0012 to 0.000968

0.9525

1.0086

pass

three arms, an arm-specific outcome index, an instrument, correct outcome regression

ate[1 vs 0]

difference in counterfactual means, 1 versus 0

cleverly per-arm outcome-adaptive C-TMLE with a parametric outcome and mechanism, at three arms, with known weights and for the population targets

-0.0021 to 0.0024

0.9619

1.0271

pass

three arms, an arm-specific outcome index, an instrument, correct outcome regression

ate[2 vs 0]

difference in counterfactual means, 2 versus 0

cleverly per-arm outcome-adaptive C-TMLE with a parametric outcome and mechanism, at three arms, with known weights and for the population targets

-0.0022 to 0.0026

0.9487

0.9899

pass

three arms, an arm-specific outcome index, an instrument, correct outcome regression

ey[0]

counterfactual mean under treatment arm ‘0’

cleverly per-arm outcome-adaptive C-TMLE with a parametric outcome and mechanism, at three arms, with known weights and for the population targets

-0.0018 to 0.0013

0.9544

0.9984

pass

three arms, an arm-specific outcome index, an instrument, correct outcome regression

ey[1]

counterfactual mean under treatment arm ‘1’

cleverly per-arm outcome-adaptive C-TMLE with a parametric outcome and mechanism, at three arms, with known weights and for the population targets

-0.0018 to 0.0016

0.9531

1.0077

pass

three arms, an arm-specific outcome index, an instrument, correct outcome regression

ey[2]

counterfactual mean under treatment arm ‘2’

cleverly per-arm outcome-adaptive C-TMLE with a parametric outcome and mechanism, at three arms, with known weights and for the population targets

-0.0017 to 0.0017

0.9481

1.0060

pass

three arms, an arm-specific outcome index, an instrument, correct outcome regression

or[1 vs 0]

marginal odds ratio, 1 versus 0, reported on the log scale

cleverly per-arm outcome-adaptive C-TMLE with a parametric outcome and mechanism, at three arms, with known weights and for the population targets

-0.0077 to 0.0106

0.9619

1.0272

pass

three arms, an arm-specific outcome index, an instrument, correct outcome regression

or[2 vs 0]

marginal odds ratio, 2 versus 0, reported on the log scale

cleverly per-arm outcome-adaptive C-TMLE with a parametric outcome and mechanism, at three arms, with known weights and for the population targets

-0.0071 to 0.0123

0.9525

0.9907

pass

three arms, an arm-specific outcome index, an instrument, correct outcome regression

rr[1 vs 0]

marginal risk ratio, 1 versus 0, reported on the log scale

cleverly per-arm outcome-adaptive C-TMLE with a parametric outcome and mechanism, at three arms, with known weights and for the population targets

-0.0042 to 0.0057

0.9594

1.0255

pass

three arms, an arm-specific outcome index, an instrument, correct outcome regression

rr[2 vs 0]

marginal risk ratio, 2 versus 0, reported on the log scale

cleverly per-arm outcome-adaptive C-TMLE with a parametric outcome and mechanism, at three arms, with known weights and for the population targets

-0.0037 to 0.0060

0.9544

0.9879

pass

Theory properties#

property

cell

role

what was tested

what must hold

measured

result

generated_design

three_arm_active__estimated__ate_1_vs_0

positive

three-arm law with an arm-specific outcome index and an instrument: the same design is estimated from the data, as a real fit does, cross-fitted, ATE, arm 1 versus arm 0

SE ratio and coverage intervals both inside their calibration bands; the paired deficit is reported only

coverage 0.9483 to 0.9522, SE ratio 1.0031 to 1.0159

pass

generated_design

three_arm_active__estimated__ate_2_vs_0

positive

three-arm law with an arm-specific outcome index and an instrument: the same design is estimated from the data, as a real fit does, cross-fitted, ATE, arm 2 versus arm 0

SE ratio and coverage intervals both inside their calibration bands; the paired deficit is reported only

coverage 0.9486 to 0.9526, SE ratio 1.0034 to 1.0168

pass

generated_design

three_arm_active__oracle_design__ate_1_vs_0

positive

three-arm law with an arm-specific outcome index and an instrument: the outcome-adaptive design is supplied rather than estimated, cross-fitted, ATE, arm 1 versus arm 0

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9522 to 0.9561, SE ratio 1.0177 to 1.0309

pass

generated_design

three_arm_active__oracle_design__ate_2_vs_0

positive

three-arm law with an arm-specific outcome index and an instrument: the outcome-adaptive design is supplied rather than estimated, cross-fitted, ATE, arm 2 versus arm 0

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9523 to 0.9561, SE ratio 1.0196 to 1.0327

pass

interval_calibration

binary_population__ey_obs__corrected

positive

the stacked curve of the population targets on the two-arm law, in sample: observed mean of the outcome

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9381 to 0.9494, SE ratio 0.9759 to 1.0101

pass

interval_calibration

binary_population__paf__corrected

positive

the stacked curve of the population targets on the two-arm law, in sample: population attributable fraction against reference arm 0

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9427 to 0.9535, SE ratio 0.9827 to 1.0165

pass

interval_calibration

binary_population__par__corrected

positive

the stacked curve of the population targets on the two-arm law, in sample: population attributable risk against reference arm 0

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9437 to 0.9545, SE ratio 0.9830 to 1.0182

pass

interval_calibration

binary_population__par__noise_control

control

a declared scale of independent noise is added to each estimate of this contrast

the SE-ratio interval must fall below the calibration band

coverage 0.8226 to 0.8409, SE ratio 0.6950 to 0.7194

pass

interval_calibration

binary_population__par__shipped_curve__shrunken_se_control

control

the standard errors of population attributable risk against reference arm 0 come from the shipped adaptive-propensity curve of the same fits, which omits the generated-design term

the SE-ratio interval must fall below the calibration band

coverage 0.8608 to 0.8773, SE ratio 0.7544 to 0.7810

pass

interval_calibration

binary_population__par__shrunken_se_control

control

the standard errors of this contrast are multiplied by a declared factor below one

the SE-ratio interval must fall below the calibration band

coverage 0.8209 to 0.8393, SE ratio 0.6882 to 0.7127

pass

interval_calibration

composition__ate_0_vs_1__corrected

positive

the cross-fitted stacked curve on the three-arm law under the known weight, five folds, reference arm 1: ATE, arm 0 versus arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9452 to 0.9538, SE ratio 1.0000 to 1.0279

pass

interval_calibration

composition__ate_0_vs_1__noise_control

control

a declared scale of independent noise is added to each estimate of this contrast

the SE-ratio interval must fall below the calibration band

coverage 0.8341 to 0.8484, SE ratio 0.7129 to 0.7327

pass

interval_calibration

composition__ate_0_vs_1__shrunken_se_control

control

the standard errors of this contrast are multiplied by a declared factor below one

the SE-ratio interval must fall below the calibration band

coverage 0.8275 to 0.8420, SE ratio 0.7002 to 0.7199

pass

interval_calibration

composition__ate_2_vs_1__corrected

positive

the cross-fitted stacked curve on the three-arm law under the known weight, five folds, reference arm 1: ATE, arm 2 versus arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9440 to 0.9526, SE ratio 0.9929 to 1.0203

pass

interval_calibration

composition__ey_0__corrected

positive

the cross-fitted stacked curve on the three-arm law under the known weight, five folds, reference arm 1: mean of arm 0

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9471 to 0.9555, SE ratio 1.0049 to 1.0331

pass

interval_calibration

composition__ey_1__corrected

positive

the cross-fitted stacked curve on the three-arm law under the known weight, five folds, reference arm 1: mean of arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9440 to 0.9526, SE ratio 0.9955 to 1.0245

pass

interval_calibration

composition__ey_2__corrected

positive

the cross-fitted stacked curve on the three-arm law under the known weight, five folds, reference arm 1: mean of arm 2

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9413 to 0.9502, SE ratio 0.9969 to 1.0253

pass

interval_calibration

three_arm__ate_0_vs_1__corrected

positive

the stacked curve on the three-arm law, in sample, reference arm 1: ATE, arm 0 versus arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9431 to 0.9499, SE ratio 0.9808 to 1.0019

pass

interval_calibration

three_arm__ate_0_vs_1__noise_control

control

a declared scale of independent noise is added to each estimate of this contrast

the SE-ratio interval must fall below the calibration band

coverage 0.8226 to 0.8340, SE ratio 0.6947 to 0.7097

pass

interval_calibration

three_arm__ate_0_vs_1__shrunken_se_control

control

the standard errors of this contrast are multiplied by a declared factor below one

the SE-ratio interval must fall below the calibration band

coverage 0.8225 to 0.8339, SE ratio 0.6868 to 0.7016

pass

interval_calibration

three_arm__ate_2_vs_1__corrected

positive

the stacked curve on the three-arm law, in sample, reference arm 1: ATE, arm 2 versus arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9449 to 0.9516, SE ratio 0.9894 to 1.0106

pass

interval_calibration

three_arm__ey_0__corrected

positive

the stacked curve on the three-arm law, in sample, reference arm 1: mean of arm 0

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9422 to 0.9491, SE ratio 0.9805 to 1.0010

pass

interval_calibration

three_arm__ey_1__corrected

positive

the stacked curve on the three-arm law, in sample, reference arm 1: mean of arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9425 to 0.9493, SE ratio 0.9852 to 1.0066

pass

interval_calibration

three_arm__ey_1__shipped_curve__shrunken_se_control

control

the standard errors of mean of arm 1 come from the shipped adaptive-propensity curve of the same fits, which omits the generated-design term

the SE-ratio interval must fall below the calibration band

coverage 0.8659 to 0.8760, SE ratio 0.7703 to 0.7868

pass

interval_calibration

three_arm__ey_2__corrected

positive

the stacked curve on the three-arm law, in sample, reference arm 1: mean of arm 2

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9429 to 0.9497, SE ratio 0.9844 to 1.0059

pass

interval_calibration

three_arm__ey_obs__corrected

positive

the stacked curve on the three-arm law, in sample, reference arm 1: observed mean of the outcome

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9455 to 0.9521, SE ratio 0.9887 to 1.0103

pass

interval_calibration

three_arm__log_or_0_vs_1__corrected

positive

the stacked curve on the three-arm law, in sample, reference arm 1: log odds ratio, arm 0 versus arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9436 to 0.9503, SE ratio 0.9809 to 1.0019

pass

interval_calibration

three_arm__log_or_2_vs_1__corrected

positive

the stacked curve on the three-arm law, in sample, reference arm 1: log odds ratio, arm 2 versus arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9454 to 0.9521, SE ratio 0.9895 to 1.0103

pass

interval_calibration

three_arm__log_rr_0_vs_1__corrected

positive

the stacked curve on the three-arm law, in sample, reference arm 1: log risk ratio, arm 0 versus arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9444 to 0.9511, SE ratio 0.9806 to 1.0017

pass

interval_calibration

three_arm__log_rr_2_vs_1__corrected

positive

the stacked curve on the three-arm law, in sample, reference arm 1: log risk ratio, arm 2 versus arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9458 to 0.9525, SE ratio 0.9894 to 1.0109

pass

interval_calibration

three_arm__paf_1__corrected

positive

the stacked curve on the three-arm law, in sample, reference arm 1: population attributable fraction against reference arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9426 to 0.9494, SE ratio 0.9850 to 1.0058

pass

interval_calibration

three_arm__par_1__corrected

positive

the stacked curve on the three-arm law, in sample, reference arm 1: population attributable risk against reference arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9424 to 0.9493, SE ratio 0.9848 to 1.0063

pass

interval_calibration

three_arm_crossfit__ate_1_vs_0__corrected

positive

the cross-fitted stacked curve on the three-arm law, five folds, reference arm 0: ATE, arm 1 versus arm 0

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9482 to 0.9563, SE ratio 1.0021 to 1.0285

pass

interval_calibration

three_arm_crossfit__ate_1_vs_0__noise_control

control

a declared scale of independent noise is added to each estimate of this contrast

the SE-ratio interval must fall below the calibration band

coverage 0.8335 to 0.8473, SE ratio 0.7102 to 0.7291

pass

interval_calibration

three_arm_crossfit__ate_1_vs_0__shrunken_se_control

control

the standard errors of this contrast are multiplied by a declared factor below one

the SE-ratio interval must fall below the calibration band

coverage 0.8312 to 0.8451, SE ratio 0.7010 to 0.7199

pass

interval_calibration

three_arm_crossfit__ate_2_vs_0__corrected

positive

the cross-fitted stacked curve on the three-arm law, five folds, reference arm 0: ATE, arm 2 versus arm 0

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9469 to 0.9550, SE ratio 1.0018 to 1.0289

pass

interval_calibration

three_arm_crossfit__ey_0__corrected

positive

the cross-fitted stacked curve on the three-arm law, five folds, reference arm 0: mean of arm 0

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9480 to 0.9561, SE ratio 1.0023 to 1.0293

pass

interval_calibration

three_arm_crossfit__ey_1__corrected

positive

the cross-fitted stacked curve on the three-arm law, five folds, reference arm 0: mean of arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9422 to 0.9507, SE ratio 0.9910 to 1.0184

pass

interval_calibration

three_arm_crossfit__ey_1__shipped_curve__shrunken_se_control

control

the standard errors of mean of arm 1 come from the shipped adaptive-propensity curve of the same fits, which omits the generated-design term

the SE-ratio interval must fall below the calibration band

coverage 0.8701 to 0.8825, SE ratio 0.7805 to 0.8021

pass

interval_calibration

three_arm_crossfit__ey_2__corrected

positive

the cross-fitted stacked curve on the three-arm law, five folds, reference arm 0: mean of arm 2

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9437 to 0.9521, SE ratio 0.9940 to 1.0211

pass

interval_calibration

three_arm_shared__ate_0_vs_1__corrected

positive

the stacked curve on a three-arm law whose arms share W1 and W2 in their outcome index, in sample, reference arm 1: ATE, arm 0 versus arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9399 to 0.9499, SE ratio 0.9705 to 1.0011

pass

interval_calibration

three_arm_shared__ate_0_vs_1__cross_term_dropped__inflated_se_control

control

the standard errors of the contrast are built from the two arm variances without the cross-arm covariance, on a law whose arm estimates correlate

the SE-ratio interval must fall above the calibration band

coverage 0.9701 to 0.9771, SE ratio 1.1287 to 1.1649

pass

interval_calibration

three_arm_shared__ate_0_vs_1__noise_control

control

a declared scale of independent noise is added to each estimate of this contrast

the SE-ratio interval must fall below the calibration band

coverage 0.8179 to 0.8345, SE ratio 0.6839 to 0.7052

pass

interval_calibration

three_arm_shared__ate_0_vs_1__shrunken_se_control

control

the standard errors of this contrast are multiplied by a declared factor below one

the SE-ratio interval must fall below the calibration band

coverage 0.8145 to 0.8312, SE ratio 0.6792 to 0.7006

pass

interval_calibration

three_arm_shared__ate_2_vs_1__corrected

positive

the stacked curve on a three-arm law whose arms share W1 and W2 in their outcome index, in sample, reference arm 1: ATE, arm 2 versus arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9389 to 0.9490, SE ratio 0.9722 to 1.0031

pass

interval_calibration

three_arm_shared__ey_0__corrected

positive

the stacked curve on a three-arm law whose arms share W1 and W2 in their outcome index, in sample, reference arm 1: mean of arm 0

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9437 to 0.9534, SE ratio 0.9810 to 1.0119

pass

interval_calibration

three_arm_shared__ey_1__corrected

positive

the stacked curve on a three-arm law whose arms share W1 and W2 in their outcome index, in sample, reference arm 1: mean of arm 1

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9448 to 0.9544, SE ratio 0.9744 to 1.0054

pass

interval_calibration

three_arm_shared__ey_2__corrected

positive

the stacked curve on a three-arm law whose arms share W1 and W2 in their outcome index, in sample, reference arm 1: mean of arm 2

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9431 to 0.9528, SE ratio 0.9848 to 1.0160

pass

interval_calibration

weighted__ate__corrected

positive

the stacked curve on the two-arm law under the known weight 0.5 + 1{W1 > 0}, in sample: ATE

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9456 to 0.9541, SE ratio 0.9905 to 1.0182

pass

interval_calibration

weighted__ate__noise_control

control

the stacked curve on the two-arm law under the known weight 0.5 + 1{W1 > 0}, in sample: a declared scale of independent noise is added to each estimate of this contrast

the SE-ratio interval must fall below the calibration band

coverage 0.8226 to 0.8373, SE ratio 0.6988 to 0.7179

pass

interval_calibration

weighted__ate__shrunken_se_control

control

the stacked curve on the two-arm law under the known weight 0.5 + 1{W1 > 0}, in sample: the standard errors of this contrast are multiplied by a declared factor below one

the SE-ratio interval must fall below the calibration band

coverage 0.8211 to 0.8358, SE ratio 0.6934 to 0.7127

pass

interval_calibration

weighted__ey0__corrected

positive

the stacked curve on the two-arm law under the known weight 0.5 + 1{W1 > 0}, in sample: arm-0 mean

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9427 to 0.9514, SE ratio 0.9847 to 1.0116

pass

interval_calibration

weighted__ey0__shipped_curve__shrunken_se_control

control

the stacked curve on the two-arm law under the known weight 0.5 + 1{W1 > 0}, in sample: the standard errors of arm-0 mean come from the shipped adaptive-propensity curve of the same fits, which omits the generated-design term

the SE-ratio interval must fall below the calibration band

coverage 0.8829 to 0.8951, SE ratio 0.8077 to 0.8300

pass

interval_calibration

weighted__ey1__corrected

positive

the stacked curve on the two-arm law under the known weight 0.5 + 1{W1 > 0}, in sample: arm-1 mean

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9451 to 0.9537, SE ratio 0.9924 to 1.0204

pass

interval_calibration

weighted__ey_obs__corrected

positive

the stacked curve on the two-arm law under the known weight 0.5 + 1{W1 > 0}, in sample: observed mean of the outcome

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9449 to 0.9535, SE ratio 0.9818 to 1.0092

pass

interval_calibration

weighted__log_or__corrected

positive

the stacked curve on the two-arm law under the known weight 0.5 + 1{W1 > 0}, in sample: log odds ratio

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9462 to 0.9547, SE ratio 0.9909 to 1.0182

pass

interval_calibration

weighted__log_rr__corrected

positive

the stacked curve on the two-arm law under the known weight 0.5 + 1{W1 > 0}, in sample: log risk ratio

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9459 to 0.9544, SE ratio 0.9902 to 1.0174

pass

interval_calibration

weighted__paf__corrected

positive

the stacked curve on the two-arm law under the known weight 0.5 + 1{W1 > 0}, in sample: population attributable fraction against reference arm 0

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9450 to 0.9535, SE ratio 0.9920 to 1.0196

pass

interval_calibration

weighted__par__corrected

positive

the stacked curve on the two-arm law under the known weight 0.5 + 1{W1 > 0}, in sample: population attributable risk against reference arm 0

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9453 to 0.9539, SE ratio 0.9925 to 1.0198

pass

interval_calibration

weighted_crossfit__ate__corrected

positive

the cross-fitted stacked curve on the two-arm law under the known weight, five folds: ATE

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9436 to 0.9542, SE ratio 0.9807 to 1.0154

pass

interval_calibration

weighted_crossfit__ate__noise_control

control

a declared scale of independent noise is added to each estimate of this contrast

the SE-ratio interval must fall below the calibration band

coverage 0.8175 to 0.8357, SE ratio 0.6942 to 0.7180

pass

interval_calibration

weighted_crossfit__ate__shrunken_se_control

control

the standard errors of this contrast are multiplied by a declared factor below one

the SE-ratio interval must fall below the calibration band

coverage 0.8164 to 0.8346, SE ratio 0.6867 to 0.7106

pass

interval_calibration

weighted_crossfit__ey0__corrected

positive

the cross-fitted stacked curve on the two-arm law under the known weight, five folds: arm-0 mean

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9435 to 0.9541, SE ratio 0.9892 to 1.0231

pass

interval_calibration

weighted_crossfit__ey1__corrected

positive

the cross-fitted stacked curve on the two-arm law under the known weight, five folds: arm-1 mean

SE ratio and coverage intervals both inside their calibration bands

coverage 0.9479 to 0.9581, SE ratio 0.9856 to 1.0195

pass

simultaneous_coverage

binary_population__pointwise_joint_control

control

the pointwise 95% intervals of the same fits, read jointly

joint coverage upper endpoint must fall below the nominal rate

joint coverage 0.8237 to 0.8419

pass

simultaneous_coverage

binary_population__shipped_curve_band_control

control

the max-t band built from the shipped adaptive-propensity curves of the same estimates

joint coverage upper endpoint must fall below the nominal rate

joint coverage 0.8597 to 0.8762

pass

simultaneous_coverage

binary_population__simultaneous_band

positive

the max-t multiplier band over the declared set of stacked estimates, from the same-row stacked influence curves

joint coverage interval inside the calibration coverage band

joint coverage 0.9365 to 0.9479

pass

simultaneous_coverage

three_arm__pointwise_joint_control

control

the pointwise 95% intervals of the same fits, read jointly

joint coverage upper endpoint must fall below the nominal rate

joint coverage 0.8102 to 0.8219

pass

simultaneous_coverage

three_arm__shipped_curve_band_control

control

the max-t band built from the shipped adaptive-propensity curves of the same estimates

joint coverage upper endpoint must fall below the nominal rate

joint coverage 0.8465 to 0.8573

pass

simultaneous_coverage

three_arm__simultaneous_band

positive

the max-t multiplier band over the declared set of stacked estimates, from the same-row stacked influence curves

joint coverage interval inside the calibration coverage band

joint coverage 0.9403 to 0.9473

pass

simultaneous_coverage

three_arm_crossfit__simultaneous_band

positive

the max-t multiplier band over the declared set of stacked estimates, from the same-row stacked influence curves

joint coverage interval inside the calibration coverage band

joint coverage 0.9412 to 0.9498

pass

type_i_error

three_arm_null__ate_0_vs_1

positive

the three-arm law whose arms share one outcome index, so every contrast is zero: ATE, arm 0 versus arm 1

one-sided rejection bound stays under the declared type-I ceiling

rejection 0.0563, 0.0424 to 0.0728

pass

type_i_error

three_arm_null__ate_2_vs_1

positive

the three-arm law whose arms share one outcome index, so every contrast is zero: ATE, arm 2 versus arm 1

one-sided rejection bound stays under the declared type-I ceiling

rejection 0.0612, 0.0468 to 0.0784

pass

Read the generated_design cells with this study’s setting. The shared descriptions come from the parent study. The oracle_design cell pins the true outcome regression and fits none, so the shipped curve is its full curve. The estimated cell fits the outcome model per fold and reads the stacked curve. The study gates both cells, and the phrase “the paired deficit is reported only” refers to the deficit between them, which gates nothing.

Declared reading#

The study fixed its reading before the first run, in the module tests/studies/canonical_ctmle_oat_per_arm_parametric_extensions.py.

rule

text

red calibration row

a finite-sample result only when its 99% SE-ratio interval contains 1, its coverage agrees with 0.95, and the diagnosis finds no defect. Any other red row is a defect suspect, diagnosed before publication

negative control

each control must read red. A control row publishes passed = True exactly when its SE-ratio interval leaves the calibration band on the declared side, or, for a joint control, when the upper end of its joint-coverage interval is below 0.95. A control that stays inside, or straddles, cannot see its term. The study is then invalid and the design changes before any reading

the nine declared controls

the cells of the next section. Four ratio controls read below the band, four joint controls read below 0.95, and one ratio control reads above the band

ey_obs

the rows three_arm__ey_obs__corrected, binary_population__ey_obs__corrected and weighted__ey_obs__corrected are gated positive cells. The support rows C11.binary, C11.k_arms and C11.weighted license the interval of ey_obs, so a measured cell backs each claim

reported only

the quantities of the section after next gate nothing

gate count

\(G\) is 19 and the per-unit target is \(0.95^{1/19}\), as What was tested states

failures

a failed replicate is recorded and not redrawn. Dropping it would select on success. Substituting the shipped standard error would mix two estimators

Negative controls#

All nine declared controls read red. The table gives each control, the term it removes, the exact value from the quadrature of the law, and the measured value. A ratio control reads the SE ratio. A joint control reads the joint coverage of the declared band set. The exact joint coverage of the stacked band is 0.950 on every band set.

control

cell

term removed

exact value

side

measured

shipped curve

three_arm__ey_1__shipped_curve__shrunken_se_control

the generated-design term. The standard error of \(\hat\psi_1\) comes from the shipped adaptive-propensity curve of the same fits

SE ratio 0.780

below the band

properties[interval_calibration/three_arm__ey_1__shipped_curve__shrunken_se_control]:se_ratio, with an upper endpoint of properties[interval_calibration/three_arm__ey_1__shipped_curve__shrunken_se_control]:se_ratio_ci_upper

pointwise joint

three_arm__pointwise_joint_control

the band multiplier. The pointwise 95% intervals of the five estimates are read jointly

joint coverage 0.826

below 0.95

properties[simultaneous_coverage/three_arm__pointwise_joint_control]:coverage, with an upper endpoint of properties[simultaneous_coverage/three_arm__pointwise_joint_control]:coverage_ci_upper

shipped band

three_arm__shipped_curve_band_control

the stacked curves. The max-t band comes from the shipped curves of the same five estimates

joint coverage 0.861

below 0.95

properties[simultaneous_coverage/three_arm__shipped_curve_band_control]:coverage, with an upper endpoint of properties[simultaneous_coverage/three_arm__shipped_curve_band_control]:coverage_ci_upper

cross term dropped

three_arm_shared__ate_0_vs_1__cross_term_dropped__inflated_se_control

the cross-arm covariance. The standard error of ate[0 vs 1] is \(\sqrt{se_0^2 + se_1^2}\) on a law whose arm curves correlate

SE ratio 1.163

above the band

properties[interval_calibration/three_arm_shared__ate_0_vs_1__cross_term_dropped__inflated_se_control]:se_ratio, with a lower endpoint of properties[interval_calibration/three_arm_shared__ate_0_vs_1__cross_term_dropped__inflated_se_control]:se_ratio_ci_lower

shipped curve

binary_population__par__shipped_curve__shrunken_se_control

the generated-design term, read on par

SE ratio 0.766

below the band

properties[interval_calibration/binary_population__par__shipped_curve__shrunken_se_control]:se_ratio, with an upper endpoint of properties[interval_calibration/binary_population__par__shipped_curve__shrunken_se_control]:se_ratio_ci_upper

pointwise joint

binary_population__pointwise_joint_control

the band multiplier, over the six estimates

joint coverage 0.841

below 0.95

properties[simultaneous_coverage/binary_population__pointwise_joint_control]:coverage, with an upper endpoint of properties[simultaneous_coverage/binary_population__pointwise_joint_control]:coverage_ci_upper

shipped band

binary_population__shipped_curve_band_control

the stacked curves, over the six estimates

joint coverage 0.872

below 0.95

properties[simultaneous_coverage/binary_population__shipped_curve_band_control]:coverage, with an upper endpoint of properties[simultaneous_coverage/binary_population__shipped_curve_band_control]:coverage_ci_upper

shipped curve

three_arm_crossfit__ey_1__shipped_curve__shrunken_se_control

the generated-design term, cross-fitted

SE ratio 0.780

below the band

properties[interval_calibration/three_arm_crossfit__ey_1__shipped_curve__shrunken_se_control]:se_ratio, with an upper endpoint of properties[interval_calibration/three_arm_crossfit__ey_1__shipped_curve__shrunken_se_control]:se_ratio_ci_upper

shipped curve

weighted__ey0__shipped_curve__shrunken_se_control

the generated-design term, under the known weight

SE ratio 0.819

below the band

properties[interval_calibration/weighted__ey0__shipped_curve__shrunken_se_control]:se_ratio, with an upper endpoint of properties[interval_calibration/weighted__ey0__shipped_curve__shrunken_se_control]:se_ratio_ci_upper

The exact values come from the quadrature of each law. The design test tests/unit/test_ctmle_oat_per_arm_parametric_extensions_study_design.py recomputes them. The cross-fitted group declares the in-sample value 0.780. The shipped band control uses the class ShippedOutcome, which the support predicate refuses. Its fits have the same estimates as the stacked fits and keep the shipped curve.

The pointwise and shipped band controls of three_arm_crossfit are not declared. That group declares the band cell and one ratio control. The cross-fitted three-arm band is the band of the earlier three-arm study, and the stacked band covers 0.9497 on its set.

The harness also derives a shrunken_se_control and a noise_control from one contrast row of each of seven groups: three_arm, three_arm_shared, binary_population, three_arm_crossfit, weighted, weighted_crossfit and composition. The shrunken control multiplies the standard error by the declared factor margin:shrunken_se_factor. All fourteen derived controls read below the band. The noise_control of three_arm_shared uses the asymptotic SD of the contrast from a 20-node Hermite rule. That rule converges slowly on this law, and the bound sits about 0.08% low. The control reads far inside its side of the band, so the study leaves the rule as it is.

The sharp-null cells of three_arm_null can see the stacked term. The cells test the two contrasts of arm 1 against arms 0 and 2.

Quantities reported and not gated#

These quantities describe the fit, and no verdict reads them.

quantity

cell

what it shows

measured

covariance ratio

three_arm_shared__ate_0_vs_1__corrected

the Monte Carlo covariance of the two arm means against the mean reported covariance. The ratio shows whether the stack reports the cross-arm term

properties[interval_calibration/three_arm_shared__ate_0_vs_1__corrected]:covariance_ratio, with an interval from properties[interval_calibration/three_arm_shared__ate_0_vs_1__corrected]:covariance_ratio_ci_lower to properties[interval_calibration/three_arm_shared__ate_0_vs_1__corrected]:covariance_ratio_ci_upper

paired deficit

three_arm_active__estimated__ate_1_vs_0

the SE-ratio deficit of the estimated design against the pinned design, contrast 1 versus 0

an interval from properties[generated_design/three_arm_active__estimated__ate_1_vs_0]:se_ratio_deficit_lower to properties[generated_design/three_arm_active__estimated__ate_1_vs_0]:se_ratio_deficit_upper

paired deficit

three_arm_active__estimated__ate_2_vs_0

the same deficit, contrast 2 versus 0

an interval from properties[generated_design/three_arm_active__estimated__ate_2_vs_0]:se_ratio_deficit_lower to properties[generated_design/three_arm_active__estimated__ate_2_vs_0]:se_ratio_deficit_upper

The deficit is the SE ratio of the estimated design minus that of the pinned design. It is negative on both contrasts, so the estimated design reads closer to 1. The pinned outcome regression keeps the shipped curve, which has no generated-design term to omit. The pilot diagnosis attributes the excess of the pinned design to the shipped curve at about 400 training rows per arm.

Deviations from the plan#

The plan is the X58 plan, section 13.6. The table lists each deviation and its reason.

plan

study

reason

each group is sized to the per-unit target 0.99730

the group three_arm_generated_design has 80,000 replications, and its predicted pass probability is 0.99321, below the target

the pooled rule gives no size for this group. Its four rows sit at SE ratios near 1.01 (estimated) and 1.03 (oracle design). The pooled \(\tau_{80}\) of 0.0106 gives a chance near 0.7% that a drawn true ratio passes 1.07, whatever the size. The figure rises by about 0.0002 per 2,000 replications at 80,000. Every row lies inside the band at the declared size. The coordinator set the largest size searched and did not trade quality for cost

the budgets follow the pilot step 2

the budgets follow the pilot steps 2 and 4, pooled over independent seeds

step 2 alone gave no budget up to 80,000 for three_arm_crossfit and three_arm_generated_design, and a study-wise 0.7675 at the plan budgets. The model carries the sampling error of its own pilot, so the pass probability stops rising with the size. The pooled model gives 0.9844 at the declared budgets

binary_population has 9,600 replications and three_arm_crossfit 17,600

11,200 and 18,800

the pooled pilot gives the smallest multiple of 400 at the target. The predicted values are 0.99738 and 0.99735

three_arm_null has 1,200 replications

1,600

at 1,200 replications, with every allowed loss counted as a rejection, the two rows pass with probability 0.95525 at a true rate of 0.055. At 1,600 the figure is 0.99490, and 0.99982 at 0.05

the design review states that 1,600 primary replications hold the target down to a true coverage of 0.94

the primary phase holds the target down to 0.945

the pass probability of 11 rows at 1,600 replications is 0.99990 at 0.945 and 0.99592 at 0.94, below the target. At 1,200 it is 0.93764 at 0.94. The module comment and the design test state the corrected figures

the ey_obs interval is reported and gates nothing (plan Q7)

three ey_obs cells are gated

three support rows license the Wald interval of ey_obs. A supported claim needs a measured cell

the pilot pools \(\tau_{80}\) over the arms of each group (design review)

the pilot pools \(\tau_{80}\) over the study, as the plan and the earlier study do

the study-wise value is 0.0106. The pilot report prints the group-only values

the noise_control bound uses the exact SD of the contrast

the three_arm_shared bound uses a 20-node Hermite rule

the rule converges slowly on this law (0.9203 at 20 nodes, 0.9210 at 30), so the bound sits about 0.08% low. The control reads far from the band edge

the clause binding of interval_calibration, coverage in calibration band is bias, copied from the parametric study, and the two simultaneous_coverage clauses are se_low

the first clause binds to affine, generated_design, coverage in calibration band binds to shift/0.7, and the two simultaneous_coverage clauses keep se_low

the binding search on the committed rows chose each perturbation, as Reproduction states

No replicate was lost in either phase, so no deviation concerns the failure bound.

Result#

Every one of the property_cells_total cells passes, and so does each of the independent_tests_total primary tests. The lowest primary coverage is min_coverage, with a lower endpoint of min_coverage_ci_lower. The primary SE-ratio endpoints run from min_se_ratio_ci_lower to max_se_ratio_ci_upper. The largest standardized bias is max_standardized_bias. The run lost subject_failures primary fits, and every property cell reports failed_replicates of 0 against its allowance of floor(0.01 R).

The stacked curve calibrates at three arms, in sample and at five folds. It calibrates under the known weight, in sample and at five folds, and at three arms under the weight at five folds. It calibrates the population targets ey_obs, par and paf.

The joint coverage of each of the three bands lies inside the coverage band. The pointwise intervals and the shipped band read below 0.95 on the same estimates, so the correction is what the study measures. The shipped curve reads below the band in all four ratio controls. The interval without the cross-arm covariance reads above the band.

The generated-design pair passes on both contrasts, and so does the sharp null at three arms. The oracle-design rows read above the estimated rows. The pilot diagnosis attributes this to the shipped curve at about 400 training rows per arm.

The band cell of three_arm covers properties[simultaneous_coverage/three_arm__simultaneous_band]:coverage against the nominal 0.95. The band cell of three_arm_crossfit covers properties[simultaneous_coverage/three_arm_crossfit__simultaneous_band]:coverage, and that of binary_population covers properties[simultaneous_coverage/binary_population__simultaneous_band]:coverage.

The sharp-null cells reject at properties[type_i_error/three_arm_null__ate_0_vs_1]:rejection_rate and properties[type_i_error/three_arm_null__ate_2_vs_1]:rejection_rate. Their upper endpoints are properties[type_i_error/three_arm_null__ate_0_vs_1]:rejection_ci_upper and properties[type_i_error/three_arm_null__ate_2_vs_1]:rejection_ci_upper, against the ceiling margin:type_i_ceiling.

Measured values#

Names beginning margin: are thresholds declared before the run. Everything else is measured from the committed results and checked at the precision printed.

quantity

value

source

replicates

1600

primary replications

n

1500

observations per primary replication

independent_tests_total

11

primary tests against truth

independent_tests_passed

11

of those, passing

paired_tests_total

0

external comparisons declared

paired_tests_passed

0

external comparisons passing

property_cells_total

73

repeated-sampling property cells

property_cells_passed

73

cells whose own and family verdicts pass

max_standardized_bias

0.0173

largest absolute primary bias in empirical standard deviations

min_coverage

0.9481

lowest measured primary-study coverage

min_coverage_ci_lower

0.9321

lowest exact 99% primary coverage endpoint

min_se_ratio_ci_lower

0.9441

lowest bootstrap primary SE-ratio endpoint

max_se_ratio_ci_upper

1.0738

highest bootstrap primary SE-ratio endpoint

subject_failures

0

primary fits lost

margin:alpha

0.0500

nominal size of the reported intervals

margin:bootstrap_replicates

10000

resamples behind every bootstrap interval

margin:calibration_coverage_lower

0.9200

calibration-cell coverage band, lower limit

margin:calibration_coverage_upper

0.9800

calibration-cell coverage band, upper limit

margin:calibration_noninferiority

0.0500

largest external-comparison calibration excess bound

margin:calibration_se_ratio_lower

0.9300

calibration-cell SE-ratio band, lower limit

margin:calibration_se_ratio_upper

1.0700

calibration-cell SE-ratio band, upper limit. A control may rise above it

margin:confidence_level

0.9900

confidence level of every Monte Carlo interval

margin:coverage_floor

0.9000

validity floor the coverage lower endpoint must clear

margin:coverage_noninferiority

-0.0250

smallest external-comparison coverage difference bound

margin:excluded_slope

-0.2500

slower rate a root-n interval must exclude. No cell of this study reads it

margin:minimum_power

0.8000

rejection lower bound a power cell must clear. No cell of this study reads it

margin:nominal_coverage

0.9500

nominal coverage those intervals claim

margin:over_coverage_ceiling

0.9900

above this, coverage is conservative rather than invalid

margin:paired_difference

0.1500

paired similarity margin. No cell of this study reads it

margin:rmse_noninferiority

1.1000

largest external-comparison RMSE ratio bound

margin:root_n_slope

-0.5000

contraction rate root-n asymptotics predict. No cell of this study reads it

margin:root_n_slope_lower

-0.6250

accepted root-n slope band, lower limit

margin:root_n_slope_upper

-0.3750

accepted root-n slope band, upper limit

margin:se_ratio_sanity_lower

0.8000

SE-ratio screen, lower limit

margin:se_ratio_sanity_upper

1.2000

SE-ratio screen, upper limit

margin:shrunken_se_factor

0.7000

negative-control SE multiplier

margin:standardized_bias

0.2500

bias equivalence margin, in empirical standard deviations

margin:subject_failure_bound

0.0100

share of replicates a cell may lose

margin:subject_failures_allowed

16

replicates one primary cell may lose

margin:type_i_ceiling

0.1000

the rate the null cell must bound

properties[interval_calibration/three_arm__ey_1__shipped_curve__shrunken_se_control]:se_ratio

0.7785

SE ratio, shipped-curve control, three arms

properties[interval_calibration/three_arm__ey_1__shipped_curve__shrunken_se_control]:se_ratio_ci_upper

0.7868

its 99% upper endpoint

properties[simultaneous_coverage/three_arm__pointwise_joint_control]:coverage

0.8161

joint coverage, pointwise control, three arms

properties[simultaneous_coverage/three_arm__pointwise_joint_control]:coverage_ci_upper

0.8219

its 99% upper endpoint

properties[simultaneous_coverage/three_arm__shipped_curve_band_control]:coverage

0.8520

joint coverage, shipped band control, three arms

properties[simultaneous_coverage/three_arm__shipped_curve_band_control]:coverage_ci_upper

0.8573

its 99% upper endpoint

properties[interval_calibration/three_arm_shared__ate_0_vs_1__cross_term_dropped__inflated_se_control]:se_ratio

1.1464

SE ratio, cross-term control

properties[interval_calibration/three_arm_shared__ate_0_vs_1__cross_term_dropped__inflated_se_control]:se_ratio_ci_lower

1.1287

its 99% lower endpoint

properties[interval_calibration/binary_population__par__shipped_curve__shrunken_se_control]:se_ratio

0.7677

SE ratio, shipped-curve control, par

properties[interval_calibration/binary_population__par__shipped_curve__shrunken_se_control]:se_ratio_ci_upper

0.7810

its 99% upper endpoint

properties[simultaneous_coverage/binary_population__pointwise_joint_control]:coverage

0.8329

joint coverage, pointwise control, population targets

properties[simultaneous_coverage/binary_population__pointwise_joint_control]:coverage_ci_upper

0.8419

its 99% upper endpoint

properties[simultaneous_coverage/binary_population__shipped_curve_band_control]:coverage

0.8681

joint coverage, shipped band control, population targets

properties[simultaneous_coverage/binary_population__shipped_curve_band_control]:coverage_ci_upper

0.8762

its 99% upper endpoint

properties[interval_calibration/three_arm_crossfit__ey_1__shipped_curve__shrunken_se_control]:se_ratio

0.7914

SE ratio, shipped-curve control, cross-fitted

properties[interval_calibration/three_arm_crossfit__ey_1__shipped_curve__shrunken_se_control]:se_ratio_ci_upper

0.8021

its 99% upper endpoint

properties[interval_calibration/weighted__ey0__shipped_curve__shrunken_se_control]:se_ratio

0.8188

SE ratio, shipped-curve control, weighted

properties[interval_calibration/weighted__ey0__shipped_curve__shrunken_se_control]:se_ratio_ci_upper

0.8300

its 99% upper endpoint

properties[interval_calibration/three_arm_shared__ate_0_vs_1__corrected]:covariance_ratio

1.0314

Monte Carlo covariance over reported covariance

properties[interval_calibration/three_arm_shared__ate_0_vs_1__corrected]:covariance_ratio_ci_lower

0.9457

its 99% lower endpoint

properties[interval_calibration/three_arm_shared__ate_0_vs_1__corrected]:covariance_ratio_ci_upper

1.1327

its 99% upper endpoint

properties[generated_design/three_arm_active__estimated__ate_1_vs_0]:se_ratio_deficit_lower

-0.0192

paired SE-ratio deficit, contrast 1 versus 0, lower endpoint

properties[generated_design/three_arm_active__estimated__ate_1_vs_0]:se_ratio_deficit_upper

-0.0102

paired SE-ratio deficit, contrast 1 versus 0, upper endpoint

properties[generated_design/three_arm_active__estimated__ate_2_vs_0]:se_ratio_deficit_lower

-0.0203

paired SE-ratio deficit, contrast 2 versus 0, lower endpoint

properties[generated_design/three_arm_active__estimated__ate_2_vs_0]:se_ratio_deficit_upper

-0.0116

paired SE-ratio deficit, contrast 2 versus 0, upper endpoint

properties[simultaneous_coverage/three_arm__simultaneous_band]:coverage

0.9438

joint coverage of the band, three arms, in sample

properties[simultaneous_coverage/three_arm_crossfit__simultaneous_band]:coverage

0.9456

joint coverage of the band, three arms, cross-fitted

properties[simultaneous_coverage/binary_population__simultaneous_band]:coverage

0.9424

joint coverage of the band, population targets

properties[type_i_error/three_arm_null__ate_0_vs_1]:rejection_rate

0.0563

rejection rate, arm 0 against arm 1

properties[type_i_error/three_arm_null__ate_0_vs_1]:rejection_ci_upper

0.0728

its 99% upper endpoint

properties[type_i_error/three_arm_null__ate_2_vs_1]:rejection_rate

0.0612

rejection rate, arm 2 against arm 1

properties[type_i_error/three_arm_null__ate_2_vs_1]:rejection_ci_upper

0.0784

its 99% upper endpoint

Limits#

limit

what it means

Three arms only

The study measures three arms. A fit at four arms or more matches no support row and is "experimental". The theory covers any arm count (plan 13.2), and no cell measures it

Five folds only

The study fits n_folds=5. The support rows match any fold count inside the cap of 20 folds, and the preflight labels a fit at another count "experimental". The interval also needs 30 rows in each held-out fold

One cross-fitting draw

The study measures repeats=1. A fit with repeats above 1 and the default simultaneous=True raises a CapabilityError, because the band would use the curve of a central draw and not the split-adjusted median estimator. A fit with simultaneous=False or one draw builds its intervals as the crossfit study states. A fit with repeats above 1 under a weight matches no row and is "experimental"

Known weight only

The study measures a known fixed weight \(0.5 + 1\{W_1 > 0\}\), in sample at two arms and cross-fitted at two and three arms. An estimated weight takes the status "estimated_weight_plugin" with the label "experimental", and its curve equals the fixed-weight curve. A weighted in-sample three-arm fit matches no row and is "experimental"

Reference arm by group

The groups fit reference="1" or reference="0" as the table of What was tested states. The curve of a contrast does not depend on the label, and no cell reads the other reference

The measured band sets

The study measures a band over each set named in What was tested. A band over another subset of these estimates rests on the same multiplier argument (plan 13.2) and has no measured cell. A band over rr or or is "experimental", because no band cell reads them

Complete data, binary outcome

The study measures a binary outcome with no stratum, missing value or cluster. A continuous outcome with declared q_bounds has no row and is "experimental"

Two parametric learners only

Only ParametricOutcome and ParametricMechanism are admitted, as exact classes. A scikit-learn learner keeps the "generated_design_plugin" status, and F19 owns its interval

Correct outcome model

The laws have a correct outcome model. The pseudo-true behaviour under a wrong model is measured in the crossfit study at two arms and is not measured at three arms or under a weight

Default alpha only

Every cell runs at the default alpha. No cell sets alpha below it

Balanced folds

Every studied \(n\) is a multiple of 5, so the folds are exactly balanced. The unbalanced fold map is checked by CW2 in tests/unit/test_oat_crossfit_stack.py, not by this study

Generated-design pair at its size

The group three_arm_generated_design has a predicted pass probability of 0.99321, below the per-unit target 0.99730. The pair carries the weakest margin of the study. Its upper 99% SE-ratio bound lies 0.017 under the band edge in the pilot

In-sample band below the exact coverage

The in-sample three-arm band covered 0.9402 at pilot step 2 and 0.9439 at step 4, against the exact 0.9505. Both lie inside the coverage band. The Result section gives the declared-run value

No comparator

The evidence is the exact truth of each law, the calibration bands and the negative controls. No R program reports the corrected curve

Reproduction#

Run python -m tests.canonical.ctmle_oat_per_arm_parametric_extensions.regenerate to regenerate the artifacts. The directory tests/canonical/ctmle_oat_per_arm_parametric_extensions holds manifest.json, run.log and the committed results. The replications and property results carry every published row. The run used commit 11b4579b on a clean tree and 1,750 wall seconds on four cores. The run log records that the run resumed from saved parts of the same code.

The binding search of the property-differential job chose the perturbation of each clause in tests/canonical/clause-bindings.csv for this study. The command is python -m tests.canonical.property_differential --bindings <dir> --subjects ctmle-oat-per-arm-parametric-extensions. The search bound 11 of 11 clauses with the shared kinds and needed no targeted kind. It took 1,876 seconds.

It found the seeded affine map for interval_calibration, coverage in calibration band where the plan copied bias, and shift/0.7 for generated_design, coverage in calibration band where the plan copied affine. It kept se_low for both simultaneous_coverage clauses. The design review expected that se_low could not decide joint coverage below nominal. The search shows that it decides that clause alone on these rows.