Inclusive-OR Membership Test¶
Predicate test — instantiates Inclusive Membership Union Design
A per-element predicate that answers "is this a member?" with yes the moment the element appears in at least one admissible source, without building the whole set.
Sometimes you do not need the whole union — you need to answer, for one specific candidate, "does this belong?" Inclusive-OR Membership Test is that predicate. It takes a single element and the set of admissible sources and returns member the instant the element is found in any one of them, non-member only after all sources come up empty. Its defining move is disjunction over sources: one hit is sufficient, so the test can short-circuit — stop and answer yes as soon as the first source confirms, never consulting the rest. It never materializes a combined list, never collapses duplicates, and never counts. It only decides, for the element in front of it, whether at least one admissible source vouches for it and whether that element even falls inside the union's universe.
Example¶
An email security gateway must decide, for each arriving message, whether the sender's IP address belongs to the "known-bad" union assembled from several reputation feeds — a public blocklist, a commercial threat feed, and the organization's own manual list. It does not build a merged blocklist of every bad IP on Earth; that set is enormous and changes by the minute. Instead, for the one IP in hand, it tests membership: check the local list (cheapest and most trusted), then the public feed, then the commercial feed, and return block the moment any one of them lists the address. If the first source already flags it, the other lookups are skipped entirely.
Before any of that, a universe check confirms the candidate is even in scope — the test is defined over IPv4/IPv6 sender addresses, so a malformed or internal address is ruled out-of-universe rather than tested and mis-answered. The result per message is a single bit, decided in milliseconds, without ever assembling the union it is logically asking about.
How it works¶
- Bound the universe first. Confirm the candidate is an admissible element of the declared universe; an out-of-scope input is rejected as undefined, not silently treated as a non-member.
- Evaluate sources as a disjunction. Membership is
source₁ ∨ source₂ ∨ … ∨ sourceₙ; the element is a member iff at least one admissible source contains it. - Short-circuit on the first hit. Order the sources by cost and trust and stop at the first confirmation — a yes needs one source, only a no needs all of them.
- Answer, don't accumulate. The output is a boolean (optionally with "which source(s) said yes"), never a materialized set; nothing is stored or collapsed.
Tuning parameters¶
- Source evaluation order — which sources are checked first. Cheapest-and-most-likely first minimizes average lookups on a yes; but if a costly source is the authoritative one, front-loading a flaky cheap source can produce fast wrong answers.
- Short-circuit vs. exhaustive — whether to stop at the first hit or always poll every source. Short-circuiting is fast; exhaustive evaluation is slower but tells you how many sources agreed, which callers sometimes need.
- Universe strictness — how tightly the admissibility check is drawn. A strict universe rejects malformed candidates cleanly; a loose one lets ambiguous inputs through to be tested, risking a confident answer to a nonsensical question.
- Freshness tolerance — how stale a source lookup may be before it must be refreshed. Cached lookups are fast but can miss a very recent listing; live lookups are current but slower and dependent on source availability.
When it helps, and when it misleads¶
Its strength is economy and latency: when you only ever ask about elements one at a time, testing membership is far cheaper than building and maintaining the whole union, and disjunction's short-circuit makes the common answer the fast one. This is exactly short-circuit evaluation of a logical OR — the operator that stops as soon as the outcome is determined.[n1]
Its failure mode is that short-circuiting hides how many sources agreed. Because one hit ends the test, an inclusive-OR answer of "member" says nothing about corroboration — it can rest on a single, possibly wrong, source. The classic misuse is reading a yes as consensus ("multiple feeds flagged this IP") when the test guarantees only that one did. A second trap is a loose universe: test a candidate that was never in scope and you get a confident boolean to a meaningless question. The guarding discipline is to keep the universe check strict, and — when corroboration matters — switch off short-circuiting so the caller sees the full source count rather than the first hit.
How it implements the components¶
inclusive_membership_rule— its whole purpose: it evaluates the at-least-one-source disjunction for a single candidate and returns member / non-member.union_universe_scope— it screens every candidate against the declared universe first, so the predicate is only ever applied to admissible elements.
This test decides membership one element at a time; it never builds or dedups the combined set — collapsing duplicates into the materialized union (duplicate_collapse_policy, provenance_retention_record) is Deduplicating Union Pass. It also does not assign identity keys (canonical_member_identity_key); it assumes each source can already be checked for the candidate.
Related¶
- Instantiates: Inclusive Membership Union Design — realizes the at-least-one membership rule as a callable predicate.
- Consumes: Source Collection Ingestion Workflow supplies the registered, admissible sources the disjunction ranges over.
- Sibling mechanisms: Canonical Identity Resolution Pass · Deduplicating Union Pass · Overlap and Coverage Dashboard · Provenance Tagging Protocol · Type Compatibility Checklist · Union Delta Review · Union Specification Sheet
Editorial Notes¶
Form Classification¶
Form family: Assessment, Review & Assurance
Rationale: The predicate evaluates one element against admissible sources and produces a supported member or nonmember finding without constructing the full set.
Nearest alternative: Decision, Gate & Allocation — A yes result may admit the element, but the mechanism's defining output is the membership finding.
Review outcome: Adjudicated after independent review; high confidence.
Origin Attribution¶
Primary origin: Mathematics
Origin pattern: Convergent development
Present-day reach: Universal
Rationale: Membership in the union of admissible sets is elementary set theory and Boolean inclusive OR.
Related originating lineages:
- Computer Science & Software Engineering — Predicate evaluation and short-circuit OR materially implement the per-element test.
Review resolution: Logical disjunction is true when one or more operands are true, which is precisely inclusive OR. Programming languages implement the test operationally, but its truth-functional membership rule originates in mathematical logic. The retained alternate domains identify independent or materially shaping provenance, not downstream reach alone. domain_reach=universal because the mechanism is portable across essentially any field. The entry generalizes an established mechanism without inventing a new cross-domain composite.
Review outcome: Researched adjudication after independent review; high confidence.
Sources consulted:
- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Logical_OR — MDN reference stating the inclusive truth condition of logical disjunction and linking the language specification.
Notes¶
[n1] Short-circuit evaluation of a logical OR stops at the first operand that evaluates true, because the result is already determined — the property that lets an inclusive-OR membership test answer "member" after consulting a single source, and the reason a bare yes carries no information about how many sources agreed. ↩