class_docstr: Discards samples to perform thinning.
  
  `ThinningKernel` is a composable `TransitionKernel` that thins samples
  returned by its `inner_kernel`. All Transition Kernels wrapping it will only
  see non-discarded samples.
docstr: Collects one non-thinned chain state.
  
  Args:
    current_state: `Tensor` or Python `list` of `Tensor`s
      representing the current state(s) of the Markov chain(s),
    previous_kernel_results: `collections.namedtuple` containing `Tensor`s
      representing values from previous calls to this function (or from the
      `bootstrap_results` function).
    seed: PRNG seed; see `tfp.random.sanitize_seed` for details.
  
  Returns:
    new_chain_state: Newest non-discarded MCMC chain state drawn from
      the `inner_kernel`.
    kernel_results: `collections.namedtuple` of internal calculations used to
      advance the chain.
docstr_tok: ["Collects","one","non-thinned","chain","state",".","Args",":","current_state",":","`","Tensor","`","or","Python","`","list","`","of","`","Tensor","`","s","representing","the","current","state","(","s",")","of","the","Markov","chain","(","s",")",",","previous_kernel_results",":","`","collections.namedtuple","`","containing","`","Tensor","`","s","representing","values","from","previous","calls","to","this","function","(","or","from","the","`","bootstrap_results","`","function",")",".","seed",":","PRNG","seed",";","see","`","tfp.random.sanitize_seed","`","for","details",".","Returns",":","new_chain_state",":","Newest","non-discarded","MCMC","chain","state","drawn","from","the","`","inner_kernel","`",".","kernel_results",":","`","collections.namedtuple","`","of","internal","calculations","used","to","advance","the","chain","."]
code: def one_step(self, current_state, previous_kernel_results, seed=None):
      """Collects one non-thinned chain state.
  
      Args:
        current_state: `Tensor` or Python `list` of `Tensor`s
          representing the current state(s) of the Markov chain(s),
        previous_kernel_results: `collections.namedtuple` containing `Tensor`s
          representing values from previous calls to this function (or from the
          `bootstrap_results` function).
        seed: PRNG seed; see `tfp.random.sanitize_seed` for details.
  
      Returns:
        new_chain_state: Newest non-discarded MCMC chain state drawn from
          the `inner_kernel`.
        kernel_results: `collections.namedtuple` of internal calculations used to
          advance the chain.
      """
      with tf.name_scope(
          mcmc_util.make_name(self.name, "thinned_kernel", "one_step")
      ):
          return step.step_kernel(
              num_steps=self.num_steps_to_skip + 1,
              current_state=current_state,
              previous_kernel_results=previous_kernel_results,
              kernel=self.inner_kernel,
              return_final_kernel_results=True,
              seed=seed,
              name=self.name,
          )
  
file_path: probability/tensorflow_probability/python/experimental/mcmc/thinning_kernel.py
imports: import tensorflow.compat.v2
  from tensorflow_probability.python.experimental.mcmc import step
  from tensorflow_probability.python.mcmc import kernel
  from tensorflow_probability.python.mcmc.internal import util
label_desc: Use image node_id 2 for calling the ThinningKernel obj's underlying member method code with example usage: obj.one_step(current_state, previous_kernel_results, seed) and returns: step