(*The blocks explicitly exported via call arguments, plus the already shared blocks*)
Definition exportedSrc mu vals b := orb (getBlocks vals b) (sharedSrc mu b).Definition exportedTgt mu vals b := orb (getBlocks vals b) (sharedTgt mu b).

Lemma val_list_inject_sub_on' j k: forall vals1 vals2 (V: Val.inject_list j vals1 vals2) (HK: forall b b2 d, getBlocks vals1 b = true -> j b = Some(b2,d) -> k b = Some(b2,d)), Val.inject_list k vals1 vals2.