let G be _Graph; for W being Walk of G
for S being Subwalk of W st S .first() = W .first() & S .edgeSeq() = W .edgeSeq() holds
S = W
let W be Walk of G; for S being Subwalk of W st S .first() = W .first() & S .edgeSeq() = W .edgeSeq() holds
S = W
let S be Subwalk of W; ( S .first() = W .first() & S .edgeSeq() = W .edgeSeq() implies S = W )
assume that
A1:
S .first() = W .first()
and
A2:
S .edgeSeq() = W .edgeSeq()
; S = W
defpred S1[ Nat] means ( $1 in dom S implies S . $1 = W . $1 );
len S = (2 * (len (W .edgeSeq()))) + 1
by A2, GLIB_001:def 15;
then A3:
len S = len W
by GLIB_001:def 15;
A4:
now for k being Nat st ( for n being Nat st n < k holds
S1[n] ) holds
S1[k]let k be
Nat;
( ( for n being Nat st n < k holds
S1[n] ) implies S1[b1] )assume A5:
for
n being
Nat st
n < k holds
S1[
n]
;
S1[b1]A6:
k in NAT
by ORDINAL1:def 12;
per cases
( k in dom S or not k in dom S )
;
suppose A7:
k in dom S
;
S1[b1]then A8:
1
<= k
by FINSEQ_3:25;
A9:
k <= len S
by A7, FINSEQ_3:25;
per cases
( k is even or k is odd )
;
suppose
k is
odd
;
S1[b1]then reconsider kk =
k as
odd Nat ;
per cases
( k = 1 or k > (2 * 0) + 1 )
by A8, XXREAL_0:1;
suppose
k > (2 * 0) + 1
;
S1[b1]then A11:
1
+ 2
<= kk
by Th4;
then A12:
3
+ (- 2) <= k + (- 2)
by XREAL_1:7;
3
+ (- 1) <= k + (- 1)
by A11, XREAL_1:7;
then
0 <= k - 1
;
then reconsider k1 =
k - 1 as
Element of
NAT by INT_1:3;
k1 < k
by XREAL_1:44;
then A13:
k1 <= len S
by A9, XXREAL_0:2;
3
+ (- 1) <= k + (- 1)
by A11, XREAL_1:7;
then
1
<= k1
by XXREAL_0:2;
then
k1 in dom S
by A13, FINSEQ_3:25;
then A14:
S . k1 = W . k1
by A5, XREAL_1:44;
3
+ (- 2) <= k + (- 2)
by A11, XREAL_1:7;
then reconsider k2 =
kk - (2 * 1) as
odd Element of
NAT by INT_1:3;
A15:
k2 < k
by XREAL_1:44;
then
k2 < len S
by A9, XXREAL_0:2;
then A16:
S . (k2 + 1) Joins S . k2,
S . (k2 + 2),
G
by GLIB_001:def 3;
k2 <= len S
by A9, A15, XXREAL_0:2;
then
k2 in dom S
by A12, FINSEQ_3:25;
then A17:
S . k2 = W . k2
by A5, XREAL_1:44;
k2 < len W
by A3, A9, A15, XXREAL_0:2;
then
W . (k2 + 1) Joins W . k2,
W . (k2 + 2),
G
by GLIB_001:def 3;
then
( (
S . k2 = S . k2 &
S . k = W . k ) or (
S . k2 = W . k &
S . k = S . k2 ) )
by A14, A17, A16;
hence
S1[
k]
;
verum end; end; end; end; end; end; end;
A18:
for n being Nat holds S1[n]
from NAT_1:sch 4(A4);
for k being Nat st 1 <= k & k <= len S holds
S . k = W . k
by A18, FINSEQ_3:25;
hence
S = W
by A3, FINSEQ_1:14; verum