# Path: blackjax/types.py



from typing import Callable, NamedTuple, Optional, Tuple
from blackjax.types import Array, PRNGKey, PyTree
import jax
import jax.numpy as jnp
import blackjax.mcmc.random_walk as random_walk
"""Public API for Rosenbluth-Metropolis-Hastings kernels."""



__all__ = ["RMHState", "RMHInfo", "init", "kernel"]


class RMHState(NamedTuple):
    """State of the RMH chain.

    position
        Current position of the chain.
    log_probability
        Current value of the log-probability
    """


# Path: blackjax/types.py



# Path: blackjax/mcmc/rmh.py
from typing import Callable, NamedTuple, Optional, Tuple
from blackjax.types import Array, PRNGKey, PyTree
import jax
import jax.numpy as jnp
import blackjax.mcmc.random_walk as random_walk

"""Public API for Rosenbluth-Metropolis-Hastings kernels."""



__all__ = ["RMHState", "RMHInfo", "init", "kernel"]


class RMHState(NamedTuple):
    """State of the RMH chain.

    position
        Current position of the chain.
    log_probability
        Current value of the log-probability
    """


    position: PyTree