let A be preIfWhileAlgebra; :: thesis: for S being non empty set
for T being Subset of S
for s being Element of S
for f being ExecutionFunction of A,S,T
for C, I being absolutely-terminating Element of A st f iteration_terminates_for I \; C,f . s,C holds
[s,(while C,I)] in TerminatingPrograms A,S,T,f
let S be non empty set ; :: thesis: for T being Subset of S
for s being Element of S
for f being ExecutionFunction of A,S,T
for C, I being absolutely-terminating Element of A st f iteration_terminates_for I \; C,f . s,C holds
[s,(while C,I)] in TerminatingPrograms A,S,T,f
let T be Subset of S; :: thesis: for s being Element of S
for f being ExecutionFunction of A,S,T
for C, I being absolutely-terminating Element of A st f iteration_terminates_for I \; C,f . s,C holds
[s,(while C,I)] in TerminatingPrograms A,S,T,f
let s be Element of S; :: thesis: for f being ExecutionFunction of A,S,T
for C, I being absolutely-terminating Element of A st f iteration_terminates_for I \; C,f . s,C holds
[s,(while C,I)] in TerminatingPrograms A,S,T,f
let f be ExecutionFunction of A,S,T; :: thesis: for C, I being absolutely-terminating Element of A st f iteration_terminates_for I \; C,f . s,C holds
[s,(while C,I)] in TerminatingPrograms A,S,T,f
let C, I be absolutely-terminating Element of A; :: thesis: ( f iteration_terminates_for I \; C,f . s,C implies [s,(while C,I)] in TerminatingPrograms A,S,T,f )
given r being non empty FinSequence of S such that A1:
( r . 1 = f . s,C & r . (len r) nin T )
and
A2:
for i being Nat st 1 <= i & i < len r holds
( r . i in T & r . (i + 1) = f . (r . i),(I \; C) )
; :: according to AOFA_000:def 33 :: thesis: [s,(while C,I)] in TerminatingPrograms A,S,T,f
A3:
now let i be
Nat;
:: thesis: ( 1 <= i & i < len r implies ( r . i in T & [(r . i),(I \; C)] in TerminatingPrograms A,S,T,f & r . (i + 1) = f . (r . i),(I \; C) ) )assume A4:
( 1
<= i &
i < len r )
;
:: thesis: ( r . i in T & [(r . i),(I \; C)] in TerminatingPrograms A,S,T,f & r . (i + 1) = f . (r . i),(I \; C) )hence
r . i in T
by A2;
:: thesis: ( [(r . i),(I \; C)] in TerminatingPrograms A,S,T,f & r . (i + 1) = f . (r . i),(I \; C) )hence
(
[(r . i),(I \; C)] in TerminatingPrograms A,
S,
T,
f &
r . (i + 1) = f . (r . i),
(I \; C) )
by A2, A4, Def36;
:: thesis: verum end;
[s,C] in TerminatingPrograms A,S,T,f
by Def36;
hence
[s,(while C,I)] in TerminatingPrograms A,S,T,f
by A1, A3, Def35; :: thesis: verum