code: def log_prob(value, df, loc, scale, skewness):
      """Compute the log probability of Two-Piece Student's t-distribution.
  
      Note that `scale` and `skewness` can be negative.
  
      Args:
        value: Floating-point tensor; where to compute the log probabilities.
        df: Floating-point tensor; the degree(s) of freedom of the
          distribution(s). Must contain only positive values.
        loc: Floating-point tensor; the location(s) of the distribution(s).
        scale: Floating-point tensor; the scale(s) of the distribution(s).
        skewness: Floating-point tensor; the skewness(es) of the distribution(s).
  
      Returns:
        A tensor with shape broadcast according to the arguments.
      """
      dtype = dtype_util.common_dtype(
          [value, df, loc, scale, skewness], tf.float32
      )
      numpy_dtype = dtype_util.as_numpy_dtype(dtype)
  
      value, df, loc, scale, skewness = [
          tf.convert_to_tensor(param, dtype=dtype)
          for param in (value, df, loc, scale, skewness)
      ]
  
      half = numpy_dtype(0.5)
  
      z = standardize(value, loc=loc, scale=scale, skewness=skewness)
  
      log_unnormalized_prob = (
          -half
          * (df + numpy_dtype(1.0))
          * log1psquare(z * tf.math.rsqrt(df))
      )
      log_normalization = (
          tf.math.log(tf.abs(scale))
          + log1psquare(skewness)
          - tf.math.log(numpy_dtype(2.0) * tf.math.abs(skewness))
          + half * tf.math.log(df)
          + special.lbeta(half, half * df)
      )
  
      return log_unnormalized_prob - log_normalization
  
imports: import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import identity
  from tensorflow_probability.python.bijectors import softplus
  from tensorflow_probability.python.distributions import distribution
  from tensorflow_probability.python.distributions import gamma
  from tensorflow_probability.python.distributions import student_t
  from tensorflow_probability.python.distributions import two_piece_normal
  from tensorflow_probability.python.internal import assert_util
  from tensorflow_probability.python.internal import distribution_util
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import parameter_properties
  from tensorflow_probability.python.internal import prefer_static
  from tensorflow_probability.python.internal import reparameterization
  from tensorflow_probability.python.internal import samplers
  from tensorflow_probability.python.internal import tensor_util
  from tensorflow_probability.python.math import special
  from tensorflow_probability.python.math.numeric import log1psquare
label_desc: Use image node_id 2 for calling a global function with example usage: log_prob(value, df, loc, scale, skewness) and returns: unknown