class_docstr: The matrix Wishart distribution on positive definite matrices.
  
  This distribution is defined by a scalar number of degrees of freedom `df` and
  an instance of `LinearOperator`, which provides matrix-free access to a
  symmetric positive definite operator, which defines the scale matrix.
  
  #### Mathematical Details
  
  The probability density function (pdf) is,
  
  ```none
  pdf(X; df, scale) = det(X)**(0.5 (df-k-1)) exp(-0.5 tr[inv(scale) X]) / Z
  Z = 2**(0.5 df k) |det(scale)|**(0.5 df) Gamma_k(0.5 df)
  ```
  
  where:
  
  * `df >= k` denotes the degrees of freedom,
  * `scale` is a symmetric, positive definite, `k x k` matrix,
  * `Z` is the normalizing constant, and,
  * `Gamma_k` is the [multivariate Gamma function](
    https://en.wikipedia.org/wiki/Multivariate_gamma_function).
  
  #### Examples
  
  See the `Wishart` class for examples of initializing and using this class.
class_docstr_tok: ["The","matrix","Wishart","distribution","on","positive","definite","matrices",".","This","distribution","is","defined","by","a","scalar","number","of","degrees","of","freedom","`","df","`","and","an","instance","of","`","LinearOperator","`",",","which","provides","matrix-free","access","to","a","symmetric","positive","definite","operator",",","which","defines","the","scale","matrix",".","#","#","#","#","Mathematical","Details","The","probability","density","function","(","pdf",")","is",",","``","`","none","pdf","(","X",";","df",",","scale",")","=","det","(","X",")","*","*","(","0.5","(","df-k-1",")",")","exp","(","-0.5","tr","[","inv","(","scale",")","X","]",")","\/","Z","Z","=","2","*","*","(","0.5","df","k",")","|det","(","scale",")","|","*","*","(","0.5","df",")","Gamma_k","(","0.5","df",")","``","`","where",":","*","`","df",">","=","k","`","denotes","the","degrees","of","freedom",",","*","`","scale","`","is","a","symmetric",",","positive","definite",",","`","k","x","k","`","matrix",",","*","`","Z","`","is","the","normalizing","constant",",","and",",","*","`","Gamma_k","`","is","the","[","multivariate","Gamma","function","]","(","https",":","\/\/en.wikipedia.org\/wiki\/Multivariate_gamma_function",")",".","#","#","#","#","Examples","See","the","`","Wishart","`","class","for","examples","of","initializing","and","using","this","class","."]
code: def _parameter_control_dependencies(self, is_init):
      assertions = []
      if is_init:
          if not dtype_util.is_floating(self._scale.dtype):
              raise TypeError(
                  "scale.dtype={} is not a floating-point type.".format(
                      self._scale.dtype
                  )
              )
          if not self._scale.is_square:
              raise ValueError("scale must be square.")
          dtype_util.assert_same_float_dtype([self._df, self._scale])
  
      df_val = tf.get_static_value(self._df)
      dim_val = tf.compat.dimension_value(self._scale.shape[-1])
      msg = (
          "Degrees of freedom (`df = {}`) cannot be less than dimension of "
          "scale matrix (`scale.dimension = {}`)."
      )
      if is_init and df_val is not None and dim_val is not None:
          df_val = np.asarray(df_val)
          dim_val = np.asarray(dim_val)
          if not dim_val.shape:
              dim_val = dim_val[np.newaxis, ...]
          if not df_val.shape:
              df_val = df_val[np.newaxis, ...]
          if np.any(df_val < dim_val):
              raise ValueError(msg.format(df_val, dim_val))
  
      elif self.validate_args:
          if is_init != tensor_util.is_ref(
              self._df
          ) or is_init != tensor_util.is_ref(self._scale):
              df = tf.convert_to_tensor(self._df)
              dimension = self._dimension()
              assertions.append(
                  assert_util.assert_less_equal(
                      dimension, df, message=(msg.format(df, dimension))
                  )
              )
  
      return assertions
  
imports: import math
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import chain
  from tensorflow_probability.python.bijectors import cholesky_outer_product
  from tensorflow_probability.python.bijectors import fill_scale_tril
  from tensorflow_probability.python.bijectors import softplus
  from tensorflow_probability.python.bijectors import transform_diagonal
  from tensorflow_probability.python.distributions import distribution
  from tensorflow_probability.python.distributions import gamma
  from tensorflow_probability.python.internal import assert_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.internal import tensorshape_util
label_desc: Use image node_id 24 for calling the WishartLinearOperator obj's underlying member method code with example usage: obj._parameter_control_dependencies(is_init) and returns: assertions