permutation-safe Provides a safe permutation type allowing users to convert between permutation representations fearlessly. Anything of type "Permutation a" is guaranteed to be a valid permutation over a.