class_docstr: Bijector which applies a Stick Breaking procedure.
  
  Given a vector `x`, transform it in to a vector `y` such that
  `y[i] > 0, sum_i y[i] = 1.`. In other words, takes a vector in
  `R^{k-1}` (unconstrained space) and maps it to a vector in the
  unit simplex in `R^{k}`.
  
  This transformation is centered in that it maps the zero vector
  `[0., 0., ... 0.]` to the center of the simplex `[1/k, ... 1/k]`.
  
  This bijector arises from the stick-breaking procedure for constructing
  a Dirichlet distribution / Dirichlet process as defined in [Stan, 2018][1].
  
  
  Example Use:
  
  ```python
  
  bijector.IteratedSigmoidCentered().forward([0., 0., 0.])
  # Result: [0.25, 0.25, 0.25, 0.25]
  # Extra result: 0.25
  
  bijector.IteratedSigmoidCentered().inverse([0.25, 0.25, 0.25, 0.25])
  # Result: [0., 0., 0.]
  # Extra coordinate removed.
  ```
  
  At first blush it may seem like the [Invariance of domain](
  https://en.wikipedia.org/wiki/Invariance_of_domain) theorem implies this
  implementation is not a bijection. However, the appended dimension
  makes the (forward) image non-open and the theorem does not directly apply.
  
  
  #### References
  
  [1]: Stan Development Team. 2018. Stan Modeling Language Users Guide and
       Reference Manual, Version 2.18.0. http://mc-stan.org
code: def _forward_event_shape(self, input_shape):
      if not input_shape[-1:].is_fully_defined():
          return input_shape
      return input_shape[:-1].concatenate(input_shape[-1] + 1)
  
file_path: probability/tensorflow_probability/python/bijectors/iterated_sigmoid_centered.py
imports: import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import bijector
  from tensorflow_probability.python.internal import assert_util
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import prefer_static
label_desc: Use image node_id 3 for calling the IteratedSigmoidCentered obj's underlying member method code with example usage: obj._forward_event_shape(input_shape) and returns: input_shape, input_shape