code: def dual_csiszar_function(logu, csiszar_function, name=None):
      """Calculates the dual Csiszar-function in log-space.
  
      A Csiszar-function is a member of,
  
      ```none
      F = { f:R_+ to R : f convex }.
      ```
  
      The Csiszar-dual is defined as:
  
      ```none
      f^*(u) = u f(1 / u)
      ```
  
      where `f` is some other Csiszar-function.
  
      For example, the dual of `kl_reverse` is `kl_forward`, i.e.,
  
      ```none
      f(u) = -log(u)
      f^*(u) = u f(1 / u) = -u log(1 / u) = u log(u)
      ```
  
      The dual of the dual is the original function:
  
      ```none
      f^**(u) = {u f(1/u)}^*(u) = u (1/u) f(1/(1/u)) = f(u)
      ```
  
      Warning: this function makes non-log-space calculations and may therefore be
      numerically unstable for `|logu| >> 0`.
  
      Args:
        logu: `float`-like `Tensor` representing `log(u)` from above.
        csiszar_function: Python `callable` representing a Csiszar-function over
          log-domain.
        name: Python `str` name prefixed to Ops created by this function.
  
      Returns:
        dual_f_of_u: `float`-like `Tensor` of the result of calculating the dual of
          `f` at `u = exp(logu)`.
      """
  
      with tf.name_scope(name or "dual_csiszar_function"):
          return tf.exp(logu) * csiszar_function(-logu)
  
imports: import enum
  import functools
  import warnings
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python import monte_carlo
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import nest_util
  from tensorflow_probability.python.internal import prefer_static
  from tensorflow_probability.python.internal import samplers
  from tensorflow_probability.python.internal.reparameterization import FULLY_REPARAMETERIZED
  from tensorflow_probability.python.stats.leave_one_out import log_soomean_exp
  from tensorflow.python.util import deprecation
label_desc: Use image node_id 16 for calling a global function with example usage: dual_csiszar_function(logu, csiszar_function, name) and returns: unknown