Skip to content

Tensions in Practice: Conjunctive restrictions in tension with alternative matches

Three objects and two tag-search contracts

Object R is red and square, S is blue and round, and T is red and round. One search mode requires every selected tag; another requires at least one selected tag. With Red alone they agree. With Red and Round they differ. With no selected tags, every object satisfies all zero restrictions, but no object can match at least one of zero alternatives.

Require every selected property

Treat tags as restrictions that all matches must satisfy.

Admit any selected property

Treat tags as alternative ways for an object to qualify.

Why these aims pull against each other

The empty input is valid in both modes. Its opposite results follow from conjunction versus disjunction, so a user cannot infer the result from the empty list alone.

Compare the arrangements

Require all tags

Intersect the matching sets for selected tags. Define the intersection of no restrictions over this fixed universe as the whole universe.

Match every chosen tag
RST
No tagsYesYesYes
RedYesNoYes
Red + roundNoNoYes
What it protects
Each returned object meets every chosen restriction; clearing restrictions restores the full catalog.
What it costs
Combining tags can exclude objects that match one desired property but not the other.
When it fits
Fits a narrowing search in which each tag adds a requirement.

Illustration note: The no-tag result is vacuous satisfaction, not evidence that an object has an unlisted property.

Accept any tag

Union the matching sets for selected tags. The union of no selected alternatives is empty.

Match at least one chosen tag
RST
No tagsNoNoNo
RedYesNoYes
Red + roundYesYesYes
What it protects
Selecting alternatives broadens discovery to any of the named categories.
What it costs
Results need not satisfy every tag; clearing all alternatives leaves no matches.
When it fits
Fits a selection query in which at least one positive match is required.

Illustration note: The empty result means no qualifying alternative was selected. It does not mean the catalog is empty or loading failed.

What this illustration does—and does not—establish

The source supplies the structural tension. This bounded example makes a particular relation inspectable; the aims, conditions and residual costs are part of the comparison.

  • R, S and T form the entire invented universe; tag membership is exact and fixed.
  • These are two deliberately distinct query contracts. Neither is a silent fallback or an interpretation of null.
  • The all-tags empty intersection requires a specified universe. It is not the same operation as intersecting a nonempty set with an empty set.

Source entries

Empty Set

Prime · Source of the tension

The canonical tension motivates this comparison. The setting and arrangements are declared editorial illustrations, not observed findings.

Identity Element versus Absorbing Element

The empty case is the do-nothing identity for some operations (∅ for union, [] for concatenation) but the absorbing zero for others (∅ for intersection, the empty set as ∩-annihilator over the universe). Which role it plays is operation-relative, and the two are opposites.

Read the source section

The source operation

The empty set is a *well-typed absence*: a collection that is fully specified, fully a member of the kind "collection," yet contains nothing.

Read the source section