docs: def simple_predictive_probability(self, M_c, X_L, X_D, Y, Q):
          """Calculate probability of a cell taking a value given a latent state.
  
          :param Y: A list of constraints to apply when querying.  Each constraint
              is a triplet of (r, d, v): r is the row index, d is the column
              index and v is the value of the constraint
          :type Y: list of lists
          :param Q: A list of values to query.  Each value is triplet of (r, d, v):
              r is the row index, d is the column index, and v is the value at
              which the density is evaluated.
          :type Q: list of lists
  
          :returns: list of floats -- probabilities of the values specified by Q
          """
          return su.simple_predictive_probability(M_c, X_L, X_D, Y, Q)