let n be Nat; for F, G, v being LTL-formula
for q being sequence of (LTLStates v) st F 'U' G in the LTLold of (CastNode (q . 1),v) & ( for i being Nat holds CastNode (q . (i + 1)),v is_next_of CastNode (q . i),v ) & ( for i being Nat st 1 <= i & i < n holds
not G in the LTLold of (CastNode (q . i),v) ) holds
for i being Nat st 1 <= i & i < n holds
( F in the LTLold of (CastNode (q . i),v) & F 'U' G in the LTLold of (CastNode (q . i),v) )
let F, G, v be LTL-formula; for q being sequence of (LTLStates v) st F 'U' G in the LTLold of (CastNode (q . 1),v) & ( for i being Nat holds CastNode (q . (i + 1)),v is_next_of CastNode (q . i),v ) & ( for i being Nat st 1 <= i & i < n holds
not G in the LTLold of (CastNode (q . i),v) ) holds
for i being Nat st 1 <= i & i < n holds
( F in the LTLold of (CastNode (q . i),v) & F 'U' G in the LTLold of (CastNode (q . i),v) )
let q be sequence of (LTLStates v); ( F 'U' G in the LTLold of (CastNode (q . 1),v) & ( for i being Nat holds CastNode (q . (i + 1)),v is_next_of CastNode (q . i),v ) & ( for i being Nat st 1 <= i & i < n holds
not G in the LTLold of (CastNode (q . i),v) ) implies for i being Nat st 1 <= i & i < n holds
( F in the LTLold of (CastNode (q . i),v) & F 'U' G in the LTLold of (CastNode (q . i),v) ) )
deffunc H1( Nat) -> strict LTLnode of v = CastNode (q . $1),v;
assume that
A1:
F 'U' G in the LTLold of H1(1)
and
A2:
for i being Nat holds H1(i + 1) is_next_of H1(i)
; ( ex i being Nat st
( 1 <= i & i < n & G in the LTLold of (CastNode (q . i),v) ) or for i being Nat st 1 <= i & i < n holds
( F in the LTLold of (CastNode (q . i),v) & F 'U' G in the LTLold of (CastNode (q . i),v) ) )
defpred S1[ Nat] means ( ( for i being Nat st 1 <= i & i < $1 holds
not G in the LTLold of H1(i) ) implies for i being Nat st 1 <= i & i < $1 holds
( F in the LTLold of H1(i) & F 'U' G in the LTLold of H1(i) ) );
A3:
for k being Nat st S1[k] holds
S1[k + 1]
proof
let k be
Nat;
( S1[k] implies S1[k + 1] )
assume A4:
S1[
k]
;
S1[k + 1]
set k1 =
k + 1;
( ( for
i being
Nat st 1
<= i &
i < k + 1 holds
not
G in the
LTLold of
H1(
i) ) implies for
i being
Nat st 1
<= i &
i < k + 1 holds
(
F in the
LTLold of
H1(
i) &
F 'U' G in the
LTLold of
H1(
i) ) )
proof
assume A5:
for
i being
Nat st 1
<= i &
i < k + 1 holds
not
G in the
LTLold of
H1(
i)
;
for i being Nat st 1 <= i & i < k + 1 holds
( F in the LTLold of H1(i) & F 'U' G in the LTLold of H1(i) )
A6:
k <= k + 1
by NAT_1:11;
A7:
for
i being
Nat st 1
<= i &
i < k holds
not
G in the
LTLold of
H1(
i)
for
i being
Nat st 1
<= i &
i < k + 1 holds
(
F in the
LTLold of
H1(
i) &
F 'U' G in the
LTLold of
H1(
i) )
proof
let i be
Nat;
( 1 <= i & i < k + 1 implies ( F in the LTLold of H1(i) & F 'U' G in the LTLold of H1(i) ) )
assume that A10:
1
<= i
and A11:
i < k + 1
;
( F in the LTLold of H1(i) & F 'U' G in the LTLold of H1(i) )
A12:
i <= k
by A11, NAT_1:13;
now per cases
( i < k or i = k )
by A12, XXREAL_0:1;
suppose A13:
i = k
;
( F in the LTLold of H1(i) & F 'U' G in the LTLold of H1(i) )now per cases
( k = 1 or 1 < k )
by A10, A13, XXREAL_0:1;
suppose A18:
1
< k
;
( F in the LTLold of H1(i) & F 'U' G in the LTLold of H1(i) )set m =
k - 1;
reconsider m =
k - 1 as
Nat by A18, NAT_1:20;
set m1 =
m - 1;
1
< m + 1
by A18;
then A19:
1
<= m
by NAT_1:13;
then reconsider m1 =
m - 1 as
Nat by NAT_1:21;
consider sm being
strict elementary LTLnode of
v such that A20:
sm = H1(
m)
by Th52;
A21:
m < m + 1
by NAT_1:19;
then
m < k + 1
by A6, XXREAL_0:2;
then A22:
not
G in the
LTLold of
sm
by A5, A19, A20;
A23:
( ex
sk1 being
strict elementary LTLnode of
v st
sk1 = H1(
k + 1) &
H1(
m + 1)
is_next_of H1(
m) )
by A2, Th52;
A24:
( ex
sm1 being
strict elementary LTLnode of
v st
sm1 = H1(
m1) &
H1(
m1 + 1)
is_next_of H1(
m1) )
by A2, Th52;
A25:
H1(
m + 1)
is_next_of H1(
m)
by A2;
A26:
H1(
k + 1)
is_next_of H1(
k)
by A2;
consider sk being
strict elementary LTLnode of
v such that A27:
sk = H1(
k)
by Th52;
A28:
not
G in the
LTLold of
sk
by A5, A10, A11, A13, A27;
F 'U' G in the
LTLold of
sm
by A4, A7, A19, A20, A21;
then
F 'U' G in the
LTLold of
sk
by A20, A27, A22, A24, A25, Lm30;
hence
(
F in the
LTLold of
H1(
i) &
F 'U' G in the
LTLold of
H1(
i) )
by A13, A20, A27, A28, A23, A26, Lm30;
verum end; end; end; hence
(
F in the
LTLold of
H1(
i) &
F 'U' G in the
LTLold of
H1(
i) )
;
verum end; end; end;
hence
(
F in the
LTLold of
H1(
i) &
F 'U' G in the
LTLold of
H1(
i) )
;
verum
end;
hence
for
i being
Nat st 1
<= i &
i < k + 1 holds
(
F in the
LTLold of
H1(
i) &
F 'U' G in the
LTLold of
H1(
i) )
;
verum
end;
hence
S1[
k + 1]
;
verum
end;
A29:
S1[ 0 ]
;
for n being Nat holds S1[n]
from NAT_1:sch 2(A29, A3);
hence
( ex i being Nat st
( 1 <= i & i < n & G in the LTLold of (CastNode (q . i),v) ) or for i being Nat st 1 <= i & i < n holds
( F in the LTLold of (CastNode (q . i),v) & F 'U' G in the LTLold of (CastNode (q . i),v) ) )
; verum