intuition.
destruct (lt_dec n k).
eapply nth_allNatsLt_lt; intuition.
eapply nth_overflow.
rewrite allNatsLt_length.
omega.
Qed.

(* Specifications: *)
Theorem allNatsLt_filter_lt :
forall (p n : nat),
(n <= p)%nat->
filter (fun z => if (lt_dec z n) then true else false) (allNatsLt p) =
allNatsLt n.