Definition  source j m (b2:block) (ofs2:Z) : option(block * Z) :=
if plt 1%positive (Mem.nextblock m)
then sourceN (Pos.pred (Mem.nextblock m)) j m b2 ofs2
else None.

Lemma valid_splitC: forall (T:Type)(m:mem) (b:block) X (A B:T)
(SPLIT: if plt b (Mem.nextblock m)
then X = A
else X = B)
P
(HA: Mem.valid_block m b -> X=A -> P)
(HB: ~Mem.valid_block m b -> X=B -> P), P.