code: def test_upstream_rngs_not_in_compiled_logp(self, seeded_test):
      smc = IMH(model=self.SMABC_test)
      smc.initialize_population()
      smc._initialize_kernel()
      likelihood_func = smc.likelihood_logp_func
  
      # Test graph is stochastic
      inarray = floatX(np.array([0, 0]))
      assert likelihood_func(inarray) != likelihood_func(inarray)
  
      # Test only one shared RNG is present
      compiled_graph = likelihood_func.maker.fgraph.outputs
      shared_rng_vars = [
          node
          for node in ancestors(compiled_graph)
          if isinstance(
              node,
              (
                  RandomStateSharedVariable,
                  RandomGeneratorSharedVariable,
              ),
          )
      ]
      assert len(shared_rng_vars) == 1
  
imports: import warnings
  import cloudpickle
  import numpy
  import pytensor
  import pytest
  import scipy.stats
  from pytensor.graph import ancestors
  from pytensor.tensor.random.op import RandomVariable
  from pytensor.tensor.random.var import RandomGeneratorSharedVariable, RandomStateSharedVariable
  from pytensor.tensor.sort import SortOp
  import pymc
  from pymc import floatX
  from pymc.initial_point import make_initial_point_fn
  from pymc.pytensorf import compile_pymc
  from pymc.smc.kernels import IMH
label_desc: Use image node_id 13 for calling the TestSimulator obj's underlying member method code with example usage: obj.test_upstream_rngs_not_in_compiled_logp(seeded_test) without return types