let p be Instruction-Sequence of SCM+FSA; for s being State of SCM+FSA
for I being good InitHalting Program of SCM+FSA
for a being read-write Int-Location st not I destroys a & s . (intloc 0) = 1 holds
( Times (a,I) is_closed_on s,p & Times (a,I) is_halting_on s,p )
let s be State of SCM+FSA; for I being good InitHalting Program of SCM+FSA
for a being read-write Int-Location st not I destroys a & s . (intloc 0) = 1 holds
( Times (a,I) is_closed_on s,p & Times (a,I) is_halting_on s,p )
let I be good InitHalting Program of SCM+FSA; for a being read-write Int-Location st not I destroys a & s . (intloc 0) = 1 holds
( Times (a,I) is_closed_on s,p & Times (a,I) is_halting_on s,p )
let a be read-write Int-Location ; ( not I destroys a & s . (intloc 0) = 1 implies ( Times (a,I) is_closed_on s,p & Times (a,I) is_halting_on s,p ) )
assume A1:
not I destroys a
; ( not s . (intloc 0) = 1 or ( Times (a,I) is_closed_on s,p & Times (a,I) is_halting_on s,p ) )
assume A2:
s . (intloc 0) = 1
; ( Times (a,I) is_closed_on s,p & Times (a,I) is_halting_on s,p )
per cases
( s . a > 0 or s . a <= 0 )
;
suppose A3:
s . a > 0
;
( Times (a,I) is_closed_on s,p & Times (a,I) is_halting_on s,p )
Directed (loop (if=0 (a,(Goto 2),(I ';' (SubFrom (a,(intloc 0))))))) = loop (if=0 (a,(Goto 2),(I ';' (SubFrom (a,(intloc 0))))))
by SCMFSA6A:22;
then
Directed (loop (if=0 (a,(Goto 2),(I ';' (SubFrom (a,(intloc 0))))))) is_pseudo-closed_on s,
p
by A1, A2, A3, Th73;
hence
(
Times (
a,
I)
is_closed_on s,
p &
Times (
a,
I)
is_halting_on s,
p )
by A3, SCMFSA8C:39;
verum end; end;