Donker All-Feature Tree Synthesis

Generated by scripts/run_donker_all_feature_tree.py.

This run pools Donker's non-overlapping source matrices rather than consolidating the nine section trees. It uses Acts 1-12, Acts 13-28, Romans, 1 Corinthians, 2 Corinthians-Titus, Hebrews, and the Catholic Epistles. The full Acts and full Pauline matrices are excluded because their feature columns are exactly the union of their component sections.

Aggregate Checks

Aggregate Component sections Aggregate features Component features Match
Ath.Acts Ath.Acts.1-12; Ath.Acts.13-28 45 45 yes
Ath.PaulineEpistles Ath.Rom; Ath.1Cor; Ath.2Cor-Titus; Ath.Heb 168 168 yes

Coverage

Lowest row coverage:

label defined_features total_features
P72 6 225
M325 8 225
M1022 12 225
M201 12 225
M1424 12 225
M105 12 225
M323 12 225
M383 21 225
M81 41 225
P74 43 225
M1175 45 225
M614 45 225

Trees

The core tree is the clean all-feature synthesis: it uses only witnesses observed in every non-overlapping section, so every pair has direct shared feature evidence.

Core Newick:

((((A,(B,U1)),(C,M1739)),Ath),(L,U44));

The all-label tree is exploratory. It keeps all 41 labels by building a shared-feature graph with edges requiring at least 6 shared readings, then filling missing cross-section distances by shortest paths through bridge witnesses. The resulting distances are normalised before average-linkage tree fitting.

All-label bridged Newick:

((P46,(D,(F,G))),(((((((A,P74),(B,U1)),(((C,M1175),(M1739,(((M1704,M945),M630),M1891))),(Ath,M81))),(M323,M33)),((((((((M223,((M2423,(M1022,M1424)),M325)),M876),(((H,U49),(((L,M105),M201),M1073)),(M1352,P))),K),M104),U44),U1C),(M383,M614))),E),P72));

Machine-Readable Outputs

Interpretation note: this gives the all-feature tree Greg expected, but only the core-witness tree is a direct feature-space synthesis. The all-label tree is a completion model for uneven coverage, not a recovered historical stemma.