Imagine a local plan with no allocations, everything is windfall, and that local plan sets a target, of say 8,000 units.
You could represent that amount by a set marked local plan- windfalls.
Now imagine you allocate one site that would have come forward anyway of 100 units.
Is the new local plan target 8,100 units. No because you have to discount the windfalls by 100 units.
Its now an island of 100 units within the set space of 8,000 units, the windfall being 7,900 units. This avoids any possibility of double counting.
The total local plan allocation being the union
A ∪ B
of allocated and windfall sites.
Now imagine there was a constraint relaxed such as green belt to create 500 more units. This would be a superset of the original allocation therefore adding extra units that would not come forward without a local plan review. So the total would be 100 allocated without relaxing plan constraints, 7,900 units windfall and 500 through expanding the set = 8,500 units.
In practice as you allocate more and more site and apply this discounting method windfalls reduce to a minor element of overall supply.
Similar methods have been used at many local plan LPIs but I have never seen a write up of the overall logic.