thus SCM is relocable1 :: thesis: SCM is relocable2
proof
thus for k being Element of NAT
for p being autonomic FinPartState of SCM
for s1, s2 being State of SCM st IC in dom p & NPP p c= s1 & NPP (Relocated (p,k)) c= s2 holds
for P1, P2 being the Instructions of SCM -valued ManySortedSet of NAT st ProgramPart p c= P1 & Reloc ((ProgramPart p),k) c= P2 holds
for i being Element of NAT holds IncAddr ((CurInstr (P1,(Comput (P1,s1,i)))),k) = CurInstr (P2,(Comput (P2,s2,i))) by Lm1; :: according to AMISTD_5:def 5 :: thesis: verum
end;
let k be Element of NAT ; :: according to AMISTD_5:def 6 :: thesis: for b1 being set
for b2, b3 being set holds
( not IC in proj1 b1 or not NPP b1 c= b2 or not NPP (Relocated (b1,k)) c= b3 or for b4, b5 being set holds
( not ProgramPart b1 c= b4 or not Reloc ((ProgramPart b1),k) c= b5 or for b6 being Element of NAT holds (Comput (b4,b2,b6)) | (proj1 (DataPart b1)) = (Comput (b5,b3,b6)) | (proj1 (DataPart b1)) ) )

let p be autonomic FinPartState of SCM; :: thesis: for b1, b2 being set holds
( not IC in proj1 p or not NPP p c= b1 or not NPP (Relocated (p,k)) c= b2 or for b3, b4 being set holds
( not ProgramPart p c= b3 or not Reloc ((ProgramPart p),k) c= b4 or for b5 being Element of NAT holds (Comput (b3,b1,b5)) | (proj1 (DataPart p)) = (Comput (b4,b2,b5)) | (proj1 (DataPart p)) ) )

let s1, s2 be State of SCM; :: thesis: ( not IC in proj1 p or not NPP p c= s1 or not NPP (Relocated (p,k)) c= s2 or for b1, b2 being set holds
( not ProgramPart p c= b1 or not Reloc ((ProgramPart p),k) c= b2 or for b3 being Element of NAT holds (Comput (b1,s1,b3)) | (proj1 (DataPart p)) = (Comput (b2,s2,b3)) | (proj1 (DataPart p)) ) )

assume A1: ( IC in dom p & NPP p c= s1 & NPP (Relocated (p,k)) c= s2 ) ; :: thesis: for b1, b2 being set holds
( not ProgramPart p c= b1 or not Reloc ((ProgramPart p),k) c= b2 or for b3 being Element of NAT holds (Comput (b1,s1,b3)) | (proj1 (DataPart p)) = (Comput (b2,s2,b3)) | (proj1 (DataPart p)) )

let P1, P2 be the Instructions of SCM -valued ManySortedSet of NAT ; :: thesis: ( not ProgramPart p c= P1 or not Reloc ((ProgramPart p),k) c= P2 or for b1 being Element of NAT holds (Comput (P1,s1,b1)) | (proj1 (DataPart p)) = (Comput (P2,s2,b1)) | (proj1 (DataPart p)) )
assume A2: ( ProgramPart p c= P1 & Reloc ((ProgramPart p),k) c= P2 ) ; :: thesis: for b1 being Element of NAT holds (Comput (P1,s1,b1)) | (proj1 (DataPart p)) = (Comput (P2,s2,b1)) | (proj1 (DataPart p))
thus for i being Element of NAT holds (Comput (P1,s1,i)) | (dom (DataPart p)) = (Comput (P2,s2,i)) | (dom (DataPart p)) by A1, Lm1, A2; :: thesis: verum