let G be _Graph; :: thesis: for W being Walk of G
for m, n, o being odd Element of NAT st m <= n & n <= o & o <= len W holds
(W .cut m,n) .append (W .cut n,o) = W .cut m,o
let W be Walk of G; :: thesis: for m, n, o being odd Element of NAT st m <= n & n <= o & o <= len W holds
(W .cut m,n) .append (W .cut n,o) = W .cut m,o
let m, n, o be odd Element of NAT ; :: thesis: ( m <= n & n <= o & o <= len W implies (W .cut m,n) .append (W .cut n,o) = W .cut m,o )
assume A1:
( m <= n & n <= o & o <= len W )
; :: thesis: (W .cut m,n) .append (W .cut n,o) = W .cut m,o
then A2:
( m <= o & n <= len W )
by XXREAL_0:2;
set W1 = W .cut m,n;
set W2 = W .cut n,o;
set W3 = W .cut m,o;
set W4 = (W .cut m,n) .append (W .cut n,o);
now A3:
(W .cut m,n) .last() =
W . n
by A1, A2, Lm16
.=
(W .cut n,o) .first()
by A1, Lm16
;
A4:
(len (W .cut m,n)) + m = n + 1
by A1, A2, Lm15;
A5:
(len (W .cut n,o)) + n = o + 1
by A1, Lm15;
A6:
(len (W .cut m,o)) + m = o + 1
by A1, A2, Lm15;
then
((len (W .cut m,n)) + (len (W .cut n,o))) + m = (1 + (len (W .cut m,o))) + m
by A4, A5;
then A7:
(len ((W .cut m,n) .append (W .cut n,o))) + 1
= (len (W .cut m,o)) + 1
by A3, Lm9;
hence
(
len ((W .cut m,n) .append (W .cut n,o)) = len ((W .cut m,n) .append (W .cut n,o)) &
len (W .cut m,o) = len ((W .cut m,n) .append (W .cut n,o)) )
;
:: thesis: for x being Nat st x in dom ((W .cut m,n) .append (W .cut n,o)) holds
((W .cut m,n) .append (W .cut n,o)) . x = (W .cut m,o) . xlet x be
Nat;
:: thesis: ( x in dom ((W .cut m,n) .append (W .cut n,o)) implies ((W .cut m,n) .append (W .cut n,o)) . x = (W .cut m,o) . x )assume
x in dom ((W .cut m,n) .append (W .cut n,o))
;
:: thesis: ((W .cut m,n) .append (W .cut n,o)) . x = (W .cut m,o) . xthen A8:
( 1
<= x &
x <= len ((W .cut m,n) .append (W .cut n,o)) )
by FINSEQ_3:27;
then reconsider xaa1 =
x - 1 as
Element of
NAT by INT_1:18;
xaa1 < (len ((W .cut m,n) .append (W .cut n,o))) - 0
by A8, XREAL_1:17;
then A9:
(W .cut m,o) . (xaa1 + 1) = W . (m + xaa1)
by A1, A2, A7, Lm15;
now per cases
( x <= len (W .cut m,n) or x > len (W .cut m,n) )
;
suppose A10:
x <= len (W .cut m,n)
;
:: thesis: ((W .cut m,n) .append (W .cut n,o)) . x = (W .cut m,o) . xthen A11:
xaa1 < (len (W .cut m,n)) - 0
by XREAL_1:17;
x in dom (W .cut m,n)
by A8, A10, FINSEQ_3:27;
hence ((W .cut m,n) .append (W .cut n,o)) . x =
(W .cut m,n) . (xaa1 + 1)
by Lm12
.=
(W .cut m,o) . x
by A1, A2, A9, A11, Lm15
;
:: thesis: verum end; suppose
x > len (W .cut m,n)
;
:: thesis: ((W .cut m,n) .append (W .cut n,o)) . x = (W .cut m,o) . xthen consider k being
Nat such that A12:
(len (W .cut m,n)) + k = x
by NAT_1:10;
reconsider k =
k as
Element of
NAT by ORDINAL1:def 13;
((len (W .cut m,n)) + k) + 1
<= (len (W .cut m,o)) + 1
by A7, A8, A12, XREAL_1:9;
then
((k + 1) + (len (W .cut m,n))) - (len (W .cut m,n)) <= ((len (W .cut n,o)) + (len (W .cut m,n))) - (len (W .cut m,n))
by A4, A5, A6, XREAL_1:15;
then A13:
(k + 1) - 1
< ((len (W .cut n,o)) + 1) - 1
by NAT_1:13;
then ((W .cut m,n) .append (W .cut n,o)) . x =
(W .cut n,o) . (k + 1)
by A3, A12, Lm13
.=
W . (n + k)
by A1, A13, Lm15
;
hence
((W .cut m,n) .append (W .cut n,o)) . x = (W .cut m,o) . x
by A4, A9, A12;
:: thesis: verum end; end; end; hence
((W .cut m,n) .append (W .cut n,o)) . x = (W .cut m,o) . x
;
:: thesis: verum end;
hence
(W .cut m,n) .append (W .cut n,o) = W .cut m,o
by FINSEQ_2:10; :: thesis: verum