code: def generate_algebra_inverse_sample(
      vlist, ops, solve_ops, min_depth, max_depth
  ):
      """Randomly generate an algebra inverse dataset sample.
  
      Given an input equation and variable, produce the expression equal to the
      variable.
  
      Args:
        vlist: Variable list. List of chars that can be used in the expression.
        ops: List of ExprOp instances. The allowed operators for the expression.
        solve_ops: See `solve_ops` documentation in `algebra_inverse_solve`.
        min_depth: Expression trees will not have a smaller depth than this. 0 means
            there is just a variable. 1 means there is one operation.
        max_depth: Expression trees will not have a larger depth than this. To make
            all trees have the same depth, set this equal to `min_depth`.
  
      Returns:
        sample: String representation of the input. Will be of the form
            'solve_var:left_side=right_side'.
        target: String representation of the solution.
      """
      side = random.randrange(2)
      left_depth = random.randrange(
          min_depth if side else 0, max_depth + 1
      )
      right_depth = random.randrange(
          min_depth if not side else 0, max_depth + 1
      )
  
      var_index = random.randrange(len(vlist))
      var = vlist[var_index]
      consts = vlist[:var_index] + vlist[var_index + 1 :]
  
      left = random_expr_with_required_var(
          left_depth, var if side else None, consts, ops
      )
      right = random_expr_with_required_var(
          right_depth, var if not side else None, consts, ops
      )
  
      left_str = str(left)
      right_str = str(right)
      target = str(algebra_inverse_solve(left, right, var, solve_ops))
      sample = "%s:%s=%s" % (var, left_str, right_str)
      return sample, target
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from collections import namedtuple
  import random
  import six
  from six.moves import range
  import sympy
label_desc: Use image node_id 6 for calling a global function with example usage: generate_algebra_inverse_sample(vlist, ops, solve_ops, min_depth, max_depth) and returns: sample,  target