induction i; intuition; simpl in *.
Qed.

(* Specifications: *)
Theorem listReplace_None_Permutation :
forall (A : Set) n ls (y : A),
nth n ls None = None ->
Permutation (getSomes (listReplace ls n (Some y) None)) (y :: (getSomes ls)).
Theorem nth_listReplace_eq :
forall (A : Set) i (ls : list A) a def1 def2,
nth i (listReplace ls i a def1) def2 = a.