(* Some view lemmas for processes and corresponding schedules *)

Lemma stepInject V W K A (em : injects V W K)
s1 (t : proc this V A) sc s2 (q : proc this W A) :
pstep s1 (Inject em t) sc s2 q <->
(exists s1' v, [/\ sc = InjectRet, t = Ret v, q = Ret v, s2 = s1 &
extends em s1 s1']) \/
exists sc' t' s1' s2' s,
[/\ sc = InjectStep sc', q = Inject em t',
s1 = s1' \+ s, s2 = s2' \+ s, s1 \In Coh W &
pstep s1' t sc' s2' t'].