code: def _expectation_gaussian_sum_inducingpoints(
      p: Gaussian,
      kernel: kernels.Sum,
      inducing_variable: InducingPoints,
      _: None,
      __: None,
      nghp: None = None,
  ) -> tf.Tensor:
      r"""
      Compute the expectation:
      <\Sum_i Ki_{X, Z}>_p(X)
          - \Sum_i Ki_{.,.} :: Sum kernel
  
      :return: NxM
      """
      exps = [
          expectation(p, (k, inducing_variable), nghp=nghp)
          for k in kernel.kernels
      ]
      return reduce(tf.add, exps)
  
file_path: GPflow/gpflow/expectations/sums.py
imports: import itertools
  from functools import reduce
  from typing import Type, Union
  import tensorflow
  from check_shapes import check_shapes
  from ..None import kernels
  from ..None import mean_functions
  from ..inducing_variables import InducingPoints
  from ..probability_distributions import DiagonalGaussian, Gaussian, MarkovGaussian
  from .None import dispatch
  from .expectations import expectation
label_desc: Use image node_id 2 for calling a global function with example usage: _expectation_gaussian_sum_inducingpoints(p, kernel, inducing_variable, _, __, nghp) and returns: reduce