V = K.lattice().vector_space()
# The set of all permutatin matrices on ``V``.
- Sn = [ p.matrix() for p in SymmetricGroup(V.dimension()) ]
+ Sn = ( p.matrix() for p in SymmetricGroup(V.dimension()) )
# Set of permuted generators
- pgens = []
+ pgens = ( permutation*V(g) for permutation in Sn for g in K )
- for g in K.rays():
- for permutation in Sn:
- pgens.append(permutation * V(g))
-
- L = ToricLattice(V.dimension())
- return Cone(pgens, lattice=L)
+ return Cone(pgens, K.lattice())
def is_permutation_invariant(K):
EXAMPLES::
- sage: all([ is_permutation_invariant(rearrangement_cone(p,n))
+ sage: all( is_permutation_invariant(rearrangement_cone(p,n))
....: for n in range(3, 6)
- ....: for p in range(1, n) ])
+ ....: for p in range(1, n) )
True
"""
V = K.lattice().vector_space()
# The set of all permutation matrices on ``V``.
- Sn = [ p.matrix() for p in SymmetricGroup(V.dimension()) ]
-
- for permutation in Sn:
- L = ToricLattice(V.dimension())
- permuted_gens = [ permutation * V(g) for g in K.rays() ]
- for g in permuted_gens:
- if not K.contains(g):
- return False
+ Sn = ( p.matrix() for p in SymmetricGroup(V.dimension()) )
- return True
+ return all(K.contains(permutation*V(g))
+ for g in K
+ for permutation in Sn)