Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

memory error when computing restricted_automorphism_group

I am trying to compute the restricted_automorphism_groups of permutahedra. Starting with the 5 dimensional permutahredon in R^6, I get the memory error shown below. Is there anything I can do to work around this? For what I am doing, I am really just interested in a small subgroup of the restricted_automorphism_group, but I don't know how to generate it without first generating the entire group. Thank you for any feedback!

sage: P6 = polytopes.permutahedron(6,backend = 'normaliz')                                                          
sage: G6 = P6.restricted_automorphism_group(output = 'permutation')                                                 
Python(1290,0x1086055c0) malloc: can't allocate region
*** mach_vm_map(size=18446744068325527552) failed (error code=3)
Python(1290,0x1086055c0) malloc: *** set a breakpoint in malloc_error_break to debug
---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
~/sage/local/lib/python3.7/site-packages/sage/misc/cachefunc.pyx in sage.misc.cachefunc.CachedMethodCaller.__call__ (build/cythonized/sage/misc/cachefunc.c:10304)()
   1942             try:
-> 1943                 return cache[k]
   1944             except TypeError:  # k is not hashable

KeyError: (('permutation',), ())

During handling of the above exception, another exception occurred:

MemoryError                               Traceback (most recent call last)
<ipython-input-2-3ba71fcc8be0> in <module>
----> 1 G6 = P6.restricted_automorphism_group(output = 'permutation')

~/sage/local/lib/python3.7/site-packages/sage/misc/cachefunc.pyx in sage.misc.cachefunc.CachedMethodCaller.__call__ (build/cythonized/sage/misc/cachefunc.c:10438)()
   1946                 return cache[k]
   1947         except KeyError:
-> 1948             w = self._instance_call(*args, **kwds)
   1949             cache[k] = w
   1950             return w

~/sage/local/lib/python3.7/site-packages/sage/misc/cachefunc.pyx in sage.misc.cachefunc.CachedMethodCaller._instance_call (build/cythonized/sage/misc/cachefunc.c:9917)()
   1822             True
   1823         """
-> 1824         return self.f(self._instance, *args, **kwds)
   1825 
   1826     cdef fix_args_kwds(self, tuple args, dict kwds):

~/sage/local/lib/python3.7/site-packages/sage/geometry/polyhedron/base.py in restricted_automorphism_group(self, output)
   9616                 G.add_edge(index0+i, index0+j, edge_label(i, j, c_ij))
   9617 
-> 9618         permgroup = G.automorphism_group(edge_labels=True)
   9619         if output == "permutation":
   9620             return permgroup

~/sage/local/lib/python3.7/site-packages/sage/graphs/generic_graph.py in automorphism_group(self, partition, verbosity, edge_labels, order, return_group, orbits, algorithm)
  21994             GC = HB.c_graph()[0]
  21995             partition = [[G_to[vv] for vv in cell] for cell in partition]
> 21996             A = search_tree(GC, partition, lab=False, dict_rep=True, dig=dig, verbosity=verbosity, order=order)
  21997             if order:
  21998                 a,b,c = A

~/sage/local/lib/python3.7/site-packages/sage/groups/perm_gps/partn_ref/refinement_graphs.pyx in sage.groups.perm_gps.partn_ref.refinement_graphs.search_tree (build/cythonized/sage/groups/perm_gps/partn_ref/refinement_graphs.c:13503)()
    458 
    459     lab_new = lab or certificate
--> 460     output = get_aut_gp_and_can_lab(<void *>GS, part, G.num_verts, &all_children_are_equivalent, &refine_by_degree, &compare_graphs, lab, NULL, NULL, NULL)
    461     sig_free( GS.scratch )
    462     # prepare output

~/sage/local/lib/python3.7/site-packages/sage/groups/perm_gps/partn_ref/automorphism_group_canonical_label.pyx in sage.groups.perm_gps.partn_ref.automorphism_group_canonical_label.get_aut_gp_and_can_lab (build/cythonized/sage/groups/perm_gps/partn_ref/automorphism_group_canonical_label.c:11657)()
    503             if output_prealloc is NULL:
    504                 deallocate_agcl_output(output)
--> 505             raise MemoryError
    506 
    507     # Allocate:

MemoryError: