class_docstr: For now, we assume every group has only one logic expression.
class_docstr_tok: ["For","now",",","we","assume","every","group","has","only","one","logic","expression","."]
docstr: Create new group for the expr
docstr_tok: ["Create","new","group","for","the","expr"]
code: def _create_new_group(self, expr: GroupExpression):
      """
      Create new group for the expr
      """
      new_group_id = len(self._groups)
      aliases = self._get_table_aliases(expr)
      self._groups[new_group_id] = Group(new_group_id, aliases)
      self._insert_expr(expr, new_group_id)
  
file_path: evadb/evadb/optimizer/memo.py
imports: from typing import Dict, List
  from evadb.constants import UNDEFINED_GROUP_ID
  from evadb.optimizer.group import Group
  from evadb.optimizer.group_expression import GroupExpression
  from evadb.optimizer.operators import OperatorType
  from evadb.utils.logging_manager import logger
label_desc: Use image node_id 7 for calling the Memo obj's underlying member method code with example usage: obj._create_new_group(expr) without return types