Outcome-adaptive multi-arm C-TMLE#
This study compares outcome-adaptive C-TMLE for a labelled three-arm treatment. The canonical
comparison uses archived R ctmle3 at pinned commit
a4ea77b. Both implementations receive identical draws and start from corresponding empirical
treatment mechanisms and correctly specified outcome regressions.
The study uses the family-wide three-arm binary law and reports arm means, ATEs, risk ratios,
and odds ratios against the high arm. Its property design separately checks the method’s
outcome-regression robustness contract and the precision cost of estimating the generated
outcome-adaptive design.
This study fits the shared design, oat_design="shared". Every shared fit has the
generated_design_plugin status. The coverage and
standard-error ratios below measure plugin_interval and plugin_std_error as diagnostics;
their pass labels do not authorize ci, pvalue, or std_error. The two red generated-design
property cells remain open under F19.
The primary fit draws no split at all. It is not cross-fitted, and the outcome-adaptive strategy
scores no candidate path, so it needs no selection folds. Every property cell is cross-fitted and
declares stratify_folds="none", which reaches its outer folds and the Super Learner’s inner
folds. No cell declares q_bounds, because every law in this row has a binary outcome, whose
outcome scaler is already the identity.
Accuracy against known truth#
law |
estimand |
what was tested |
implementation |
bias (99% interval) |
coverage |
SE ratio |
result |
|---|---|---|---|---|---|---|---|
three-arm binary-outcome law, outcome-adaptive selector |
|
difference in counterfactual means, low versus high |
|
-0.0020 to 0.0036 |
0.9525 |
0.9675 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
difference in counterfactual means, low versus high |
R |
-0.0019 to 0.0036 |
0.9525 |
0.9700 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
difference in counterfactual means, medium versus high |
|
-0.0034 to 0.0020 |
0.9350 |
0.9527 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
difference in counterfactual means, medium versus high |
R |
-0.0033 to 0.0021 |
0.9350 |
0.9527 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
counterfactual mean under treatment arm ‘high’ |
|
-0.0020 to 0.0018 |
0.9450 |
0.9780 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
counterfactual mean under treatment arm ‘high’ |
R |
-0.0021 to 0.0018 |
0.9463 |
0.9786 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
counterfactual mean under treatment arm ‘low’ |
|
-0.0013 to 0.0027 |
0.9413 |
0.9822 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
counterfactual mean under treatment arm ‘low’ |
R |
-0.0013 to 0.0027 |
0.9413 |
0.9844 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
counterfactual mean under treatment arm ‘medium’ |
|
-0.0027 to 0.0011 |
0.9325 |
0.9386 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
counterfactual mean under treatment arm ‘medium’ |
R |
-0.0027 to 0.0012 |
0.9363 |
0.9391 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
marginal odds ratio, low versus high, reported on the log scale |
|
-0.0071 to 0.0158 |
0.9487 |
0.9678 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
marginal odds ratio, low versus high, reported on the log scale |
R |
-0.0070 to 0.0159 |
0.9487 |
0.9703 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
marginal odds ratio, medium versus high, reported on the log scale |
|
-0.0125 to 0.0108 |
0.9350 |
0.9529 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
marginal odds ratio, medium versus high, reported on the log scale |
R |
-0.0123 to 0.0111 |
0.9350 |
0.9529 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
marginal risk ratio, low versus high, reported on the log scale |
|
-0.0041 to 0.0085 |
0.9525 |
0.9687 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
marginal risk ratio, low versus high, reported on the log scale |
R |
-0.0040 to 0.0085 |
0.9525 |
0.9710 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
marginal risk ratio, medium versus high, reported on the log scale |
|
-0.0057 to 0.0057 |
0.9413 |
0.9645 |
pass |
three-arm binary-outcome law, outcome-adaptive selector |
|
marginal risk ratio, medium versus high, reported on the log scale |
R |
-0.0056 to 0.0058 |
0.9413 |
0.9646 |
pass |
Agreement with the canonical implementation#
Comparator-backed: a paired comparison with ctmle3-multi-arm-oat on the same samples. Each row reports estimate equivalence within the declared margin, the RMSE ratio and the coverage difference, and names its comparison kind.
law |
estimand |
what was compared |
paired difference |
share of margin used |
RMSE ratio bound |
coverage difference |
comparison kind |
calibration resolution |
result |
|---|---|---|---|---|---|---|---|---|---|
three-arm binary-outcome law, outcome-adaptive selector |
|
difference in counterfactual means, low versus high |
-0.000020 |
0.0043 |
1.0031 |
0 |
matching implementation |
0.000452 vs 0.0500 |
equivalent |
three-arm binary-outcome law, outcome-adaptive selector |
|
difference in counterfactual means, medium versus high |
-0.000056 |
0.0125 |
1.0005 |
0 |
matching implementation |
0.000446 vs 0.0500 |
equivalent |
three-arm binary-outcome law, outcome-adaptive selector |
|
counterfactual mean under treatment arm ‘high’ |
0.000025 |
0.0080 |
1.0010 |
-0.0013 |
matching implementation |
0.000390 vs 0.0500 |
equivalent |
three-arm binary-outcome law, outcome-adaptive selector |
|
counterfactual mean under treatment arm ‘low’ |
0.000006 |
0.0017 |
1.0025 |
0 |
matching implementation |
0.000227 vs 0.0500 |
equivalent |
three-arm binary-outcome law, outcome-adaptive selector |
|
counterfactual mean under treatment arm ‘medium’ |
-0.000030 |
0.0094 |
1.0010 |
-0.0037 |
matching implementation |
0.000366 vs 0.0500 |
equivalent |
three-arm binary-outcome law, outcome-adaptive selector |
|
marginal odds ratio, low versus high, reported on the log scale |
-0.000074 |
0.0023 |
1.0030 |
0 |
matching implementation |
0.000454 vs 0.0500 |
equivalent |
three-arm binary-outcome law, outcome-adaptive selector |
|
marginal odds ratio, medium versus high, reported on the log scale |
-0.000709 |
0.0124 |
1.0002 |
0 |
matching implementation |
0.000438 vs 0.0500 |
equivalent |
three-arm binary-outcome law, outcome-adaptive selector |
|
marginal risk ratio, low versus high, reported on the log scale |
-0.000063 |
0.0045 |
1.0027 |
0 |
matching implementation |
0.000477 vs 0.0500 |
equivalent |
three-arm binary-outcome law, outcome-adaptive selector |
|
marginal risk ratio, medium versus high, reported on the log scale |
-0.000186 |
0.0117 |
1.0004 |
0 |
matching implementation |
0.000456 vs 0.0500 |
equivalent |
Theory properties#
property |
cell |
role |
what was tested |
what must hold |
measured |
result |
|---|---|---|---|---|---|---|
|
|
positive |
the same design is estimated from the data, as a real fit does |
SE ratio and coverage intervals both inside their calibration bands; the paired deficit is reported only |
coverage 0.9267 to 0.9677, SE ratio 0.9694 to 1.1026 |
fail |
|
|
positive |
the outcome-adaptive design is supplied rather than estimated |
SE ratio and coverage intervals both inside their calibration bands |
coverage 0.9282 to 0.9688, SE ratio 0.9797 to 1.1151 |
fail |
|
|
positive |
both nuisances are correctly specified |
SE ratio and coverage intervals both inside their calibration bands |
coverage 0.9357 to 0.9641, SE ratio 0.9668 to 1.0575 |
pass |
|
|
positive |
the same test applied to a law with a real effect |
rejection lower bound clears the minimum power |
rejection 1, 0.9868 to 1 |
pass |
|
|
positive |
the outcome regression is correct and the mechanism is not |
bias interval inside the equivalence margin, SE ratio must remain between 0.1 and 10.0 |
bias -0.0022 to 0.0022, margin 0.0052, SE ratio 0.9641 |
pass |
|
|
control |
the outcome regression is misspecified |
bias interval must fall entirely outside the margin, SE ratio must remain between 0.1 and 10.0 |
bias 0.0659 to 0.0733, margin 0.0088, SE ratio 1.0382 |
pass |
|
|
positive |
bias, coverage and SE calibration at n = 2,000 |
bias inside the margin, coverage clears the floor, SE ratio inside the sanity band |
bias 0.0020, coverage 0.9149 to 0.9738, SE ratio 0.9825 |
pass |
|
|
positive |
bias, coverage and SE calibration at n = 500 |
bias inside the margin, coverage clears the floor, SE ratio inside the band |
bias -0.0041, coverage 0.9057 to 0.9683, SE ratio 1.0097 |
pass |
|
|
positive |
bias, coverage and SE calibration at n = 8,000 |
bias inside the margin, coverage clears the floor, SE ratio inside the sanity band |
bias -0.000055, coverage 0.9180 to 0.9756, SE ratio 1.0294 |
pass |
|
|
positive |
log empirical spread of the estimates regressed on log n across three sizes |
slope interval inside the root-n band and excluding -1/4 |
slope -0.5645 to -0.4715 |
pass |
|
|
positive |
the same regression applied to the mean reported standard error |
slope interval inside the root-n band and excluding -1/4 |
slope -0.5136 to -0.5090 |
pass |
|
|
positive |
a confounded law whose true contrast is exactly zero |
one-sided rejection bound stays under the declared type-I ceiling |
rejection 0.0575, 0.0317 to 0.0943 |
pass |
Measured values#
quantity |
value |
source |
|---|---|---|
|
800 |
primary replications |
|
1500 |
observations per primary replication |
|
18 |
implementation-estimand truth tests |
|
18 |
truth tests passing |
|
9 |
paired comparison tests |
|
9 |
paired tests passing |
|
12 |
repeated-sampling property cells |
|
10 |
property cells passing |
|
0.9900 |
Monte Carlo confidence level |
|
0.0500 |
nominal estimator size |
|
0.9500 |
nominal estimator coverage |
|
10000 |
resamples for bootstrap intervals |
|
0.2500 |
bias equivalence margin in empirical SDs |
|
0.1000 |
union-model SE-ratio screen, lower limit |
|
10 |
union-model SE-ratio screen, upper limit |
|
0.9000 |
lower coverage gate |
|
0.9900 |
reported conservative-coverage ceiling |
|
0.8000 |
lower SE-ratio screen |
|
1.2000 |
upper SE-ratio screen |
|
0.9300 |
lower calibration band |
|
1.0700 |
upper calibration band |
|
0.9200 |
lower calibration-coverage band |
|
0.9800 |
upper calibration-coverage band |
|
0.1000 |
largest supported type-I rate |
|
0.1500 |
paired similarity margin in empirical SDs |
|
1.1000 |
RMSE-ratio non-inferiority margin |
|
-0.0250 |
coverage-difference non-inferiority margin |
|
0.0500 |
SE-calibration non-inferiority margin |
|
0.8000 |
lower power gate |
|
-0.5000 |
root-n contraction target |
|
-0.6250 |
lower contraction band |
|
-0.3750 |
upper contraction band |
|
-0.2500 |
slower rate the interval must exclude |
Limitations#
These cells now measure a diagnostic that the package does not publish as inference. Every shared
strategy="oat" fit takes the "generated_design_plugin" status, which
RM20 decides. ci, pvalue,
and std_error refuse, and the fit reports plugin_std_error and plugin_interval instead.
The std_error, ci_lower, ci_upper, and covered columns of this study read those two
accessors. The numbers are the ones the committed artifacts carry. Each accessor calls the same
body as the refused one, so the reframing changed no arithmetic. No regeneration was run. The
coverage, calibration, null-size, and power cells therefore describe that diagnostic.
This row has reporting policy, so its red cells publish. Both generated-design SE-ratio intervals leave the calibration band. Their paired difference includes zero, which is reported but is not a failure criterion: the relevant question is whether each reported standard error calibrates to its own sampling spread. F19 records what a source must settle before that changes. The red-cell ledger lists each red cell of this study with the roadmap ask that owns it.
The n = 500 coverage bound was red on the treatment-stratified split this row used before, and it clears the floor on the unstratified split it now declares. The budget, the size, the seed and the margins did not move, so read that cell as one Monte Carlo resolution at 400 replications rather than as a demonstrated gain.
The row draws every cross-fitted split without reading a label. It does not establish a stratified split, a grouped split, or a supplied plan. It says nothing about a continuous outcome whose support the analyst does not know, because every law here has a binary outcome.
The archived R comparison requires numeric arm codes because of its counterfactual-prediction adapter. The study covers one binary-outcome law, ordinary GLM nuisance fits, pointwise intervals, and one outcome-adaptive strategy. It does not transfer the result to selector-based C-TMLE, cross-fitted primary fitting, flexible learners, simultaneous inference, or severe practical-positivity violations. It excludes missing outcomes, weights, clusters, fold repeats, and longitudinal treatment.