court-extract
The groupant beside yom-hadin/src/extract.rs in the Mova repository: what the code computes, what it never does, how to go back from its outputs, its invariants, cost and checks.
Facts
Implementation material. A Mova code model describes this code at one source revision: partial models, finite checks and their stated scope. It is not a reviewed general exposition, and its labels are shown as written, never raised.
Components
| component | label | where |
|---|---|---|
| approximant | partial | approximant |
| ast | partial | syntax.json |
| composition | partial | descriptant |
| cost | partial | model.md |
| descriptant | present | descriptant |
| invariant | partial | Invariant |
| tests | finite native checks | tests |
Obernants
The typed relations around the forward model: the behaviour complement (what the code never does), the reverse reconstruction (every input compatible with an output) and specialised views.
| id | type | label | where |
|---|---|---|---|
behavior_complement | behavior_complement | partial source derived model | behavior_complement |
reverse_reconstruction | reverse_reconstruction | partial source derived model | reverse_reconstruction |
force_priority | force_priority | partial source derived model | force_priority |
ownership_cycle_bound | ownership_cycle_bound | partial source derived model | ownership_cycle_bound |
adjacent_exception_projection | adjacent_exception_projection | partial source derived model | adjacent_exception_projection |
dispute_partition | dispute_partition | partial source derived model | dispute_partition |
Parts
Model text
descriptant
Frame-to-rule construction and address-local exception/dispute postprocessing.
Epoch 2026-10-31
Prospective review preceded test edits. Runtime logic unchanged; three sources gain tests. Synthetic witnesses do not validate legal conclusions.
Composition: force_of prioritizes copular attributes/guilt, passive lexical markers then modal sanctions. rules_of returns empty for question text; bounded parent walks assign deontic ownership/authority and separate acts, conditional OR groups, exception AND groups and reasons. extract initializes annotator, resets Ctx on address change, uses matching normalized DB text else parser, then attaches adjacent but-if and marks disputes.
Retained limits: partial syntax, opaque macros; no live corpus, teacher, parser model, production filesystem or frozen gold. Complete semantics and executable approximants remain open.
approximant
Forward model
Frame-to-rule construction and address-local exception/dispute postprocessing.
force_of prioritizes copular attributes/guilt, passive lexical markers then modal sanctions. rules_of returns empty for question text; bounded parent walks assign deontic ownership/authority and separate acts, conditional OR groups, exception AND groups and reasons. extract initializes annotator, resets Ctx on address change, uses matching normalized DB text else parser, then attaches adjacent but-if and marks disputes.
Not an executable substitute. Percentage approximation is unsupported without a useful metric; future profiles limited to 1/2/5/10% require actual-reference comparison.
models
Typed models: Frame-to-rule construction and address-local exception/dispute postprocessing.
Subject: yom-hadin/src/extract.rs, SHA-256 4df25340c2de0143478dac2f2b0777d937157f8f6f05706d0d84d301dbf49db2. Domain: bounded finite synthetic rules/cases; valid indices and successful allocation unless a section narrows this. Each relation observes implementation, not legal authority. Status: partial source-derived model, finite evidence mapped in tests.md.
behavior_complement
Excluded under admitted frame indices: question text yielding rules, conditional/irrealis frame chosen as deontic root, or but-if attachment across different source addresses. Parser/resource failures and malformed foreign frames remain outside executed evidence.
Operator: stated relation on this source projection. Assumptions: named domain and unchanged dependencies. Evidence: tests.md maps finite observations; other branches remain source review only.
reverse_reconstruction
A Rule list admits any frames/text carrying the selected force, clauses, authority and address projection after pruning; omitted manner, lexical surface and empty copulas produce nonunique fibers. A zero list can mean question, no deontic roots, or roots pruned empty.
Operator: stated relation on this source projection. Assumptions: named domain and unchanged dependencies. Evidence: tests.md maps finite observations; other branches remain source review only.
force_priority
First matching copular attr wins before modal. Positive must-pay sanction gives Liability, negative must gives Prohibition, may gives Permission unless negated. No modal/lexical marker yields None; order is not a commutative set reduction.
Operator: stated relation on this source projection. Assumptions: named domain and unchanged dependencies. Evidence: tests.md maps finite observations; other branches remain source review only.
ownership_cycle_bound
parent rejects self/out-of-range, while longer cycles terminate after steps>n. Nearest deontic ancestor owns subordinate frames; purpose frames under a parent are excluded from roots but retained as reasons where selected.
Operator: stated relation on this source projection. Assumptions: named domain and unchanged dependencies. Evidence: tests.md maps finite observations; other branches remain source review only.
adjacent_exception_projection
For adjacent rules with equal source, different sent and next text beginning but if/when, append one exception containing only first clause of each nonempty condition group. Alternative clauses beyond first are lost; not logical negation of the next rule.
Operator: stated relation on this source projection. Assumptions: named domain and unchanged dependencies. Evidence: tests.md maps finite observations; other branches remain source review only.
dispute_partition
Only addresses with at least4 dot segments and an act verb group by first3 segments+verb. Mark entire group iff distinct authority count>=2 and distinct(force,penalty) count>=2; no check pairs those differences within one authority pair.
Operator: stated relation on this source projection. Assumptions: named domain and unchanged dependencies. Evidence: tests.md maps finite observations; other branches remain source review only.
tests
Checks and evidence
External run label: octopus-wave31-court-2026-10-31; exact commands in native-commands.json, per-source observations in source-test-map.json, numeric exits and named outcomes in raw logs.
19 exact selected native tests twice debug and twice release execute actual linked code on bounded hand-built cases. CLI covers argument helpers only. Full extraction/model initialization, actual jurisdiction loading, protocol disk errors, resource exhaustion and malformed public lattices are unexecuted. Module declarations have compile evidence only.
Three compiled source-behavior mutants: count weight, precedence tie, modal tie; each requires compile success, named assertion failure, exact byte/hash restoration and positive rerun. Legacy fixture interventions count separately. Final observations: external evidence-summary.md.
This node observes: Frame-to-rule construction and address-local exception/dispute postprocessing.. Unmapped models remain source-derived/prospective, not verified by the whole test count.
The exact per-source names and limits are retained in source-evidence.md.
invariant-and-cost
Invariant and cost
Invariant
Rule IDs encode jurisdiction, colon-normalized sentence and deontic ordinal; skipped empty roots may leave ordinal gaps. Only existing matched sentences feed postprocessing. Questions produce no rules regardless of frames.
Cost
For n frames, repeated bounded ancestor walks and scans give conservative O(n^3) plus output bytes; postprocessing BTree grouping O(R log R) plus cloning clauses. Full extract adds parser/model initialization and external data work not measured here.
Symbolic bounds, not timings. Resource exhaustion is not tested.
source-evidence
Source observation map
Actual force_of/rules_of and postprocessing/filter; no annotator/extract/read filesystem path.
- extract::wave31_tests::force_priority_and_question_gate
- wave31_extraction_adjacency_disputes_and_metric_denominators
This page in Markdown โ https://md.groupants.elamur.ai/free/en/mova/yom-hadin/src/extract.rs.groupant/