let G be Graph; :: thesis: for vs being FinSequence of the carrier of G
for c being oriented Chain of G st vs is_oriented_vertex_seq_of c holds
ex fc being Subset of c ex fvs being Subset of vs ex sc being oriented simple Chain of G ex vs1 being FinSequence of the carrier of G st
( Seq fc = sc & Seq fvs = vs1 & vs1 is_oriented_vertex_seq_of sc & vs . 1 = vs1 . 1 & vs . (len vs) = vs1 . (len vs1) )
let vs be FinSequence of the carrier of G; :: thesis: for c being oriented Chain of G st vs is_oriented_vertex_seq_of c holds
ex fc being Subset of c ex fvs being Subset of vs ex sc being oriented simple Chain of G ex vs1 being FinSequence of the carrier of G st
( Seq fc = sc & Seq fvs = vs1 & vs1 is_oriented_vertex_seq_of sc & vs . 1 = vs1 . 1 & vs . (len vs) = vs1 . (len vs1) )
let c be oriented Chain of G; :: thesis: ( vs is_oriented_vertex_seq_of c implies ex fc being Subset of c ex fvs being Subset of vs ex sc being oriented simple Chain of G ex vs1 being FinSequence of the carrier of G st
( Seq fc = sc & Seq fvs = vs1 & vs1 is_oriented_vertex_seq_of sc & vs . 1 = vs1 . 1 & vs . (len vs) = vs1 . (len vs1) ) )
assume A1:
vs is_oriented_vertex_seq_of c
; :: thesis: ex fc being Subset of c ex fvs being Subset of vs ex sc being oriented simple Chain of G ex vs1 being FinSequence of the carrier of G st
( Seq fc = sc & Seq fvs = vs1 & vs1 is_oriented_vertex_seq_of sc & vs . 1 = vs1 . 1 & vs . (len vs) = vs1 . (len vs1) )
per cases
( c is Simple or not c is Simple )
;
suppose A3:
not
c is
Simple
;
:: thesis: ex fc being Subset of c ex fvs being Subset of vs ex sc being oriented simple Chain of G ex vs1 being FinSequence of the carrier of G st
( Seq fc = sc & Seq fvs = vs1 & vs1 is_oriented_vertex_seq_of sc & vs . 1 = vs1 . 1 & vs . (len vs) = vs1 . (len vs1) )defpred S1[
Nat]
means ex
fc being
Subset of
c ex
fvs being
Subset of
vs ex
c1 being
oriented Chain of
G ex
vs1 being
FinSequence of the
carrier of
G st
(
Seq fc = c1 &
Seq fvs = vs1 &
vs1 is_oriented_vertex_seq_of c1 &
vs . 1
= vs1 . 1 &
vs . (len vs) = vs1 . (len vs1) &
len c1 = $1 & not
c1 is
Simple );
S1[
len c]
then A4:
ex
k being
Nat st
S1[
k]
;
consider k being
Nat such that A5:
(
S1[
k] & ( for
n being
Nat st
S1[
n] holds
k <= n ) )
from NAT_1:sch 5(A4);
consider fc being
Subset of
c,
fvs being
Subset of
vs,
c1 being
oriented Chain of
G,
vs1 being
FinSequence of the
carrier of
G such that A6:
(
Seq fc = c1 &
Seq fvs = vs1 &
vs1 is_oriented_vertex_seq_of c1 &
vs . 1
= vs1 . 1 &
vs . (len vs) = vs1 . (len vs1) &
len c1 = k & not
c1 is
Simple )
by A5;
consider fc1 being
Subset of
c1,
fvs1 being
Subset of
vs1,
c2 being
oriented Chain of
G,
vs2 being
FinSequence of the
carrier of
G such that A7:
(
len c2 < len c1 &
vs2 is_oriented_vertex_seq_of c2 &
len vs2 < len vs1 &
vs1 . 1
= vs2 . 1 &
vs1 . (len vs1) = vs2 . (len vs2) &
Seq fc1 = c2 &
Seq fvs1 = vs2 )
by A6, Th22;
reconsider fc' =
fc | (rng ((Sgm (dom fc)) | (dom fc1))) as
Subset of
c by GRAPH_2:29;
A8:
Seq fc' = c2
by A6, A7, GRAPH_2:30;
reconsider fvs' =
fvs | (rng ((Sgm (dom fvs)) | (dom fvs1))) as
Subset of
vs by GRAPH_2:29;
A9:
Seq fvs' = vs2
by A6, A7, GRAPH_2:30;
hence
ex
fc being
Subset of
c ex
fvs being
Subset of
vs ex
sc being
oriented simple Chain of
G ex
vs1 being
FinSequence of the
carrier of
G st
(
Seq fc = sc &
Seq fvs = vs1 &
vs1 is_oriented_vertex_seq_of sc &
vs . 1
= vs1 . 1 &
vs . (len vs) = vs1 . (len vs1) )
by A5, A6, A7, A8, A9;
:: thesis: verum end; end;