2016-04-21 3 views
2

Quelle fonction de sympy.combinatorics.permutations peut retourner la permutation inverse d'une permutation donnée? Les recherches dans Google ne donnent pas de résultats. Je peux écrire cette fonction, mais si cela a déjà été implémenté dans sympy, ce sera inutile.Inverser les permutations avec sympy

Merci pour toute aide!

Répondre

4

Vous cherchez ~:

In [5]: print Permutation.__invert__.__doc__ 
     Return the inverse of the permutation. 
     A permutation multiplied by its inverse is the identity permutation. 
     Examples 
     ======== 
     >>> from sympy.combinatorics.permutations import Permutation 
     >>> p = Permutation([[2,0], [3,1]]) 
     >>> ~p 
     Permutation([2, 3, 0, 1]) 
     >>> _ == p**-1 
     True 
     >>> p*~p == ~p*p == Permutation([0, 1, 2, 3]) 
     True 

In [6]: ~Permutation(1, 2, 0) 
Out[6]: Permutation(0, 2, 1) 

** -1 fonctionne également. La documentation en ligne ne l'explique jamais littéralement, alors je peux voir comment vous ne l'avez pas trouvé. ~ est seulement mentionné dans les explications des méthodes commutator et mul_inv.