Skip to content

Coverage / Reachability

Core Idea

Coverage asserts that every required target in a target set is reachable from the system's inputs, pathways, or mechanisms — completeness in the surjective direction. The failure mode is a gap: a required target reached by no source. The claim is silent about uniqueness, efficiency, or whether multiple pathways exist.

How would you explain it like I'm…

A Crayon for Every Colour

Imagine you have a box of crayons and a picture you want to finish. Coverage means: for every colour the picture needs, you have at least one crayon that can make it. If even one needed colour is missing from your box, that is a gap. You do not care how many crayons of that colour you have, just that none of the needed ones are missing.

Reach Everything, No Gaps

Coverage, or reachability, is the claim that every target you are supposed to reach can be reached from your system's inputs or pathways. It is a completeness claim: nothing required is left unreachable. The failure mode is a gap, a target that was supposed to be reachable but is not. You check it by listing all the required targets and making sure at least one path leads to each one. It deliberately says nothing about whether the path is the best one, or whether there are several paths, only that at least one exists for every target. A sneaky risk is that the list of required targets quietly grows, new cases get added, while everyone keeps trusting the old proof that coverage held.

Every Target Reachable

Coverage / reachability is the structural pattern of asserting that every required target in some target set is reachable from, or producible by, the system's inputs, pathways, or mechanisms. It is a completeness claim in the surjective direction: the system covers the target set and nothing required is left unreachable. The failure mode is a gap, a target the system was supposed to reach but cannot, and the diagnostic is to enumerate the required targets and check at least one pathway exists to each. It is deliberately silent about uniqueness, efficiency, or how many pathways exist. Formally it is the surjectivity of a relation from a source set onto a required-target set. Two properties follow: coverage is monotone, since adding inputs or pathways can only increase it, and it is relative to the target set, so it can be trivially gained by shrinking the targets or broken by expanding them, which makes the target set itself a load-bearing design choice rather than fixed background. It is the surjective sibling of injectivity, which forbids collisions; together they give the bijection properties, but each can hold or fail without the other.

 

Coverage / reachability is the structural pattern of asserting that every required target in some target set is reachable from, or producible by, the system's inputs, pathways, or mechanisms. The claim is one of completeness in the surjective direction: the system covers the target set, and nothing required is left unreachable. The failure mode is a gap, a target that the system was supposed to reach but cannot, and the diagnostic is enumeration of the required targets plus a check that at least one pathway exists to each. The pattern is the completeness claim about a relation (a mapping, routing, accessibility, or productive capacity) and is deliberately silent about the uniqueness or efficiency of the pathway and about whether multiple pathways exist. Formally it is the surjectivity of a relation R from a source set S to a required-target set T: for every t in T there exists some s in S with s R t, the negation being a t reached by no s. Two structural properties follow. Coverage is monotone: adding inputs or pathways can only increase it, removing them can only decrease it. And coverage is relative to T: it is trivially achieved by shrinking T and trivially broken by expanding it, which makes the target set itself a load-bearing design artefact rather than a fixed background. The standing risk is that a coverage claim rests on an implicit target set that drifts, new branches, beneficiary classes, or failure modes silently enlarging T while the old coverage proof is still cited. It is the surjective sibling of injectivity (no collisions, distinct inputs to distinct outputs); together they generate the standard bijection properties, but each carries an independent intervention catalogue and can hold or fail without the other.

Broad Use

  • Software testing: branch, path, and statement coverage — every code branch exercised by at least one test.
  • Network reachability: every required destination reachable from every required origin in the routing fabric.
  • Public policy: every entitled beneficiary class has at least one accessible pathway to the benefit; gaps are eligible-but-unreachable populations.
  • Access control: every required action permitted by at least one granted role; an unpermitted required action breaks the workflow.
  • Curriculum design: every required competency taught by at least one course; an uncovered competency is a graduation gap.
  • Failure-mode analysis: every documented failure mode has at least one mitigating control; an uncovered mode is a hole in the safety case.

Clarity

It distinguishes completeness in the surjective direction from neighbouring completeness claims, and foregrounds the target set as a design object: coverage is meaningful only relative to a stipulated set, so an honest claim must state its target set explicitly.

Manages Complexity

It reduces heterogeneous problems to one five-step procedure — enumerate targets, map pathways, identify gaps, close gaps, watch for target-set drift — that a test engineer, network architect, and safety analyst all run under different names.

Abstract Reasoning

Because coverage is monotone in pathways and relative to the target set, the non-obvious move is to treat target-set drift, not pathway failure, as the dominant silent failure: a quietly growing target set leaves an old, still-cited coverage proof that no longer covers.

Knowledge Transfer

  • Across domains: required-target set maps to branches / destinations / beneficiary classes / competencies; the relation maps to exercises / routes-to / reaches / teaches; the audit is invariant.
  • The portable lesson: the most dangerous coverage failures are usually unexamined growth of the target set, so the audit must re-anchor on it every time.

Example

A test report citing "92%" branch coverage silently goes stale the moment a developer adds a new if, because the target set enlarged while the old proof was measured against a smaller one — fixed honestly by writing a test, cosmetically by excluding the file.

Relationships to Other Primes

One-hop neighborhood: parents above, mutual partners to the right, children below.Coverage /Reachabilitysubsumption: SurjectivitySurjectivity

Parents (1) — more general patterns this builds on

  • Coverage / Reachability is a kind of Surjectivity — The file states outright "Formally, the pattern is the surjectivity of a relation R from a source set S to a required-target set T", calls itself "the surjective sibling of injectivity" and "the specific surjective form" of completeness, and its own cross-ref link is surjectivity. The worklist confirms surjectivity is a canonical/candidate prime (injectivity its co-equal dual). Direction: coverage_reachability is-a surjectivity, specialized to an explicit required-target set with the gap/monotonicity/ target-drift apparatus added — genuine specialization, not a duplicate. surjectivity is a valid (CAND-NEW-011) slug. Medium conviction because the added target-set-relativity makes it arguably a co-equal applied sibling rather than a strict child; child_of surjectivity is the better-fitting direction.

Path to root: Coverage / ReachabilitySurjectivity

Not to Be Confused With

  • Coverage / Reachability is not Traceability because traceability is a per-element provenance claim (each artefact links back to its source), whereas coverage is surjective completeness (every target reached by some source).
  • Coverage / Reachability is not Redundancy because coverage demands at least one pathway and is silent about a second, whereas redundancy demands more than one and adds resilience coverage never offers.
  • Coverage / Reachability is not general Completeness because coverage is the specific surjective form — completeness of a relation relative to a stipulated target set, monotone in pathways.