A.2.6:19.3 - Pseudocode membership evaluation (illustrative)
def evaluate_membership(scope, target_slice, interpretation_basis):
required = scope.required_inputs(target_slice)
if not interpretation_basis.resolves_all(required):
return UNKNOWN
resolved_inputs = interpretation_basis.resolve(required)
return TRUE if scope.predicate(target_slice, resolved_inputs) else FALSE
required_inputs identifies the selector resolutions and any translation inputs needed by this scope predicate under the bound interpretationBasis. resolves_all requires resolved values, not merely available keys or selector tokens; a present but unresolved rig token therefore yields UNKNOWN. The full slice remains bound as targetSlice; only the needed resolutions are supplied to predicate evaluation. UNKNOWN belongs to the evaluation result because a required input is unavailable. The underlying membership predicate remains bivalent for an exact, fully interpreted scope and slice.