The StochasticTensor in the generative model is used to keep track of the sample x ~ p(x|z) and the density p(x|z) so we can evaluate it when computing the log probability of the data given the sampled latent state, z.
In practice we don't have acess to T* and use the current discriminator T as a replacement. T does not directly depend on the parameters of p, so d/dp -T(x, z) is 0, and the gradients are identical to the gradients using the separate losses in the paper.
Thank you for your interesting post. Please forgive me if I ask a dumb question. How could I find "stochastic_tensor" module on tensorflow? I use the version 1.8 installed with pip but it says there is no such module. Thank you.