This implements the start of #14, introducing a predicate to determine whether an `Expr` has a well-defined value. We aren't currently using it in the `Arbitrary` instance.
#108029
mentioned in issue #14 (closed)