Resolution
Definition
Resolution is the process of computing the canonical representation of an object in the ring substrate. The Resolver hierarchy implements this process.
Resolver Hierarchy
| Class | Role |
|---|---|
| Resolver | Abstract resolver base |
| DihedralFactorizationResolver | Factorizes in D_{2^n} |
| CanonicalFormResolver | Computes canonical form |
| EvaluationResolver | Evaluates the canonical form |
Resolution Process
- A Query specifies what to resolve
- The resolver uses its strategy (strategy)
- The input type (inputType) is the source
- Resolution produces a Partition
(output type is
partition:Partitionvia outputType)
Query Types
Three specialized queries correspond to the three resolver strategies:
| Query | Description |
|---|---|
| CoordinateQuery | Resolves spatial coordinates |
| MetricQuery | Resolves metric properties |
| RepresentationQuery | Resolves canonical representation |
Complexity
The property hasComplexityClass declares the
computational complexity of the resolver (e.g., "O(n)" or "O(log n)").
Output
The final output of resolution is:
- A Partition of R_n
- A ComputationTrace recording the steps
- Optionally, a Certificate attesting the result
The Full Pipeline
The resolution pipeline flows through several stages, each tracked by the ResolutionState:
- Query: A Query specifies the target — what element or property to resolve and which coordinate system to use.
- Type check: The resolver reads the input's TypeDefinition to determine which constraints apply (residue classes, carry patterns, depth bounds).
- Factorization: The DihedralFactorizationResolver decomposes the element in the dihedral group D_{2^n}, producing the canonical neg/bnot factorization.
- Partition: The factorization result classifies the element into one of the four Partition components (irreducible, reducible, unit, exterior).
- Observation: Observable instances measure properties of the resolved element — Hamming weight, spectral gap, entropy.
- Certification: A Certificate records the resolution result with a verification status and hash.
Iterative vs Single-Pass
The factorization pipeline (steps 1–6 above) is a single pass through the resolver hierarchy. When constraints conflict or the type's site budget is not fully resolved, the system enters an iterative resolution loop that refines the solution. Each iteration applies constraints, re-evaluates observables, and checks convergence. See Iterative Resolution for convergence conditions and Factorization for the single-pass dihedral decomposition.
Topological Diagnostics
When iterative resolution stalls, the CechNerve provides structural diagnostics. Its Betti numbers reveal whether stalls arise from topological obstructions (constraint loops) or from insufficient constraint coverage. See Analytical Completeness for the nerve construction and ψ-Pipeline for the full structural reasoning workflow.