class_docstr: Class for storing a causal estimand, as a result of the identification step using the ID algorithm.
  The object stores a list of estimators(self._product) whose porduct must be obtained and a list of variables (self._sum) over which the product must be marginalized.
class_docstr_tok: ["Class","for","storing","a","causal","estimand",",","as","a","result","of","the","identification","step","using","the","ID","algorithm",".","The","object","stores","a","list","of","estimators","(","self._product",")","whose","porduct","must","be","obtained","and","a","list","of","variables","(","self._sum",")","over","which","the","product","must","be","marginalized","."]
docstr: Get either the list of estimators (for product) or list of variables (for the marginalization).
  
  :param return_type: "prod" to return the list of estimators or "sum" to return the list of variables.
docstr_tok: ["Get","either","the","list","of","estimators","(","for","product",")","or","list","of","variables","(","for","the","marginalization",")",".",":","param","return_type",":","``","prod","''","to","return","the","list","of","estimators","or","``","sum","''","to","return","the","list","of","variables","."]
code: def get_val(self, return_type: str):
      """
      Get either the list of estimators (for product) or list of variables (for the marginalization).
  
      :param return_type: "prod" to return the list of estimators or "sum" to return the list of variables.
      """
      if return_type == "prod":
          return self._product
      elif return_type == "sum":
          return self._sum
      else:
          raise Exception("Provide correct return type.")
  
file_path: dowhy/dowhy/causal_identifier/id_identifier.py
imports: from typing import Dict, List, Optional, Set, Union
  import networkx
  import numpy
  from dowhy.graph import get_adjacency_matrix
  from dowhy.utils.api import parse_state
  from dowhy.utils.graph_operations import find_ancestor, find_c_components, induced_graph
  from dowhy.utils.ordered_set import OrderedSet
label_desc: Use image node_id 4 for calling the IDExpression obj's underlying member method code with example usage: obj.get_val(return_type) and returns: self, self