Fixpoint wf_btree_over t :=
match t with BNode keys children =>
(length keys = 2 * d + 1)%nat /\
(children = [] \/ length children = S (length keys) /\ Forall wf_btree_aux children)
end.

Corollary find_index_valid : forall tgt keys (children : list bnode) i
(Hwf : children = [] \/ length children = S (length keys))
(Hfind : find_index tgt keys = NotFound i),
(i < length children)%nat \/ children = [].