induction ls; destruct n; intuition; simpl in *.
omega.
omega.
inversion H0.
eapply IHls; eauto.
omega.
Qed.

(* Specifications: *)
Theorem permute_length_eq :
forall (sigma : list nat)(ls : list A),
(forall n, In n sigma -> n < length ls) ->
length (permute ls sigma) = length sigma.