AePPL and elements of multi-dimensional random variables

With AePPL/AeMCMC one should be able to condition on some components of a multivariate distribution:

import aeppl
import aesara.tensor as at

srng = at.random.RandomStream(0)

mu = at.vector("mu")
sigma = at.matrix("sigma")
idx = at.iscalar("i")
X_rv = at.random.multivariate_normal(mu, sigma)

Z_rv = X_rv[:idx]
Y_rv = X_rv[idx:]

logprob, (z_vv,) = aeppl.joint_logprob(Z_rv, realized={Y_rv: y_obs})

See these notes for applications of this, and how to efficiently do it.

Links to this note