begin
theorem
:: deftheorem Def1 defines relocable AMISTD_5:def 1 :
for N being non empty with_non-empty_elements set
for S being non empty stored-program IC-Ins-separated definite realistic standard-ins homogeneous regular J/A-independent halting AMI-Struct of N
for I being Instruction of S holds
( I is relocable iff for j, k being natural number
for s being State of S holds NPP (Exec ((IncAddr (I,(j + k))),(IncIC (s,k)))) = NPP (IncIC ((Exec ((IncAddr (I,j)),s)),k)) );
:: deftheorem Def2 defines relocable AMISTD_5:def 2 :
for N being non empty with_non-empty_elements set
for S being non empty stored-program IC-Ins-separated definite realistic standard-ins homogeneous regular J/A-independent halting AMI-Struct of N holds
( S is relocable iff for I being Instruction of S holds I is relocable );
theorem Th2:
:: deftheorem Def3 defines IC-recognized AMISTD_5:def 3 :
for N being non empty with_non-empty_elements set
for S being non empty stored-program IC-Ins-separated definite realistic halting AMI-Struct of N holds
( S is IC-recognized iff for p being autonomic FinPartState of S st not NPP p is empty holds
IC in dom p );
theorem Th3:
theorem Th4:
theorem Th5:
theorem Th6:
:: deftheorem Def4 defines CurIns-recognized AMISTD_5:def 4 :
for N being non empty with_non-empty_elements set
for S being non empty stored-program IC-Ins-separated definite realistic halting AMI-Struct of N holds
( S is CurIns-recognized iff for p being non NAT -defined autonomic FinPartState of
for s being State of S st NPP p c= s holds
for P being the Instructions of b2 -valued ManySortedSet of NAT st ProgramPart p c= P holds
for i being Element of NAT holds IC (Comput (P,s,i)) in dom (ProgramPart p) );
theorem
for
N being non
empty with_non-empty_elements set for
S being non
empty stored-program IC-Ins-separated definite realistic standard-ins halting IC-recognized AMI-Struct of
N st
S is
CurIns-recognized holds
for
p being non
NAT -defined autonomic FinPartState of
for
s1,
s2 being
State of
S st
NPP p c= s1 &
NPP p c= s2 holds
for
P1,
P2 being the
Instructions of
b2 -valued ManySortedSet of
NAT st
ProgramPart p c= P1 &
ProgramPart p c= P2 holds
for
i being
Element of
NAT holds
(
IC (Comput (P1,s1,i)) = IC (Comput (P2,s2,i)) &
CurInstr (
P1,
(Comput (P1,s1,i)))
= CurInstr (
P2,
(Comput (P2,s2,i))) )
theorem
theorem Th9:
theorem Th10:
theorem Th11:
definition
let N be non
empty with_non-empty_elements set ;
let S be non
empty stored-program IC-Ins-separated definite realistic standard-ins homogeneous regular J/A-independent halting Exec-preserving relocable IC-recognized AMI-Struct of
N;
attr S is
relocable1 means :
Def5:
for
k being
Element of
NAT for
p being
autonomic FinPartState of
S for
s1,
s2 being
State of
S st
IC in dom p &
NPP p c= s1 &
NPP (Relocated (p,k)) c= s2 holds
for
P1,
P2 being the
Instructions of
S -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)));
attr S is
relocable2 means :
Def6:
for
k being
Element of
NAT for
p being
autonomic FinPartState of
S for
s1,
s2 being
State of
S st
IC in dom p &
NPP p c= s1 &
NPP (Relocated (p,k)) c= s2 holds
for
P1,
P2 being the
Instructions of
S -valued ManySortedSet of
NAT st
ProgramPart p c= P1 &
Reloc (
(ProgramPart p),
k)
c= P2 holds
for
i being
Element of
NAT holds
(Comput (P1,s1,i)) | (dom (DataPart p)) = (Comput (P2,s2,i)) | (dom (DataPart p));
end;
:: deftheorem Def5 defines relocable1 AMISTD_5:def 5 :
for N being non empty with_non-empty_elements set
for S being non empty stored-program IC-Ins-separated definite realistic standard-ins homogeneous regular J/A-independent halting Exec-preserving relocable IC-recognized AMI-Struct of N holds
( S is relocable1 iff for k being Element of NAT
for p being autonomic FinPartState of S
for s1, s2 being State of S st IC in dom p & NPP p c= s1 & NPP (Relocated (p,k)) c= s2 holds
for P1, P2 being the Instructions of b2 -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))) );
:: deftheorem Def6 defines relocable2 AMISTD_5:def 6 :
for N being non empty with_non-empty_elements set
for S being non empty stored-program IC-Ins-separated definite realistic standard-ins homogeneous regular J/A-independent halting Exec-preserving relocable IC-recognized AMI-Struct of N holds
( S is relocable2 iff for k being Element of NAT
for p being autonomic FinPartState of S
for s1, s2 being State of S st IC in dom p & NPP p c= s1 & NPP (Relocated (p,k)) c= s2 holds
for P1, P2 being the Instructions of b2 -valued ManySortedSet of NAT st ProgramPart p c= P1 & Reloc ((ProgramPart p),k) c= P2 holds
for i being Element of NAT holds (Comput (P1,s1,i)) | (dom (DataPart p)) = (Comput (P2,s2,i)) | (dom (DataPart p)) );
Lm1:
for N being non empty with_non-empty_elements set
for k being Element of NAT
for p being autonomic FinPartState of (STC N)
for s1, s2 being State of (STC N) st IC in dom p & NPP p c= s1 & NPP (Relocated (p,k)) c= s2 holds
for P1, P2 being the Instructions of (STC b1) -valued ManySortedSet of NAT st ProgramPart p c= P1 & Reloc ((ProgramPart p),k) c= P2 holds
for i being Element of NAT holds
( (IC (Comput (P1,s1,i))) + k = IC (Comput (P2,s2,i)) & IncAddr ((CurInstr (P1,(Comput (P1,s1,i)))),k) = CurInstr (P2,(Comput (P2,s2,i))) & (Comput (P1,s1,i)) | (dom (DataPart p)) = (Comput (P2,s2,i)) | (dom (DataPart (Relocated (p,k)))) & DataPart (Comput (P1,(s1 +* (DataPart s2)),i)) = DataPart (Comput (P2,s2,i)) )
theorem Th12:
theorem Th13:
theorem
theorem