class_docstr: A PositiveSemidefiniteKernel implementation just for testing purposes.
  
  k(x, y) = m * sum(x + y)
  
  Not at all positive semidefinite, but we don't care about this here.
class_docstr_tok: ["A","PositiveSemidefiniteKernel","implementation","just","for","testing","purposes",".","k","(","x",",","y",")","=","m","*","sum","(","x","+","y",")","Not","at","all","positive","semidefinite",",","but","we","do","n't","care","about","this","here","."]
code: def _apply(self, x1, x2, example_ndims=0):
      x1 = tf.convert_to_tensor(x1)
      x2 = tf.convert_to_tensor(x2)
  
      value = tf.reduce_sum(x1 + x2, axis=-1)
      if self.multiplier is not None:
          multiplier = kernels_util.pad_shape_with_ones(
              self._multiplier, example_ndims
          )
          value = value * multiplier
  
      return value
  
imports: import functools
  import operator
  from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.internal import parameter_properties
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math.psd_kernels import positive_semidefinite_kernel
  from tensorflow_probability.python.math.psd_kernels.internal import test_util
  from tensorflow_probability.python.math.psd_kernels.internal import util
label_desc: Use image node_id 4 for calling the TestKernel obj's underlying member method code with example usage: obj._apply(x1, x2, example_ndims) and returns: value