This patch improves the "Phase.explain" phase so that simple cases
like "assert n1 == n2" no longer get a misleading "# or any other
generated value" comment (issue #4715). Before falling back to random
sampling, we now also try borrowing values from each other arg slice
with matching shape.
The canonical version of these notes (with links) is on readthedocs.