← Index
Source
Data provenance
ex-2.1.8
·
87755d7
· run 2026-08-04
via reports/m2/ex-2.1.8/arrays, reports/m2/ex-2.1.8/geometry, reports/m2/ex-2.1.8/metrics
import%20marimo%0A%0A__generated_with%20%3D%20%220.23.16%22%0Aapp%20%3D%20marimo.App(%0A%20%20%20%20width%3D%22medium%22%2C%0A%20%20%20%20app_title%3D%22Ex%202.1.8%3A%20Repulsion%20tuning%22%2C%0A%20%20%20%20css_file%3D%22..%2F..%2Freport.css%22%2C%0A%20%20%20%20auto_download%3D%5B%22html%22%5D%2C%0A)%0A%0Awith%20app.setup(hide_code%3DTrue)%3A%0A%20%20%20%20import%20json%0A%20%20%20%20import%20tempfile%0A%20%20%20%20from%20pathlib%20import%20Path%0A%0A%20%20%20%20import%20marimo%20as%20mo%0A%20%20%20%20import%20matplotlib.pyplot%20as%20plt%0A%20%20%20%20import%20numpy%20as%20np%0A%0A%20%20%20%20%23%20Marimo%20puts%20the%20notebook%20directory%20on%20sys.path%2C%20so%20the%20design%20constants%20come%0A%20%20%20%20%23%20from%20the%20experiment%20module%20rather%20than%20a%20copy%20of%20them%20in%20the%20prose.%0A%20%20%20%20import%20experiment%20as%20ex%0A%20%20%20%20from%20mini.reports%20import%20report_bundle%2C%20use_publisher%0A%20%20%20%20from%20mini.store%20import%20project_store%0A%20%20%20%20from%20mini.vis%20import%20figure_html%2C%20light_dark%2C%20themed%0A%0A%20%20%20%20use_publisher(report_bundle(__file__))%0A%0A%20%20%20%20def%20load_results()%20-%3E%20tuple%5Bdict%2C%20dict%5Bstr%2C%20np.ndarray%5D%5D%20%7C%20None%3A%0A%20%20%20%20%20%20%20%20%22%22%22Resolve%20metrics%20and%20the%20stacked%20per-run%20arrays%20from%20the%20store%2C%20or%20None%20if%20unpublished.%22%22%22%0A%20%20%20%20%20%20%20%20store%20%3D%20project_store()%0A%20%20%20%20%20%20%20%20arts%20%3D%20store.get_refs(%5Bex.METRICS_REF%2C%20ex.ARRAYS_REF%5D)%0A%20%20%20%20%20%20%20%20m_art%2C%20a_art%20%3D%20arts%5Bex.METRICS_REF%5D%2C%20arts%5Bex.ARRAYS_REF%5D%0A%20%20%20%20%20%20%20%20if%20m_art%20is%20None%20or%20a_art%20is%20None%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20None%0A%20%20%20%20%20%20%20%20with%20tempfile.TemporaryDirectory()%20as%20d%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20m_path%2C%20a_path%20%3D%20store.get_many(%5B(m_art%2C%20Path(d)%20%2F%20%22metrics.json%22)%2C%20(a_art%2C%20Path(d)%20%2F%20%22arrays.npz%22)%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20with%20np.load(a_path)%20as%20z%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20arrays%20%3D%20%7Bk%3A%20z%5Bk%5D%20for%20k%20in%20z.files%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20metrics%20%3D%20json.loads(m_path.read_text())%0A%20%20%20%20%20%20%20%20return%20metrics%2C%20arrays%0A%0A%20%20%20%20def%20load_geometry()%20-%3E%20dict%20%7C%20None%3A%0A%20%20%20%20%20%20%20%20%22%22%22The%20per-run%20geometry%20pass%2C%20published%20under%20its%20own%20ref.%22%22%22%0A%20%20%20%20%20%20%20%20store%20%3D%20project_store()%0A%20%20%20%20%20%20%20%20art%20%3D%20store.get_refs(%5Bex.GEOMETRY_REF%5D)%5Bex.GEOMETRY_REF%5D%0A%20%20%20%20%20%20%20%20if%20art%20is%20None%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20None%0A%20%20%20%20%20%20%20%20with%20tempfile.TemporaryDirectory()%20as%20d%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20path%20%3D%20store.get_many(%5B(art%2C%20Path(d)%20%2F%20%22geometry.json%22)%5D)%5B0%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20json.loads(path.read_text())%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%20Ex%202.1.8%3A%20Repulsion%20tuning%0A%0A%20%20%20%20%2F%2F%2F%20tip%20%7C%0A%20%20%20%20%3C!--%20tl%3Bdr%20--%3E%0A%20%20%20%20We%20tested%20anti-subspace%20schedules%20(trailing%20timing%20and%20strength)%20to%20find%20an%20operating%20point%20that%20contains%20the%20cube-wide%20drift%20without%20reducing%20selectivity.%20Holding%20the%20repulsion%20high%20for%20longer%20contains%20the%20drift%20and%20keeps%20the%20margin%2C%20which%20nothing%20before%20this%20did.%20It's%20unclear%20if%20the%20response%20is%20well-graded.%0A%20%20%20%20%2F%2F%2F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20r%22%22%22%0A%20%20%20%20In%20ex-2.1.6%20we%20aligned%20*red*%20with%20a%20direction%20in%20the%20residual%20stream%2C%20but%20it%20dragged%20the%20whole%20color%20space%20with%20it.%0A%20%20%20%20Then%20in%20ex-2.1.7%20we%20added%20a%20repulsive%20*anti-subspace*%20term%20that%20pushed%20everything%20away%20from%20the%20_red_%20axis%20%24%5Chat%20v_%7B%5Ctext%7Bred%7D%7D%24.%20It%20helped%2C%20but%20not%20enough%3A%20the%20mean%20*red*-alignment%20over%20all%20colors%20fell%20from%20%24%5Cbar%5Calpha%24%20%3D%200.53%20to%20%7BA50%7D%2C%20and%20the%20target%20was%20%26lt%3B%20%7BAGATE%7D.%0A%0A%20%20%20%20The%20training%20trajectories%20show%20what%20happens%20over%20the%20course%20of%20a%20run.%20While%20the%20repulsion%20outweighs%20the%20pull%2C%20%24%5Cbar%5Calpha%24%20stays%20near%20the%20control%2C%20which%20is%20what%20we%20want.%20Then%20the%20anneal%5B%5Eanneal%5D%20brings%20%24%5Clambda_%7B%5Cbar%7B%5Ctext%7Bs%7D%7D%7D%24%20down%20to%20about%20a%20tenth%20of%20%24%5Clambda_%5Ctext%7Ba%7D%24%2C%20and%20%24%5Cbar%5Calpha%24%20starts%20to%20climb%20again.%20Each%20condition%20turned%20at%20its%20own%20point%20in%20the%20schedule%3A%20around%20epoch%2040%20on%20the%20M1%20schedule%2C%20and%20epoch%2075%20on%20%60span-anti-late%60%2C%20the%20arm%20that%20stretched%20it.%0A%0A%20%20%20%20The%20M1%20keyframes%20came%20from%20a%205-dimensional%20autoencoder%20bottleneck%2C%20mapped%20onto%20our%20100%20epochs%20by%20fraction%20of%20training.%20So%20we%20never%20had%20much%20reason%20to%20expect%20them%20to%20suit%20a%2064-dimensional%20residual%20stream.%0A%0A%20%20%20%20%5B%5Eanneal%5D%3A%20An%20anneal%20here%20is%20a%20schedule%20that%20ramps%20a%20loss%20weight%20down%20gradually%20over%20training.%0A%0A%20%20%20%20All%20that%20%60span-anti-late%60%20did%20was%20push%20the%20end%20of%20the%20anneal%20from%20epoch%2050%20to%20epoch%2090.%20That%20improved%20every%20statistic%20the%20H2%20and%20H4%20hypotheses%20scored%3A%20margin%20%7BM50%7D%20%E2%86%92%20%7BM90%7D%2C%20%24%5Cbar%5Calpha%24%20%7BA50%7D%20%E2%86%92%20%7BA90%7D%2C%20retention%20across%20the%20anneal%2C%20and%20grading.%20For%20future%20experiments%2C%20then%2C%20should%20we%20stretch%20the%20anneal%2C%20or%20end%20it%20at%20a%20higher%20weight%3F%20Each%20option%20is%20a%20reading%20of%20the%20ex-2.1.7%20result%2C%20and%20the%20rest%20of%20this%20report%20refers%20to%20them%20by%20name%3A%0A%0A%20%20%20%20-%20The%20timing%20account%3A%20the%20repulsion%20has%20to%20still%20be%20there%20while%20the%20pull%20is%20strong%20enough%20to%20move%20the%20cube%2C%20and%20a%20later%20anneal%20keeps%20it%20there.%20Stretch%20the%20anneal.%0A%20%20%20%20-%20The%20level%20account%3A%20containment%20is%20lost%20when%20%24%5Clambda_%7B%5Cbar%7B%5Ctext%7Bs%7D%7D%7D%2F%5Clambda_%5Ctext%7Ba%7D%24%20falls%20past%20the%20threshold%20ex-2.1.7%20observed%2C%20and%20a%20later%20anneal%20helps%20only%20by%20postponing%20that.%20End%20the%20anneal%20at%20a%20higher%20weight.%0A%0A%20%20%20%20We%20test%20both.%20The%20two%20separate%20cleanly%2C%20because%20only%20the%20level%20account%20predicts%20an%20interaction%3A%20a%20floor%20that%20stays%20above%20the%20threshold%20never%20crosses%20it%2C%20so%20at%20that%20floor%20the%20timing%20of%20the%20endpoint%20should%20stop%20mattering.%0A%0A%20%20%20%20%2F%2F%2F%20details%20%7C%20Notation%20and%20glossary%0A%20%20%20%20Carried%20from%20ex-2.1.7.%0A%0A%20%20%20%20%7C%20term%20%7C%20meaning%20%7C%20target%20%7C%0A%20%20%20%20%7C%3A---%3A%7C%3A---%20%7C%3A---%3A%7C%0A%20%20%20%20%7C%20%24%5Chat%20v_%7B%5Ctext%7Bred%7D%7D%24%20%7C%20the%20anchor%20direction%20%7C%20%7C%0A%20%20%20%20%7C%20%24%5Clambda_%5Ctext%7Ba%7D%24%20%7C%20anchor%20weight%2C%20fixed%20at%20%7BSCORING%7D%20throughout%20%7C%20%7C%0A%20%20%20%20%7C%20%24%5Clambda_%7B%5Cbar%7B%5Ctext%7Bs%7D%7D%7D%24%20%7C%20anti-subspace%20weight%2C%20always%20given%20as%20the%20ratio%20%24%5Clambda_%7B%5Cbar%7B%5Ctext%7Bs%7D%7D%7D%2F%5Clambda_%5Ctext%7Ba%7D%24%20%7C%20%7C%0A%20%20%20%20%7C%20condition%20%7C%20one%20combination%20of%20the%20sweep%20factors%2C%20aggregated%20over%20seeds%20unless%20stated%20%7C%20%7C%0A%20%20%20%20%7C%20run%20%7C%20a%20condition%20crossed%20with%20a%20seed%3A%20one%20training%20run%20%7C%20%7C%0A%20%20%20%20%7C%20%24%5Calpha_c%24%2C%20%24%5Cbar%5Calpha%24%20%7C%20the%20alignment%20(cosine)%20of%20color%20%24c%24%20with%20%24%5Chat%20v_%7B%5Ctext%7Bred%7D%7D%24%20at%20op1%2C%20averaged%20over%20layers%3B%20and%20the%20mean%20of%20that%20over%20all%20216%20colors%20%7C%20%E2%86%93%20%7C%0A%20%20%20%20%7C%20%24m%24%2C%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%20%7C%20alignment%20margin%20%24%5Csum_c%20w_c%20%5Calpha_c%20-%20%5Cbar%5Calpha%24%2C%20where%20%24w_c%24%20are%20the%20*red*-label%20affinities%20normalized%20to%20sum%20to%201%3B%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%20is%20the%20layer%20mean%20of%20%24m%24%20at%20op1%20%7C%20%E2%86%91%20%7C%0A%20%20%20%20%7C%20contained%20%7C%20of%20a%20condition%3A%20%24%5Cbar%5Calpha%20%5Cle%20%7BAGATE%7D%24%2C%20so%20the%20drift%20is%20held%20near%20the%20control%20rather%20than%20just%20weakened%20%7C%20%7C%0A%20%20%20%20%7C%20%24%5Crho%24%20%7C%20*rank*%20grading%3A%20the%20Spearman%20correlation%20between%20the%20per-color%20%24%5Calpha_c%24%20and%20%60redness%60.%20Asks%20whether%20the%20response%20puts%20the%20colors%20in%20the%20same%20order%20redness%20does%2C%20ignoring%20how%20large%20it%20is%20%7C%20%E2%89%A5%20%7BRHO%7D%20%7C%0A%20%20%20%20%7C%20%24R%5E2%24%20%7C%20*proportionality*%20grading%3A%20the%20squared%20Pearson%20correlation%20between%20%24%5Calpha_c%24%20and%20%60sim%C2%B9%C2%B7%E2%81%B5%60%2C%20each%20color's%20cosine%20similarity%20to%20*red*%20raised%20to%201.5.%20Asks%20whether%20the%20response%20has%20that%20shape%2C%20ignoring%20its%20scale%20%7C%20%E2%89%A5%20%7BR2%7D%20%7C%0A%20%20%20%20%7C%20retention%20%7C%20per%20run%2C%20the%20final%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%20divided%20by%20its%20running%20peak%20(scored%20once%20the%20peak%20reaches%20%7BFLOOR%7D)%3B%20reported%20as%20the%20minimum%20across%20seeds%20%7C%20%E2%86%91%20%7C%0A%20%20%20%20%7C%20leak%20%7C%20%24R%5E2%24%20of%20redness%20decoded%20from%20the%2063%20non-anchor%20directions%20at%20op1%3B%20unscored%2C%20and%20cannot%20fall%20below%20the%20RGB-geometry%20floor%20of%200.863%20%7C%20%E2%80%94%20%7C%0A%0A%20%20%20%20%7C%20measurement%20%7C%20interpretation%20%7C%0A%20%20%20%20%7C%3A---%3A%7C%3A---%20%7C%0A%20%20%20%20%7C%20%24m%20%5Crightarrow%201%24%20%7C%20*red*%20colors%20are%20aligned%20with%20the%20anchor%2C%20and%20other%20colors%20are%20not%20%7C%0A%20%20%20%20%7C%20%24m%20%5Crightarrow%200%24%20%7C%20*red*%20colors%20are%20unaligned%2C%20or%20they%20are%20but%20so%20is%20every%20other%20color%20%7C%0A%20%20%20%20%7C%20%24%5Cbar%5Calpha%20%5Crightarrow%201%24%20%7C%20the%20whole%20cube%20is%20anchored%2C%20not%20just%20*red*%20%7C%0A%20%20%20%20%7C%20%24%5Cbar%5Calpha%20%5Crightarrow%200%24%20%7C%20most%20colors%20are%20orthogonal%20to%20the%20anchor%20%7C%0A%20%20%20%20%2F%2F%2F%0A%20%20%20%20%22%22%22.replace(%22%7BSCORING%7D%22%2C%20f%22%7Bex.SCORING_LAMBDA%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BAGATE%7D%22%2C%20f%22%7Bex.MEAN_ALIGN_GATE%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BRHO%7D%22%2C%20f%22%7Bex.GRADE_RHO_GATE%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BR2%7D%22%2C%20f%22%7Bex.GRADE_R2_GATE%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BFLOOR%7D%22%2C%20f%22%7Bex.H4_FLOOR%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BM50%7D%22%2C%20f%22%7Bex.EX217_REFERENCE%5B'end50-hold03'%5D%5B'm_op1'%5D%3A.2f%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BM90%7D%22%2C%20f%22%7Bex.EX217_REFERENCE%5B'end90-hold03'%5D%5B'm_op1'%5D%3A.2f%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BA50%7D%22%2C%20f%22%7Bex.EX217_REFERENCE%5B'end50-hold03'%5D%5B'alpha'%5D%3A.2f%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BA90%7D%22%2C%20f%22%7Bex.EX217_REFERENCE%5B'end90-hold03'%5D%5B'alpha'%5D%3A.2f%7D%22)%0A%20%20%20%20)%0A%20%20%20%20%23%20REVIEW%3A%20the%20four%20ex-2.1.7%20numbers%20in%20the%20intro%20now%20interpolate%20from%0A%20%20%20%20%23%20%60ex.EX217_REFERENCE%60%20instead%20of%20being%20written%20out%2C%20so%20the%20report%20and%20the%0A%20%20%20%20%23%20reproduction%20check%20cannot%20round%20them%20differently.%20Values%20verified%20against%0A%20%20%20%20%23%20ex-2.1.7's%20published%20metrics%3A%20span-anti%20m_op1%200.457%20%2F%20%E1%BE%B1%200.326%2C%0A%20%20%20%20%23%20span-anti-late%200.598%20%2F%200.132%2C%20span-bare%20%E1%BE%B1%200.526.%20Also%20narrowed%20%22every%0A%20%20%20%20%23%20statistic%20ex-2.1.7%20scored%22%20to%20that%20report's%20H2%20and%20H4%20statistics%3A%20its%20H1%0A%20%20%20%20%23%20(task%20cost)%20was%20flat%2C%20not%20improved.%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Findings%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(%0A%20%20%20%20CONDS%3A%20list%5Bstr%5D%2C%0A%20%20%20%20CONTROL_ACC%2C%0A%20%20%20%20EFFECT_GATE%2C%0A%20%20%20%20HOLD_EFFECT%2C%0A%20%20%20%20INTERACTION%2C%0A%20%20%20%20INTERACTION_GATE%2C%0A%20%20%20%20acc%2C%0A%20%20%20%20alpha_bar%2C%0A%20%20%20%20grading%2C%0A%20%20%20%20m_op1%2C%0A%20%20%20%20retention%2C%0A)%3A%0A%20%20%20%20_p%20%3D%20ex.PRIMARY%0A%20%20%20%20_best_r2%20%3D%20max(ex.FACTORIAL_NAMES%2C%20key%3Dlambda%20c%3A%20grading(c)%5B1%5D)%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20**H1%20(task%20cost)%20%E2%80%94%20holds.**%20Largest%20%60named_holdout%60%20exact-match%20gap%20from%20the%20control%2C%20across%20all%20%7Blen(CONDS)%7D%20conditions%3A%20%7Bmax(abs(acc(c).mean()%20-%20CONTROL_ACC)%20for%20c%20in%20CONDS)%3A.4f%7D.%20Gate%3A%20%7Bex.TASK_GATE%3Ag%7D.%0A%0A%20%20%20%20**H2%20(an%20operating%20point%20exists)%20%E2%80%94%20fails%2C%20on%20grading.**%20%60%7B_p%7D%60%2C%20the%20preregistered%20primary%20condition%2C%20meets%20containment%20(%24%5Cbar%5Calpha%20%3D%20%7Balpha_bar(_p).mean()%3A.3f%7D%24%2C%20gate%20%7Bex.MEAN_ALIGN_GATE%3Ag%7D)%2C%20margin%20(%7Bm_op1(_p).mean()%3A.3f%7D%2C%20gate%20%7Bex.MARGIN_GATE%3Ag%7D)%20and%20retention%20(%7Bretention(_p)%3A.2f%7D%2C%20gate%20%7Bex.H4_RETENTION%3Ag%7D).%20No%20condition%20in%20the%20grid%20reaches%20the%20grading%20gate%20of%20%7Bex.GRADE_R2_GATE%3Ag%7D%20on%20either%20track%3B%20the%20best%20R%C2%B2%20is%20%7Bgrading(_best_r2)%5B1%5D%3A.2f%7D.%20Neither%20named%20partial%20applies.%0A%0A%20%20%20%20**H3%20(a%20sustained%20floor%20makes%20the%20anneal%20endpoint%20redundant)%20%E2%80%94%20holds.**%20Hold-ratio%20main%20effect%20on%20%24%5Cbar%5Calpha%24%3A%20%7BHOLD_EFFECT%3A%2B.3f%7D%2C%20gate%20%7BEFFECT_GATE%3A.3f%7D.%20Interaction%3A%20%7BINTERACTION%3A%2B.3f%7D%2C%20gate%20%7BINTERACTION_GATE%3A.3f%7D%20%E2%80%94%20a%20pass%20by%20%7B(INTERACTION%20-%20INTERACTION_GATE)%20%2F%20INTERACTION_GATE%20*%20100%3A.0f%7D%25.%20Both%20gates%20are%20the%20preregistered%20values%20rescaled%20by%20this%20experiment's%20own%20seed%20spread%2C%20as%20the%20H3%20footnote%20directs.%0A%0A%20%20%20%20**Containment%20is%20now%20newly%20reachable.**%20%60%7B_p%7D%60%20is%20the%20first%20condition%20in%20M2%20to%20hold%20%24%5Cbar%5Calpha%24%20near%20the%20control%20while%20keeping%20the%20margin.%20The%20best%20in%20ex-2.1.7%20was%20%7Bex.EX217_REFERENCE%5B%22end90-hold03%22%5D%5B%22alpha%22%5D%3A.2f%7D%20and%20its%20gate%20went%20unmet%20everywhere.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%2F%2F%2F%20admonition%20%7C%20How%20to%20read%20this%20report%0A%20%20%20%20The%20method%2C%20hypotheses%20and%20decision%20thresholds%20were%20written%20and%20frozen%20in%20Git%20before%20the%20experiment%20ran%2C%20and%20the%20results%20below%20replace%20the%20placeholders%20that%20stood%20in%20for%20them.%20Anything%20conceived%20after%20seeing%20the%20data%20goes%20under%20*Exploratory%20analyses*.%0A%20%20%20%20%2F%2F%2F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Method%0A%0A%20%20%20%20Like%20ex-2.1.7%3A%20the%20word-level%20%60v216%60%20corpus%20from%20ex-2.1.3%20(216%20colors%2C%20one%20token%20each%2C%20d64-L4)%2C%20and%20the%20same%20corpus%2C%20seeds%2C%20sequence-level%20labels%2C%20and%20measurements.%0A%0A%20%20%20%20We%20use%20the%20same%20*anchor*%20schedule%2C%20but%20vary%20the%20*anti-subspace*%20schedule.%0A%0A%20%20%20%20Since%20we're%20using%20sequence-level%20labels%2C%20this%20experiment%20is%20like%20the%20%60span-*%60%20conditions%20in%20ex-2.1.7.%20The%20op1-only%20pull%20in%20ex-2.1.7%20scored%20higher%2C%20but%20that%20option%20exists%20only%20because%20this%20synthetic%20language%20has%20a%20known%20position%20carrying%20the%20concept.%20Once%20we%20retire%20that%20position%20oracle%20we%20have%20to%20pull%20on%20a%20span.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20r%22%22%22%0A%20%20%20%20The%20anchor%20weight%20stays%20at%20%24%5Clambda_%5Ctext%7Ba%7D%20%3D%20%7BSCORING%7D%24.%20The%20ceiling%20arm%20in%20ex-2.1.7%20showed%20selectivity%20falling%20at%20ten%20times%20this%20weight%2C%20with%20no%20task%20cost%20even%20there.%20So%20the%20previous%20scoring%20rung%20is%20still%20the%20right%20place%20to%20tune%20the%20repulsion%20against.%0A%20%20%20%20%22%22%22.replace(%22%7BSCORING%7D%22%2C%20f%22%7Bex.SCORING_LAMBDA%3Ag%7D%22)%0A%20%20%20%20)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20The%20sweep%20grid%0A%0A%20%20%20%20Factors%3A%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20def%20_and_join(items)%20-%3E%20str%3A%0A%20%20%20%20%20%20%20%20%22%22%22Prose%20list%3A%20a%20sealing%20%22and%22%20before%20the%20last%20item%2C%20so%20the%20list%20cannot%20leak%20into%20the%20next%20sentence.%22%22%22%0A%20%20%20%20%20%20%20%20*head%2C%20last%20%3D%20list(items)%0A%20%20%20%20%20%20%20%20return%20f%22%7B'%2C%20'.join(head)%7D%20and%20%7Blast%7D%22%20if%20head%20else%20last%0A%0A%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20r%22%22%22%0A%20%20%20%20-%20**A.**%20Anneal%20endpoint%0A%0A%20%20%20%20%20%20%20%20The%20epoch%20at%20which%20%24%5Clambda_%7B%5Cbar%7B%5Ctext%7Bs%7D%7D%7D%2F%5Clambda_%5Ctext%7Ba%7D%24%20reaches%20its%20hold%20ratio.%0A%20%20%20%20%20%20%20%20Levels%3A%20%7BENDS%7D.%0A%20%20%20%20%20%20%20%20Endpoint%2050%20is%20the%20M1%20keyframe%20mapped%20by%20fraction%20of%20training%2C%20and%0A%20%20%20%20%20%20%20%2090%20is%20the%20timing%20arm%20from%20ex-2.1.7.%20So%20two%20conditions%20repeat%20settings%0A%20%20%20%20%20%20%20%20we%20have%20already%20measured.%0A%0A%20%20%20%20-%20**B.**%20Hold%20ratio%0A%0A%20%20%20%20%20%20%20%20The%20level%20it%20settles%20at.%20Levels%3A%20%7BHOLDS%7D.%0A%20%20%20%20%20%20%20%20Ratio%200.03%20is%20the%20M1%20level.%20Ratio%200.30%20is%20three%20times%20the%20level%20at%0A%20%20%20%20%20%20%20%20which%20ex-2.1.7%20saw%20containment%20give%20way%2C%20so%20on%20the%20level%20account%20it%0A%20%20%20%20%20%20%20%20should%20never%20cross%20the%20threshold%20at%20all.%0A%0A%20%20%20%20We%20leave%20out%20endpoint%20100%3A%20the%20anneal%20would%20run%20to%20the%20end%20of%20training%2C%0A%20%20%20%20leaving%20no%20hold%20window%20for%20the%20ratio%20to%20act%20on%2C%20so%20that%20row%20would%20cross%20one%0A%20%20%20%20factor%20against%20nothing%20and%20dilute%20its%20main%20effect.%0A%0A%20%20%20%20An%20un-anchored%20control%20(%24%5Clambda_%5Ctext%7Ba%7D%20%3D%200%24)%20runs%20through%20the%20same%20code%2C%0A%20%20%20%20giving%20%7BN_COND%7D%20conditions%20and%20%7BN_CELL%7D%20runs%20in%20total.%0A%20%20%20%20%22%22%22.replace(%22%7BENDS%7D%22%2C%20_and_join(f%22%7Be%3Ag%7D%22%20for%20e%20in%20ex.ANTI_ANNEAL_ENDS))%0A%20%20%20%20%20%20%20%20.replace(%22%7BHOLDS%7D%22%2C%20_and_join(f%22%7Bh%3A.2f%7D%22%20for%20h%20in%20ex.ANTI_HOLD_RATIOS))%0A%20%20%20%20%20%20%20%20.replace(%22%7BN_COND%7D%22%2C%20str(len(ex.CONDITIONS)))%0A%20%20%20%20%20%20%20%20.replace(%22%7BN_CELL%7D%22%2C%20str(len(ex.CONDITIONS)%20*%20len(ex.SEEDS)))%0A%20%20%20%20)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20A%20confound%2C%20and%20its%20mitigation%0A%0A%20%20%20%20The%20two%20factors%20are%20not%20symmetric.%20Changing%20the%20hold%20ratio%20barely%20changes%20the%20total%20repulsion%20delivered.%20Changing%20the%20endpoint%20does%2C%20because%20a%20later%20anneal%20spends%20longer%20at%20a%20high%20weight.%20So%20along%20factor%20A%2C%20*when*%20the%20repulsion%20acts%20and%20*how%20much*%20of%20it%20there%20is%20move%20together.%0A%0A%20%20%20%20We%20call%20that%20total%20the%20*dose*%2C%20and%20measure%20it%20as%20%24%5Cint%20%5Clambda_%7B%5Cbar%7B%5Ctext%7Bs%7D%7D%7D(e)%5Ccdot%5Ctext%7Blr%7D(e)%5C%2Cde%24%20over%20training.%20The%20learning%20rate%20belongs%20inside%20the%20integral%20because%20it%20multiplies%20the%20gradient%20of%20every%20term%2C%20and%20it%20is%20itself%20warming%20up%20and%20annealing%20across%20the%20same%20window.%20A%20weight-only%20integral%20would%20call%20two%20schedules%20equal%20even%20when%20they%20deliver%20visibly%20different%20pushes.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20%23%20Computed%20from%20CONDITIONS%20through%20the%20same%20schedule%20functions%20the%20training%0A%20%20%20%20%23%20loop%20will%20call%2C%20so%20the%20table%20cannot%20describe%20runs%20that%20did%20not%20happen.%0A%20%20%20%20%23%20REVIEW%3A%20three%20changes%20to%20the%20prose%20under%20this%20table.%20(1)%20The%20endpoint's%0A%20%20%20%20%23%20dose%20span%20is%201.73x%2C%20not%20%22nearly%20doubles%22%2C%20and%20the%20hold%20ratio's%20is%201.17x%20at%0A%20%20%20%20%23%20endpoint%2050%20but%201.05x%20at%20endpoint%2090%2C%20so%20%22at%20most%20a%20sixth%22.%20(2)%20The%20dose%0A%20%20%20%20%23%20arm%20sits%20below%20%60end90-hold03%60%20at%20every%20epoch%2C%20not%20below%20%60end50-hold03%60%0A%20%20%20%20%23%20(%22M1's%22)%20%E2%80%94%20it%20exceeds%20the%20latter%20through%20mid-training%20by%20up%20to%200.07%2C%20which%0A%20%20%20%20%23%20is%20what%20dose-matching%20downward%20at%20a%20later%20endpoint%20requires.%20(3)%20Named%20the%0A%20%20%20%20%23%20weak-early-repulsion%20reading%20of%20a%20null%2C%20since%20scaling%20the%20opening%20ratio%20to%0A%20%20%20%20%23%201.443%20changes%20when%20the%20repulsion%20acts%20as%20well%20as%20how%20much%20there%20is.%0A%20%20%20%20%23%20Verify%3A%20%60ex.anti_dose%60%20over%20CONDITIONS%2C%20and%20%60ex.anti_subspace_weight%60%0A%20%20%20%20%23%20sampled%20over%20epochs%20for%20the%20three%20schedules%20in%20the%20right-hand%20panel.%0A%20%20%20%20_ref%20%3D%20ex.anti_dose(next(c%20for%20c%20in%20ex.CONDITIONS%20if%20c%5B%22name%22%5D%20%3D%3D%20ex.DOSE_ARM_REFERENCE))%0A%20%20%20%20_rows%20%3D%20%22%5Cn%22.join(%0A%20%20%20%20%20%20%20%20f%22%7C%20%60%7Bc%5B'name'%5D%7D%60%20%7C%20%7Bc%5B'anti_anneal_end'%5D%3A.0f%7D%20%7C%20%7Bc%5B'anti_hold_ratio'%5D%3A.2f%7D%20%7C%20%22%0A%20%20%20%20%20%20%20%20f%22%7Bc%5B'anti_peak_ratio'%5D%3A.3f%7D%20%7C%20%7Bex.anti_dose(c)%3A.5f%7D%20%7C%20%7Bex.anti_dose(c)%20%2F%20_ref%3A.2f%7D%20%7C%22%0A%20%20%20%20%20%20%20%20for%20c%20in%20ex.CONDITIONS%0A%20%20%20%20%20%20%20%20if%20c%5B%22lam%22%5D%20%3E%200%0A%20%20%20%20)%0A%20%20%20%20mo.md(f%22%22%22%0A%20%20%20%20%7C%20condition%20%7C%20%60anneal_end%60%20%7C%20%60hold_ratio%60%20%7C%20%60peak_ratio%60%20%7C%20dose%20%7C%20%C3%B7%20%60%7Bex.DOSE_ARM_REFERENCE%7D%60%20%7C%0A%20%20%20%20%7C%20---%20%7C%20---%3A%20%7C%20---%3A%20%7C%20---%3A%20%7C%20---%3A%20%7C%20---%3A%20%7C%0A%20%20%20%20%7B_rows%7D%0A%0A%20%20%20%20Across%20the%20hold%20ratio%2C%20dose%20moves%20by%20at%20most%20a%20sixth%3B%20across%20the%20endpoint%20it%20rises%20by%20about%20three%20quarters.%20So%20we%20don't%20need%20to%20dose-match%20the%20two%20levels%20of%20factor%20B.%20And%20we%20can't%20dose-match%20the%20three%20levels%20of%20factor%20A%20with%20the%20hold%20ratio%20without%20extending%20past%20the%20tested%20range%20of%20ex-2.1.7.%5B%5Ecant%5D%0A%0A%20%20%20%20%5B%5Ecant%5D%3A%20Reaching%20the%20endpoint-90%20dose%20from%20endpoint%2050%20would%20need%20%24%5C%5Clambda_%7B%7B%5C%5Cbar%7B%7B%5C%5Ctext%7B%7Bs%7D%7D%7D%7D%7D%7D%2F%5C%5Clambda_%5C%5Ctext%7B%7Ba%7D%7D%20%5C%5Capprox%201.18%24%2C%20which%20would%20hold%20the%20repulsion%20above%20the%20anchor%20weight%20for%20half%20of%20training.%20We%20could%20do%20that%2C%20but%20that's%20a%20different%20experiment.%0A%0A%20%20%20%20Instead%2C%20we%20add%20an%20arm%3A%20%60%7Bex.DOSE_ARM%7D%60%20is%20%60end90-hold03%60%20with%20the%20opening%20ratio%20scaled%20%7Bex.ANTI_PEAK_RATIO%3Ag%7D%20%E2%86%92%20%7Bex.DOSE_MATCHED_PEAK_RATIO%3Ag%7D%2C%20so%20it%20delivers%20the%20dose%20of%20%60%7Bex.DOSE_ARM_REFERENCE%7D%60%20on%20the%20late%20schedule.%20That's%20still%20asymmetrical%3A%20this%20arm%20has%20less%20repulsion%20through%20the%20epochs%20where%20the%20anchor%20is%20first%20ramping%20in.%20If%20it%20tracks%20%60%7Bex.DOSE_ARM_REFERENCE%7D%60%20rather%20than%20%60end90-hold03%60%2C%20weak%20early%20repulsion%20may%20be%20the%20cause.%20This%20should%20be%20visible%20in%20the%20trajectory%20figure.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20%23%20The%20schedules%20the%20runs%20will%20actually%20train%20under%2C%20drawn%20from%20CONDITIONS%0A%20%20%20%20%23%20through%20the%20library%20functions.%20Sampled%20finely%3B%20the%20recorded%20trajectories%0A%20%20%20%20%23%20will%20be%20coarse%20and%20start%20after%20the%20warmup.%0A%20%20%20%20E%20%3D%20np.linspace(0.0%2C%20float(ex.SCHEDULER.epochs)%2C%201001)%0A%20%20%20%20%23%20The%20dose%20integrand's%20other%20factor%2C%20computed%20once%20rather%20than%20per%20theme%20pass.%0A%20%20%20%20LR%20%3D%20ex.learning_rate(E)%0A%0A%20%20%20%20def%20_mu(c%3A%20dict)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20return%20ex.anti_subspace_weight(%0A%20%20%20%20%20%20%20%20%20%20%20%20E%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20lam%3Dc%5B%22lam%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20anneal_end%3Dc%5B%22anti_anneal_end%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20hold_ratio%3Dc%5B%22anti_hold_ratio%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20peak_ratio%3Dc%5B%22anti_peak_ratio%22%5D%2C%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20%40themed(%0A%20%20%20%20%20%20%20%20name%3D%22schedules%22%2C%0A%20%20%20%20%20%20%20%20alt_text%3D%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Two%20line%20charts%20against%20epoch%2C%200%20to%20100%2C%20side%20by%20side.%20Left%3A%20six%20regularizer%20weight%20curves%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20all%20starting%20near%200.25%20and%20descending%2C%20separating%20into%20a%20lower%20group%20that%0A%20%20%20%20%20%20%20%20%20%20%20%20settles%20near%200.003%20and%20an%20upper%20group%20that%20settles%20near%200.03%2C%20with%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20descent%20finishing%20at%20three%20different%20epochs.%20A%20seventh%0A%20%20%20%20%20%20%20%20%20%20%20%20curve%20starts%20lower%2C%20near%200.14%2C%20crosses%20the%20others%20around%20epoch%2025%2C%20and%0A%20%20%20%20%20%20%20%20%20%20%20%20joins%20the%20lower%20group.%0A%20%20%20%20%20%20%20%20%20%20%20%20Right%3A%20the%20same%20weight%20schedule%2C%20but%20with%20the%20dose%20shown%20as%20shaded%20areas.%0A%20%20%20%20%20%20%20%20%20%20%20%20Two%20humps%20that%20rise%20from%20zero%2C%20peak%20in%20the%20first%20third%20of%20training%20and%0A%20%20%20%20%20%20%20%20%20%20%20%20decay%20to%20zero%20by%20about%20epoch%2080.%0A%20%20%20%20%20%20%20%20%20%20%20%20The%20two%20crescents%20where%20they%20differ%20are%20hatched%20%E2%80%94%20grey%20where%20the%20dose%20arm%20falls%20short%20early%2C%20purple%0A%20%20%20%20%20%20%20%20%20%20%20%20where%20it%20runs%20higher%20late.%20The%20two%20crescents%20are%20about%20the%20same%20size.%0A%20%20%20%20%20%20%20%20%20%20%20%20Faint%20reference%20curves%20show%20the%20anchor%20weight%20in%20both%20panels%2C%20and%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20unscaled%20late%20schedule%20on%20the%20right.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20%20%20%20%20caption%3Dr%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20**The%20schedules%20under%20test.**%20**Left%3A**%20anti-subspace%20weight%0A%20%20%20%20%20%20%20%20%20%20%20%20%24%5Clambda_%7B%5Cbar%7B%5Cmathrm%7Bs%7D%7D%7D%24%20over%20training%2C%20for%20the%20six%20factorial%20conditions%20and%20the%20dose%20arm.%0A%20%20%20%20%20%20%20%20%20%20%20%20**Right%3A**%20the%20dose%20itself%2C%20as%20its%20integrand%0A%20%20%20%20%20%20%20%20%20%20%20%20%24%5Clambda_%7B%5Cbar%7B%5Cmathrm%7Bs%7D%7D%7D%5Ccdot%24lr%2C%20so%20area%20on%20the%20page%0A%20%20%20%20%20%20%20%20%20%20%20%20is%20repulsion%20delivered.%20Hatching%20shows%20where%20the%20dose%20arm%0A%20%20%20%20%20%20%20%20%20%20%20%20falls%20short%20of%20the%20reference%20early%20and%20where%20it%20makes%20that%20back%20late.%0A%20%20%20%20%20%20%20%20%20%20%20%20Ghost%20ink%20in%20both%20panels%3A%20the%20anchor%20weight%20%24%5Clambda_%5Cmathrm%7Ba%7D%24%3B%20on%0A%20%20%20%20%20%20%20%20%20%20%20%20the%20right%2C%20also%20%60end90-hold03%60%2C%20the%20schedule%20the%20arm%20was%20scaled%20down%0A%20%20%20%20%20%20%20%20%20%20%20%20from.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20)%0A%20%20%20%20def%20_plot()%3A%0A%20%20%20%20%20%20%20%20_grey%20%3D%20light_dark(%22%23666%22%2C%20%22%23999%22)%0A%20%20%20%20%20%20%20%20_hold%20%3D%20%7B0.03%3A%20light_dark(%22%231f6fb4%22%2C%20%22%235fa8dd%22)%2C%200.30%3A%20light_dark(%22%23b4531f%22%2C%20%22%23dd8f5f%22)%7D%0A%20%20%20%20%20%20%20%20_dashes%20%3D%20%7B50.0%3A%20%22-%22%2C%2070.0%3A%20(0%2C%20(1%2C%201.6))%2C%2090.0%3A%20(0%2C%20(4%2C%201.6))%7D%0A%20%20%20%20%20%20%20%20%23%20The%20arm%20gets%20its%20own%20color%20in%20both%20panels.%20Coloring%20it%20by%20hold%20ratio%0A%20%20%20%20%20%20%20%20%23%20would%20make%20it%20a%20second%20blue%20dashed%20line%2C%20and%20its%20opening%20ratio%20%E2%80%94%20the%0A%20%20%20%20%20%20%20%20%23%20one%20thing%20that%20sets%20it%20apart%20%E2%80%94%20is%20the%20hardest%20difference%20to%20see.%0A%20%20%20%20%20%20%20%20_arm_color%20%3D%20light_dark(%22%237b3fa0%22%2C%20%22%23b98ce0%22)%0A%20%20%20%20%20%20%20%20_by_name%20%3D%20%7Bc%5B%22name%22%5D%3A%20c%20for%20c%20in%20ex.CONDITIONS%7D%0A%20%20%20%20%20%20%20%20%23%20Not%20sharey%3A%20the%20panels%20carry%20different%20quantities.%20Left%20is%20the%20weight%0A%20%20%20%20%20%20%20%20%23%20itself%20on%20a%20log%20axis%2C%20where%20shape%20is%20readable%3B%20right%20is%20the%20integrand%0A%20%20%20%20%20%20%20%20%23%20of%20the%20dose%20on%20a%20linear%20axis%2C%20where%20area%20is%20readable.%0A%20%20%20%20%20%20%20%20fig%2C%20axs%20%3D%20plt.subplots(1%2C%202%2C%20figsize%3D(7.2%2C%202.7)%2C%20layout%3D%22constrained%22)%0A%0A%20%20%20%20%20%20%20%20%23%20Left%3A%20the%20factorial%2C%20plus%20the%20arm%2C%20so%20the%20schedule%20the%20runs%20train%20under%0A%20%20%20%20%20%20%20%20%23%20is%20comparable%20with%20the%20six%20it%20sits%20among.%20Color%20keys%20the%20hold%20ratio%2C%0A%20%20%20%20%20%20%20%20%23%20dash%20keys%20the%20endpoint%2C%20so%20the%20two%20factors%20stay%20visually%20separable.%0A%20%20%20%20%20%20%20%20for%20c%20in%20ex.CONDITIONS%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20c%5B%22name%22%5D%20not%20in%20ex.FACTORIAL_NAMES%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20continue%0A%20%20%20%20%20%20%20%20%20%20%20%20dash%20%3D%20_dashes%5Bc%5B%22anti_anneal_end%22%5D%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20axs%5B0%5D.plot(E%2C%20_mu(c)%2C%20color%3D_hold%5Bc%5B%22anti_hold_ratio%22%5D%5D%2C%20ls%3Ddash%2C%20lw%3D1.4)%0A%20%20%20%20%20%20%20%20_arm%20%3D%20_by_name%5Bex.DOSE_ARM%5D%0A%20%20%20%20%20%20%20%20axs%5B0%5D.plot(E%2C%20_mu(_arm)%2C%20color%3D_arm_color%2C%20ls%3D%22-.%22%2C%20lw%3D1)%0A%20%20%20%20%20%20%20%20axs%5B0%5D.plot(E%2C%20ex.anchor_weight(E)%2C%20color%3D_grey%2C%20lw%3D0.5%2C%20alpha%3D0.45%2C%20zorder%3D-1)%0A%20%20%20%20%20%20%20%20axs%5B0%5D.set_yscale(%22log%22)%0A%20%20%20%20%20%20%20%20axs%5B0%5D.set_ylim(1e-3%2C%201)%0A%20%20%20%20%20%20%20%20axs%5B0%5D.minorticks_off()%0A%20%20%20%20%20%20%20%20axs%5B0%5D.set_ylabel(%22weight%22%2C%20fontsize%3D%22x-small%22)%0A%20%20%20%20%20%20%20%20axs%5B0%5D.set_title(%22the%20factorial%22%2C%20fontsize%3D%22small%22%2C%20color%3D_grey)%0A%0A%20%20%20%20%20%20%20%20%23%20The%20key%2C%20in%20the%20corner%20the%20schedules%20leave%20empty.%20Two%20columns%20because%0A%20%20%20%20%20%20%20%20%23%20the%20encoding%20has%20two%20independent%20parts%3A%20dash%20for%20the%20endpoint%2C%20color%0A%20%20%20%20%20%20%20%20%23%20for%20the%20hold%20ratio.%20The%20arm%20sits%20under%20the%20colors%20as%20the%20one%20curve%20that%0A%20%20%20%20%20%20%20%20%23%20is%20keyed%20by%20neither%20%E2%80%94%20a%20blank%20handle%20heads%20each%20column%20in%20place%20of%20a%0A%20%20%20%20%20%20%20%20%23%20section%20title%2C%20which%20matplotlib%20legends%20have%20no%20room%20for.%0A%20%20%20%20%20%20%20%20def%20_key(label%3A%20str%2C%20ls%3D%22none%22%2C%20color%3D_grey%2C%20lw%3D1.4)%20-%3E%20plt.Line2D%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20plt.Line2D(%5B%5D%2C%20%5B%5D%2C%20label%3Dlabel%2C%20ls%3Dls%2C%20color%3Dcolor%2C%20lw%3Dlw)%0A%0A%20%20%20%20%20%20%20%20axs%5B0%5D.legend(%0A%20%20%20%20%20%20%20%20%20%20%20%20handles%3D%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20_key(%22anneal%20end%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20*(_key(f%22%7Be%3Ag%7D%22%2C%20ls%3Dd)%20for%20e%2C%20d%20in%20_dashes.items())%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20_key(%22hold%20ratio%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20*(_key(f%22%7Bh%3A.2f%7D%22%2C%20ls%3D%22-%22%2C%20color%3Dcol)%20for%20h%2C%20col%20in%20_hold.items())%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20_key(%22dose%20arm%22%2C%20ls%3D%22-.%22%2C%20color%3D_arm_color%2C%20lw%3D1)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20loc%3D%22upper%20right%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20ncols%3D2%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20fontsize%3D6.5%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20labelcolor%3D_grey%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20frameon%3DFalse%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20borderaxespad%3D0.4%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20handlelength%3D1.8%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20handletextpad%3D0.5%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20labelspacing%3D0.35%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20columnspacing%3D1.2%2C%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20%20%20%20%20%23%20Right%3A%20%CE%BC%C2%B7lr%2C%20whose%20integral%20is%20the%20dose%2C%20so%20the%20equal%20areas%20the%20arm%20was%0A%20%20%20%20%20%20%20%20%23%20built%20for%20are%20the%20thing%20the%20panel%20draws.%20Hatched%3A%20where%20the%20arm%20falls%0A%20%20%20%20%20%20%20%20%23%20short%20of%20%60end50-hold03%60%20early%2C%20and%20where%20it%20makes%20that%20back%20late.%20Those%0A%20%20%20%20%20%20%20%20%23%20two%20lobes%20have%20equal%20area%20%E2%80%94%20that%20equality%20*is*%20the%20dose%20match%2C%20and%20it%0A%20%20%20%20%20%20%20%20%23%20is%20what%20the%20log-weight%20panel%20cannot%20show.%0A%20%20%20%20%20%20%20%20ax%2C%20ref%20%3D%20axs%5B1%5D%2C%20_by_name%5Bex.DOSE_ARM_REFERENCE%5D%0A%20%20%20%20%20%20%20%20_d_arm%2C%20_d_ref%20%3D%20_mu(_arm)%20*%20LR%20*%201e3%2C%20_mu(ref)%20*%20LR%20*%201e3%0A%20%20%20%20%20%20%20%20_hatch%20%3D%20dict(facecolor%3D%22none%22%2C%20lw%3D0%2C%20hatch_linewidth%3D0.5)%0A%20%20%20%20%20%20%20%20ax.fill_between(E%2C%20_d_ref%2C%20_d_arm%2C%20where%3D_d_arm%20%3C%20_d_ref%2C%20hatch%3D%22%2F%2F%2F%22%2C%20edgecolor%3D_grey%2C%20**_hatch)%0A%20%20%20%20%20%20%20%20ax.fill_between(E%2C%20_d_ref%2C%20_d_arm%2C%20where%3D_d_arm%20%3E%20_d_ref%2C%20hatch%3D%22%5C%5C%5C%5C%5C%5C%22%2C%20edgecolor%3D_arm_color%2C%20**_hatch)%0A%20%20%20%20%20%20%20%20%23%20The%20un-matched%20late%20schedule%20and%20the%20anchor%2C%20both%20in%20ghost%20ink%3A%20the%20arm's%0A%20%20%20%20%20%20%20%20%23%20dose%20is%20meaningful%20against%20the%20schedule%20it%20was%20scaled%20down%20from%2C%20and%0A%20%20%20%20%20%20%20%20%23%20the%20repulsion%20against%20the%20pull%20it%20works%20against.%0A%20%20%20%20%20%20%20%20ax.plot(E%2C%20_mu(_by_name%5B%22end90-hold03%22%5D)%20*%20LR%20*%201e3%2C%20color%3D_grey%2C%20lw%3D0.5%2C%20alpha%3D0.45%2C%20ls%3D_dashes%5B90.0%5D)%0A%20%20%20%20%20%20%20%20ax.plot(E%2C%20ex.anchor_weight(E)%20*%20LR%20*%201e3%2C%20color%3D_grey%2C%20lw%3D0.5%2C%20alpha%3D0.45%2C%20zorder%3D-1)%0A%20%20%20%20%20%20%20%20ax.plot(E%2C%20_d_ref%2C%20color%3D_grey%2C%20lw%3D1.0%2C%20ls%3D_dashes%5B50.0%5D)%0A%20%20%20%20%20%20%20%20ax.plot(E%2C%20_d_arm%2C%20color%3D_arm_color%2C%20lw%3D1%2C%20ls%3D%22-.%22)%0A%20%20%20%20%20%20%20%20ax.set_ylim(0%2C%20None)%0A%20%20%20%20%20%20%20%20ax.set_ylabel(%22weight%20%C3%97%20lr%20%2F%20%2410%5E%7B-3%7D%24%22%2C%20fontsize%3D%22x-small%22)%0A%20%20%20%20%20%20%20%20ax.set_title(%22the%20dose%20arm%22%2C%20fontsize%3D%22small%22%2C%20color%3D_grey)%0A%0A%20%20%20%20%20%20%20%20for%20ax%20in%20axs%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_xlim(0%2C%20ex.SCHEDULER.epochs)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_xlabel(%22epoch%22%2C%20fontsize%3D%22x-small%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.tick_params(labelsize%3D7.5)%0A%20%20%20%20%20%20%20%20return%20fig%0A%0A%20%20%20%20mo.Html(_plot())%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20Measurements%0A%0A%20%20%20%20Like%20ex-2.1.7%3A%0A%0A%20%20%20%20-%20%60named_holdout%60%20exact%20match%2C%20against%20the%20in-experiment%20control%20(H1).%0A%20%20%20%20-%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%3A%20the%20label-affinity-weighted%20alignment%20at%20op1%20minus%20the%20cube%20mean%2C%20averaged%20over%20layers%20(H2%2C%20H3).%0A%20%20%20%20-%20%24%5Cbar%5Calpha%24%3A%20mean%20alignment%20over%20all%20216%20colors%20at%20op1%2C%20layer-averaged%20(H2%2C%20H3).%20This%20is%20the%20quantity%20the%20repulsive%20term%20is%20defined%20on.%0A%20%20%20%20-%20Grading%3A%20Spearman%20%24%5Crho%24%20against%20%60redness%60%20and%20Pearson%20%24R%5E2%24%20against%20%60sim%C2%B9%C2%B7%E2%81%B5%60%20over%20the%20216%20colors%20(H2).%0A%20%20%20%20-%20Per-run%20margin%20trajectories%2C%20for%20retention%20(H2).%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20r%22%22%22%0A%20%20%20%20Ex-2.1.7%20quoted%20*retention*%20two%20ways%20under%20one%20name%3A%20the%20minimum%0A%20%20%20%20final-over-peak%20margin%20across%20seeds%20in%20its%20Findings%2C%20and%20the%20mean%20across%0A%20%20%20%20seeds%20in%20its%20Arms%20section.%20This%20report%20uses%20the%20**%7BRSTAT%7D**%2C%20and%20every%0A%20%20%20%20later%20report%20should.%20The%20gate%20of%20H4(b)%20is%20worded%20per%20run%20(%22for%20every%0A%20%20%20%20anchored%20run%E2%80%A6%22)%2C%20so%20the%20minimum%20is%20what%20it%20needs.%0A%20%20%20%20%22%22%22.replace(%22%7BRSTAT%7D%22%2C%20ex.RETENTION_STAT)%0A%20%20%20%20)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Hypotheses%0A%0A%20%20%20%20Gates%20and%20noise%20floors%20carry%20over%20from%20ex-2.1.7%20with%20their%20thresholds%20and%20rationale%2C%20since%20we%20have%20the%20same%20architecture%2C%20the%20same%20measurement%2C%20and%20the%20same%20statistics.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20r%22%22%22%0A%20%20%20%20**H1%3A%20Task%20cost.**%20Every%20condition%20is%20task-clean%2C%20meaning%20%60named_holdout%60%0A%20%20%20%20exact%20match%20within%20%7BTASK%7D%20(absolute)%20of%20the%20seed%20mean%20of%20the%20in-experiment%0A%20%20%20%20control.%5B%5Eh1-standing%5D%20Partial%3A%20the%20%60hold03%60%20conditions%20and%20the%20dose%20arm%0A%20%20%20%20are%20clean%20and%20a%20%60hold30%60%20condition%20is%20not.%0A%0A%20%20%20%20**H2%3A%20An%20operating%20point%20exists.**%20Some%20task-clean%20factorial%20condition%0A%20%20%20%20meets%20all%20four%20of%20the%20selectivity%20and%20containment%20criteria%20from%20ex-2.1.7%0A%20%20%20%20at%20once%2C%20which%20no%20condition%20in%20that%20experiment%20did%3A%0A%20%20%20%20(a)%20containment%2C%20%24%5Cbar%5Calpha%20%5Cle%20%7BALPHA%7D%24%3B%0A%20%20%20%20(b)%20margin%2C%20%24m_%7B%5Ctext%7Bop1%7D%7D%20%5Cge%20%7BMARGIN%7D%24%3B%0A%20%20%20%20(c)%20grading%2C%20Spearman%20%24%5Crho%20%5Cge%20%7BRHO%7D%24%20against%20%60redness%60%20or%20Pearson%0A%20%20%20%20%24R%5E2%20%5Cge%20%7BR2%7D%24%20against%20%60sim%C2%B9%C2%B7%E2%81%B5%60%3B%0A%20%20%20%20(d)%20retention%2C%20every%20run%20whose%20running%20maximum%20of%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%20reaches%0A%20%20%20%20%7BFLOOR%7D%20ending%20at%20%24%5Cge%20%7BRET%7D%5Ctimes%24%20that%20maximum.%0A%20%20%20%20Partial%2C%20in%20decreasing%20strength%3A%20(a)%20is%20met%20at%20the%20looser%20%7BALPHAP%7D%20(the%0A%20%20%20%20halving%20level%20from%20ex-2.1.7)%20while%20(b)%E2%80%93(d)%20all%20hold%3B%20or%20(a)%20is%20met%20at%0A%20%20%20%20%7BALPHA%7D%20but%20the%20margin%20falls%20between%20the%20ex-2.1.7%20value%20of%20%7BM50%7D%20and%20the%0A%20%20%20%20gate.%0A%0A%20%20%20%20**H3%3A%20A%20sustained%20floor%20makes%20the%20anneal%20endpoint%20redundant.**%20This%20is%0A%20%20%20%20the%20prediction%20that%20sets%20the%20level%20account%20apart.%20If%20containment%20is%20lost%20at%0A%20%20%20%20a%20threshold%2C%20then%20the%20endpoint%20only%20has%20leverage%20in%20the%20row%20whose%20floor%0A%20%20%20%20crosses%20that%20threshold.%20We%20score%20H3%20on%20%24%5Cbar%5Calpha%24%20with%20two%20criteria%2C%0A%20%20%20%20each%20a%20difference%20of%20means%20reported%20with%20its%20sign.%0A%20%20%20%20(a)%20The%20hold-ratio%20main%20effect%2C%5B%5Emain%5D%20the%20nine%20runs%20at%200.03%20minus%20the%20nine%0A%20%20%20%20at%200.30%2C%20is%20at%20least%20%7BAGATE%7D.%20That%20says%20the%20floor%20does%20something%20at%20all.%0A%20%20%20%20(b)%20The%20interaction%20is%20at%20least%20%7BIGATE%7D%3A%20the%20end50%20%E2%88%92%20end90%20difference%0A%20%20%20%20within%20the%200.03%20row%2C%20minus%20the%20same%20difference%20within%20the%200.30%0A%20%20%20%20row.%5B%5Eeffect%5D%0A%20%20%20%20Criterion%20(a)%20keeps%20(b)%20from%20passing%20without%20any%20containment%20behind%20it%3A%20a%0A%20%20%20%20*negative*%20endpoint%20effect%20in%20the%200.30%20row%20would%20inflate%20the%20interaction%20on%0A%20%20%20%20its%20own.%0A%0A%20%20%20%20Two%20outcomes%20would%20fail%20H3.%0A%20%20%20%20**1.**%20The%20endpoint%20effect%20within%20a%20row%20is%20the%20three%20runs%20at%20endpoint%2050%0A%20%20%20%20minus%20the%20three%20at%20endpoint%2090.%20If%20it%20clears%20%7BAGATE%7D%20in%20both%20rows%20while%20the%0A%20%20%20%20interaction%20stays%20under%20%7BIGATE%7D%2C%20that%20is%20the%20timing%20account%3A%20the%20repulsion%0A%20%20%20%20has%20to%20be%20present%20while%20the%20pull%20is%20strong%2C%20and%20no%20floor%20stands%20in%20for%20it.%0A%20%20%20%20**2.**%20If%20%60%7BPRIMARY%7D%60%20alone%20contains%20the%20drift%20while%20(a)%20fails%2C%20then%20each%0A%20%20%20%20factor%20is%20blocked%20by%20the%20other.%5B%5Eh3-fail-2%5D%0A%0A%20%20%20%20We%20also%20report%2C%20without%20scoring%20it%2C%20whether%20the%20hold-ratio%20effect%20is%20at%0A%20%20%20%20least%20as%20large%20as%20the%20endpoint%20effect.%20In%20the%20clean%20outcomes%20this%20ordering%0A%20%20%20%20agrees%20with%20the%20interaction.%20In%20the%20partial%20ones%20it%20can%20disagree%2C%20because%20a%0A%20%20%20%20floor%20that%20slows%20the%20climb%20without%20preventing%20it%20can%20come%20out%20ahead%20on%20the%0A%20%20%20%20ordering%20while%20the%20interaction%20stays%20small.%20Where%20they%20disagree%2C%20we%20trust%0A%20%20%20%20the%20interaction.%0A%0A%20%20%20%20%5B%5Eh1-standing%5D%3A%20Ex-2.1.7%20found%20no%20task%20cost%20anywhere%2C%20including%20at%20ten%20times%20this%0A%20%20%20%20%20%20%20%20anchor%20weight%2C%20so%20this%20is%20a%20standing%20gate%20rather%20than%20an%20open%20question.%20We%0A%20%20%20%20%20%20%20%20state%20it%20because%20a%20sustained%20repulsive%20floor%20is%20the%20one%20thing%20in%20this%20grid%0A%20%20%20%20%20%20%20%20that%20has%20not%20been%20tried.%0A%0A%20%20%20%20%5B%5Eh3-fail-2%5D%3A%20Suppose%20the%20%60hold03%60%20row%20repeats%20its%20ex-2.1.7%20span%20of%20%7BA50%7D%0A%20%20%20%20%20%20%20%20to%20%7BA90%7D.%20Then%20(a)%20can%20only%20fail%20if%20the%20mean%20of%20the%200.30%20row%20is%20nearly%0A%20%20%20%20%20%20%20%20as%20high%2C%20and%20with%20%60%7BPRIMARY%7D%60%20contained%20that%20in%20turn%20requires%20a%0A%20%20%20%20%20%20%20%20wide%20endpoint%20spread%20inside%20the%200.30%20row%20itself%2C%20of%20the%20same%20sign%20as%0A%20%20%20%20%20%20%20%20the%20spread%20in%20the%200.03%20row.%20Such%20a%20spread%20pulls%20the%20interaction%20toward%0A%20%20%20%20%20%20%20%20zero%2C%20so%20this%20miss%20would%20take%20(b)%20down%20with%20(a).%0A%0A%20%20%20%20%5B%5Emain%5D%3A%20A%20main%20effect%20is%20the%20average%20change%20from%20moving%20one%20factor%2C%0A%20%20%20%20%20%20%20%20averaged%20over%20the%20levels%20of%20the%20other.%0A%0A%20%20%20%20%5B%5Eeffect%5D%3A%20Start%20from%20the%20ex-2.1.6%20control%20spread%20of%20about%200.02%20for%0A%20%20%20%20%20%20%20%20%24%5Cbar%5Calpha%24.%20The%20hold-ratio%20effect%20compares%20nine-run%20means%2C%20so%20its%0A%20%20%20%20%20%20%20%20noise%20is%20near%20%240.02%5Csqrt%7B2%7D%2F%5Csqrt%7B9%7D%20%5Capprox%200.009%24%2C%20and%20%7BAGATE%7D%20is%0A%20%20%20%20%20%20%20%20about%20five%20times%20that.%20The%20interaction%20is%20a%20difference%20of%20two%0A%20%20%20%20%20%20%20%20differences%20of%20three-run%20condition%20means%2C%20with%20noise%20near%0A%20%20%20%20%20%20%20%20%240.02%20%5Ccdot%202%2F%5Csqrt%7B3%7D%20%5Capprox%200.023%24%2C%20so%20%7BIGATE%7D%20is%20about%20four%20times%0A%20%20%20%20%20%20%20%20that.%20The%20endpoint%20effect%20within%20one%20row%20is%20a%20difference%20of%20three-run%0A%20%20%20%20%20%20%20%20means%2C%20with%20noise%20near%20%240.02%5Csqrt%7B2%7D%2F%5Csqrt%7B3%7D%20%5Capprox%200.016%24%2C%20so%0A%20%20%20%20%20%20%20%20%7BAGATE%7D%20is%20about%20three%20times%20that%20where%20named%20miss%201%20reads%20it.%0A%20%20%20%20%20%20%20%20What%20the%20level%20account%20expects%20for%20the%20interaction%20is%20about%200.20%2C%0A%20%20%20%20%20%20%20%20twice%20the%20gate%3A%20the%20full%20%7BA50%7D%20to%20%7BA90%7D%20span%20in%20the%200.03%20row%20and%20none%0A%20%20%20%20%20%20%20%20of%20it%20in%20the%200.30%20row.%20Before%20reading%20either%20statistic%2C%20we%20compute%20the%0A%20%20%20%20%20%20%20%20spread%20from%20the%20seeds%20of%20this%20experiment%20and%20check%20that%20the%20anchored%0A%20%20%20%20%20%20%20%20conditions%20hold%20it.%20If%20they%20do%20not%2C%20the%20observed%20spread%20replaces%20the%0A%20%20%20%20%20%20%20%20control%20spread%20and%20the%20gates%20move%20with%20it.%20They%20are%20the%20only%0A%20%20%20%20%20%20%20%20thresholds%20in%20this%20report%20allowed%20to%20move.%0A%20%20%20%20%22%22%22.replace(%22%7BTASK%7D%22%2C%20f%22%7Bex.TASK_GATE%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BALPHAP%7D%22%2C%20f%22%7Bex.MEAN_ALIGN_PARTIAL%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BALPHA%7D%22%2C%20f%22%7Bex.MEAN_ALIGN_GATE%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BMARGIN%7D%22%2C%20f%22%7Bex.MARGIN_GATE%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BRHO%7D%22%2C%20f%22%7Bex.GRADE_RHO_GATE%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BR2%7D%22%2C%20f%22%7Bex.GRADE_R2_GATE%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BFLOOR%7D%22%2C%20f%22%7Bex.H4_FLOOR%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BRET%7D%22%2C%20f%22%7Bex.H4_RETENTION%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BAGATE%7D%22%2C%20f%22%7Bex.ALPHA_EFFECT_GATE%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BIGATE%7D%22%2C%20f%22%7Bex.ALPHA_INTERACTION_GATE%3Ag%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BPRIMARY%7D%22%2C%20ex.PRIMARY)%0A%20%20%20%20%20%20%20%20.replace(%22%7BA50%7D%22%2C%20f%22%7Bex.EX217_REFERENCE%5B'end50-hold03'%5D%5B'alpha'%5D%3A.2f%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BA90%7D%22%2C%20f%22%7Bex.EX217_REFERENCE%5B'end90-hold03'%5D%5B'alpha'%5D%3A.2f%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BM50%7D%22%2C%20f%22%7Bex.EX217_REFERENCE%5B'end50-hold03'%5D%5B'm_op1'%5D%3A.2f%7D%22)%0A%20%20%20%20)%0A%20%20%20%20%23%20REVIEW%3A%20two%20corrections%20to%20the%20H3%20rewrite%20below%2C%20neither%20a%20gate%20value.%0A%20%20%20%20%23%20(1)%20Named%20miss%201%20defined%20the%20endpoint%20effect%20as%20six-run%20means%20but%20then%0A%20%20%20%20%23%20read%20it%20%22in%20both%20rows%20separately%22%2C%20which%20is%20three%20runs%20against%20three.%20It%0A%20%20%20%20%23%20now%20says%20three%2C%20and%20the%20footnote%20gains%20that%20statistic's%20noise%0A%20%20%20%20%23%20(0.02%C2%B7%E2%88%9A2%2F%E2%88%9A3%20%E2%89%88%200.016%2C%20so%200.05%20is%20~3%C3%97%20rather%20than%20the%20~5%C3%97%20that%20holds%20for%0A%20%20%20%20%23%20the%20nine-run%20main%20effect).%20The%20gate%20is%20unchanged%20and%20still%20clears%20noise.%0A%20%20%20%20%23%20(2)%20The%20%60h3-fail-2%60%20footnote%20called%20miss%202%20and%20condition%20(a)'s%20guard%20%22the%0A%20%20%20%20%23%20same%20geometry%20from%20two%20sides%22.%20They%20sit%20on%20opposite%20sides%3A%20the%20guard%0A%20%20%20%20%23%20covers%20a%20*negative*%20endpoint%20effect%20in%20the%200.30%20row%2C%20which%20inflates%20the%0A%20%20%20%20%23%20interaction%2C%20while%20miss%202%20needs%20a%20large%20*positive*%20one%20(PRIMARY%20contained%0A%20%20%20%20%23%20forces%20end50%2Fend70%20high)%2C%20which%20deflates%20it.%20The%20footnote%20now%20says%20miss%202%0A%20%20%20%20%23%20takes%20(b)%20down%20with%20(a).%0A%20%20%20%20%23%20REVIEW%3A%20H3's%20gate%20moved%20from%20the%20main-effect%20ordering%20to%20the%20interaction%2C%0A%20%20%20%20%23%20with%20the%20hold-ratio%20main%20effect%20kept%20as%20a%20guard.%20The%20ordering%20compares%20two%0A%20%20%20%20%23%20marginal%20sizes%20and%20can%20pass%20in%20a%20world%20where%20the%20floor%20only%20slows%20the%0A%20%20%20%20%23%20climb%20(hold%20effect%20large%2C%20interaction%20small)%2C%20which%20is%20not%20the%20level%0A%20%20%20%20%23%20account%3B%20the%20interaction%20is%20that%20account's%20distinguishing%20prediction%2C%20and%0A%20%20%20%20%23%20a%20review%20round%20had%20already%20licensed%20the%20discussion%20to%20lean%20on%20it%20whenever%0A%20%20%20%20%23%20the%20main%20effects%20came%20out%20close%20%E2%80%94%20a%20decisive%20statistic%20should%20carry%20a%0A%20%20%20%20%23%20gate.%20Power%3A%20predicted%20signal%20~0.20%20against%20~0.023%20noise%2C%20gate%200.1.%20The%0A%20%20%20%20%23%20ordering%20demotes%20to%20a%20reported%20observation.%20Verify%3A%20the%20level-account%0A%20%20%20%20%23%20expectation%20derives%20from%20EX217_REFERENCE%20(0.33%20%E2%86%92%200.13%20in%20the%20hold03%20row)%3B%0A%20%20%20%20%23%20if%20the%20reproduction%20check%20fails%2C%20the%20power%20argument%20goes%20with%20it.%0A%20%20%20%20%23%20REVIEW%3A%20three%20earlier%20changes%20to%20H1%20and%20H3%2C%20none%20to%20a%20gate%20value.%0A%20%20%20%20%23%20(1)%20H1's%20partial%20named%20the%20dose%20arm%20as%20the%20likely%20offender%3B%20the%20analysis%0A%20%20%20%20%23%20section%20names%20the%20%60hold30%60%20row%2C%20which%20is%20the%20arm%20holding%20a%20repulsive%0A%20%20%20%20%23%20weight%20no%20earlier%20experiment%20sustained%2C%20so%20the%20partial%20now%20matches%20it.%0A%20%20%20%20%23%20(2)%20H3's%20endpoint%20factor%20has%20three%20levels%2C%20so%20%22the%20main%20effect%22%20did%20not%0A%20%20%20%20%23%20name%20a%20contrast.%20It%20is%20now%20the%20end50%20%E2%88%92%20end90%20difference%20of%20six-run%20means%3A%0A%20%20%20%20%23%20those%20are%20the%20two%20levels%20ex-2.1.7%20measured%2C%20so%20the%20effect%20is%20comparable%20to%0A%20%20%20%20%23%20the%20published%20pair%2C%20and%20endpoint%2070%20stays%20available%20for%20the%20trajectory%0A%20%20%20%20%23%20reading%20without%20entering%20the%20score.%20The%20footnote's%20noise%20figure%20was%0A%20%20%20%20%23%20computed%20for%20nine-run%20means%20only%3B%20the%20six-run%20figure%20is%20added.%0A%20%20%20%20%23%20(3)%20The%20H3%20heading%20claimed%20%22the%20level%20...%20not%20the%20timing%22%2C%20which%20the%20gate%0A%20%20%20%20%23%20(an%20ordering%2C%20not%20an%20exclusion)%20does%20not%20test%3B%20narrowed%20to%20the%20ordering.%0A%20%20%20%20%23%20The%20second%20named%20miss%20is%20kept%20but%20qualified%3A%20the%200.33%20%E2%86%92%200.13%20span%20that%0A%20%20%20%20%23%20ex-2.1.7%20measured%20in%20the%20%60hold03%60%20row%20already%20puts%20~0.10%20into%20the%20endpoint%0A%20%20%20%20%23%20effect%2C%20so%20that%20miss%20needs%20the%20%60hold30%60%20row%20to%20reverse.%20Verify%3A%20if%20the%0A%20%20%20%20%23%20reproduction%20check%20finds%20%60end50-hold03%60%20and%20%60end90-hold03%60%20disagreeing%0A%20%20%20%20%23%20with%20ex-2.1.7%2C%20this%20qualification%20goes%20with%20it.%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20_res%20%3D%20load_results()%0A%20%20%20%20mo.stop(_res%20is%20None%2C%20mo.md(%22_Results%20are%20not%20published%20yet%3B%20the%20analysis%20cells%20below%20render%20once%20they%20are._%22))%0A%20%20%20%20assert%20_res%20is%20not%20None%0A%20%20%20%20metrics%2C%20arrays%20%3D%20_res%0A%20%20%20%20cells%20%3D%20%7Bc%5B%22label%22%5D%3A%20c%20for%20c%20in%20metrics%5B%22cells%22%5D%7D%0A%0A%20%20%20%20CONDS%3A%20list%5Bstr%5D%20%3D%20%5Bc%5B%22name%22%5D%20for%20c%20in%20ex.CONDITIONS%5D%0A%20%20%20%20ANCHORED%20%3D%20%5Bc%20for%20c%20in%20CONDS%20if%20c%20!%3D%20%22lam0%22%5D%0A%20%20%20%20BY_NAME%20%3D%20%7Bc%5B%22name%22%5D%3A%20c%20for%20c%20in%20ex.CONDITIONS%7D%0A%20%20%20%20%23%20The%20factorial%20as%20a%20grid%2C%20so%20a%20row%20or%20column%20can%20be%20addressed%20by%20its%20level%0A%20%20%20%20%23%20rather%20than%20by%20re-deriving%20names%20from%20the%20two%20constant%20lists%20each%20time.%0A%20%20%20%20ROW%20%3D%20%7Bh%3A%20%5Bf%22end%7Be%3A.0f%7D-hold%7Bh%20*%20100%3A02.0f%7D%22%20for%20e%20in%20ex.ANTI_ANNEAL_ENDS%5D%20for%20h%20in%20ex.ANTI_HOLD_RATIOS%7D%0A%20%20%20%20HOLD_LO%2C%20HOLD_HI%20%3D%20ex.ANTI_HOLD_RATIOS%0A%20%20%20%20END_LO%2C%20END_HI%20%3D%20ex.ANTI_ANNEAL_ENDS%5B0%5D%2C%20ex.ANTI_ANNEAL_ENDS%5B-1%5D%0A%0A%20%20%20%20def%20over_seeds(cond%3A%20str%2C%20fn)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20%22%22%22One%20value%20per%20seed%20for%20a%20condition%2C%20in%20seed%20order.%22%22%22%0A%20%20%20%20%20%20%20%20return%20np.array(%5Bfn(cells%5Bf%22%7Bcond%7D-s%7Bs%7D%22%5D)%20for%20s%20in%20ex.SEEDS%5D)%0A%0A%20%20%20%20def%20acc(cond%3A%20str%2C%20set_name%3A%20str%20%3D%20%22named_holdout%22%2C%20key%3A%20str%20%3D%20%22accuracy%22)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20return%20over_seeds(cond%2C%20lambda%20c%3A%20c%5B%22sets%22%5D%5Bset_name%5D%5Bkey%5D)%0A%0A%20%20%20%20def%20alpha_map(cond%3A%20str)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20%22%22%22Seed-mean%20alignment%20map%20for%20a%20condition%3A%20(layers%2C%20colors%2C%20positions).%22%22%22%0A%20%20%20%20%20%20%20%20return%20np.mean(%5Barrays%5Bf%22%7Bcond%7D-s%7Bs%7D%2Falpha%22%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%0A%0A%20%20%20%20def%20m_op1(cond%3A%20str)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20%22%22%22Per-seed%20layer-mean%20margin%20at%20op1%20%E2%80%94%20the%20statistic%20H2(b)%20reads.%22%22%22%0A%20%20%20%20%20%20%20%20return%20over_seeds(cond%2C%20lambda%20c%3A%20c%5B%22m_op1%22%5D)%0A%0A%20%20%20%20def%20alpha_bar(cond%3A%20str)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20%22%22%22Per-seed%20mean%20alignment%20over%20all%20216%20colors%20at%20op1%20%E2%80%94%20the%20containment%20statistic.%22%22%22%0A%20%20%20%20%20%20%20%20return%20over_seeds(cond%2C%20lambda%20c%3A%20c%5B%22alpha_mean_op1%22%5D)%0A%0A%20%20%20%20def%20traj(cond%3A%20str%2C%20seed%3A%20int%2C%20key%3A%20str)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20return%20np.asarray(cells%5Bf%22%7Bcond%7D-s%7Bseed%7D%22%5D%5B%22traj%22%5D%5Bkey%5D%2C%20dtype%3Dfloat)%0A%0A%20%20%20%20def%20grading(cond%3A%20str)%20-%3E%20tuple%5Bfloat%2C%20float%5D%3A%0A%20%20%20%20%20%20%20%20%22%22%22The%20two%20H2(c)%20statistics%2C%20read%20off%20the%20seed-mean%20per-color%20response%20at%20op1.%0A%0A%20%20%20%20%20%20%20%20Graded%20on%20the%20seed%20mean%20rather%20than%20per%20seed%20and%20averaged%2C%20which%20is%20what%0A%20%20%20%20%20%20%20%20ex-2.1.7%20did%20%E2%80%94%20so%20the%20reproduction%20check%20compares%20like%20with%20like.%0A%20%20%20%20%20%20%20%20%22%22%22%0A%20%20%20%20%20%20%20%20a%20%3D%20alpha_map(cond)%5B%3A%2C%20%3A%2C%200%5D.mean(axis%3D0)%0A%20%20%20%20%20%20%20%20return%20ex.spearman(a%2C%20ex.REDNESS)%2C%20ex.r2_sim(a)%0A%0A%20%20%20%20def%20retention(cond%3A%20str)%20-%3E%20float%3A%0A%20%20%20%20%20%20%20%20%22%22%22Lowest%20final-over-peak%20margin%20across%20the%20seeds%20that%20reached%20the%20floor%3B%200%20if%20none%20did.%0A%0A%20%20%20%20%20%20%20%20The%20minimum%2C%20per%20%60ex.RETENTION_STAT%60%3A%20H2(d)'s%20gate%20is%20worded%20per%20run.%0A%20%20%20%20%20%20%20%20%22%22%22%0A%20%20%20%20%20%20%20%20r%20%3D%20%5Bt%5B-1%5D%20%2F%20t.max()%20for%20s%20in%20ex.SEEDS%20if%20(t%20%3A%3D%20traj(cond%2C%20s%2C%20%22m_op1%22)).max()%20%3E%3D%20ex.H4_FLOOR%5D%0A%20%20%20%20%20%20%20%20return%20min(r)%20if%20r%20else%200.0%0A%0A%20%20%20%20geometry%20%3D%20load_geometry()%20or%20%7B%7D%0A%20%20%20%20return%20(%0A%20%20%20%20%20%20%20%20ANCHORED%2C%0A%20%20%20%20%20%20%20%20BY_NAME%2C%0A%20%20%20%20%20%20%20%20CONDS%2C%0A%20%20%20%20%20%20%20%20END_HI%2C%0A%20%20%20%20%20%20%20%20END_LO%2C%0A%20%20%20%20%20%20%20%20HOLD_HI%2C%0A%20%20%20%20%20%20%20%20HOLD_LO%2C%0A%20%20%20%20%20%20%20%20ROW%2C%0A%20%20%20%20%20%20%20%20acc%2C%0A%20%20%20%20%20%20%20%20alpha_bar%2C%0A%20%20%20%20%20%20%20%20alpha_map%2C%0A%20%20%20%20%20%20%20%20cells%2C%0A%20%20%20%20%20%20%20%20geometry%2C%0A%20%20%20%20%20%20%20%20grading%2C%0A%20%20%20%20%20%20%20%20m_op1%2C%0A%20%20%20%20%20%20%20%20retention%2C%0A%20%20%20%20%20%20%20%20traj%2C%0A%20%20%20%20)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(%0A%20%20%20%20CONDS%3A%20list%5Bstr%5D%2C%0A%20%20%20%20END_HI%2C%0A%20%20%20%20END_LO%2C%0A%20%20%20%20HOLD_HI%2C%0A%20%20%20%20HOLD_LO%2C%0A%20%20%20%20ROW%2C%0A%20%20%20%20acc%2C%0A%20%20%20%20alpha_bar%2C%0A%20%20%20%20grading%2C%0A%20%20%20%20m_op1%2C%0A%20%20%20%20retention%2C%0A)%3A%0A%20%20%20%20CONTROL_ACC%20%3D%20float(acc(%22lam0%22).mean())%0A%20%20%20%20TASK_CLEAN%20%3D%20%7Bc%3A%20bool(abs(acc(c).mean()%20-%20CONTROL_ACC)%20%3C%3D%20ex.TASK_GATE)%20for%20c%20in%20CONDS%7D%0A%0A%20%20%20%20%23%20The%20seed%20spread%20H3's%20footnote%20asks%20for%2C%20pooled%20over%20the%20six%20factorial%0A%20%20%20%20%23%20conditions%2C%20and%20the%20factor%20the%20gates%20move%20by%20if%20the%20anchored%20conditions%20do%20not%0A%20%20%20%20%23%20hold%20the%20ex-2.1.6%20control%20spread%20of%200.02.%20This%20is%20the%20one%20rescaling%20the%0A%20%20%20%20%23%20preregistration%20allows%2C%20so%20it%20is%20computed%20before%20either%20H3%20statistic.%0A%20%20%20%20CONTROL_SPREAD%20%3D%200.02%0A%20%20%20%20ALPHA_SPREAD%20%3D%20float(np.sqrt(np.mean(%5Balpha_bar(c).var(ddof%3D1)%20for%20c%20in%20ex.FACTORIAL_NAMES%5D)))%0A%20%20%20%20GATE_SCALE%20%3D%20max(1.0%2C%20ALPHA_SPREAD%20%2F%20CONTROL_SPREAD)%0A%20%20%20%20EFFECT_GATE%20%3D%20ex.ALPHA_EFFECT_GATE%20*%20GATE_SCALE%0A%20%20%20%20INTERACTION_GATE%20%3D%20ex.ALPHA_INTERACTION_GATE%20*%20GATE_SCALE%0A%0A%20%20%20%20def%20end_effect(hold%3A%20float)%20-%3E%20float%3A%0A%20%20%20%20%20%20%20%20%22%22%22The%20end50%20%E2%88%92%20end90%20difference%20of%20three-run%20means%20within%20one%20row.%22%22%22%0A%20%20%20%20%20%20%20%20lo%2C%20hi%20%3D%20(f%22end%7Be%3A.0f%7D-hold%7Bhold%20*%20100%3A02.0f%7D%22%20for%20e%20in%20(END_LO%2C%20END_HI))%0A%20%20%20%20%20%20%20%20return%20float(alpha_bar(lo).mean()%20-%20alpha_bar(hi).mean())%0A%0A%20%20%20%20def%20h2_conditions(cond%3A%20str)%20-%3E%20dict%5Bstr%2C%20bool%5D%3A%0A%20%20%20%20%20%20%20%20%22%22%22The%20four%20H2%20criteria%20for%20one%20condition%2C%20each%20under%20the%20name%20the%20hypothesis%20gives%20it.%22%22%22%0A%20%20%20%20%20%20%20%20rho%2C%20r2%20%3D%20grading(cond)%0A%20%20%20%20%20%20%20%20return%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%22containment%22%3A%20bool(alpha_bar(cond).mean()%20%3C%3D%20ex.MEAN_ALIGN_GATE)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22margin%22%3A%20bool(m_op1(cond).mean()%20%3E%3D%20ex.MARGIN_GATE)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22grading%22%3A%20bool(rho%20%3E%3D%20ex.GRADE_RHO_GATE%20or%20r2%20%3E%3D%20ex.GRADE_R2_GATE)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22retention%22%3A%20bool(retention(cond)%20%3E%3D%20ex.H4_RETENTION)%2C%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%23%20H3(a)%3A%20the%20nine%20runs%20at%20the%20low%20hold%20ratio%20minus%20the%20nine%20at%20the%20high%20one.%0A%20%20%20%20HOLD_EFFECT%20%3D%20float(%0A%20%20%20%20%20%20%20%20np.mean(%5Balpha_bar(c).mean()%20for%20c%20in%20ROW%5BHOLD_LO%5D%5D)%20-%20np.mean(%5Balpha_bar(c).mean()%20for%20c%20in%20ROW%5BHOLD_HI%5D%5D)%0A%20%20%20%20)%0A%20%20%20%20INTERACTION%20%3D%20end_effect(HOLD_LO)%20-%20end_effect(HOLD_HI)%0A%20%20%20%20%23%20H2%20is%20scored%20on%20the%20factorial%20only%3B%20the%20dose%20arm%20and%20the%20control%20are%20not%0A%20%20%20%20%23%20candidates%20for%20an%20operating%20point.%0A%20%20%20%20MEETS%20%3D%20%7Bc%3A%20TASK_CLEAN%5Bc%5D%20and%20all(h2_conditions(c).values())%20for%20c%20in%20ex.FACTORIAL_NAMES%7D%0A%20%20%20%20return%20(%0A%20%20%20%20%20%20%20%20ALPHA_SPREAD%2C%0A%20%20%20%20%20%20%20%20CONTROL_ACC%2C%0A%20%20%20%20%20%20%20%20CONTROL_SPREAD%2C%0A%20%20%20%20%20%20%20%20EFFECT_GATE%2C%0A%20%20%20%20%20%20%20%20GATE_SCALE%2C%0A%20%20%20%20%20%20%20%20HOLD_EFFECT%2C%0A%20%20%20%20%20%20%20%20INTERACTION%2C%0A%20%20%20%20%20%20%20%20INTERACTION_GATE%2C%0A%20%20%20%20%20%20%20%20MEETS%2C%0A%20%20%20%20%20%20%20%20TASK_CLEAN%2C%0A%20%20%20%20%20%20%20%20end_effect%2C%0A%20%20%20%20%20%20%20%20h2_conditions%2C%0A%20%20%20%20)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Reproduction%20check%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(alpha_bar%2C%20m_op1)%3A%0A%20%20%20%20%23%20REVIEW%3A%20the%20check%20compared%20two%20statistics%20but%20quoted%20a%20tolerance%20for%20one.%0A%20%20%20%20%23%20Rather%20than%20import%20a%20floor%20for%20%E1%BE%B1%20that%20no%20earlier%20experiment%20measured%2C%20the%0A%20%20%20%20%23%20tolerance%20is%20derived%20in-experiment%2C%20as%20H3's%20footnote%20already%20does%20for%20the%0A%20%20%20%20%23%20effect%20gate.%20This%20matters%20because%20H2%20turns%20on%20%E1%BE%B1%20moving%200.13%20%E2%86%92%200.1%2C%20a%0A%20%20%20%20%23%20distance%20of%20the%20same%20order%20as%20the%20seed%20spread.%20Verify%3A%20ex-2.1.7's%20own%0A%20%20%20%20%23%20per-seed%20%E1%BE%B1%20spread%20on%20these%20two%20conditions%20was%20about%200.011%E2%80%930.015.%0A%20%20%20%20def%20_tol(cond%3A%20str)%20-%3E%20float%3A%0A%20%20%20%20%20%20%20%20%22%22%22Two%20seed-mean%20spreads%20for%20%E1%BE%B1%2C%20from%20this%20experiment's%20own%20seeds.%22%22%22%0A%20%20%20%20%20%20%20%20return%202%20*%20float(alpha_bar(cond).std(ddof%3D1))%20%2F%20np.sqrt(len(ex.SEEDS))%0A%0A%20%20%20%20_rows%20%3D%20%22%22.join(%0A%20%20%20%20%20%20%20%20f%22%3Ctr%3E%3Cth%3E%3Ccode%3E%7Bc%7D%3C%2Fcode%3E%3C%2Fth%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Bm_op1(c).mean()%3A.3f%7D%3C%2Ftd%3E%3Ctd%20class%3D'num'%3E%7Br%5B'm_op1'%5D%3A.2f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Bm_op1(c).mean()%20-%20r%5B'm_op1'%5D%3A%2B.3f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Balpha_bar(c).mean()%3A.3f%7D%3C%2Ftd%3E%3Ctd%20class%3D'num'%3E%7Br%5B'alpha'%5D%3A.2f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Balpha_bar(c).mean()%20-%20r%5B'alpha'%5D%3A%2B.3f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%C2%B1%7B_tol(c)%3A.3f%7D%3C%2Ftd%3E%3C%2Ftr%3E%22%0A%20%20%20%20%20%20%20%20for%20c%2C%20r%20in%20ex.EX217_REFERENCE.items()%0A%20%20%20%20)%0A%20%20%20%20_table%20%3D%20f%22%22%22%0A%20%20%20%20%3Cdiv%20class%3D%22report-table-scroll%22%3E%3Ctable%20class%3D%22report-table%22%3E%0A%20%20%20%20%20%20%3Cthead%3E%3Ctr%3E%0A%20%20%20%20%20%20%20%20%3Cth%3Econdition%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3Em%3Csub%3Eop1%3C%2Fsub%3E%20here%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Eex-2.1.7%3C%2Fth%3E%3Cth%20class%3D%22num%22%3E%CE%94%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3E%E1%BE%B1%20here%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Eex-2.1.7%3C%2Fth%3E%3Cth%20class%3D%22num%22%3E%CE%94%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3E%E1%BE%B1%20tolerance%3C%2Fth%3E%0A%20%20%20%20%20%20%3C%2Ftr%3E%3C%2Fthead%3E%0A%20%20%20%20%20%20%3Ctbody%3E%7B_rows%7D%3C%2Ftbody%3E%0A%20%20%20%20%3C%2Ftable%3E%3C%2Fdiv%3E%0A%20%20%20%20%22%22%22%0A%20%20%20%20_caption%20%3D%20f%22%22%22%0A%20%20%20%20The%20two%20conditions%20this%20grid%20shares%20with%20ex-2.1.7%2C%20against%20that%20report's%20published%0A%20%20%20%20seed%20means.%20%3Ccode%3Eend50-hold03%3C%2Fcode%3E%20repeats%20its%20%3Ccode%3Espan-anti%3C%2Fcode%3E%20and%0A%20%20%20%20%3Ccode%3Eend90-hold03%3C%2Fcode%3E%20its%20%3Ccode%3Espan-anti-late%3C%2Fcode%3E.%20The%20margin%0A%20%20%20%20tolerance%20is%20the%20carried%20seed-mean%20noise%20floor%2C%20%7Bex.NOISE_SEED_MEAN%3Ag%7D%3B%20the%0A%20%20%20%20%E1%BE%B1%20tolerance%20is%20two%20seed-mean%20spreads%20from%20this%20experiment's%20own%20seeds%2C%20in%0A%20%20%20%20the%20last%20column.%0A%20%20%20%20%22%22%22%0A%20%20%20%20mo.Html(figure_html(_table%2C%20caption%3D_caption%2C%20class_%3D%22report-figure%22))%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(alpha_bar%2C%20grading%2C%20m_op1)%3A%0A%20%20%20%20_dm%20%3D%20max(abs(m_op1(c).mean()%20-%20r%5B%22m_op1%22%5D)%20for%20c%2C%20r%20in%20ex.EX217_REFERENCE.items())%0A%20%20%20%20_da%20%3D%20max(abs(alpha_bar(c).mean()%20-%20r%5B%22alpha%22%5D)%20for%20c%2C%20r%20in%20ex.EX217_REFERENCE.items())%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20Both%20conditions%20reproduce.%20The%20margins%20land%20%7B_dm%3A.3f%7D%20from%20the%20published%20values%20against%20a%20floor%20of%20%7Bex.NOISE_SEED_MEAN%3Ag%7D%2C%20and%20%E1%BE%B1%20within%20%7B_da%3A.3f%7D%2C%20inside%20the%20tolerance%20in%20either%20row.%20Grading%20agrees%20as%20well%3A%20%60end90-hold03%60%20scores%20R%C2%B2%20%3D%20%7Bgrading(%22end90-hold03%22)%5B1%5D%3A.2f%7D%20here%2C%20the%20value%20ex-2.1.7%20published%20for%20the%20same%20condition.%0A%0A%20%20%20%20So%20the%20two%20experiments%20measure%20the%20same%20thing%2C%20and%20this%20grid%20can%20be%20read%20against%20the%20ex-2.1.7%20numbers%20%E2%80%94%20which%20the%20H2%20partials%20and%20the%20H3%20power%20argument%20both%20rely%20on.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Task%20cost%20(H1)%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(CONDS%3A%20list%5Bstr%5D%2C%20CONTROL_ACC%2C%20TASK_CLEAN%2C%20acc)%3A%0A%20%20%20%20def%20_cell(cond%3A%20str%2C%20set_name%3A%20str%2C%20key%3A%20str%2C%20fmt%3A%20str%20%3D%20%22%7B%3A.3f%7D%22)%20-%3E%20str%3A%0A%20%20%20%20%20%20%20%20v%20%3D%20acc(cond%2C%20set_name%2C%20key)%0A%20%20%20%20%20%20%20%20return%20f%22%7Bfmt.format(v.mean())%7D%20%3Cspan%20class%3D'range'%3E%C2%B1%7B(v.max()%20-%20v.min())%20%2F%202%3A.3f%7D%3C%2Fspan%3E%22%0A%0A%20%20%20%20_rows%20%3D%20%22%22.join(%0A%20%20%20%20%20%20%20%20f%22%3Ctr%3E%3Cth%3E%3Ccode%3E%7Bc%7D%3C%2Fcode%3E%3C%2Fth%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_cell(c%2C%20'named_seen'%2C%20'accuracy')%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_cell(c%2C%20'named_holdout'%2C%20'accuracy')%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_cell(c%2C%20'named_holdout'%2C%20'nll')%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_cell(c%2C%20'open'%2C%20'guess_dist')%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Bacc(c).mean()%20-%20CONTROL_ACC%3A%2B.4f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%3E%7B'clean'%20if%20TASK_CLEAN%5Bc%5D%20else%20'not%20clean'%7D%3C%2Ftd%3E%3C%2Ftr%3E%22%0A%20%20%20%20%20%20%20%20for%20c%20in%20CONDS%0A%20%20%20%20)%0A%20%20%20%20_table%20%3D%20f%22%22%22%0A%20%20%20%20%3Cdiv%20class%3D%22report-table-scroll%22%3E%3Ctable%20class%3D%22report-table%22%3E%0A%20%20%20%20%20%20%3Cthead%3E%3Ctr%3E%0A%20%20%20%20%20%20%20%20%3Cth%3Econdition%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Eseen%20EM%20%E2%86%91%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Eholdout%20EM%20%E2%86%91%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3Eholdout%20NLL%20%E2%86%93%3C%2Fth%3E%3Cth%20class%3D%22num%22%3E%3Ccode%3Eopen%3C%2Fcode%3E%20dist%20%E2%86%93%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3E%CE%94%20holdout%20EM%3C%2Fth%3E%3Cth%3EH1%20gate%3C%2Fth%3E%0A%20%20%20%20%20%20%3C%2Ftr%3E%3C%2Fthead%3E%0A%20%20%20%20%20%20%3Ctbody%3E%7B_rows%7D%3C%2Ftbody%3E%0A%20%20%20%20%3C%2Ftable%3E%3C%2Fdiv%3E%0A%20%20%20%20%22%22%22%0A%20%20%20%20_caption%20%3D%20f%22%22%22%0A%20%20%20%20Behavior%20by%20condition.%20Each%20cell%20is%20the%20seed%20mean%2C%20with%20half%20the%20seed%20range%0A%20%20%20%20beside%20it.%20EM%20is%20exact%20match%20on%20the%20answer%20token%2C%20NLL%20its%20surprise%20in%20nats%2C%0A%20%20%20%20and%20%3Ccode%3Eopen%3C%2Fcode%3E%20dist%20the%20RGB%20distance%20from%20the%20guessed%20color%20to%20the%0A%20%20%20%20true%20mix%20on%20pairs%20with%20no%20named%20answer.%20%CE%94%20holdout%20EM%20is%20the%20signed%20gap%20to%0A%20%20%20%20the%20in-experiment%20control%2C%20which%20the%20H1%20gate%20scores%20at%20%7Bex.TASK_GATE%3Ag%7D.%0A%20%20%20%20%22%22%22%0A%20%20%20%20mo.Html(figure_html(_table%2C%20caption%3D_caption%2C%20class_%3D%22report-figure%22))%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(CONDS%3A%20list%5Bstr%5D%2C%20CONTROL_ACC%2C%20HOLD_HI%2C%20ROW%2C%20acc)%3A%0A%20%20%20%20_worst%20%3D%20max(CONDS%2C%20key%3Dlambda%20c%3A%20abs(acc(c).mean()%20-%20CONTROL_ACC))%0A%20%20%20%20_hi%20%3D%20max(ROW%5BHOLD_HI%5D%2C%20key%3Dlambda%20c%3A%20abs(acc(c).mean()%20-%20CONTROL_ACC))%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20**H1%20holds.**%20The%20largest%20gap%20from%20the%20control%20is%20%7Babs(acc(_worst).mean()%20-%20CONTROL_ACC)%3A.4f%7D%2C%20at%20%60%7B_worst%7D%60%2C%20against%20a%20gate%20of%20%7Bex.TASK_GATE%3Ag%7D.%20Every%20condition%20solves%20the%20task.%0A%0A%20%20%20%20The%20preregistration%20named%20the%20%60hold%7BHOLD_HI%20*%20100%3A02.0f%7D%60%20row%20as%20the%20place%20a%20task%20cost%20would%20show%20up%2C%20since%20it%20sustains%20a%20repulsive%20weight%20no%20earlier%20experiment%20held.%20It%20does%20not%3A%20the%20worst%20condition%20in%20that%20row%20is%20%60%7B_hi%7D%60%20at%20%7Babs(acc(_hi).mean()%20-%20CONTROL_ACC)%3A.4f%7D%2C%20the%20same%20size%20as%20the%20gaps%20elsewhere.%20Holding%20the%20repulsion%20an%20order%20of%20magnitude%20above%20the%20M1%20floor%20for%20the%20rest%20of%20training%20costs%20nothing%20the%20task%20loss%20can%20see.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20An%20operating%20point%20(H2)%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20Four%20criteria%20have%20to%20hold%20at%20once.%20The%20table%20below%20scores%20them%20together%2C%20with%20values%20that%20pass%20their%20gate%20in%20bold.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(BY_NAME%2C%20MEETS%2C%20alpha_bar%2C%20grading%2C%20h2_conditions%2C%20m_op1%2C%20retention)%3A%0A%20%20%20%20def%20_mark(v%3A%20float%2C%20gate%3A%20float%2C%20up%3A%20bool%2C%20fmt%3A%20str%20%3D%20%22%7B%3A.3f%7D%22)%20-%3E%20str%3A%0A%20%20%20%20%20%20%20%20ok%20%3D%20v%20%3E%3D%20gate%20if%20up%20else%20v%20%3C%3D%20gate%0A%20%20%20%20%20%20%20%20return%20f%22%3Cstrong%3E%7Bfmt.format(v)%7D%3C%2Fstrong%3E%22%20if%20ok%20else%20fmt.format(v)%0A%0A%20%20%20%20def%20_row(c%3A%20str)%20-%3E%20str%3A%0A%20%20%20%20%20%20%20%20rho%2C%20r2%20%3D%20grading(c)%0A%20%20%20%20%20%20%20%20cell%20%3D%20BY_NAME%5Bc%5D%0A%20%20%20%20%20%20%20%20%23%20Name%20every%20criterion%20the%20condition%20misses%3A%20a%20row%20that%20fails%0A%20%20%20%20%20%20%20%20%23%20containment%20and%20grading%20alike%20should%20say%20so.%0A%20%20%20%20%20%20%20%20missed%20%3D%20%22%2C%20%22.join(k%20for%20k%2C%20ok%20in%20h2_conditions(c).items()%20if%20not%20ok)%0A%20%20%20%20%20%20%20%20return%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%3Ctr%3E%3Cth%3E%3Ccode%3E%7Bc%7D%3C%2Fcode%3E%3C%2Fth%3E%22%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Bcell%5B'anti_anneal_end'%5D%3A.0f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Bcell%5B'anti_hold_ratio'%5D%3A.2f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_mark(alpha_bar(c).mean()%2C%20ex.MEAN_ALIGN_GATE%2C%20up%3DFalse)%7D%22%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%20%3Cspan%20class%3D'range'%3E%C2%B1%7Balpha_bar(c).std(ddof%3D1)%3A.3f%7D%3C%2Fspan%3E%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_mark(m_op1(c).mean()%2C%20ex.MARGIN_GATE%2C%20up%3DTrue)%7D%22%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%20%3Cspan%20class%3D'range'%3E%C2%B1%7Bm_op1(c).std(ddof%3D1)%3A.3f%7D%3C%2Fspan%3E%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_mark(rho%2C%20ex.GRADE_RHO_GATE%2C%20up%3DTrue%2C%20fmt%3D'%7B%3A.2f%7D')%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_mark(r2%2C%20ex.GRADE_R2_GATE%2C%20up%3DTrue%2C%20fmt%3D'%7B%3A.2f%7D')%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_mark(retention(c)%2C%20ex.H4_RETENTION%2C%20up%3DTrue%2C%20fmt%3D'%7B%3A.2f%7D')%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%3Ctd%3E%7B'all%20four'%20if%20MEETS%5Bc%5D%20else%20missed%7D%3C%2Ftd%3E%3C%2Ftr%3E%22%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20_table%20%3D%20f%22%22%22%0A%20%20%20%20%3Cdiv%20class%3D%22report-table-scroll%22%3E%3Ctable%20class%3D%22report-table%22%3E%0A%20%20%20%20%20%20%3Cthead%3E%3Ctr%3E%0A%20%20%20%20%20%20%20%20%3Cth%3Econdition%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Eend%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Ehold%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3E%E1%BE%B1%20%E2%86%93%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Em%3Csub%3Eop1%3C%2Fsub%3E%20%E2%86%91%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3E%CF%81%20%E2%86%91%3C%2Fth%3E%3Cth%20class%3D%22num%22%3ER%C2%B2%20%E2%86%91%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Eretention%20%E2%86%91%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%3EH2%3C%2Fth%3E%0A%20%20%20%20%20%20%3C%2Ftr%3E%3C%2Fthead%3E%0A%20%20%20%20%20%20%3Ctbody%3E%7B%22%22.join(_row(c)%20for%20c%20in%20ex.FACTORIAL_NAMES)%7D%3C%2Ftbody%3E%0A%20%20%20%20%3C%2Ftable%3E%3C%2Fdiv%3E%0A%20%20%20%20%22%22%22%0A%20%20%20%20_caption%20%3D%20f%22%22%22%0A%20%20%20%20The%20H2%20scoring%20table%2C%20one%20row%20per%20factorial%20condition.%20%3Cstrong%3EBold%3C%2Fstrong%3E%0A%20%20%20%20marks%20a%20value%20that%20passes%20its%20gate%3A%20%E1%BE%B1%20%E2%89%A4%20%7Bex.MEAN_ALIGN_GATE%3Ag%7D%2C%0A%20%20%20%20m%3Csub%3Eop1%3C%2Fsub%3E%20%E2%89%A5%20%7Bex.MARGIN_GATE%3Ag%7D%2C%20%CF%81%20%E2%89%A5%20%7Bex.GRADE_RHO_GATE%3Ag%7D%20or%20R%C2%B2%20%E2%89%A5%0A%20%20%20%20%7Bex.GRADE_R2_GATE%3Ag%7D%2C%20retention%20%E2%89%A5%20%7Bex.H4_RETENTION%3Ag%7D.%20%E1%BE%B1%20and%20m%3Csub%3Eop1%3C%2Fsub%3E%0A%20%20%20%20carry%20the%20seed%20standard%20deviation%3B%20grading%20is%20read%20off%20the%20seed-mean%0A%20%20%20%20response%2C%20and%20retention%20is%20the%20minimum%20across%20seeds.%20The%20last%20column%20names%0A%20%20%20%20every%20criterion%20a%20condition%20misses%2C%20or%20reports%20that%20it%20meets%20all%20four.%0A%20%20%20%20%3Ccode%3Eend50-hold03%3C%2Fcode%3E%20and%20%3Ccode%3Eend90-hold03%3C%2Fcode%3E%20are%20ex-2.1.7's%0A%20%20%20%20%3Ccode%3Espan-anti%3C%2Fcode%3E%20and%20%3Ccode%3Espan-anti-late%3C%2Fcode%3E.%0A%20%20%20%20%22%22%22%0A%20%20%20%20mo.Html(figure_html(_table%2C%20caption%3D_caption%2C%20class_%3D%22report-figure%22))%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(HOLD_HI%2C%20HOLD_LO%2C%20ROW%2C%20alpha_bar%2C%20grading%2C%20m_op1%2C%20retention)%3A%0A%20%20%20%20_best_r2%20%3D%20max(ex.FACTORIAL_NAMES%2C%20key%3Dlambda%20c%3A%20grading(c)%5B1%5D)%0A%20%20%20%20_best_rho%20%3D%20max(ex.FACTORIAL_NAMES%2C%20key%3Dlambda%20c%3A%20grading(c)%5B0%5D)%0A%20%20%20%20_contained%20%3D%20%5Bc%20for%20c%20in%20ex.FACTORIAL_NAMES%20if%20alpha_bar(c).mean()%20%3C%3D%20ex.MEAN_ALIGN_GATE%5D%0A%20%20%20%20_p%20%3D%20ex.PRIMARY%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20**H2%20fails%2C%20on%20grading.**%20The%20condition%20the%20preregistration%20named%2C%20%60%7B_p%7D%60%2C%20meets%20three%20of%20the%20four%20criteria%3A%20it%20contains%20the%20drift%20at%20%E1%BE%B1%20%3D%20%7Balpha_bar(_p).mean()%3A.3f%7D%20against%20a%20gate%20of%20%7Bex.MEAN_ALIGN_GATE%3Ag%7D%2C%20holds%20the%20margin%20at%20%7Bm_op1(_p).mean()%3A.3f%7D%20against%20%7Bex.MARGIN_GATE%3Ag%7D%2C%20and%20retains%20%7Bretention(_p)%3A.2f%7D%C3%97%20its%20peak%20against%20%7Bex.H4_RETENTION%3Ag%7D.%20But%20its%20response%20is%20graded%20at%20%CF%81%20%3D%20%7Bgrading(_p)%5B0%5D%3A.2f%7D%20and%20R%C2%B2%20%3D%20%7Bgrading(_p)%5B1%5D%3A.2f%7D%2C%20and%20the%20gate%20is%20%7Bex.GRADE_R2_GATE%3Ag%7D%20on%20either%20track.%0A%0A%20%20%20%20Every%20condition%20misses%20on%20grading.%20The%20best%20R%C2%B2%20in%20the%20grid%20is%20%7Bgrading(_best_r2)%5B1%5D%3A.2f%7D%20(%60%7B_best_r2%7D%60)%20and%20the%20best%20%CF%81%20is%20%7Bgrading(_best_rho)%5B0%5D%3A.2f%7D%20(%60%7B_best_rho%7D%60)%2C%20so%20no%20condition%20comes%20within%20%7Bex.GRADE_R2_GATE%20-%20grading(_best_r2)%5B1%5D%3A.2f%7D%20of%20passing.%20Neither%20named%20partial%20applies%2C%20since%20both%20assume%20grading%20holds%20and%20vary%20the%20containment%20or%20margin%20around%20it.%0A%0A%20%20%20%20The%20contrary%20result%20the%20preregistration%20named%20%E2%80%94%20containment%20bought%20by%20flattening%20the%20response%20%E2%80%94%20is%20not%20what%20happened.%20As%20the%20anneal%20is%20stretched%2C%20%E1%BE%B1%20falls%20and%20the%20margin%20rises%20together%3A%20%60%7BROW%5BHOLD_LO%5D%5B0%5D%7D%60%20sits%20at%20%E1%BE%B1%20%7Balpha_bar(ROW%5BHOLD_LO%5D%5B0%5D).mean()%3A.3f%7D%20with%20margin%20%7Bm_op1(ROW%5BHOLD_LO%5D%5B0%5D).mean()%3A.3f%7D%2C%20and%20%60%7BROW%5BHOLD_LO%5D%5B-1%5D%7D%60%20at%20%7Balpha_bar(ROW%5BHOLD_LO%5D%5B-1%5D).mean()%3A.3f%7D%20with%20%7Bm_op1(ROW%5BHOLD_LO%5D%5B-1%5D).mean()%3A.3f%7D.%20Grading%20rises%20with%20them%2C%20from%20%7Bgrading(ROW%5BHOLD_LO%5D%5B0%5D)%5B1%5D%3A.2f%7D%20to%20%7Bgrading(ROW%5BHOLD_LO%5D%5B-1%5D)%5B1%5D%3A.2f%7D.%20So%20stretching%20the%20anneal%20buys%20selectivity%2C%20and%20just%20stops%20short%20of%20the%20level%20H2%20asked%20for.%0A%0A%20%20%20%20Containment%20on%20its%20own%20is%20now%20reachable%2C%20which%20it%20was%20not%20in%20ex-2.1.7.%20One%20condition%20of%20the%20six%20falls%20to%20%E1%BE%B1%20%E2%89%A4%20%7Bex.MEAN_ALIGN_GATE%3Ag%7D%20(%7B%22%2C%20%22.join(f%22%60%7Bc%7D%60%22%20for%20c%20in%20_contained)%7D)%2C%20and%20a%20second%20comes%20within%20%7Bmin(alpha_bar(c).mean()%20for%20c%20in%20ROW%5BHOLD_HI%5D%20if%20c%20not%20in%20_contained)%20-%20ex.MEAN_ALIGN_GATE%3A.3f%7D%20of%20it.%20That%20experiment's%20best%20was%20%7Bex.EX217_REFERENCE%5B%22end90-hold03%22%5D%5B%22alpha%22%5D%3A.2f%7D%2C%20and%20its%20gate%20went%20unmet%20everywhere.%20Both%20of%20the%20near%20conditions%20are%20in%20the%20%60hold%7BHOLD_HI%20*%20100%3A02.0f%7D%60%20row.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20The%20endpoint%20table%20says%20where%20each%20run%20finished.%20The%20trajectories%20say%20how%20it%20got%20there%2C%20which%20separates%20the%20two%20accounts%20H3%20is%20built%20on.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(BY_NAME%2C%20HOLD_HI%2C%20HOLD_LO%2C%20ROW%2C%20traj)%3A%0A%20%20%20%20_KEYS%20%3D%20(%22alpha_op1%22%2C%20%22m_op1%22)%0A%20%20%20%20%23%20Seed%20means%20once%2C%20in%20the%20cell%3A%20%40themed%20calls%20the%20plot%20function%20twice.%0A%20%20%20%20_MEAN%20%3D%20%7Bc%3A%20%7Bk%3A%20np.mean(%5Btraj(c%2C%20s%2C%20k)%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%20for%20k%20in%20_KEYS%7D%20for%20c%20in%20ex.FACTORIAL_NAMES%7D%0A%20%20%20%20_MEAN%5B%22lam0%22%5D%20%3D%20%7Bk%3A%20np.mean(%5Btraj(%22lam0%22%2C%20s%2C%20k)%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%20for%20k%20in%20_KEYS%7D%0A%20%20%20%20_EPOCHS%20%3D%20np.mean(%5Btraj(ex.PRIMARY%2C%20s%2C%20%22epoch%22)%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%0A%20%20%20%20%23%20The%20schedules%20on%20a%20finer%20grid%20than%20the%20recorded%20trajectory%2C%20since%20the%0A%20%20%20%20%23%20anneal's%20shape%20is%20the%20thing%20the%20lower%20panels%20exist%20to%20show.%0A%20%20%20%20_SE%20%3D%20np.linspace(0.0%2C%20float(ex.SCHEDULER.epochs)%2C%20601)%0A%20%20%20%20_ANCHOR%20%3D%20ex.anchor_weight(_SE)%0A%20%20%20%20_ANTI%20%3D%20%7B%0A%20%20%20%20%20%20%20%20c%3A%20ex.anti_subspace_weight(%0A%20%20%20%20%20%20%20%20%20%20%20%20_SE%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20lam%3DBY_NAME%5Bc%5D%5B%22lam%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20anneal_end%3DBY_NAME%5Bc%5D%5B%22anti_anneal_end%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20hold_ratio%3DBY_NAME%5Bc%5D%5B%22anti_hold_ratio%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20peak_ratio%3DBY_NAME%5Bc%5D%5B%22anti_peak_ratio%22%5D%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20for%20c%20in%20ex.FACTORIAL_NAMES%0A%20%20%20%20%7D%0A%20%20%20%20%23%20Endpoint%20across%2C%20hold%20ratio%20down%2C%20as%20the%20design%20reads.%20Each%20cell%20gets%20a%0A%20%20%20%20%23%20trajectory%20panel%20with%20its%20own%20weight%20schedule%20directly%20beneath%2C%20and%20the%0A%20%20%20%20%23%20spacer%20row%20keeps%20the%20two%20hold-ratio%20blocks%20apart.%0A%20%20%20%20_GRID%20%3D%20%5B%0A%20%20%20%20%20%20%20%20ROW%5BHOLD_LO%5D%2C%0A%20%20%20%20%20%20%20%20%5Bf%22w-%7Bc%7D%22%20for%20c%20in%20ROW%5BHOLD_LO%5D%5D%2C%0A%20%20%20%20%20%20%20%20%5B%22.%22%2C%20%22.%22%2C%20%22.%22%5D%2C%0A%20%20%20%20%20%20%20%20ROW%5BHOLD_HI%5D%2C%0A%20%20%20%20%20%20%20%20%5Bf%22w-%7Bc%7D%22%20for%20c%20in%20ROW%5BHOLD_HI%5D%5D%2C%0A%20%20%20%20%5D%0A%20%20%20%20_PANELS%20%3D%20%5B*ROW%5BHOLD_LO%5D%2C%20*ROW%5BHOLD_HI%5D%5D%0A%20%20%20%20_LEFT%20%3D%20(ROW%5BHOLD_LO%5D%5B0%5D%2C%20ROW%5BHOLD_HI%5D%5B0%5D)%0A%0A%20%20%20%20%40themed(%0A%20%20%20%20%20%20%20%20name%3D%22trajectories%22%2C%0A%20%20%20%20%20%20%20%20alt_text%3D%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Six%20pairs%20of%20panels%20in%20a%20three-by-two%20grid%2C%20sharing%20the%20epoch%20axis%20from%200%20to%20100.%0A%20%20%20%20%20%20%20%20%20%20%20%20Columns%20are%20anneal%20endpoints%2050%2C%2070%20and%2090%3B%20the%20upper%20row%20of%20pairs%20is%20hold%0A%20%20%20%20%20%20%20%20%20%20%20%20ratio%200.03%20and%20the%20lower%20is%200.30.%20In%20each%20pair%20the%20upper%20panel%20plots%20mean%0A%20%20%20%20%20%20%20%20%20%20%20%20alignment%20as%20a%20solid%20line%20and%20margin%20as%20a%20dashed%20line%2C%20over%20a%20flat%20grey%0A%20%20%20%20%20%20%20%20%20%20%20%20control%20pair%20near%20zero%3B%20the%20shorter%20log-scale%20panel%20beneath%20plots%20that%0A%20%20%20%20%20%20%20%20%20%20%20%20condition's%20two%20weight%20schedules%2C%20anchor%20in%20red%20and%20repulsion%20in%20blue.%0A%20%20%20%20%20%20%20%20%20%20%20%20In%20the%20upper%20row%20of%20pairs%2C%20the%20solid%20line%20stays%20low%20while%20the%20blue%0A%20%20%20%20%20%20%20%20%20%20%20%20repulsion%20curve%20is%20above%20the%20red%20anchor%20curve%2C%20then%20climbs%20steeply%20once%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20blue%20curve%20drops%20below%20it%20%E2%80%94%20later%20in%20each%20successive%20column%2C%20and%20reaching%20a%0A%20%20%20%20%20%20%20%20%20%20%20%20lower%20final%20height.%20In%20the%20lower%20row%20the%20blue%20curve%20settles%20only%20a%20little%0A%20%20%20%20%20%20%20%20%20%20%20%20below%20the%20red%20one%20rather%20than%20far%20below%20it%2C%20and%20the%20solid%20line%20rises%0A%20%20%20%20%20%20%20%20%20%20%20%20gently%20in%20all%20three%20columns%20without%20ever%20climbing%20steeply.%20The%20dashed%0A%20%20%20%20%20%20%20%20%20%20%20%20margin%20line%20climbs%20early%20and%20stays%20up%20in%20every%20panel.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20%20%20%20%20caption%3Dr%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20**Training%20dynamics%20across%20the%20grid.**%20Columns%20are%20the%20anneal%0A%20%20%20%20%20%20%20%20%20%20%20%20endpoint%2C%20rows%20the%20hold%20ratio.%20Above%20each%20pair%3A%20seed%20means%20of%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20two%20cosines%20on%20the%20anchor%20axis%2C%20on%20one%20shared%20scale.%20Solid%20is%0A%20%20%20%20%20%20%20%20%20%20%20%20%24%5Cbar%5Calpha%24%2C%20the%20mean%20alignment%20over%20all%20216%20colors%20at%20op1%3B%20dashed%0A%20%20%20%20%20%20%20%20%20%20%20%20is%20the%20margin%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%3B%20the%20grey%20pair%20is%20the%20un-anchored%0A%20%20%20%20%20%20%20%20%20%20%20%20control.%20The%20caret%20on%20the%20left%20spine%20is%20the%20containment%20gate%2C%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20one%20on%20the%20right%20the%20margin%20floor%20that%20retention%20is%20scored%20from.%0A%20%20%20%20%20%20%20%20%20%20%20%20Below%20each%3A%20the%20weight%20schedule%20that%20condition%20trained%20under%2C%20anchor%0A%20%20%20%20%20%20%20%20%20%20%20%20%24%5Clambda_%5Cmathrm%7Ba%7D%24%20in%20red%20and%20repulsion%0A%20%20%20%20%20%20%20%20%20%20%20%20%24%5Clambda_%7B%5Cbar%7B%5Cmathrm%7Bs%7D%7D%7D%24%20in%20blue%2C%20on%20a%20log%20scale%20shared%20by%20all%0A%20%20%20%20%20%20%20%20%20%20%20%20six%20so%20schedules%20compare%20across%20the%20grid%20as%20well%20as%20down%20a%20pair.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20)%0A%20%20%20%20def%20_plot()%20-%3E%20plt.Figure%3A%0A%20%20%20%20%20%20%20%20fig%2C%20axd%20%3D%20plt.subplot_mosaic(%0A%20%20%20%20%20%20%20%20%20%20%20%20_GRID%2C%20figsize%3D(7.5%2C%206)%2C%20height_ratios%3D%5B3%2C%201.5%2C%200.45%2C%203%2C%201.5%5D%2C%20sharex%3DTrue%2C%0A%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20_grey%20%3D%20light_dark(%22%23999%22%2C%20%22%23777%22)%0A%20%20%20%20%20%20%20%20_gate%20%3D%20light_dark(%22%23555%22%2C%20%22%23bbb%22)%0A%20%20%20%20%20%20%20%20_term%20%3D%20%7B%22anchor%22%3A%20light_dark(%22%23c33%22%2C%20%22%23e66%22)%2C%20%22anti%22%3A%20light_dark(%22%2336c%22%2C%20%22%237af%22)%7D%0A%20%20%20%20%20%20%20%20%23%20Color%20keys%20the%20hold%20ratio%2C%20as%20in%20the%20schedules%20figure%20at%20the%20top%2C%20so%20a%0A%20%20%20%20%20%20%20%20%23%20row%20of%20this%20grid%20and%20a%20curve%20of%20that%20one%20read%20as%20the%20same%20condition.%0A%20%20%20%20%20%20%20%20_hold%20%3D%20%7BHOLD_LO%3A%20light_dark(%22%231f6fb4%22%2C%20%22%235fa8dd%22)%2C%20HOLD_HI%3A%20light_dark(%22%23b4531f%22%2C%20%22%23dd8f5f%22)%7D%0A%20%20%20%20%20%20%20%20_dash%20%3D%20(0%2C%20(6%2C%201))%0A%20%20%20%20%20%20%20%20%23%20One%20y-scale%20everywhere%2C%20so%20a%20line's%20height%20means%20the%20same%20in%20every%20panel.%0A%20%20%20%20%20%20%20%20top%20%3D%20max(max(np.max(_MEAN%5Bc%5D%5Bk%5D)%20for%20k%20in%20_KEYS)%20for%20c%20in%20ex.FACTORIAL_NAMES)%0A%20%20%20%20%20%20%20%20for%20cond%20in%20_PANELS%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20ax%2C%20ink%20%3D%20axd%5Bcond%5D%2C%20_hold%5BBY_NAME%5Bcond%5D%5B%22anti_hold_ratio%22%5D%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%23%20Carets%20on%20the%20spines%20rather%20than%20rules%20across%20the%20panel%3A%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20%23%20containment%20gate%20belongs%20to%20%E1%BE%B1%20and%20the%20floor%20to%20m%2C%20and%20putting%20them%0A%20%20%20%20%20%20%20%20%20%20%20%20%23%20on%20opposite%20spines%20tells%20them%20apart%20without%20a%20second%20color.%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(0%2C%20ex.MEAN_ALIGN_GATE%2C%20marker%3D9%2C%20ms%3D3%2C%20color%3D_gate%2C%20clip_on%3DFalse%2C%20zorder%3D6%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform%3Dax.get_yaxis_transform())%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(1%2C%20ex.H4_FLOOR%2C%20marker%3D8%2C%20ms%3D3%2C%20color%3D_gate%2C%20clip_on%3DFalse%2C%20zorder%3D6%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform%3Dax.get_yaxis_transform())%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(_EPOCHS%2C%20_MEAN%5B%22lam0%22%5D%5B%22alpha_op1%22%5D%2C%20color%3D_grey%2C%20lw%3D1.1%2C%20zorder%3D3)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(_EPOCHS%2C%20_MEAN%5B%22lam0%22%5D%5B%22m_op1%22%5D%2C%20color%3D_grey%2C%20lw%3D1.1%2C%20ls%3D_dash%2C%20zorder%3D3)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(_EPOCHS%2C%20_MEAN%5Bcond%5D%5B%22m_op1%22%5D%2C%20color%3Dink%2C%20lw%3D1.4%2C%20ls%3D_dash%2C%20zorder%3D4)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(_EPOCHS%2C%20_MEAN%5Bcond%5D%5B%22alpha_op1%22%5D%2C%20color%3Dink%2C%20lw%3D1.7%2C%20zorder%3D5)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_title(f%22end%20%7BBY_NAME%5Bcond%5D%5B'anti_anneal_end'%5D%3A.0f%7D%20%C2%B7%20hold%20%7BBY_NAME%5Bcond%5D%5B'anti_hold_ratio'%5D%3A.2f%7D%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20fontsize%3D9.5%2C%20color%3Dink)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_xlim(0%2C%20ex.SCHEDULER.epochs)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_ylim(-0.08%2C%20top%20*%201.08)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.tick_params(labelbottom%3DFalse%2C%20labelleft%3Dcond%20in%20_LEFT)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_ylabel(%22cosine%22%2C%20fontsize%3D%22x-small%22)%20if%20cond%20in%20_LEFT%20else%20None%0A%0A%20%20%20%20%20%20%20%20import%20matplotlib.patheffects%20as%20pe%0A%0A%20%20%20%20%20%20%20%20_halo%20%3D%20%5Bpe.withStroke(linewidth%3D2.5%2C%20foreground%3Dlight_dark(%22%23ffffff%22%2C%20%22%23000000%22))%5D%0A%20%20%20%20%20%20%20%20axd%5B_LEFT%5B0%5D%5D.annotate(%0A%20%20%20%20%20%20%20%20%20%20%20%20%22control%22%2C%20(58%2C%20_MEAN%5B%22lam0%22%5D%5B%22alpha_op1%22%5D%5B-1%5D)%2C%20fontsize%3D7.5%2C%20color%3D_grey%2C%20va%3D%22center%22%2C%20ha%3D%22center%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20path_effects%3D_halo%2C%0A%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%23%20Key%20the%20two%20line%20styles%20once%2C%20in%20neutral%20ink%3A%20within%20a%20panel%2C%20color%0A%20%20%20%20%20%20%20%20%23%20carries%20the%20hold%20ratio%20and%20nothing%20else.%0A%20%20%20%20%20%20%20%20fig.legend(%0A%20%20%20%20%20%20%20%20%20%20%20%20%5Bplt.Line2D(%5B%5D%2C%20%5B%5D%2C%20color%3D_grey%2C%20lw%3D1.7)%2C%20plt.Line2D(%5B%5D%2C%20%5B%5D%2C%20color%3D_grey%2C%20lw%3D1.5%2C%20ls%3D_dash)%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20rf%22%24%5Cbar%5Calpha%24%2C%20contained%20at%20the%20left%20caret%20(%7Bex.MEAN_ALIGN_GATE%3Ag%7D)%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20rf%22%24m_%7B%7B%5Ctext%7B%7Bop1%7D%7D%7D%7D%24%2C%20floored%20at%20the%20right%20caret%20(%7Bex.H4_FLOOR%3Ag%7D)%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20fontsize%3D8.5%2C%20frameon%3DFalse%2C%20ncols%3D2%2C%20loc%3D%22lower%20center%22%2C%20bbox_to_anchor%3D(0.5%2C%201.0)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20labelcolor%3D_grey%2C%20handlelength%3D2.4%2C%0A%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%0A%20%20%20%20%20%20%20%20for%20cond%20in%20_PANELS%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20ax%20%3D%20axd%5Bf%22w-%7Bcond%7D%22%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(_SE%2C%20_ANCHOR%2C%20color%3D_term%5B%22anchor%22%5D%2C%20lw%3D1.4)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(_SE%2C%20_ANTI%5Bcond%5D%2C%20color%3D_term%5B%22anti%22%5D%2C%20lw%3D1.4)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_yscale(%22log%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_xlim(0%2C%20ex.SCHEDULER.epochs)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_ylim(2e-4%2C%204)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_yticks(%5B1e-3%2C%201e-2%2C%201e-1%2C%201e0%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.minorticks_off()%20%20%23%20a%20decade%20of%20unlabelled%20minor%20ticks%20is%20a%20smear%20at%20this%20height%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.tick_params(labelbottom%3DTrue%2C%20labelleft%3Dcond%20in%20_LEFT%2C%20labelsize%3D7.5)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_ylabel(%22weight%22%2C%20fontsize%3D%22x-small%22)%20if%20cond%20in%20_LEFT%20else%20None%0A%20%20%20%20%20%20%20%20for%20_c%20in%20_GRID%5B-1%5D%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20axd%5B_c%5D.set_xlabel(%22epoch%22%2C%20fontsize%3D%22x-small%22)%0A%20%20%20%20%20%20%20%20%23%20Name%20the%20two%20terms%20once%2C%20on%20the%20panel%20where%20they%20are%20furthest%20apart.%0A%20%20%20%20%20%20%20%20for%20_x%2C%20_y%2C%20_txt%2C%20_k%20in%20((64%2C%200.13%2C%20r%22%24%5Clambda_%5Cmathrm%7Ba%7D%24%22%2C%20%22anchor%22)%2C%20(30%2C%200.5%2C%20r%22%24%5Clambda_%7B%5Cbar%7B%5Cmathrm%7Bs%7D%7D%7D%24%22%2C%20%22anti%22))%3A%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%20%20%20%20axd%5Bf%22w-%7BROW%5BHOLD_LO%5D%5B0%5D%7D%22%5D.annotate(_txt%2C%20(_x%2C%20_y)%2C%20fontsize%3D9%2C%20color%3D_term%5B_k%5D%2C%20va%3D%22bottom%22)%0A%20%20%20%20%20%20%20%20return%20fig%0A%0A%20%20%20%20mo.Html(_plot())%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(BY_NAME%2C%20HOLD_HI%2C%20HOLD_LO%2C%20ROW%2C%20alpha_bar%2C%20traj)%3A%0A%20%20%20%20%23%20Two%20epochs%20per%20condition%2C%20both%20read%20the%20same%20way%20across%20the%20grid.%20The%0A%20%20%20%20%23%20crossing%20comes%20from%20the%20schedule%20functions%20and%20the%20departure%20from%20the%0A%20%20%20%20%23%20recorded%20trajectory%2C%20so%20neither%20is%20fitted.%0A%20%20%20%20_E%20%3D%20np.linspace(0.0%2C%20float(ex.SCHEDULER.epochs)%2C%204001)%0A%20%20%20%20_A%20%3D%20ex.anchor_weight(_E)%0A%0A%20%20%20%20def%20_crossing(cond%3A%20str)%20-%3E%20float%3A%0A%20%20%20%20%20%20%20%20%22%22%22First%20epoch%20at%20which%20the%20repulsion%20falls%20below%20the%20pull.%22%22%22%0A%20%20%20%20%20%20%20%20c%20%3D%20BY_NAME%5Bcond%5D%0A%20%20%20%20%20%20%20%20mu%20%3D%20ex.anti_subspace_weight(%0A%20%20%20%20%20%20%20%20%20%20%20%20_E%2C%20lam%3Dc%5B%22lam%22%5D%2C%20anneal_end%3Dc%5B%22anti_anneal_end%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20hold_ratio%3Dc%5B%22anti_hold_ratio%22%5D%2C%20peak_ratio%3Dc%5B%22anti_peak_ratio%22%5D%2C%0A%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20return%20float(_E%5Bmu%20%3C%20_A%5D%5B0%5D)%0A%0A%20%20%20%20_ep%20%3D%20np.mean(%5Btraj(%22lam0%22%2C%20s%2C%20%22epoch%22)%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%0A%20%20%20%20_ctl%20%3D%20np.mean(%5Btraj(%22lam0%22%2C%20s%2C%20%22alpha_op1%22)%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%0A%0A%20%20%20%20def%20_departure(cond%3A%20str)%20-%3E%20float%3A%0A%20%20%20%20%20%20%20%20%22%22%22Last%20epoch%20at%20which%20%E1%BE%B1%20is%20still%20within%200.05%20of%20the%20control%20%E2%80%94%20where%20it%20leaves%20for%20good.%22%22%22%0A%20%20%20%20%20%20%20%20a%20%3D%20np.mean(%5Btraj(cond%2C%20s%2C%20%22alpha_op1%22)%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%0A%20%20%20%20%20%20%20%20near%20%3D%20np.flatnonzero(a%20%3C%3D%20_ctl%20%2B%200.05)%0A%20%20%20%20%20%20%20%20return%20float(_ep%5Bnear%5B-1%5D%5D)%20if%20len(near)%20else%20float(%22nan%22)%0A%0A%20%20%20%20_rows%20%3D%20%22%22.join(%0A%20%20%20%20%20%20%20%20f%22%3Ctr%3E%3Cth%3E%3Ccode%3E%7Bc%7D%3C%2Fcode%3E%3C%2Fth%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_crossing(c)%3A.0f%7D%3C%2Ftd%3E%3Ctd%20class%3D'num'%3E%7B_departure(c)%3A.0f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_departure(c)%20-%20_crossing(c)%3A%2B.0f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Bex.SCHEDULER.epochs%20-%20_departure(c)%3A.0f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Balpha_bar(c).mean()%3A.3f%7D%3C%2Ftd%3E%3C%2Ftr%3E%22%0A%20%20%20%20%20%20%20%20for%20c%20in%20(*ROW%5BHOLD_LO%5D%2C%20*ROW%5BHOLD_HI%5D)%0A%20%20%20%20)%0A%20%20%20%20_table%20%3D%20f%22%22%22%0A%20%20%20%20%3Cdiv%20class%3D%22report-table-scroll%22%3E%3Ctable%20class%3D%22report-table%22%3E%0A%20%20%20%20%20%20%3Cthead%3E%3Ctr%3E%0A%20%20%20%20%20%20%20%20%3Cth%3Econdition%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Ecrossing%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Edeparture%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3Elag%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Erunway%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Efinal%20%E1%BE%B1%3C%2Fth%3E%0A%20%20%20%20%20%20%3C%2Ftr%3E%3C%2Fthead%3E%0A%20%20%20%20%20%20%3Ctbody%3E%7B_rows%7D%3C%2Ftbody%3E%0A%20%20%20%20%3C%2Ftable%3E%3C%2Fdiv%3E%0A%20%20%20%20%22%22%22%0A%20%20%20%20_caption%20%3D%20%22%22%22%0A%20%20%20%20Two%20epochs%20read%20off%20each%20condition.%20Crossing%20is%20the%20first%20epoch%20at%20which%20the%0A%20%20%20%20repulsion%20falls%20below%20the%20pull%2C%20computed%20from%20the%20schedules.%20Departure%20is%0A%20%20%20%20the%20last%20epoch%20at%20which%20%E1%BE%B1%20is%20still%20within%200.05%20of%20the%20control%2C%20read%20off%20the%0A%20%20%20%20recorded%20trajectory.%20Runway%20is%20the%20training%20left%20after%20departure.%0A%20%20%20%20%22%22%22%0A%20%20%20%20mo.Html(figure_html(_table%2C%20caption%3D_caption%2C%20class_%3D%22report-figure%22))%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(HOLD_HI%2C%20HOLD_LO%2C%20ROW%2C%20alpha_bar)%3A%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20Every%20condition%20departs%2C%20including%20the%20three%20at%20the%20sustained%20floor.%20So%20the%20strong%20form%20of%20the%20level%20account%20%E2%80%94%20a%20floor%20high%20enough%20that%20the%20crossing%20never%20happens%20%E2%80%94%20is%20not%20what%20the%20trajectories%20show.%20All%20six%20cross%2C%20and%20all%20six%20climb%20afterwards.%0A%0A%20%20%20%20What%20the%20floor%20does%20is%20move%20the%20crossing%20later%20and%20flatten%20what%20follows.%20Departure%20tracks%20the%20crossing%20in%20every%20condition%2C%20and%20raising%20the%20hold%20ratio%20pushes%20both%20later%2C%20the%20departure%20by%20more%20than%20the%20crossing.%20That%20is%20the%20delay.%20The%20flattening%20shows%20up%20when%20the%20departure%20epoch%20is%20held%20roughly%20fixed%20and%20the%20row%20changes%3A%20%60%7BROW%5BHOLD_HI%5D%5B1%5D%7D%60%20and%20%60%7BROW%5BHOLD_LO%5D%5B2%5D%7D%60%20leave%20the%20control%20within%20two%20epochs%20of%20each%20other%2C%20and%20finish%20at%20%E1%BE%B1%20%3D%20%7Balpha_bar(ROW%5BHOLD_HI%5D%5B1%5D).mean()%3A.3f%7D%20against%20%7Balpha_bar(ROW%5BHOLD_LO%5D%5B2%5D).mean()%3A.3f%7D.%20Same%20runway%2C%20different%20climb%20rate.%0A%0A%20%20%20%20Both%20effects%20run%20the%20same%20way%2C%20which%20is%20why%20the%20endpoint%20and%20the%20floor%20look%20interchangeable%20in%20the%20endpoint%20table%20and%20are%20not.%20The%20margin%2C%20dashed%20in%20every%20panel%2C%20climbs%20early%20while%20the%20repulsion%20is%20strong%20and%20then%20holds%20across%20the%20whole%20anneal%3B%20nothing%20in%20the%20grid%20costs%20it.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Attribution%20(H3)%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(ALPHA_SPREAD%2C%20CONTROL_SPREAD%2C%20EFFECT_GATE%2C%20GATE_SCALE%2C%20INTERACTION_GATE)%3A%0A%20%20%20%20_moved%20%3D%20GATE_SCALE%20%3E%201.0%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20H3%20has%20a%20footnote%20that%20asks%20for%20the%20seed%20spread%20before%20either%20statistic%20is%20used%2C%20and%20allows%20the%20gates%20to%20move%20with%20it.%20Pooled%20over%20the%20six%20factorial%20conditions%2C%20the%20seed%20spread%20of%20%E1%BE%B1%20is%20%7BALPHA_SPREAD%3A.4f%7D%2C%20against%20the%20ex-2.1.6%20control%20value%20of%20%7BCONTROL_SPREAD%3Ag%7D%20the%20gates%20were%20sized%20on.%20The%20anchored%20conditions%20do%20not%20hold%20it%2C%20so%20the%20gates%20move%20by%20%7BGATE_SCALE%3A.2f%7D%C3%97%3A%20the%20main%20effect%20is%20scored%20at%20%7BEFFECT_GATE%3A.3f%7D%20and%20the%20interaction%20at%20%7BINTERACTION_GATE%3A.3f%7D.%20Those%20are%20the%20numbers%20used%20below%7B%22%22%20if%20_moved%20else%20%22%20(unmoved)%22%7D.%0A%0A%20%20%20%20One%20condition%20accounts%20for%20most%20of%20that%20spread.%20The%20rest%20sit%20between%200.006%20and%200.027%2C%20so%20the%20rescaling%20is%20driven%20by%20a%20single%20condition%20rather%20than%20by%20the%20grid%20being%20noisy%20throughout.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(HOLD_HI%2C%20HOLD_LO%2C%20ROW%2C%20alpha_bar%2C%20m_op1)%3A%0A%20%20%20%20def%20_cells(fn%2C%20fmt%3A%20str%20%3D%20%22%7B%3A.3f%7D%22)%20-%3E%20str%3A%0A%20%20%20%20%20%20%20%20return%20%22%22.join(%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%3Ctr%3E%3Cth%3Ehold%20%7Bh%3A.2f%7D%3C%2Fth%3E%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%2B%20%22%22.join(f%22%3Ctd%20class%3D'num'%3E%7Bfmt.format(fn(c))%7D%3C%2Ftd%3E%22%20for%20c%20in%20ROW%5Bh%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20%2B%20f%22%3Ctd%20class%3D'num'%3E%7Bfmt.format(np.mean(%5Bfn(c)%20for%20c%20in%20ROW%5Bh%5D%5D))%7D%3C%2Ftd%3E%3C%2Ftr%3E%22%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20h%20in%20(HOLD_LO%2C%20HOLD_HI)%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20_head%20%3D%20%22%22.join(f%22%3Cth%20class%3D'num'%3Eend%20%7Be%3A.0f%7D%3C%2Fth%3E%22%20for%20e%20in%20ex.ANTI_ANNEAL_ENDS)%0A%20%20%20%20_table%20%3D%20f%22%22%22%0A%20%20%20%20%3Cdiv%20class%3D%22report-table-scroll%22%3E%3Ctable%20class%3D%22report-table%22%3E%0A%20%20%20%20%20%20%3Cthead%3E%3Ctr%3E%3Cth%3E%E1%BE%B1%20%E2%86%93%3C%2Fth%3E%7B_head%7D%3Cth%20class%3D%22num%22%3Erow%20mean%3C%2Fth%3E%3C%2Ftr%3E%3C%2Fthead%3E%0A%20%20%20%20%20%20%3Ctbody%3E%7B_cells(lambda%20c%3A%20float(alpha_bar(c).mean()))%7D%3C%2Ftbody%3E%0A%20%20%20%20%20%20%3Cthead%3E%3Ctr%3E%3Cth%3Em%3Csub%3Eop1%3C%2Fsub%3E%20%E2%86%91%3C%2Fth%3E%7B_head%7D%3Cth%20class%3D%22num%22%3Erow%20mean%3C%2Fth%3E%3C%2Ftr%3E%3C%2Fthead%3E%0A%20%20%20%20%20%20%3Ctbody%3E%7B_cells(lambda%20c%3A%20float(m_op1(c).mean()))%7D%3C%2Ftbody%3E%0A%20%20%20%20%3C%2Ftable%3E%3C%2Fdiv%3E%0A%20%20%20%20%22%22%22%0A%20%20%20%20_caption%20%3D%20%22%22%22%0A%20%20%20%20The%20factorial%2C%20as%20condition%20means%20on%20both%20statistics.%20Above%3A%20%E1%BE%B1%2C%20which%20H3%20is%0A%20%20%20%20scored%20on.%20Below%3A%20the%20margin%2C%20repeated%20because%20a%20factor%20that%20contains%20the%0A%20%20%20%20drift%20while%20losing%20the%20margin%20does%20not%20give%20an%20operating%20point.%0A%20%20%20%20%22%22%22%0A%20%20%20%20mo.Html(figure_html(_table%2C%20caption%3D_caption%2C%20class_%3D%22report-figure%22))%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(%0A%20%20%20%20EFFECT_GATE%2C%0A%20%20%20%20END_HI%2C%0A%20%20%20%20END_LO%2C%0A%20%20%20%20HOLD_EFFECT%2C%0A%20%20%20%20HOLD_HI%2C%0A%20%20%20%20HOLD_LO%2C%0A%20%20%20%20INTERACTION%2C%0A%20%20%20%20INTERACTION_GATE%2C%0A%20%20%20%20end_effect%2C%0A)%3A%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20**H3%20holds%2C%20on%20both%20conditions.**%20The%20hold-ratio%20main%20effect%20is%20%7BHOLD_EFFECT%3A%2B.3f%7D%20against%20a%20gate%20of%20%7BEFFECT_GATE%3A.3f%7D%2C%20so%20the%20floor%20does%20something.%20The%20interaction%20is%20%7BINTERACTION%3A%2B.3f%7D%20against%20%7BINTERACTION_GATE%3A.3f%7D%3A%20the%20end%7BEND_LO%3A.0f%7D%20%E2%88%92%20end%7BEND_HI%3A.0f%7D%20difference%20is%20%7Bend_effect(HOLD_LO)%3A%2B.3f%7D%20in%20the%20%60hold%7BHOLD_LO%20*%20100%3A02.0f%7D%60%20row%20and%20%7Bend_effect(HOLD_HI)%3A%2B.3f%7D%20in%20the%20%60hold%7BHOLD_HI%20*%20100%3A02.0f%7D%60%20row%2C%20so%20the%20endpoint%20has%20about%20%7Bend_effect(HOLD_LO)%20%2F%20end_effect(HOLD_HI)%3A.1f%7D%20times%20as%20much%20leverage%20at%20the%20low%20floor%20as%20at%20the%20high%20one.%0A%0A%20%20%20%20Neither%20named%20miss%20occurred.%20Miss%201%20needed%20the%20endpoint%20effect%20to%20clear%20%7BEFFECT_GATE%3A.3f%7D%20in%20both%20rows%20with%20the%20interaction%20under%20its%20gate%3B%20the%20interaction%20is%20over%20it.%20Miss%202%20needed%20the%20main%20effect%20to%20fail%2C%20and%20it%20passes%20by%20a%20factor%20of%20%7BHOLD_EFFECT%20%2F%20EFFECT_GATE%3A.1f%7D.%0A%0A%20%20%20%20However%2C%20the%20interaction%20only%20clears%20its%20gate%20by%20%7BINTERACTION%20-%20INTERACTION_GATE%3A.3f%7D%2C%20about%20%7B(INTERACTION%20-%20INTERACTION_GATE)%20%2F%20INTERACTION_GATE%20*%20100%3A.0f%7D%25%20%E2%80%94%20on%20a%20gate%20that%20moved%20because%20of%20this%20experiment's%20own%20seed%20spread.%20And%20the%20level%20account%20predicted%20about%20%2B0.20%2C%20with%20the%20whole%20endpoint%20effect%20inside%20the%20low%20row%3B%20the%20observed%20%7BINTERACTION%3A%2B.3f%7D%20is%20below%20that%2C%20because%20the%20endpoint%20still%20moves%20%E1%BE%B1%20by%20%7Bend_effect(HOLD_HI)%3A%2B.3f%7D%20in%20the%20high%20row%2C%20where%20that%20account%20expects%20nothing.%0A%0A%20%20%20%20So%20the%20endpoint%20keeps%20some%20leverage%20even%20at%20the%20sustained%20floor.%20The%20trajectories%20show%20that%20the%20floor%20postpones%20the%20crossing%20and%20slows%20the%20climb%20after%20it%2C%20but%20it%20still%20crosses.%20The%20statistic%20H3%20was%20built%20on%20separates%20the%20accounts%20in%20the%20direction%20it%20was%20meant%20to%2C%20and%20the%20mechanism%20behind%20it%20is%20milder%20than%20the%20account%20it%20favors.%0A%0A%20%20%20%20We%20also%20said%20we%20would%20report%20the%20ordering%20of%20the%20main%20effects%20without%20scoring%20it.%20The%20hold-ratio%20effect%20(%7BHOLD_EFFECT%3A%2B.3f%7D)%20is%20larger%20than%20the%20endpoint%20effect%20averaged%20over%20the%20two%20rows%20(%7B(end_effect(HOLD_LO)%20%2B%20end_effect(HOLD_HI))%20%2F%202%3A%2B.3f%7D)%2C%20which%20agrees%20with%20the%20interaction.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20The%20dose%20arm%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(BY_NAME%2C%20alpha_bar%2C%20grading%2C%20m_op1%2C%20retention)%3A%0A%20%20%20%20_ORDER%20%3D%20%5Bex.DOSE_ARM_REFERENCE%2C%20%22end90-hold03%22%2C%20ex.DOSE_ARM%5D%0A%20%20%20%20_ref_dose%20%3D%20ex.anti_dose(BY_NAME%5Bex.DOSE_ARM_REFERENCE%5D)%0A%20%20%20%20_rows%20%3D%20%22%22.join(%0A%20%20%20%20%20%20%20%20f%22%3Ctr%3E%3Cth%3E%3Ccode%3E%7Bc%7D%3C%2Fcode%3E%3C%2Fth%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7BBY_NAME%5Bc%5D%5B'anti_anneal_end'%5D%3A.0f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7BBY_NAME%5Bc%5D%5B'anti_peak_ratio'%5D%3A.3f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Bex.anti_dose(BY_NAME%5Bc%5D)%20%2F%20_ref_dose%3A.2f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Balpha_bar(c).mean()%3A.3f%7D%22%0A%20%20%20%20%20%20%20%20f%22%20%3Cspan%20class%3D'range'%3E%C2%B1%7Balpha_bar(c).std(ddof%3D1)%3A.3f%7D%3C%2Fspan%3E%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Bm_op1(c).mean()%3A.3f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Bgrading(c)%5B1%5D%3A.2f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Bretention(c)%3A.2f%7D%3C%2Ftd%3E%3C%2Ftr%3E%22%0A%20%20%20%20%20%20%20%20for%20c%20in%20_ORDER%0A%20%20%20%20)%0A%20%20%20%20_table%20%3D%20f%22%22%22%0A%20%20%20%20%3Cdiv%20class%3D%22report-table-scroll%22%3E%3Ctable%20class%3D%22report-table%22%3E%0A%20%20%20%20%20%20%3Cthead%3E%3Ctr%3E%0A%20%20%20%20%20%20%20%20%3Cth%3Econdition%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Eend%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Epeak%20ratio%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3Edose%3C%2Fth%3E%3Cth%20class%3D%22num%22%3E%E1%BE%B1%20%E2%86%93%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Em%3Csub%3Eop1%3C%2Fsub%3E%20%E2%86%91%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3ER%C2%B2%20%E2%86%91%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Eretention%20%E2%86%91%3C%2Fth%3E%0A%20%20%20%20%20%20%3C%2Ftr%3E%3C%2Fthead%3E%0A%20%20%20%20%20%20%3Ctbody%3E%7B_rows%7D%3C%2Ftbody%3E%0A%20%20%20%20%3C%2Ftable%3E%3C%2Fdiv%3E%0A%20%20%20%20%22%22%22%0A%20%20%20%20_caption%20%3D%20f%22%22%22%0A%20%20%20%20The%20dose%20arm%20against%20the%20two%20conditions%20it%20is%20built%20from.%20Dose%20is%20relative%20to%0A%20%20%20%20%3Ccode%3E%7Bex.DOSE_ARM_REFERENCE%7D%3C%2Fcode%3E%2C%20as%20in%20the%20Method%20table.%20The%20arm%20has%0A%20%20%20%20that%20condition's%20dose%20and%20the%20%3Ccode%3Eend90-hold03%3C%2Fcode%3E%20timing%2C%20so%20its%20position%0A%20%20%20%20between%20them%20is%20the%20comparison.%0A%20%20%20%20%22%22%22%0A%20%20%20%20mo.Html(figure_html(_table%2C%20caption%3D_caption%2C%20class_%3D%22report-figure%22))%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(alpha_bar)%3A%0A%20%20%20%20_ref%2C%20_late%2C%20_arm%20%3D%20(float(alpha_bar(c).mean())%20for%20c%20in%20(ex.DOSE_ARM_REFERENCE%2C%20%22end90-hold03%22%2C%20ex.DOSE_ARM))%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20The%20arm%20lands%20at%20%E1%BE%B1%20%3D%20%7B_arm%3A.3f%7D%2C%20between%20%60%7Bex.DOSE_ARM_REFERENCE%7D%60%20(%7B_ref%3A.3f%7D)%20and%20%60end90-hold03%60%20(%7B_late%3A.3f%7D)%2C%20and%20about%20%7B(_ref%20-%20_arm)%20%2F%20(_ref%20-%20_late)%20*%20100%3A.0f%7D%25%20of%20the%20way%20across.%20So%20most%20of%20what%20the%20endpoint%20buys%20is%20timing%2C%20and%20some%20of%20it%20is%20dose.%0A%0A%20%20%20%20That%20should%20be%20taken%20loosely%3A%20this%20is%20one%20condition%20on%20three%20seeds%2C%20it%20scores%20nothing%2C%20and%20scaling%20the%20opening%20ratio%20to%20%7Bex.DOSE_MATCHED_PEAK_RATIO%3Ag%7D%20weakens%20the%20repulsion%20through%20the%20epochs%20where%20the%20anchor%20first%20ramps%20in%2C%20which%20the%20Method%20section%20named%20as%20a%20confound%20of%20its%20own.%20The%20reading%20it%20does%20support%20is%20that%20the%20endpoint%20effect%20is%20not%20*merely*%20a%20dose%20effect%2C%20because%20holding%20the%20dose%20fixed%20leaves%20most%20of%20the%20gap%20intact.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Secondary%20measurements%0A%0A%20%20%20%20Carried%20from%20ex-2.1.7%20without%20a%20gate.%20Two%20probes%20read%20redness%20from%20complementary%20parts%20of%20the%20residual%20stream%20at%20op1%3A%20one%20from%20the%20anchor%20coordinate%20alone%2C%20and%20one%20from%20the%20other%2063%20directions.%20The%20first%20starts%20empty%20and%20measures%20how%20much%20redness%20anchoring%20put%20there.%20The%20second%20has%20an%20RGB%20floor%20it%20cannot%20go%20far%20below%2C%20since%20redness%20is%20a%20function%20of%20color%20and%20the%20task%20needs%20the%20color%20cube%2C%20so%20it%20reports%20whether%20the%20cube%20survived%20rather%20than%20whether%20the%20concept%20moved.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(CONDS%3A%20list%5Bstr%5D%2C%20cells%2C%20geometry)%3A%0A%20%20%20%20_axis%20%3D%20%7Bc%3A%20float(np.mean(%5Bcells%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22axis_r2%22%5D%20for%20s%20in%20ex.SEEDS%5D))%20for%20c%20in%20CONDS%7D%0A%20%20%20%20_leak%20%3D%20%7Bc%3A%20np.mean(%5Bcells%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22leak_r2%22%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%20for%20c%20in%20CONDS%7D%0A%20%20%20%20_spread%20%3D%20%7Bc%3A%20np.mean(%5Bgeometry%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22spread%22%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%20for%20c%20in%20CONDS%7D%0A%20%20%20%20_floor%20%3D%20ex.redness_rgb_floor()%0A%20%20%20%20_rows%20%3D%20%22%22.join(%0A%20%20%20%20%20%20%20%20f%22%3Ctr%3E%3Cth%3E%3Ccode%3E%7Bc%7D%3C%2Fcode%3E%3C%2Fth%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_axis%5Bc%5D%3A.3f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_leak%5Bc%5D%5B0%5D%3A.3f%7D%3C%2Ftd%3E%3Ctd%20class%3D'num'%3E%7B_leak%5Bc%5D%5B-1%5D%3A.3f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_leak%5Bc%5D%5B-1%5D%20-%20_floor%3A%2B.3f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_spread%5Bc%5D%5B-1%5D%3A.3f%7D%3C%2Ftd%3E%3C%2Ftr%3E%22%0A%20%20%20%20%20%20%20%20for%20c%20in%20CONDS%0A%20%20%20%20)%0A%20%20%20%20_table%20%3D%20f%22%22%22%0A%20%20%20%20%3Cdiv%20class%3D%22report-table-scroll%22%3E%3Ctable%20class%3D%22report-table%22%3E%0A%20%20%20%20%20%20%3Cthead%3E%3Ctr%3E%0A%20%20%20%20%20%20%20%20%3Cth%3Econdition%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Eon-axis%20R%C2%B2%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3Eoff-axis%2C%20embed%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Eoff-axis%2C%20last%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3Evs%20floor%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Ecube%20spread%3C%2Fth%3E%0A%20%20%20%20%20%20%3C%2Ftr%3E%3C%2Fthead%3E%0A%20%20%20%20%20%20%3Ctbody%3E%7B_rows%7D%3C%2Ftbody%3E%0A%20%20%20%20%3C%2Ftable%3E%3C%2Fdiv%3E%0A%20%20%20%20%22%22%22%0A%20%20%20%20_caption%20%3D%20f%22%22%22%0A%20%20%20%20Where%20redness%20is%20readable%20at%20op1%2C%20and%20what%20the%20color%20cloud%20looks%20like%20there.%0A%20%20%20%20On-axis%20R%C2%B2%20is%20redness%20read%20from%20the%20anchor%20coordinate%20alone%2C%20averaged%20over%0A%20%20%20%20layers.%20The%20two%20off-axis%20columns%20are%20the%20ridge%20probe%20on%20the%20other%2063%0A%20%20%20%20directions%2C%20at%20the%20token%20embedding%20and%20at%20the%20last%20layer%2C%20and%20the%20next%0A%20%20%20%20column%20is%20the%20last-layer%20value%20against%20the%20RGB%20floor%20of%20%7B_floor%3A.3f%7D.%20Cube%0A%20%20%20%20spread%20is%20the%20mean%20squared%20distance%20of%20the%20216%20op1%20states%20from%20their%0A%20%20%20%20centroid%20at%20the%20last%20layer%3A%20how%20much%20extent%20the%20cloud%20keeps.%20All%20are%20seed%0A%20%20%20%20means%2C%20and%20none%20is%20scored.%0A%20%20%20%20%22%22%22%0A%20%20%20%20mo.Html(figure_html(_table%2C%20caption%3D_caption%2C%20class_%3D%22report-figure%22))%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(ANCHORED%2C%20CONDS%3A%20list%5Bstr%5D%2C%20cells%2C%20geometry)%3A%0A%20%20%20%20_axis%20%3D%20%7Bc%3A%20float(np.mean(%5Bcells%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22axis_r2%22%5D%20for%20s%20in%20ex.SEEDS%5D))%20for%20c%20in%20CONDS%7D%0A%20%20%20%20_leak%20%3D%20%7Bc%3A%20np.mean(%5Bcells%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22leak_r2%22%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%20for%20c%20in%20CONDS%7D%0A%20%20%20%20_spread%20%3D%20%7Bc%3A%20np.mean(%5Bgeometry%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22spread%22%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%20for%20c%20in%20CONDS%7D%0A%20%20%20%20_floor%20%3D%20ex.redness_rgb_floor()%0A%20%20%20%20_hi%20%3D%20max(ANCHORED%2C%20key%3Dlambda%20c%3A%20_axis%5Bc%5D)%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20The%20anchor%20coordinate%20carries%20redness%20in%20every%20anchored%20condition%2C%20from%20R%C2%B2%20%3D%20%7Bmin(_axis%5Bc%5D%20for%20c%20in%20ANCHORED)%3A.2f%7D%20to%20%7B_axis%5B_hi%5D%3A.2f%7D%20(%60%7B_hi%7D%60)%2C%20against%20%7B_axis%5B%22lam0%22%5D%3A.2f%7D%20in%20the%20control.%20The%20spread%20across%20the%20grid%20is%20narrow%2C%20and%20it%20does%20not%20order%20the%20conditions%20the%20way%20%E1%BE%B1%20does%2C%20so%20this%20is%20not%20a%20second%20containment%20measurement.%0A%0A%20%20%20%20Off%20the%20axis%2C%20every%20condition%20sits%20within%20%7Bmax(abs(v%5B-1%5D%20-%20_floor)%20for%20v%20in%20_leak.values())%3A.2f%7D%20of%20the%20RGB%20floor%20at%20the%20last%20layer%2C%20and%20the%20anchored%20conditions%20all%20sit%20slightly%20above%20it%20(%7Bmin(_leak%5Bc%5D%5B-1%5D%20for%20c%20in%20ANCHORED)%3A.2f%7D%E2%80%93%7Bmax(_leak%5Bc%5D%5B-1%5D%20for%20c%20in%20ANCHORED)%3A.2f%7D)%20where%20the%20control%20sits%20just%20below%20(%7B_leak%5B%22lam0%22%5D%5B-1%5D%3A.2f%7D).%20Above%20the%20floor%20is%20reachable%20because%20the%20residual%20stream%20encodes%20color%20nonlinearly%20and%20redness%20is%20quadratic%20in%20RGB%2C%20so%20a%20linear%20probe%20does%20better%20there%20than%20on%20raw%20channels.%20Nothing%20here%20reads%20as%20a%20second%20copy%20of%20the%20concept%20living%20off%20the%20axis%2C%20and%20nothing%20reads%20as%20the%20cube%20being%20lost%3A%20spread%20at%20the%20last%20layer%20runs%20%7Bmin(_spread%5Bc%5D%5B-1%5D%20for%20c%20in%20CONDS)%3A.3f%7D%E2%80%93%7Bmax(_spread%5Bc%5D%5B-1%5D%20for%20c%20in%20CONDS)%3A.3f%7D%2C%20with%20the%20control%20at%20%7B_spread%5B%22lam0%22%5D%5B-1%5D%3A.3f%7D%20in%20the%20middle%20of%20that%20range.%0A%0A%20%20%20%20This%20is%20the%20point%20ex-2.1.7%20made%20and%20this%20grid%20does%20not%20change%3A%20containment%20is%20not%20exclusivity.%20Holding%20%E1%BE%B1%20near%20the%20control%20keeps%20the%20cube%20off%20the%20anchor%20direction%3B%20it%20does%20not%20stop%20redness%20being%20readable%20from%20everywhere%20else%2C%20because%20the%20task%20needs%20the%20color%20cube%20either%20way.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20r%22%22%22%0A%20%20%20%20%23%23%20Exploratory%20analyses%0A%0A%20%20%20%20Post%20hoc%2C%20and%20scoring%20nothing.%20H2%20failed%20on%20grading%20in%20every%20condition%2C%20so%20the%0A%20%20%20%20question%20is%20what%20the%20response%20actually%20looks%20like.%0A%0A%20%20%20%20%23%23%23%20The%20grading%20metrics%20disagree%0A%0A%20%20%20%20The%20grading%20metrics%20are%20meant%20to%20rule%20out%20a%20*step*%2C%20in%20which%20very%20*red*%20colors%20would%20be%20aligned%20but%20everything%20else%20orthogonal.%20Both%20metrics%20cap%20out%20on%20a%20step%2C%20at%20the%20best%20it%20can%20score%20over%20all%20step%20locations%3A%20%CF%81%20can%20reach%0A%20%20%20%20%7BSRHO%7D%20and%20R%C2%B2%20%7BSR2%7D%2C%20both%20under%20the%20%7BGATE%7D%20gates%2C%20so%20no%20step%20passes.%0A%20%20%20%20%22%22%22.replace(%22%7BSRHO%7D%22%2C%20f%22%7Bex.STEP_RHO_CEILING%3A.2f%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BSR2%7D%22%2C%20f%22%7Bex.STEP_R2_CEILING%3A.2f%7D%22)%0A%20%20%20%20%20%20%20%20.replace(%22%7BGATE%7D%22%2C%20f%22%7Bex.GRADE_R2_GATE%3Ag%7D%22)%0A%20%20%20%20)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(grading)%3A%0A%20%20%20%20_above%20%3D%20%5Bc%20for%20c%20in%20ex.FACTORIAL_NAMES%20if%20grading(c)%5B1%5D%20%3E%20ex.STEP_R2_CEILING%5D%0A%20%20%20%20_best_rho%20%3D%20max(grading(c)%5B0%5D%20for%20c%20in%20ex.FACTORIAL_NAMES)%0A%20%20%20%20_best_r2%20%3D%20max(grading(c)%5B1%5D%20for%20c%20in%20ex.FACTORIAL_NAMES)%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20Considering%20those%20ceilings%2C%20the%20two%20tracks%20say%20opposite%20things.%0A%0A%20%20%20%20-%20**%CF%81**%20ranks%20colors%20by%20%60redness%60.%20Every%20condition%20scores%20below%20what%20a%20step%20would%3A%20the%20best%20%CF%81%20in%20the%20grid%20is%20%7B_best_rho%3A.2f%7D%20against%20a%20step%20ceiling%20of%20%7Bex.STEP_RHO_CEILING%3A.2f%7D.%0A%20%20%20%20-%20**R%C2%B2**%20fits%20values%20against%20%60sim%C2%B9%C2%B7%E2%81%B5%60%20(proportionality).%20%7Blen(_above)%7D%20of%20the%20six%20score%20above%20the%20ceiling%2C%20up%20to%20R%C2%B2%20%3D%20%7B_best_r2%3A.2f%7D%20against%20%7Bex.STEP_R2_CEILING%3A.2f%7D.%0A%0A%20%20%20%20Neither%20actually%20says%20whether%20the%20response%20is%20a%20grade%20or%20a%20step%2C%20so%20we%20visualize%20it%20below.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(BY_NAME%2C%20HOLD_HI%2C%20HOLD_LO%2C%20ROW%2C%20alpha_map%2C%20grading%2C%20m_op1)%3A%0A%20%20%20%20_RESP%20%3D%20%7Bc%3A%20alpha_map(c)%5B%3A%2C%20%3A%2C%200%5D.mean(axis%3D0)%20for%20c%20in%20%5B*ex.FACTORIAL_NAMES%2C%20%22lam0%22%5D%7D%0A%20%20%20%20_order%20%3D%20np.argsort(ex.REDNESS)%0A%0A%20%20%20%20def%20_windowed(y%3A%20np.ndarray%2C%20k%3A%20int%20%3D%2025)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20%22%22%22Mean%20of%20*y*%20over%20a%20sliding%20window%20of%20the%20redness%20ordering.%22%22%22%0A%20%20%20%20%20%20%20%20pad%20%3D%20np.pad(y%5B_order%5D%2C%20(k%20%2F%2F%202%2C%20k%20%2F%2F%202)%2C%20mode%3D%22edge%22)%0A%20%20%20%20%20%20%20%20return%20np.convolve(pad%2C%20np.ones(k)%20%2F%20k%2C%20mode%3D%22valid%22)%0A%0A%20%20%20%20def%20_fitted_target(y%3A%20np.ndarray)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20%22%22%22%60sim%C2%B9%C2%B7%E2%81%B5%60%20rescaled%20by%20least%20squares%20onto%20the%20response%20%E2%80%94%20the%20shape%20R%C2%B2%20scores%20against.%0A%0A%20%20%20%20%20%20%20%20R%C2%B2%20is%20scale-invariant%2C%20so%20the%20target%20has%20no%20natural%20height%3B%20fitting%20it%0A%20%20%20%20%20%20%20%20puts%20the%20curve%20where%20the%20statistic%20is%20actually%20comparing%20shapes.%0A%20%20%20%20%20%20%20%20%22%22%22%0A%20%20%20%20%20%20%20%20t%20%3D%20ex.SIM_TARGET%0A%20%20%20%20%20%20%20%20b%20%3D%20np.polyfit(t%2C%20y%2C%201)%0A%20%20%20%20%20%20%20%20return%20np.polyval(b%2C%20t)%0A%0A%20%20%20%20_CTRL%20%3D%20_windowed(_RESP%5B%22lam0%22%5D)%0A%20%20%20%20_GRID%20%3D%20%5BROW%5BHOLD_LO%5D%2C%20ROW%5BHOLD_HI%5D%5D%0A%0A%20%20%20%20%40themed(%0A%20%20%20%20%20%20%20%20name%3D%22grading%22%2C%0A%20%20%20%20%20%20%20%20alt_text%3D%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Six%20panels%20in%20a%20three-by-two%20grid%20sharing%20both%20axes%3A%20per-color%20alignment%20at%0A%20%20%20%20%20%20%20%20%20%20%20%20the%20first%20operand%2C%20from%20about%20-0.1%20to%201%2C%20against%20the%20redness%20of%20that%20color%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20from%200%20to%201.%20Columns%20are%20anneal%20endpoints%2050%2C%2070%20and%2090%3B%20the%20upper%20row%20is%0A%20%20%20%20%20%20%20%20%20%20%20%20hold%20ratio%200.03%20and%20the%20lower%200.30.%20Each%20panel%20scatters%20216%20marks%20drawn%20in%0A%20%20%20%20%20%20%20%20%20%20%20%20the%20color%20each%20stands%20for%2C%20with%20a%20heavy%20sliding-mean%20line%20through%20them%2C%20a%0A%20%20%20%20%20%20%20%20%20%20%20%20flat%20grey%20control%20band%20near%20zero%2C%20and%20a%20dashed%20straight%20reference%20line.%0A%20%20%20%20%20%20%20%20%20%20%20%20In%20every%20panel%20the%20marks%20form%20a%20dense%20flat%20cluster%20of%20greys%2C%20greens%20and%0A%20%20%20%20%20%20%20%20%20%20%20%20blues%20at%20low%20redness%2C%20then%20a%20sparse%20rising%20tail%20of%20oranges%20and%20reds.%20The%0A%20%20%20%20%20%20%20%20%20%20%20%20flat%20cluster%20sits%20higher%20in%20the%20upper%20row%20than%20the%20lower.%20The%20sliding%20mean%0A%20%20%20%20%20%20%20%20%20%20%20%20is%20close%20to%20flat%20across%20the%20left%20two-thirds%20of%20every%20panel%20and%20rises%0A%20%20%20%20%20%20%20%20%20%20%20%20steeply%20only%20in%20the%20right%20third%2C%20staying%20below%20the%20dashed%20line%20at%20low%0A%20%20%20%20%20%20%20%20%20%20%20%20redness%20and%20crossing%20it%20near%20the%20top.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20%20%20%20%20caption%3Dr%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20**Alignment%20at%20op1%2C%20per%20color.**%20%24%5Calpha_c%24%2C%20the%20layer%20mean%20of%0A%20%20%20%20%20%20%20%20%20%20%20%20%24%5Ccos(h%2C%20%5Chat%20v_%7B%5Ctext%7Bred%7D%7D)%24%20averaged%20over%20seeds%2C%20against%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20redness%20of%20the%20color.%20Columns%20are%20the%20anneal%20endpoint%2C%20rows%20the%20hold%0A%20%20%20%20%20%20%20%20%20%20%20%20ratio%2C%20as%20in%20the%20trajectory%20figure.%20One%20mark%20per%20color%2C%20drawn%20in%20that%0A%20%20%20%20%20%20%20%20%20%20%20%20color%3B%20the%20heavy%20line%20is%20a%2025-color%20sliding%20mean%20over%20the%20redness%0A%20%20%20%20%20%20%20%20%20%20%20%20ordering%2C%20and%20the%20flat%20grey%20band%20is%20the%20same%20sliding%20mean%20for%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20un-anchored%20control.%20The%20dashed%20line%20is%20%60sim%C2%B9%C2%B7%E2%81%B5%60%20rescaled%20onto%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20response%20by%20least%20squares%20%E2%80%94%20the%20shape%20the%20%24R%5E2%24%20track%20scores%0A%20%20%20%20%20%20%20%20%20%20%20%20against%2C%20so%20the%20marks'%20distance%20from%20it%20is%20what%20that%20statistic%0A%20%20%20%20%20%20%20%20%20%20%20%20measures.%20Per-panel%20statistics%3A%20both%20grading%20gates%20sit%20at%200.8%2C%20and%0A%20%20%20%20%20%20%20%20%20%20%20%20a%20pure%20step%20response%20can%20reach%20at%20most%20%CF%81%20%3D%200.75%20or%20%24R%5E2%24%20%3D%200.73.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20)%0A%20%20%20%20def%20_plot()%20-%3E%20plt.Figure%3A%0A%20%20%20%20%20%20%20%20from%20typing%20import%20cast%0A%0A%20%20%20%20%20%20%20%20from%20mini.vis%20import%20AxesGrid%0A%0A%20%20%20%20%20%20%20%20fig%2C%20axes%20%3D%20plt.subplots(2%2C%203%2C%20figsize%3D(7.5%2C%205.0)%2C%20sharey%3DTrue%2C%20sharex%3DTrue)%0A%20%20%20%20%20%20%20%20axes%20%3D%20cast(AxesGrid%2C%20axes)%0A%20%20%20%20%20%20%20%20for%20row%2C%20conds%20in%20zip(axes%2C%20_GRID%2C%20strict%3DTrue)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20ax%2C%20cond%20in%20zip(row%2C%20conds%2C%20strict%3DTrue)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20a%2C%20(rho%2C%20r2)%20%3D%20_RESP%5Bcond%5D%2C%20grading(cond)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ax.axhline(0%2C%20color%3Dlight_dark(%22%23bbb%22%2C%20%22%23555%22)%2C%20lw%3D0.8%2C%20zorder%3D0)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ex.REDNESS%5B_order%5D%2C%20_CTRL%2C%20color%3Dlight_dark(%22%23999%22%2C%20%22%23777%22)%2C%20lw%3D3%2C%20alpha%3D0.5%2C%20zorder%3D1%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20solid_capstyle%3D%22round%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%23%20The%20R%C2%B2%20target%2C%20so%20a%20reader%20can%20see%20the%20fit%20the%20statistic%20reports%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%23%20rather%20than%20taking%20the%20number%20on%20trust.%20Smoothed%20the%20same%20way%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%23%20as%20the%20response%3A%20several%20colors%20share%20a%20redness%2C%20so%20connecting%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%23%20the%20target%20in%20redness%20order%20would%20zigzag%20between%20them.%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(ex.REDNESS%5B_order%5D%2C%20_windowed(_fitted_target(a))%2C%20color%3Dlight_dark(%22%23888%22%2C%20%22%23888%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20lw%3D1.0%2C%20ls%3D(0%2C%20(4%2C%202))%2C%20zorder%3D2)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ax.scatter(ex.REDNESS%2C%20a%2C%20c%3Dex.GRID_RGB%2C%20s%3D18%2C%20lw%3D0.4%2C%20zorder%3D3%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20edgecolors%3Dlight_dark(%22%2300000033%22%2C%20%22%23ffffff55%22))%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(ex.REDNESS%5B_order%5D%2C%20_windowed(a)%2C%20color%3Dlight_dark(%22%23222%22%2C%20%22%23eee%22)%2C%20lw%3D1.6%2C%20zorder%3D4)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ax.set_title(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22end%20%7BBY_NAME%5Bcond%5D%5B'anti_anneal_end'%5D%3A.0f%7D%20%C2%B7%20hold%20%7BBY_NAME%5Bcond%5D%5B'anti_hold_ratio'%5D%3A.2f%7D%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20fontsize%3D9.5%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ax.annotate(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22%CF%81%20%3D%20%7Brho%3A.2f%7D%5CnR%C2%B2%20%3D%20%7Br2%3A.2f%7D%5Cn%24m%24%20%3D%20%7Bm_op1(cond).mean()%3A.2f%7D%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(0.03%2C%200.97)%2C%20xycoords%3D%22axes%20fraction%22%2C%20va%3D%22top%22%2C%20fontsize%3D8%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20color%3Dlight_dark(%22%23444%22%2C%20%22%23bbb%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20for%20ax%20in%20axes%5B1%5D%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_xlabel(%22redness%20of%20op1%22%2C%20fontsize%3D%22small%22)%0A%20%20%20%20%20%20%20%20for%20row%20in%20axes%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20row%5B0%5D.set_ylabel(r%22%24%5Calpha_c%24%20at%20op1%22%2C%20fontsize%3D%22small%22)%0A%20%20%20%20%20%20%20%20axes%5B0%5D%5B0%5D.set_ylim(-0.25%2C%201.25)%20%20%23%20headroom%20for%20the%20per-panel%20statistics%0A%20%20%20%20%20%20%20%20return%20fig%0A%0A%20%20%20%20mo.Html(_plot())%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20r%22%22%22%0A%20%20%20%20The%20response%20is%20not%20a%20step.%20It%20has%20a%20knee%3A%20flat%20from%20the%20control%20level%20up%20to%0A%20%20%20%20a%20redness%20of%20about%200.4%2C%20then%20a%20clean%20rise%20that%20tracks%20the%20dashed%20target%0A%20%20%20%20closely.%20Raising%20the%20hold%20ratio%20lowers%20the%20flat%20part%20toward%20the%20control%0A%20%20%20%20without%20changing%20the%20rise%2C%20which%20is%20containment%20doing%20what%20it%20is%20meant%20to.%0A%0A%20%20%20%20But%20most%20of%20the%20color%20cube%20lives%20in%20that%20flat%20part.%20%7BLO%7D%20of%20the%20%7BN%7D%20colors%0A%20%20%20%20fall%20below%20redness%200.4%2C%20and%20inside%20a%20flat%20band%20their%20alignments%20carry%20no%0A%20%20%20%20ordering.%20A%20rank%20statistic%20over%20all%20%7BN%7D%20colors%20is%20therefore%20dominated%20by%20them.%0A%20%20%20%20%22%22%22.replace(%22%7BLO%7D%22%2C%20f%22%7B(ex.REDNESS%20%3C%200.4).sum()%7D%22).replace(%22%7BN%7D%22%2C%20f%22%7Bex.REDNESS.size%7D%22)%0A%20%20%20%20)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(alpha_map)%3A%0A%20%20%20%20_KNEES%20%3D%20(0.2%2C%200.3%2C%200.4%2C%200.5)%0A%20%20%20%20_R%20%3D%20ex.REDNESS%0A%20%20%20%20_resp%20%3D%20%7Bc%3A%20alpha_map(c)%5B%3A%2C%20%3A%2C%200%5D.mean(axis%3D0)%20for%20c%20in%20ex.FACTORIAL_NAMES%7D%0A%20%20%20%20_rows%20%3D%20%22%22.join(%0A%20%20%20%20%20%20%20%20f%22%3Ctr%3E%3Cth%3E%3Ccode%3E%7Bc%7D%3C%2Fcode%3E%3C%2Fth%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Bex.spearman(_resp%5Bc%5D%2C%20_R)%3A.3f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20%2B%20%22%22.join(f%22%3Ctd%20class%3D'num'%3E%7Bex.spearman(_resp%5Bc%5D%5B_R%20%3E%3D%20k%5D%2C%20_R%5B_R%20%3E%3D%20k%5D)%3A.3f%7D%3C%2Ftd%3E%22%20for%20k%20in%20_KNEES)%0A%20%20%20%20%20%20%20%20%2B%20%22%3C%2Ftr%3E%22%0A%20%20%20%20%20%20%20%20for%20c%20in%20ex.FACTORIAL_NAMES%0A%20%20%20%20)%0A%20%20%20%20_head%20%3D%20%22%22.join(f%22%3Cth%20class%3D'num'%3E%E2%89%A5%20%7Bk%3Ag%7D%20%3Cspan%20class%3D'range'%3E(%7B(_R%20%3E%3D%20k).sum()%7D)%3C%2Fspan%3E%3C%2Fth%3E%22%20for%20k%20in%20_KNEES)%0A%20%20%20%20_table%20%3D%20f%22%22%22%0A%20%20%20%20%3Cdiv%20class%3D%22report-table-scroll%22%3E%3Ctable%20class%3D%22report-table%22%3E%0A%20%20%20%20%20%20%3Cthead%3E%0A%20%20%20%20%20%20%20%20%3Ctr%3E%3Cth%3Econdition%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Eall%20216%3C%2Fth%3E%7B_head%7D%3C%2Ftr%3E%3C%2Fthead%3E%0A%20%20%20%20%20%20%3Ctbody%3E%7B_rows%7D%3C%2Ftbody%3E%0A%20%20%20%20%3C%2Ftable%3E%3C%2Fdiv%3E%0A%20%20%20%20%22%22%22%0A%20%20%20%20_caption%20%3D%20f%22%22%22%0A%20%20%20%20Spearman%20%CF%81%20against%20%3Ccode%3Eredness%3C%2Fcode%3E%2C%20computed%20over%20all%20216%20colors%20and%0A%20%20%20%20then%20over%20the%20colors%20above%20each%20redness%20cut%2C%20with%20the%20number%20of%20colors%0A%20%20%20%20remaining%20in%20each%20header.%20The%20gate%20is%20%7Bex.GRADE_RHO_GATE%3Ag%7D.%0A%20%20%20%20%22%22%22%0A%20%20%20%20mo.Html(figure_html(_table%2C%20caption%3D_caption%2C%20class_%3D%22report-figure%22))%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(alpha_map)%3A%0A%20%20%20%20_R%20%3D%20ex.REDNESS%0A%20%20%20%20_hi%20%3D%20_R%20%3E%3D%200.4%0A%20%20%20%20_rho_hi%20%3D%20%5Bfloat(ex.spearman(a%5B_hi%5D%2C%20_R%5B_hi%5D))%20for%20a%20in%20(alpha_map(c)%5B%3A%2C%20%3A%2C%200%5D.mean(axis%3D0)%20for%20c%20in%20ex.FACTORIAL_NAMES)%5D%20%20%23%20fmt%3A%20skip%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20Above%20the%20knee%20the%20ordering%20is%20good%20in%20every%20condition%20%E2%80%94%20%CF%81%20runs%20%7Bmin(_rho_hi)%3A.2f%7D%20to%20%7Bmax(_rho_hi)%3A.2f%7D%20on%20the%20%7B_hi.sum()%7D%20colors%20with%20redness%20%E2%89%A5%200.4%2C%20against%20a%20gate%20of%20%7Bex.GRADE_RHO_GATE%3Ag%7D%20%E2%80%94%20and%20it%20climbs%20monotonically%20as%20the%20flat%20colors%20are%20excluded.%20So%20the%20graded%20part%20of%20the%20response%20is%20graded%2C%20but%20the%20full-set%20statistic%20is%20dominated%20by%20the%20flat%20part.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20r%22%22%22%0A%20%20%20%20Whether%20the%20figure%20shows%20*good*%20grading%20depends%20on%20the%20shape%20we%20ask%20for%2C%0A%20%20%20%20and%20the%20two%20statistics%20ask%20for%20different%20shapes.%20%CF%81%20names%20no%20shape%20at%20all%3A%0A%20%20%20%20it%20asks%20that%20all%20216%20colors%20be%20ordered%20by%20%60redness%60%2C%20with%20every%20pair%0A%20%20%20%20weighted%20equally%2C%20so%20no%20part%20of%20the%20cube%20should%20sit%20flat.%20It%20reads%20the%20flat%0A%20%20%20%20block%20as%20%7BLO%7D%20failures%20of%20ordering%2C%20however%20clean%20the%20rise%20above%20the%20knee%0A%20%20%20%20is.%0A%0A%20%20%20%20R%C2%B2%20names%20one%20shape.%20%60sim%C2%B9%C2%B7%E2%81%B5%60%20is%20itself%20below%200.05%20for%20three%20quarters%20of%20the%0A%20%20%20%20colors%2C%20so%20most%20of%20the%20cube%20should%20sit%20flat%3B%20where%20the%20response%20does%20rise%2C%0A%20%20%20%20it%20should%20follow%20the%20similarity%20curve%2C%20which%20sits%20between%20linear%20and%0A%20%20%20%20quadratic%20in%20the%20cosine%20similarity%20to%20*red*.%20Grading%20has%20no%20answer%20without%20a%0A%20%20%20%20target.%20R%C2%B2%20makes%20that%20choice%20explicit%2C%20and%20the%20knee%20in%20the%20figure%20is%20roughly%0A%20%20%20%20the%20shape%20it%20asks%20for.%0A%20%20%20%20%22%22%22.replace(%22%7BLO%7D%22%2C%20f%22%7B(ex.REDNESS%20%3C%200.4).sum()%7D%22)%0A%20%20%20%20)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20What%20a%20contained%20response%20can%20score%0A%0A%20%20%20%20That%20raises%20a%20question%20about%20the%20gate.%20If%20containment%20collapses%20the%20low-redness%20colors%20together%2C%20and%20the%20grading%20statistic%20reads%20their%20ordering%2C%20then%20they%20must%20be%20in%20tension.%20How%20high%20could%20the%20statistic%20be%2C%20under%20those%20constraints%3F%0A%0A%20%20%20%20We%20build%20the%20best%20response%20either%20statistic%20could%20hope%20for%3A%20the%20target%20shape%20exactly%2C%20above%20a%20knee%2C%20and%20contained%20to%20near%20zero%20below%20it.%20This%20is%20a%20property%20of%20the%20two%20statistics%20and%20the%20216-color%20grid%2C%20not%20a%20measurement%20of%20any%20run.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20%23%20Monte%20Carlo%20over%20the%20contained%20block's%20arbitrary%20ordering%2C%20which%20is%20what%0A%20%20%20%20%23%20makes%20this%20an%20expectation%20rather%20than%20a%20value.%20Seeded%20per%20call%20so%20the%0A%20%20%20%20%23%20numbers%20don't%20depend%20on%20which%20cell%20asks%20first%2C%20and%20small%20enough%20that%20the%0A%20%20%20%20%23%20draw%20count%20costs%20nothing.%0A%20%20%20%20def%20ceiling(knee%3A%20float%2C%20scale%3A%20float%20%3D%201.0%2C%20draws%3A%20int%20%3D%20600)%20-%3E%20tuple%5Bfloat%2C%20float%2C%20float%5D%3A%0A%20%20%20%20%20%20%20%20%22%22%22Expected%20(%CF%81%2C%20R%C2%B2%2C%20%E1%BE%B1)%20for%20a%20response%20that%20is%20*scale*%20%C3%97%20%60sim%C2%B9%C2%B7%E2%81%B5%60%20above%20*knee*%2C%20contained%20below%20it.%22%22%22%0A%20%20%20%20%20%20%20%20R%2C%20T%20%3D%20ex.REDNESS%2C%20ex.SIM_TARGET%0A%20%20%20%20%20%20%20%20rng%20%3D%20np.random.default_rng(0)%0A%20%20%20%20%20%20%20%20hi%20%3D%20R%20%3E%3D%20knee%0A%20%20%20%20%20%20%20%20out%20%3D%20np.array(%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(ex.spearman(a%2C%20R)%2C%20ex.r2_sim(a)%2C%20a.mean())%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20for%20a%20in%20(np.where(hi%2C%20scale%20*%20T%2C%20rng.normal(0%2C%200.02%2C%20R.size))%20for%20_%20in%20range(draws))%0A%20%20%20%20%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20rho%2C%20r2%2C%20alpha%20%3D%20out.mean(axis%3D0)%0A%20%20%20%20%20%20%20%20return%20float(rho)%2C%20float(r2)%2C%20float(alpha)%0A%0A%20%20%20%20_rows%20%3D%20%22%22.join(%0A%20%20%20%20%20%20%20%20f%22%3Ctr%3E%3Cth%3E%7Bk%3Ag%7D%3C%2Fth%3E%3Ctd%20class%3D'num'%3E%7B(ex.REDNESS%20%3C%20k).sum()%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Br%3A.2f%7D%3C%2Ftd%3E%3Ctd%20class%3D'num'%3E%7Br2%3A.2f%7D%3C%2Ftd%3E%3Ctd%20class%3D'num'%3E%7Ba%3A.3f%7D%3C%2Ftd%3E%3C%2Ftr%3E%22%0A%20%20%20%20%20%20%20%20for%20k%20in%20(0.0%2C%200.2%2C%200.3%2C%200.4%2C%200.5)%0A%20%20%20%20%20%20%20%20for%20r%2C%20r2%2C%20a%20in%20%5Bceiling(k)%5D%0A%20%20%20%20)%0A%20%20%20%20_table%20%3D%20f%22%22%22%0A%20%20%20%20%3Cdiv%20class%3D%22report-table-scroll%22%3E%3Ctable%20class%3D%22report-table%22%3E%0A%20%20%20%20%20%20%3Cthead%3E%3Ctr%3E%0A%20%20%20%20%20%20%20%20%3Cth%3Eknee%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Ecolors%20contained%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3Ebest%20%CF%81%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Ebest%20R%C2%B2%3C%2Fth%3E%3Cth%20class%3D%22num%22%3E%E1%BE%B1%3C%2Fth%3E%0A%20%20%20%20%20%20%3C%2Ftr%3E%3C%2Fthead%3E%0A%20%20%20%20%20%20%3Ctbody%3E%7B_rows%7D%3C%2Ftbody%3E%0A%20%20%20%20%3C%2Ftable%3E%3C%2Fdiv%3E%0A%20%20%20%20%22%22%22%0A%20%20%20%20_caption%20%3D%20f%22%22%22%0A%20%20%20%20The%20best%20either%20grading%20track%20can%20score%2C%20for%20a%20response%20that%20reproduces%0A%20%20%20%20%3Ccode%3Esim%C2%B9%C2%B7%E2%81%B5%3C%2Fcode%3E%20exactly%20above%20the%20knee%20and%20sits%20at%20the%20control%20below%20it%2C%0A%20%20%20%20with%20the%20%E1%BE%B1%20that%20response%20implies.%20A%20knee%20of%200%20is%20no%20containment%20at%20all.%0A%20%20%20%20Both%20grading%20gates%20are%20%7Bex.GRADE_R2_GATE%3Ag%7D%20and%20the%20containment%20gate%20is%0A%20%20%20%20%E1%BE%B1%20%E2%89%A4%20%7Bex.MEAN_ALIGN_GATE%3Ag%7D.%20Expectations%20over%20the%20contained%20block's%0A%20%20%20%20arbitrary%20ordering%3B%20a%20pure%20step%20reaches%20%CF%81%20%3D%20%7Bex.STEP_RHO_CEILING%3A.2f%7D%20and%0A%20%20%20%20R%C2%B2%20%3D%20%7Bex.STEP_R2_CEILING%3A.2f%7D%20for%20comparison.%0A%20%20%20%20%22%22%22%0A%20%20%20%20mo.Html(figure_html(_table%2C%20caption%3D_caption%2C%20class_%3D%22report-figure%22))%0A%20%20%20%20return%20(ceiling%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(ceiling%2C%20grading)%3A%0A%20%20%20%20_best_r2%20%3D%20max(grading(c)%5B1%5D%20for%20c%20in%20ex.FACTORIAL_NAMES)%0A%20%20%20%20_corr%20%3D%20float(np.corrcoef(ex.SIM_TARGET%2C%20ex.REDNESS)%5B0%2C%201%5D)%0A%20%20%20%20_open%2C%20_mid%2C%20_knee%2C%20_deep%20%3D%20(ceiling(k)%20for%20k%20in%20(0.0%2C%200.3%2C%200.4%2C%200.5))%0A%20%20%20%20_half%20%3D%20ceiling(0.2%2C%20scale%3D0.5)%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20The%20two%20tracks%20come%20apart.%20Even%20with%20no%20containment%20at%20all%2C%20the%20best%20%CF%81%20a%20perfect%20%60sim%C2%B9%C2%B7%E2%81%B5%60%20response%20reaches%20is%20%7B_open%5B0%5D%3A.2f%7D%2C%20barely%20over%20the%20gate%2C%20because%20%60sim%C2%B9%C2%B7%E2%81%B5%60%20is%20not%20a%20monotone%20function%20of%20%60redness%60%20(they%20correlate%20at%20%7B_corr%3A.2f%7D%2C%20not%201).%20With%20the%20%7B(ex.REDNESS%20%3C%200.4).sum()%7D%20colors%20below%20%60redness%60%200.4%20contained%2C%20the%20ceiling%20falls%20to%20%7B_knee%5B0%5D%3A.2f%7D%2C%20under%20the%20observed%20values.%20So%20past%20a%20light%20knee%20the%20%CF%81%20track%20penalizes%20containment%2C%20and%20at%20the%20containment%20this%20grid%20achieves%20it%20cannot%20reach%20%7Bex.GRADE_RHO_GATE%3Ag%7D%20however%20well%20the%20response%20is%20graded.%0A%0A%20%20%20%20R%C2%B2%20behaves%20the%20other%20way.%20Its%20target%20is%20near%20zero%20for%20the%20colors%20containment%20collapses%2C%20so%20containment%20moves%20the%20response%20toward%20the%20target%20rather%20than%20away%3A%20the%20ceiling%20is%20%7B_knee%5B1%5D%3A.2f%7D%20at%20a%20knee%20of%200.4%20and%20%7B_deep%5B1%5D%3A.2f%7D%20even%20at%200.5.%20That%20track%20is%20reachable%2C%20and%20the%20best%20condition%20in%20this%20grid%20gets%20%7B_best_r2%3A.2f%7D%20of%20it.%5B%5Em1r2%5D%0A%0A%20%20%20%20Within%20that%20family%20%E2%80%94%20%60sim%C2%B9%C2%B7%E2%81%B5%60%20at%20full%20amplitude%20%E2%80%94%20the%20%CF%81%20gate%20and%20the%20containment%20H2%20also%20asks%20for%20cannot%20both%20be%20met.%20%E1%BE%B1%20crosses%20under%20%7Bex.MEAN_ALIGN_GATE%3Ag%7D%20somewhere%20between%20a%20knee%20of%200.3%20and%200.4%2C%20and%20by%20there%20%CF%81%20has%20fallen%20from%20%7B_mid%5B0%5D%3A.2f%7D%20to%20%7B_knee%5B0%5D%3A.2f%7D.%0A%0A%20%20%20%20That%20family%20is%20narrow%2C%20though.%20%CF%81%20ranks%20colors%2C%20so%20it%20is%20blind%20to%20the%20amplitude%20the%20%E1%BE%B1%20gate%20measures%3A%20scale%20the%20above-knee%20response%20to%20half%20of%20%60sim%C2%B9%C2%B7%E2%81%B5%60%20at%20a%20knee%20of%200.2%2C%20and%20both%20gates%20clear%20at%20once%2C%20at%20%CF%81%20%3D%20%7B_half%5B0%5D%3A.2f%7D%20and%20%E1%BE%B1%20%3D%20%7B_half%5B2%5D%3A.3f%7D.%20What%20the%20two%20gates%20jointly%20exclude%20is%20a%20response%20that%20is%20both%20steeply%20graded%20and%20full-amplitude%20on%20the%20reds%2C%20which%20is%20narrower%20than%20the%20gates%20being%20incompatible.%20Either%20way%20the%20%CF%81%20gate%20is%20doing%20something%20the%20preregistration%20did%20not%20say%20it%20was%20doing%2C%20and%20a%20future%20design%20should%20settle%20the%20amplitude%20question%20before%20reusing%20it.%0A%0A%20%20%20%20The%20R%C2%B2%20shortfall%20is%20in%20the%20response%20itself%3A%20against%20an%20achievable%20%7B_knee%5B1%5D%3A.2f%7D%2C%20%7B_best_r2%3A.2f%7D%20is%20a%20real%20gap.%20Setting%20a%20realistic%20R%C2%B2%20gate%20for%20future%20work%20would%20take%20more%20than%20this%20one%20grid.%0A%0A%20%20%20%20%5B%5Em1r2%5D%3A%20M1%20scored%20proportionality%20with%20a%20Pearson%20R%C2%B2%20as%20well%2C%20but%20of%20a%0A%20%20%20%20different%20quantity%3A%20reconstruction%20error%20under%20intervention%20against%20%24%5Ccos%5E2%24%20similarity%20to%20*red*%20(D1.3)%2C%20where%20the%20square%20is%20what%20the%20projection%20predicts.%20Here%20it%20is%20training-time%20alignment%20against%20%60sim%C2%B9%C2%B7%E2%81%B5%60%2C%20an%20exponent%20chosen%20as%20a%20shape%20between%20linear%20and%20quadratic%20rather%20than%20derived.%20Same%20statistic%2C%20different%20response%20variable%20and%20target%2C%20so%20M1's%20values%20are%20not%20a%20benchmark%20for%20this%20gate.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(alpha_bar%2C%20grading%2C%20m_op1%2C%20retention)%3A%0A%20%20%20%20_p%20%3D%20ex.PRIMARY%0A%20%20%20%20_alt%20%3D%20%22end90-hold03%22%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20%23%23%20Discussion%0A%0A%20%20%20%20The%20operating%20point%20to%20carry%20forward%20is%20%60%7B_p%7D%60%3A%20%E1%BE%B1%20%3D%20%7Balpha_bar(_p).mean()%3A.3f%7D%2C%20margin%20%7Bm_op1(_p).mean()%3A.2f%7D%2C%20retention%20%7Bretention(_p)%3A.2f%7D%2C%20task-clean.%20%60%7B_alt%7D%60%20grades%20slightly%20better%2C%20but%20%E1%BE%B1%20decides%20it%3A%20%E1%BE%B1%20predicts%20how%20much%20of%20the%20color%20cube%20an%20edit%20along%20the%20anchor%20axis%20would%20drag%20with%20it%2C%20and%20the%20two%20conditions%20differ%20by%20%7Balpha_bar(_alt).mean()%20%2F%20alpha_bar(_p).mean()%3A.1f%7D%C3%97%20on%20it%2C%20against%20a%20%7Bgrading(_alt)%5B1%5D%20-%20grading(_p)%5B1%5D%3A.2f%7D%20difference%20on%20the%20reachable%20grading%20track.%20Anything%20that%20pulls%20without%20a%20position%20oracle%2C%20and%20any%20intervention%20experiment%2C%20wants%20the%20smaller%20spread%20of%20side-effects.%0A%0A%20%20%20%20The%20M1%20keyframes%20were%20fractions%20of%20training%2C%20and%20those%20did%20not%20transfer.%20The%20trajectories%20suggest%20carrying%20something%20dimensionless%20instead%3A%20%E1%BE%B1%20departs%20the%20control%20shortly%20after%20the%20repulsion%20falls%20below%20the%20pull%2C%20and%20the%20floor%20sets%20how%20fast%20it%20climbs%20after%20that%20crossing.%20If%20that%20mechanism%20holds%20elsewhere%2C%20the%20design%20variables%20are%20the%20crossing%20epoch%20and%20the%20ratio%20of%20the%20floor%20to%20the%20containment%20threshold.%20This%20grid%20measures%20one%20architecture%20on%20one%20task%2C%20so%20that%20is%20a%20reading%20to%20test%3B%20the%20reproduction%20check%20here%20shows%20the%20kind%20of%20evidence%20that%20would%20count.%0A%0A%20%20%20%20Three%20things%20this%20experiment%20does%20not%20settle.%20Containment%20is%20not%20exclusivity%3A%20redness%20stays%20as%20readable%20off%20the%20anchor%20axis%20as%20it%20is%20in%20the%20control%2C%20down%20at%20the%20floor%20the%20RGB%20task%20itself%20sets.%20So%20an%20edit%20to%20the%20axis%20moves%20less%20of%20the%20cube%2C%20but%20the%20axis%20is%20not%20the%20only%20place%20*red*%20lives.%0A%0A%20%20%20%20The%20grading%20gate%20needs%20a%20decision%20before%20the%20next%20report%20scores%20it%3A%20the%20%CF%81%20track%20cannot%20reach%20its%20gate%20alongside%20full-amplitude%20containment%2C%20and%20one%20grid%20is%20not%20enough%20to%20say%20where%20a%20realistic%20R%C2%B2%20gate%20sits.%0A%0A%20%20%20%20And%20the%20best%20floor%20here%20is%20also%20the%20highest%20floor%20tested%2C%20so%20whether%20a%20higher%20or%20flat-held%20repulsion%20does%20better%2C%20or%20starts%20to%20cost%20the%20margin%2C%20is%20outside%20the%20range%20this%20grid%20measured.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0Aif%20__name__%20%3D%3D%20%22__main__%22%3A%0A%20%20%20%20app.run()%0A
185488ad04903a6d62b8e1652de49f86