GB-1 — first slice of the comprehension-guided composer (ADR-0178). Reads the problem one clause at a time and derives each clause's LOCAL contribution; GB-2 combines them across clauses. generate/derivation/clauses.py: - segment_clauses(text): sentence-level orthographic split (ADR-0165; not grammar). - clause_local_results(text) -> tuple[ClauseResult]: per clause, 0 quantities = context (hold), 1 = leaf (its value), >=2 = bounded local search (reuses MS-3 search_chain). Refuse-preferring: ambiguous multi-quantity clause -> unresolved hold, not guessed. Locality is the guidance that bounds the search + steers grouping. 9 GB-1 tests (segmentation, leaf/context/local-product, ambiguous-holds, determinism, per-clause structure of a multi-sentence problem). Full derivation surface 86/86; ruff clean; smoke 67. Sealed; not wired into serving (ClauseResults ready for GB-2 sequential combination).
53 lines
1.5 KiB
Python
53 lines
1.5 KiB
Python
"""ADR-0175 Phase 3 — grounded derivation search + self-verification gate.
|
|
|
|
Phase 3a (this surface): the self-verification gate — grounded operands ∧
|
|
grounded operation cues ∧ unit consistency ∧ uniqueness. The wrong=0-critical
|
|
guard that keeps the (Phase 3b) bounded search honest.
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
from generate.derivation.clauses import (
|
|
ClauseResult,
|
|
clause_local_results,
|
|
segment_clauses,
|
|
)
|
|
from generate.derivation.comparatives import (
|
|
ComparativeScalar,
|
|
comparative_step,
|
|
extract_comparative_scalars,
|
|
)
|
|
from generate.derivation.extract import extract_quantities
|
|
from generate.derivation.model import GroundedDerivation, Quantity, Step, VALID_OPS
|
|
from generate.derivation.multistep import search_chain
|
|
from generate.derivation.search import MULTIPLICATIVE_CUES, search_multiplicative
|
|
from generate.derivation.target import Target, extract_target
|
|
from generate.derivation.verify import (
|
|
Resolution,
|
|
SelfVerification,
|
|
select_self_verified,
|
|
self_verifies,
|
|
)
|
|
|
|
__all__ = [
|
|
"ClauseResult",
|
|
"ComparativeScalar",
|
|
"GroundedDerivation",
|
|
"MULTIPLICATIVE_CUES",
|
|
"Quantity",
|
|
"Resolution",
|
|
"SelfVerification",
|
|
"Step",
|
|
"Target",
|
|
"VALID_OPS",
|
|
"clause_local_results",
|
|
"comparative_step",
|
|
"extract_comparative_scalars",
|
|
"extract_quantities",
|
|
"extract_target",
|
|
"search_chain",
|
|
"search_multiplicative",
|
|
"segment_clauses",
|
|
"select_self_verified",
|
|
"self_verifies",
|
|
]
|