let N be non empty with_non-empty_elements set ; for S being non empty stored-program halting IC-Ins-separated steady-programmed definite AMI-Struct of N
for s being State of S holds
( ProgramPart s halts_on s iff ex k being Element of NAT st s halts_at IC (Comput (ProgramPart s),s,k) )
let S be non empty stored-program halting IC-Ins-separated steady-programmed definite AMI-Struct of N; for s being State of S holds
( ProgramPart s halts_on s iff ex k being Element of NAT st s halts_at IC (Comput (ProgramPart s),s,k) )
let s be State of S; ( ProgramPart s halts_on s iff ex k being Element of NAT st s halts_at IC (Comput (ProgramPart s),s,k) )
hereby ( ex k being Element of NAT st s halts_at IC (Comput (ProgramPart s),s,k) implies ProgramPart s halts_on s )
assume
ProgramPart s halts_on s
;
ex k being Element of NAT st s halts_at IC (Comput (ProgramPart s),s,k)then consider k being
Element of
NAT such that
IC (Comput (ProgramPart s),s,k) in dom (ProgramPart s)
and A1:
(ProgramPart s) /. (IC (Comput (ProgramPart s),s,k)) = halt S
by Def20;
take k =
k;
s halts_at IC (Comput (ProgramPart s),s,k)Y:
(ProgramPart (Comput (ProgramPart s),s,k)) /. (IC (Comput (ProgramPart s),s,k)) = (Comput (ProgramPart s),s,k) . (IC (Comput (ProgramPart s),s,k))
by BWL1;
(ProgramPart s) /. (IC (Comput (ProgramPart s),s,k)) = CurInstr (ProgramPart (Comput (ProgramPart s),s,k)),
(Comput (ProgramPart s),s,k)
by LmX;
then
s . (IC (Comput (ProgramPart s),s,k)) = halt S
by A1, Th54, Y;
hence
s halts_at IC (Comput (ProgramPart s),s,k)
by Def42;
verum
end;
given k being Element of NAT such that A2:
s halts_at IC (Comput (ProgramPart s),s,k)
; ProgramPart s halts_on s
take
k
; AMI_1:def 20 ( IC (Comput (ProgramPart s),s,k) in dom (ProgramPart s) & (ProgramPart s) /. (IC (Comput (ProgramPart s),s,k)) = halt S )
Y:
(ProgramPart (Comput (ProgramPart s),s,k)) /. (IC (Comput (ProgramPart s),s,k)) = (Comput (ProgramPart s),s,k) . (IC (Comput (ProgramPart s),s,k))
by BWL1;
IC (Comput (ProgramPart s),s,k) in NAT
;
hence
IC (Comput (ProgramPart s),s,k) in dom (ProgramPart s)
by LmU; (ProgramPart s) /. (IC (Comput (ProgramPart s),s,k)) = halt S
CurInstr (ProgramPart (Comput (ProgramPart s),s,k)),(Comput (ProgramPart s),s,k) =
s . (IC (Comput (ProgramPart s),s,k))
by Th54, Y
.=
halt S
by A2, Def42
;
hence
(ProgramPart s) /. (IC (Comput (ProgramPart s),s,k)) = halt S
by LmX; verum