code: def newton_qr(jacobian_mat, newton_coefficient, step_size):
      """QR factorizes the matrix used in each iteration of Newton's method."""
      identity = tf.eye(
          ps.shape(jacobian_mat)[0], dtype=jacobian_mat.dtype
      )
      step_size_cast = tf.cast(step_size, jacobian_mat.dtype)
      newton_matrix = (
          identity - step_size_cast * newton_coefficient * jacobian_mat
      )
      factorization = tf.linalg.qr(newton_matrix)
      return factorization.q, factorization.r
  
file_path: probability/tensorflow_probability/python/math/ode/bdf_util.py
imports: import collections
  import numpy
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import prefer_static
  from tensorflow_probability.python.internal import tensorshape_util
label_desc: Use image node_id 6 for calling a global function with example usage: newton_qr(jacobian_mat, newton_coefficient, step_size) and returns: factorization,  factorization