code: def _cholesky_backward(dout_dL, L, L_inverse):
      # c.f. https://github.com/pytorch/pytorch/blob/25ba802ce4cbdeaebcad4a03cec8502f0de9b7b3/
      #      tools/autograd/templates/Functions.cpp
      A = L.transpose(-1, -2) @ dout_dL
      phi = _phi_for_cholesky_(A)
      grad_input = (L_inverse.transpose(-1, -2) @ phi) @ L_inverse
      # Symmetrize gradient
      return grad_input.add(grad_input.transpose(-1, -2)).mul_(0.5)
  
imports: import abc
  import torch
  from linear_operator.operators import CholLinearOperator, TriangularLinearOperator
  from linear_operator.utils.cholesky import psd_safe_cholesky
  from ..distributions import MultivariateNormal
  from ._variational_distribution import _VariationalDistribution
label_desc: Use image node_id 3 for calling a global function with example usage: _cholesky_backward(dout_dL, L, L_inverse) and returns: grad_input