Axiom HleafNodeConst: forall x p leafIdx lvl dt,
              isLeafNode x (writeToNode p leafIdx lvl dt) ->
              isLeafNode x p.

Lemma access_rec_invariant_holds: forall (leafIdx: nat) (lIDs : list nat) (lvl:nat) (s : st_rand) (memSz : nat), init_invariant s memSz -> forall u strm stsh ttr, (u, (strm, (stsh, ttr))) = runState (access_rec leafIdx lIDs lvl) s -> init_invariant (strm, (stsh, ttr)) memSz.