deffunc H1( set , set ) -> strict elementary LTLnode over v = chosen_next ((Shift (w,(CastNat $1))),v,U,(CastNode ($2,v)));
set LS = LTLStates v;
( ex y being set ex f being Function st
( y = f . 0 & dom f = NAT & f . 0 = init v & ( for n being Nat holds f . (n + 1) = H1(n,f . n) ) ) & ( for y1, y2 being set st ex f being Function st
( y1 = f . 0 & dom f = NAT & f . 0 = init v & ( for n being Nat holds f . (n + 1) = H1(n,f . n) ) ) & ex f being Function st
( y2 = f . 0 & dom f = NAT & f . 0 = init v & ( for n being Nat holds f . (n + 1) = H1(n,f . n) ) ) holds
y1 = y2 ) )
from RECDEF_1:sch 12();
then consider IT being Function such that
A1:
dom IT = NAT
and
A2:
IT . 0 = init v
and
A3:
for n being Nat holds IT . (n + 1) = H1(n,IT . n)
;
A4:
for n being Nat holds IT . (n + 1) = H1(n,IT . n)
by A3;
A5:
for n being Nat holds IT . (n + 1) = chosen_next ((Shift (w,n)),v,U,(CastNode ((IT . n),v)))
proof
let n be
Nat;
IT . (n + 1) = chosen_next ((Shift (w,n)),v,U,(CastNode ((IT . n),v)))
IT . (n + 1) = chosen_next (
(Shift (w,(CastNat n))),
v,
U,
(CastNode ((IT . n),v)))
by A4;
hence
IT . (n + 1) = chosen_next (
(Shift (w,n)),
v,
U,
(CastNode ((IT . n),v)))
by MODELC_2:def 1;
verum
end;
for x being object st x in NAT holds
IT . x in LTLStates v
then reconsider IT = IT as sequence of (LTLStates v) by A1, FUNCT_2:3;
take
IT
; ( IT . 0 = init v & ( for n being Nat holds IT . (n + 1) = chosen_next ((Shift (w,n)),v,U,(CastNode ((IT . n),v))) ) )
thus
( IT . 0 = init v & ( for n being Nat holds IT . (n + 1) = chosen_next ((Shift (w,n)),v,U,(CastNode ((IT . n),v))) ) )
by A2, A5; verum