public Tensor transform(Tensor tensor) {
if (!tensor.getIndices().getFreeIndices().equalsIgnoreOrder(indices))
return tensor;
if (symmetries.isEmpty())
return TensorNumber.createZERO();
Symmetries tensorSymmetries = IndexMappingUtils.getSymmetriesFromMappings(indices, tensor, allowDiffStates);
List<Tensor> generatedTensors = new ArrayList<>();
List<Permutation> generatedPermutations = new ArrayList<>();
OUT:
for (Permutation permutation : symmetries) {