code: def enumerate_support(dist):
      """
      Compute the full exponential enumeration set.
  
      Parameters:
          dist : Distribution
  
      Returns:
          (enum, enum_lengths) - (*tuple cardinality x batch_shape x event_shape*)
      """
      _, _, edges, enum_lengths = test_lookup[dist.struct]().enumerate(
          LogSemiring, dist.log_potentials, dist.lengths
      )
      # if expand:
      #     edges = edges.unsqueeze(1).expand(edges.shape[:1] + self.batch_shape[:1] + edges.shape[1:])
      return edges, enum_lengths
  
file_path: pytorch-struct/tests/test_distributions.py
imports: from torch_struct import LinearChainCRF, Autoregressive, KMaxSemiring, LogSemiring
  import torch
  from hypothesis import given, settings
  from hypothesis.strategies import integers, data, sampled_from
  from .extensions import test_lookup
label_desc: Use image node_id 1 for calling a global function with example usage: enumerate_support(dist) and returns: edges,  enum_lengths