class_docstr: stores a single scalar value and its gradient 
class_docstr_tok: ["stores","a","single","scalar","value","and","its","gradient"]
code: def backward(self):
      # topological order all of the children in the graph
      topo = []
      visited = set()
  
      def build_topo(v):
          if v not in visited:
              visited.add(v)
              for child in v._prev:
                  build_topo(child)
              topo.append(v)
  
      build_topo(self)
  
      # go one variable at a time and apply the chain rule to get its gradient
      self.grad = 1
      for v in reversed(topo):
          v._backward()
  
file_path: micrograd/micrograd/engine.py
label_desc: Use image node_id 6 for calling the Value obj's underlying member method code with example usage: obj.backward() without return types