Generalization arc Phase 1.1 (Tier F, docs/plans/generalization-arc-2026-07-24.md): "All philosophers teach. Socrates is a philosopher. Therefore Socrates teaches." now reads and decides — the ADR-0258 §6.3 verb-predicate scope-out, and the reading gate for Phase 2's subject serving. generate/proof_chain/verb.py extends v3-MEM's per-individual lowering with a second atom family in one shared space: membership atoms (v3-MEM's own parsers reused verbatim) + verb atoms (individual, verb-lemma-group, object-term). Verb universals instantiate as mem(i,C) -> [~]verb(i), so a copula-minted membership fact discharges a verb rule. The ONE new semantic identification is closed 3sg agreement (verb-specific irregular table + the three regular suffix rules — deliberately NOT the noun table, which would misroute "lives"/"leaves"). Scope-tight segmentation: single-token name/class/verb/object shapes only; everything longer refuses typed (tense_out_of_band joins the closed reason vocabulary). Rendered by render_entailment_verb (member surface, UNKNOWN scoping extended to the verb reading). Rides deduction_serving_enabled (default off); pure widening — every previously-served argument byte-identical, no existing lane case changed outcome. Earned: 4 en_verb_* bands x 720 arena wrong=0 (first seal), ledger resealed at 21 bands; corpus soundness asserted against the independent truth-table oracle over each template's intended lowering (15,120 cases, INV-25). Lane: v2_verb 28 hand-authored real cases 28/28 first run; full lane 134/134 wrong=0 across five splits. Surgical single-line pin update + CLAIMS regen. Stacked on feat/generalization-phase0 (merge that first — shared verify_lane_shas.py / CLAIMS.md / generate_claims.py lane-ADR mapping). [Verification]: verb reader tests 34/34; deduction battery 86/86 (surface +5, e2e +1, lane +1) in-worktree; arena seal + oracle cross-check green; smoke + warmed_session via pre-push gate.
155 lines
3.4 KiB
JSON
155 lines
3.4 KiB
JSON
{
|
|
"classes": {
|
|
"atomic": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"categorical": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"conditional_chain": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"conditional_single": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"disjunctive": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_atomic": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_conditional_chain": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_conditional_single": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_condmem_chain": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_condmem_conditional": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_condmem_disjunctive": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_condmem_fused": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_disjunctive": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_member_atomic": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_member_chain": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_member_negative": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_member_single": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_verb_chain": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_verb_fact": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_verb_negative": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
},
|
|
"en_verb_universal": {
|
|
"correct": 720,
|
|
"refused": 0,
|
|
"t2_agrees_gold": 0,
|
|
"t2_verified": 0,
|
|
"wrong": 0
|
|
}
|
|
},
|
|
"content_sha256": "b5dd8db3ac4770f229269c16d388325a0763237ff84c21618309468eabf46a77",
|
|
"note": "Sealed-practice committed ledger for deduction serving (ADR-0256). Engine reads, never writes. Ceilings stay at safe defaults (theta_SERVE=0.99). A band earns SERVE by demonstrated pipeline reliability (reader+projector+engine) at volume >= 657 committed.",
|
|
"provenance": "evals.deduction_serve.practice.runner.seal_ledger",
|
|
"schema": "deduction_serve_ledger_v1"
|
|
}
|