let w be Element of Inf_seq AtomicFamily; for v being neg-inner-most LTL-formula
for U being Choice_Function of (BOOL (Subformulae v))
for s being strict elementary LTLnode over v st w |= * ('X' s) holds
( chosen_next (w,v,U,s) is_next_of s & w |= * (chosen_next (w,v,U,s)) )
let v be neg-inner-most LTL-formula; for U being Choice_Function of (BOOL (Subformulae v))
for s being strict elementary LTLnode over v st w |= * ('X' s) holds
( chosen_next (w,v,U,s) is_next_of s & w |= * (chosen_next (w,v,U,s)) )
let U be Choice_Function of (BOOL (Subformulae v)); for s being strict elementary LTLnode over v st w |= * ('X' s) holds
( chosen_next (w,v,U,s) is_next_of s & w |= * (chosen_next (w,v,U,s)) )
let s be strict elementary LTLnode over v; ( w |= * ('X' s) implies ( chosen_next (w,v,U,s) is_next_of s & w |= * (chosen_next (w,v,U,s)) ) )
set LN = LTLNodes v;
set N = 'X' s;
assume A1:
w |= * ('X' s)
; ( chosen_next (w,v,U,s) is_next_of s & w |= * (chosen_next (w,v,U,s)) )
set n = chosen_succ_end_num (w,v,U,('X' s));
set f = choice_succ_func (w,v,U);
set nextnode = CastNode ((((choice_succ_func (w,v,U)) |** (chosen_succ_end_num (w,v,U,('X' s)))) . ('X' s)),v);
A2:
'X' s in LTLNodes v
by Def30;
now ( chosen_next (w,v,U,s) is_next_of s & w |= * (chosen_next (w,v,U,s)) )per cases
( not 'X' s is elementary or 'X' s is elementary )
;
suppose A3:
not
'X' s is
elementary
;
( chosen_next (w,v,U,s) is_next_of s & w |= * (chosen_next (w,v,U,s)) )deffunc H1(
set )
-> strict LTLnode over
v =
CastNode (
(((choice_succ_func (w,v,U)) |** (CastNat ((CastNat $1) - 1))) . ('X' s)),
v);
set n1 =
(chosen_succ_end_num (w,v,U,('X' s))) + 1;
ex
L being
FinSequence st
(
len L = (chosen_succ_end_num (w,v,U,('X' s))) + 1 & ( for
k being
Nat st
k in dom L holds
L . k = H1(
k) ) )
from FINSEQ_1:sch 2();
then consider L being
FinSequence such that A4:
len L = (chosen_succ_end_num (w,v,U,('X' s))) + 1
and A5:
for
k being
Nat st
k in dom L holds
L . k = H1(
k)
;
A6:
Seg ((chosen_succ_end_num (w,v,U,('X' s))) + 1) = dom L
by A4, FINSEQ_1:def 3;
A7:
for
k being
Nat st 1
<= k &
k <= (chosen_succ_end_num (w,v,U,('X' s))) + 1 holds
L . k = CastNode (
(((choice_succ_func (w,v,U)) |** (CastNat (k - 1))) . ('X' s)),
v)
proof
let k be
Nat;
( 1 <= k & k <= (chosen_succ_end_num (w,v,U,('X' s))) + 1 implies L . k = CastNode ((((choice_succ_func (w,v,U)) |** (CastNat (k - 1))) . ('X' s)),v) )
assume
( 1
<= k &
k <= (chosen_succ_end_num (w,v,U,('X' s))) + 1 )
;
L . k = CastNode ((((choice_succ_func (w,v,U)) |** (CastNat (k - 1))) . ('X' s)),v)
then
k in Seg ((chosen_succ_end_num (w,v,U,('X' s))) + 1)
by FINSEQ_1:1;
then
L . k = CastNode (
(((choice_succ_func (w,v,U)) |** (CastNat ((CastNat k) - 1))) . ('X' s)),
v)
by A5, A6;
hence
L . k = CastNode (
(((choice_succ_func (w,v,U)) |** (CastNat (k - 1))) . ('X' s)),
v)
by MODELC_2:def 1;
verum
end;
for
k being
Nat st 1
<= k &
k < len L holds
ex
N1,
M1 being
strict LTLnode over
v st
(
N1 = L . k &
M1 = L . (k + 1) &
M1 is_succ_of N1 )
proof
let k be
Nat;
( 1 <= k & k < len L implies ex N1, M1 being strict LTLnode over v st
( N1 = L . k & M1 = L . (k + 1) & M1 is_succ_of N1 ) )
assume that A8:
1
<= k
and A9:
k < len L
;
ex N1, M1 being strict LTLnode over v st
( N1 = L . k & M1 = L . (k + 1) & M1 is_succ_of N1 )
set k1 =
k - 1;
reconsider k1 =
k - 1 as
Nat by A8, NAT_1:21;
set M1 =
CastNode (
(((choice_succ_func (w,v,U)) |** (k1 + 1)) . ('X' s)),
v);
set kp =
k + 1;
( 1
<= k + 1 &
k + 1
<= (chosen_succ_end_num (w,v,U,('X' s))) + 1 )
by A4, A8, A9, NAT_1:13;
then A10:
L . (k + 1) =
CastNode (
(((choice_succ_func (w,v,U)) |** (CastNat ((k + 1) - 1))) . ('X' s)),
v)
by A7
.=
CastNode (
(((choice_succ_func (w,v,U)) |** (k1 + 1)) . ('X' s)),
v)
by MODELC_2:def 1
;
set N1 =
CastNode (
(((choice_succ_func (w,v,U)) |** k1) . ('X' s)),
v);
k - 1
< ((chosen_succ_end_num (w,v,U,('X' s))) + 1) - 1
by A4, A9, XREAL_1:14;
then A11:
CastNode (
(((choice_succ_func (w,v,U)) |** (k1 + 1)) . ('X' s)),
v)
is_succ_of CastNode (
(((choice_succ_func (w,v,U)) |** k1) . ('X' s)),
v)
by A1, A3, Def48;
L . k =
CastNode (
(((choice_succ_func (w,v,U)) |** (CastNat k1)) . ('X' s)),
v)
by A4, A7, A8, A9
.=
CastNode (
(((choice_succ_func (w,v,U)) |** k1) . ('X' s)),
v)
by MODELC_2:def 1
;
hence
ex
N1,
M1 being
strict LTLnode over
v st
(
N1 = L . k &
M1 = L . (k + 1) &
M1 is_succ_of N1 )
by A11, A10;
verum
end; then A12:
L is_Finseq_for v
;
A13:
1
<= (chosen_succ_end_num (w,v,U,('X' s))) + 1
by NAT_1:11;
then A14:
L . (len L) =
CastNode (
(((choice_succ_func (w,v,U)) |** (CastNat (((chosen_succ_end_num (w,v,U,('X' s))) + 1) - 1))) . ('X' s)),
v)
by A4, A7
.=
CastNode (
(((choice_succ_func (w,v,U)) |** (chosen_succ_end_num (w,v,U,('X' s)))) . ('X' s)),
v)
by MODELC_2:def 1
;
A15:
CastNode (
(((choice_succ_func (w,v,U)) |** (chosen_succ_end_num (w,v,U,('X' s)))) . ('X' s)),
v)
= chosen_next (
w,
v,
U,
s)
by A1, A3, Def49;
L . 1 =
CastNode (
(((choice_succ_func (w,v,U)) |** (CastNat (1 - 1))) . ('X' s)),
v)
by A13, A7
.=
CastNode (
(((choice_succ_func (w,v,U)) |** 0) . ('X' s)),
v)
by MODELC_2:def 1
.=
CastNode (
((id (LTLNodes v)) . ('X' s)),
v)
by FUNCT_7:84
.=
CastNode (
('X' s),
v)
by A2, FUNCT_1:18
.=
'X' s
by Def16
;
hence
(
chosen_next (
w,
v,
U,
s)
is_next_of s &
w |= * (chosen_next (w,v,U,s)) )
by A1, A3, A15, A13, A4, A14, A12, Def48;
verum end; suppose
'X' s is
elementary
;
( chosen_next (w,v,U,s) is_next_of s & w |= * (chosen_next (w,v,U,s)) )then
the
LTLnew of
('X' s) = the
LTLnew of
(FinalNode v)
;
then A16:
chosen_next (
w,
v,
U,
s)
= 'X' s
by A1, Def49;
set L =
<*('X' s)*>;
for
k being
Nat st 1
<= k &
k < len <*('X' s)*> holds
ex
N1,
M1 being
strict LTLnode over
v st
(
N1 = <*('X' s)*> . k &
M1 = <*('X' s)*> . (k + 1) &
M1 is_succ_of N1 )
by FINSEQ_1:39;
then A19:
<*('X' s)*> is_Finseq_for v
;
(
len <*('X' s)*> = 1 &
<*('X' s)*> . 1
= 'X' s )
by FINSEQ_1:39;
hence
(
chosen_next (
w,
v,
U,
s)
is_next_of s &
w |= * (chosen_next (w,v,U,s)) )
by A1, A16, A19;
verum end; end; end;
hence
( chosen_next (w,v,U,s) is_next_of s & w |= * (chosen_next (w,v,U,s)) )
; verum