It would be great to have reduction rules for uniform likelihoods wrt Gaussian latent variables:
This could be used for Pyro and NumPyro probabilistic programs with constraint-like likelihoods, something like
def model(data):
z = pyro.sample("z", Normal(...))
# Observe a constraint like lb < z < ub.
pyro.sample("x", Uniform(...), obs=z)
here we can be lazy and compute marginal likelihood via Normal(...).cdf([lb, ub]).