let G be finite real-weighted WGraph; for EL being FF:ELabeling of G
for source, sink being set
for V being Subset of (the_Vertices_of G) st EL has_valid_flow_from source,sink & source in V & not sink in V holds
EL .flow source,sink = (Sum (EL | (G .edgesDBetween V,((the_Vertices_of G) \ V)))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ V),V)))
let EL be FF:ELabeling of G; for source, sink being set
for V being Subset of (the_Vertices_of G) st EL has_valid_flow_from source,sink & source in V & not sink in V holds
EL .flow source,sink = (Sum (EL | (G .edgesDBetween V,((the_Vertices_of G) \ V)))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ V),V)))
let source, sink be set ; for V being Subset of (the_Vertices_of G) st EL has_valid_flow_from source,sink & source in V & not sink in V holds
EL .flow source,sink = (Sum (EL | (G .edgesDBetween V,((the_Vertices_of G) \ V)))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ V),V)))
let V be Subset of (the_Vertices_of G); ( EL has_valid_flow_from source,sink & source in V & not sink in V implies EL .flow source,sink = (Sum (EL | (G .edgesDBetween V,((the_Vertices_of G) \ V)))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ V),V))) )
assume that
A1:
EL has_valid_flow_from source,sink
and
A2:
source in V
and
A3:
not sink in V
; EL .flow source,sink = (Sum (EL | (G .edgesDBetween V,((the_Vertices_of G) \ V)))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ V),V)))
set VG = the_Vertices_of G;
set n = card ((the_Vertices_of G) \ V);
defpred S1[ Nat] means for V being Subset of (the_Vertices_of G) st card ((the_Vertices_of G) \ V) = $1 & source in V & not sink in V holds
EL .flow source,sink = (Sum (EL | (G .edgesDBetween V,((the_Vertices_of G) \ V)))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ V),V)));
set TG = the_Target_of G;
set SG = the_Source_of G;
A6:
now let n be non
empty Nat;
( S1[n] implies S1[n + 1] )assume A7:
S1[
n]
;
S1[n + 1]now let V2 be
Subset of
(the_Vertices_of G);
( card ((the_Vertices_of G) \ V2) = n + 1 & source in V2 & not sink in V2 implies EL .flow source,sink = (Sum (EL | (G .edgesDBetween V2,((the_Vertices_of G) \ V2)))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ V2),V2))) )assume that A8:
card ((the_Vertices_of G) \ V2) = n + 1
and A9:
source in V2
and A10:
not
sink in V2
;
EL .flow source,sink = (Sum (EL | (G .edgesDBetween V2,((the_Vertices_of G) \ V2)))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ V2),V2)))set x =
choose (((the_Vertices_of G) \ V2) \ {sink});
set V1 =
V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))};
set EV1V1a =
G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}));
set EV1V1b =
G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))});
set EXV1c =
G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}));
set EV1Xd =
G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))};
sink is
Vertex of
G
by A1, Def2;
then
sink in (the_Vertices_of G) \ V2
by A10, XBOOLE_0:def 5;
then
{sink} c= (the_Vertices_of G) \ V2
by ZFMISC_1:37;
then A11:
card (((the_Vertices_of G) \ V2) \ {sink}) =
(n + 1) - (card {sink})
by A8, CARD_2:63
.=
(n + 1) - 1
by CARD_1:50
.=
n
;
then A12:
choose (((the_Vertices_of G) \ V2) \ {sink}) in (the_Vertices_of G) \ V2
by CARD_1:47, XBOOLE_0:def 5;
then
{(choose (((the_Vertices_of G) \ V2) \ {sink}))} c= the_Vertices_of G
by ZFMISC_1:37;
then reconsider V1 =
V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))} as
Subset of
(the_Vertices_of G) by XBOOLE_1:8;
A13:
(the_Vertices_of G) \ V1 = ((the_Vertices_of G) \ V2) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by XBOOLE_1:41;
{(choose (((the_Vertices_of G) \ V2) \ {sink}))} c= (the_Vertices_of G) \ V2
by A12, ZFMISC_1:37;
then A14:
card ((the_Vertices_of G) \ V1) =
(card ((the_Vertices_of G) \ V2)) - (card {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by A13, CARD_2:63
.=
(n + 1) - 1
by A8, CARD_1:50
.=
n
;
A15:
source in V1
by A9, XBOOLE_0:def 3;
not
choose (((the_Vertices_of G) \ V2) \ {sink}) in {sink}
by A11, CARD_1:47, XBOOLE_0:def 5;
then A16:
choose (((the_Vertices_of G) \ V2) \ {sink}) <> sink
by TARSKI:def 1;
then
not
sink in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by TARSKI:def 1;
then
not
sink in V1
by A10, XBOOLE_0:def 3;
then A17:
EL .flow source,
sink = (Sum (EL | (G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))))
by A7, A14, A15;
set EXXe =
G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))});
set EXV2 =
G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2;
set EV2X =
G .edgesDBetween V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))};
reconsider EA =
(G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) as
Subset of
(the_Edges_of G) ;
reconsider E1 =
EA \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) as
Subset of
(the_Edges_of G) ;
reconsider EB =
EA \ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) as
Subset of
(the_Edges_of G) ;
reconsider EC =
(G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2) as
Subset of
(the_Edges_of G) ;
reconsider E2 =
EC \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) as
Subset of
(the_Edges_of G) ;
reconsider ED =
EC \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2) as
Subset of
(the_Edges_of G) ;
A18:
dom (EL | EA) = EA
by PARTFUN1:def 4;
now set e =
choose ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) /\ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2));
assume
G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}) meets G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2
;
contradictionthen A19:
(G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) /\ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2) <> {}
by XBOOLE_0:def 7;
then
choose ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) /\ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by XBOOLE_0:def 4;
then
choose ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) /\ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) DSJoins (the_Vertices_of G) \ V1,
V1,
G
by GLIB_000:def 33;
then
(the_Source_of G) . (choose ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) /\ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2))) in (the_Vertices_of G) \ V1
by GLIB_000:def 18;
then A20:
not
(the_Source_of G) . (choose ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) /\ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2))) in V1
by XBOOLE_0:def 5;
choose ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) /\ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2
by A19, XBOOLE_0:def 4;
then
choose ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) /\ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) DSJoins {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2,
G
by GLIB_000:def 33;
then
(the_Source_of G) . (choose ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) /\ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2))) in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by GLIB_000:def 18;
hence
contradiction
by A20, XBOOLE_0:def 3;
verum end; then
(G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2) = G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by XBOOLE_1:83;
then A21:
ED = G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by XBOOLE_1:40;
now let e be
set ;
( e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) implies e in G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) )assume A22:
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
;
e in G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))then A23:
e DSJoins {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
(the_Vertices_of G) \ V1,
G
by GLIB_000:def 33;
then
(the_Source_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by GLIB_000:def 18;
then A24:
(the_Source_of G) . e in V1
by XBOOLE_0:def 3;
(the_Target_of G) . e in (the_Vertices_of G) \ V1
by A23, GLIB_000:def 18;
then
e DSJoins V1,
(the_Vertices_of G) \ V1,
G
by A22, A24, GLIB_000:def 18;
hence
e in G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by GLIB_000:def 33;
verum end; then A25:
G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) c= G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by TARSKI:def 3;
now set e =
choose ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) /\ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}));
assume
G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) meets G .edgesDBetween V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
;
contradictionthen A26:
(G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) /\ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) <> {}
by XBOOLE_0:def 7;
then
choose ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) /\ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) in G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by XBOOLE_0:def 4;
then
choose ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) /\ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) DSJoins V1,
(the_Vertices_of G) \ V1,
G
by GLIB_000:def 33;
then
(the_Target_of G) . (choose ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) /\ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) in (the_Vertices_of G) \ V1
by GLIB_000:def 18;
then A27:
not
(the_Target_of G) . (choose ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) /\ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) in V1
by XBOOLE_0:def 5;
choose ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) /\ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) in G .edgesDBetween V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A26, XBOOLE_0:def 4;
then
choose ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) /\ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) DSJoins V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by GLIB_000:def 33;
then
(the_Target_of G) . (choose ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) /\ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by GLIB_000:def 18;
hence
contradiction
by A27, XBOOLE_0:def 3;
verum end; then
(G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) = G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by XBOOLE_1:83;
then A28:
EB = G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by XBOOLE_1:40;
A29:
dom (EL | EB) = EB
by PARTFUN1:def 4;
now let e be
set ;
( ( e in (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2) implies e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) ) & ( e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) implies e in (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2) ) )hereby ( e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) implies e in (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2) )
assume A34:
e in (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)
;
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))then
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by XBOOLE_0:def 5;
then A35:
e DSJoins {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
(the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by GLIB_000:def 33;
then A36:
(the_Source_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by GLIB_000:def 18;
A37:
(the_Target_of G) . e in (the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A35, GLIB_000:def 18;
then A38:
not
(the_Target_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by XBOOLE_0:def 5;
not
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2
by A34, XBOOLE_0:def 5;
then
not
e DSJoins {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2,
G
by GLIB_000:def 33;
then
not
(the_Target_of G) . e in V2
by A34, A36, GLIB_000:def 18;
then
not
(the_Target_of G) . e in V1
by A38, XBOOLE_0:def 3;
then
(the_Target_of G) . e in (the_Vertices_of G) \ V1
by A37, XBOOLE_0:def 5;
then
e DSJoins {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
(the_Vertices_of G) \ V1,
G
by A34, A36, GLIB_000:def 18;
hence
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by GLIB_000:def 33;
verum
end; assume A39:
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
;
e in (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)then A40:
e DSJoins {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
(the_Vertices_of G) \ V1,
G
by GLIB_000:def 33;
then A41:
(the_Target_of G) . e in (the_Vertices_of G) \ V1
by GLIB_000:def 18;
then A42:
not
(the_Target_of G) . e in V1
by XBOOLE_0:def 5;
then
not
(the_Target_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by XBOOLE_0:def 3;
then A43:
(the_Target_of G) . e in (the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A41, XBOOLE_0:def 5;
not
(the_Target_of G) . e in V2
by A42, XBOOLE_0:def 3;
then
not
e DSJoins {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2,
G
by GLIB_000:def 18;
then A44:
not
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2
by GLIB_000:def 33;
(the_Source_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A40, GLIB_000:def 18;
then
e DSJoins {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
(the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by A39, A43, GLIB_000:def 18;
then
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by GLIB_000:def 33;
hence
e in (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)
by A44, XBOOLE_0:def 5;
verum end; then A45:
(G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2) = G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by TARSKI:2;
A46:
dom (EL | ED) = ED
by PARTFUN1:def 4;
reconsider EXV1cb =
(G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2) as
Subset of
(the_Edges_of G) ;
set EXXf =
G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))};
A51:
dom (EL | EC) = EC
by PARTFUN1:def 4;
now let e be
set ;
( ( e in (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) implies e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))} ) & ( e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))} implies e in (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) ) )hereby ( e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))} implies e in (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) )
assume A52:
e in (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})
;
e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}then
e in G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by XBOOLE_0:def 5;
then A53:
e DSJoins (the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
{(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by GLIB_000:def 33;
then A54:
(the_Target_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by GLIB_000:def 18;
A55:
(the_Source_of G) . e in (the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A53, GLIB_000:def 18;
then A56:
not
(the_Source_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by XBOOLE_0:def 5;
not
e in G .edgesDBetween V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A52, XBOOLE_0:def 5;
then
not
e DSJoins V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by GLIB_000:def 33;
then
not
(the_Source_of G) . e in V2
by A52, A54, GLIB_000:def 18;
then
not
(the_Source_of G) . e in V1
by A56, XBOOLE_0:def 3;
then
(the_Source_of G) . e in (the_Vertices_of G) \ V1
by A55, XBOOLE_0:def 5;
then
e DSJoins (the_Vertices_of G) \ V1,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by A52, A54, GLIB_000:def 18;
hence
e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by GLIB_000:def 33;
verum
end; assume A57:
e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
;
e in (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})then A58:
e DSJoins (the_Vertices_of G) \ V1,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by GLIB_000:def 33;
then A59:
(the_Source_of G) . e in (the_Vertices_of G) \ V1
by GLIB_000:def 18;
then A60:
not
(the_Source_of G) . e in V1
by XBOOLE_0:def 5;
then
not
(the_Source_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by XBOOLE_0:def 3;
then A61:
(the_Source_of G) . e in (the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A59, XBOOLE_0:def 5;
not
(the_Source_of G) . e in V2
by A60, XBOOLE_0:def 3;
then
not
e DSJoins V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by GLIB_000:def 18;
then A62:
not
e in G .edgesDBetween V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by GLIB_000:def 33;
(the_Target_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A58, GLIB_000:def 18;
then
e DSJoins (the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
{(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by A57, A61, GLIB_000:def 18;
then
e in G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by GLIB_000:def 33;
hence
e in (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by A62, XBOOLE_0:def 5;
verum end; then A63:
(G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) = G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by TARSKI:2;
now let e be
set ;
( e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))} implies e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}) )assume A64:
e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
;
e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})then A65:
e DSJoins (the_Vertices_of G) \ V1,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by GLIB_000:def 33;
then
(the_Target_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by GLIB_000:def 18;
then A66:
(the_Target_of G) . e in V1
by XBOOLE_0:def 3;
(the_Source_of G) . e in (the_Vertices_of G) \ V1
by A65, GLIB_000:def 18;
then
e DSJoins (the_Vertices_of G) \ V1,
V1,
G
by A64, A66, GLIB_000:def 18;
hence
e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by GLIB_000:def 33;
verum end; then A67:
G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))} c= G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by TARSKI:def 3;
A68:
not
choose (((the_Vertices_of G) \ V2) \ {sink}) in V2
by A12, XBOOLE_0:def 5;
now let e be
set ;
( e in G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))} implies e in G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))} )assume A69:
e in G .edgesDBetween V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
;
e in G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}then A70:
e DSJoins V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by GLIB_000:def 33;
then A71:
(the_Source_of G) . e in V2
by GLIB_000:def 18;
then
not
(the_Source_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A68, TARSKI:def 1;
then A72:
(the_Source_of G) . e in (the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A71, XBOOLE_0:def 5;
(the_Target_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A70, GLIB_000:def 18;
then
e DSJoins (the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
{(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by A69, A72, GLIB_000:def 18;
hence
e in G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by GLIB_000:def 33;
verum end; then A73:
G .edgesDBetween V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))} c= G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by TARSKI:def 3;
A74:
V2 \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))} is
Subset of
V2
;
now let e be
set ;
( ( e in G .edgesDBetween V2,((the_Vertices_of G) \ V2) implies e in ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) ) & ( e in ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) implies e in G .edgesDBetween V2,((the_Vertices_of G) \ V2) ) )A75:
((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) is
Subset of
((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
;
hereby ( e in ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) implies e in G .edgesDBetween V2,((the_Vertices_of G) \ V2) )
assume A76:
e in G .edgesDBetween V2,
((the_Vertices_of G) \ V2)
;
e in ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))then A77:
e DSJoins V2,
(the_Vertices_of G) \ V2,
G
by GLIB_000:def 33;
then A78:
(the_Source_of G) . e in V2
by GLIB_000:def 18;
A80:
(the_Target_of G) . e in (the_Vertices_of G) \ V2
by A77, GLIB_000:def 18;
A81:
(the_Source_of G) . e in V1
by A78, XBOOLE_0:def 3;
now per cases
( (the_Target_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))} or not (the_Target_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))} )
;
suppose
(the_Target_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
;
e in ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))then
e DSJoins V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by A76, A78, GLIB_000:def 18;
then
e in G .edgesDBetween V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by GLIB_000:def 33;
then
e in (G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by XBOOLE_0:def 3;
hence
e in ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))
by A79, XBOOLE_0:def 5;
verum end; suppose
not
(the_Target_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
;
e in ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))then
(the_Target_of G) . e in (the_Vertices_of G) \ V1
by A13, A80, XBOOLE_0:def 5;
then
e DSJoins V1,
(the_Vertices_of G) \ V1,
G
by A76, A81, GLIB_000:def 18;
then
e in G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by GLIB_000:def 33;
then
e in (G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by XBOOLE_0:def 3;
hence
e in ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))
by A79, XBOOLE_0:def 5;
verum end; end; end; hence
e in ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))
;
verum
end; assume A82:
e in ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))
;
e in G .edgesDBetween V2,((the_Vertices_of G) \ V2)then
not
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by XBOOLE_0:def 5;
then A83:
not
e DSJoins {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
(the_Vertices_of G) \ V1,
G
by GLIB_000:def 33;
now per cases
( e in G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) or e in G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))} )
by A82, A75, XBOOLE_0:def 3;
suppose A84:
e in G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
;
e DSJoins V2,(the_Vertices_of G) \ V2,Gthen A85:
e DSJoins V1,
(the_Vertices_of G) \ V1,
G
by GLIB_000:def 33;
then A86:
(the_Source_of G) . e in V1
by GLIB_000:def 18;
A87:
(the_Target_of G) . e in (the_Vertices_of G) \ V1
by A85, GLIB_000:def 18;
then
not
(the_Target_of G) . e in V1
by XBOOLE_0:def 5;
then
not
(the_Target_of G) . e in V2
by XBOOLE_0:def 3;
then A88:
(the_Target_of G) . e in (the_Vertices_of G) \ V2
by A87, XBOOLE_0:def 5;
not
(the_Source_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A83, A84, A87, GLIB_000:def 18;
then
(the_Source_of G) . e in V1 \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A86, XBOOLE_0:def 5;
then
(the_Source_of G) . e in V2 \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by XBOOLE_1:40;
hence
e DSJoins V2,
(the_Vertices_of G) \ V2,
G
by A74, A84, A88, GLIB_000:def 18;
verum end; suppose A89:
e in G .edgesDBetween V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
;
e DSJoins V2,(the_Vertices_of G) \ V2,Gthen A90:
e DSJoins V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by GLIB_000:def 33;
then A91:
(the_Source_of G) . e in V2
by GLIB_000:def 18;
(the_Target_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A90, GLIB_000:def 18;
then A92:
not
(the_Target_of G) . e in V2
by A68, TARSKI:def 1;
(the_Target_of G) . e in the_Vertices_of G
by A89, FUNCT_2:7;
then
(the_Target_of G) . e in (the_Vertices_of G) \ V2
by A92, XBOOLE_0:def 5;
hence
e DSJoins V2,
(the_Vertices_of G) \ V2,
G
by A89, A91, GLIB_000:def 18;
verum end; end; end; hence
e in G .edgesDBetween V2,
((the_Vertices_of G) \ V2)
by GLIB_000:def 33;
verum end; then A93:
G .edgesDBetween V2,
((the_Vertices_of G) \ V2) = ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))
by TARSKI:2;
now let e be
set ;
( ( e in G .edgesDBetween ((the_Vertices_of G) \ V2),V2 implies e in ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) ) & ( e in ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) implies e in G .edgesDBetween ((the_Vertices_of G) \ V2),V2 ) )A94:
((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) is
Subset of
((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2))
;
hereby ( e in ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) implies e in G .edgesDBetween ((the_Vertices_of G) \ V2),V2 )
assume A95:
e in G .edgesDBetween ((the_Vertices_of G) \ V2),
V2
;
e in ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})then A96:
e DSJoins (the_Vertices_of G) \ V2,
V2,
G
by GLIB_000:def 33;
then A97:
(the_Target_of G) . e in V2
by GLIB_000:def 18;
A99:
(the_Source_of G) . e in (the_Vertices_of G) \ V2
by A96, GLIB_000:def 18;
A100:
(the_Target_of G) . e in V1
by A97, XBOOLE_0:def 3;
now per cases
( (the_Source_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))} or not (the_Source_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))} )
;
suppose
(the_Source_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
;
e in ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})then
e DSJoins {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2,
G
by A95, A97, GLIB_000:def 18;
then
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2
by GLIB_000:def 33;
then
e in (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)
by XBOOLE_0:def 3;
hence
e in ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by A98, XBOOLE_0:def 5;
verum end; suppose
not
(the_Source_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
;
e in ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})then
(the_Source_of G) . e in (the_Vertices_of G) \ V1
by A13, A99, XBOOLE_0:def 5;
then
e DSJoins (the_Vertices_of G) \ V1,
V1,
G
by A95, A100, GLIB_000:def 18;
then
e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by GLIB_000:def 33;
then
e in (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)
by XBOOLE_0:def 3;
hence
e in ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by A98, XBOOLE_0:def 5;
verum end; end; end; hence
e in ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})
;
verum
end; assume A101:
e in ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})
;
e in G .edgesDBetween ((the_Vertices_of G) \ V2),V2then
not
e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by XBOOLE_0:def 5;
then A102:
not
e DSJoins (the_Vertices_of G) \ V1,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by GLIB_000:def 33;
now per cases
( e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}) or e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2 )
by A101, A94, XBOOLE_0:def 3;
suppose A103:
e in G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
;
e DSJoins (the_Vertices_of G) \ V2,V2,Gthen A104:
e DSJoins (the_Vertices_of G) \ V1,
V1,
G
by GLIB_000:def 33;
then A105:
(the_Target_of G) . e in V1
by GLIB_000:def 18;
A106:
(the_Source_of G) . e in (the_Vertices_of G) \ V1
by A104, GLIB_000:def 18;
then
not
(the_Source_of G) . e in V1
by XBOOLE_0:def 5;
then
not
(the_Source_of G) . e in V2
by XBOOLE_0:def 3;
then A107:
(the_Source_of G) . e in (the_Vertices_of G) \ V2
by A106, XBOOLE_0:def 5;
not
(the_Target_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A102, A103, A106, GLIB_000:def 18;
then
(the_Target_of G) . e in V1 \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A105, XBOOLE_0:def 5;
then
(the_Target_of G) . e in V2 \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by XBOOLE_1:40;
hence
e DSJoins (the_Vertices_of G) \ V2,
V2,
G
by A74, A103, A107, GLIB_000:def 18;
verum end; suppose A108:
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2
;
e DSJoins (the_Vertices_of G) \ V2,V2,Gthen A109:
e DSJoins {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2,
G
by GLIB_000:def 33;
then A110:
(the_Target_of G) . e in V2
by GLIB_000:def 18;
(the_Source_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A109, GLIB_000:def 18;
then A111:
not
(the_Source_of G) . e in V2
by A68, TARSKI:def 1;
(the_Source_of G) . e in the_Vertices_of G
by A108, FUNCT_2:7;
then
(the_Source_of G) . e in (the_Vertices_of G) \ V2
by A111, XBOOLE_0:def 5;
hence
e DSJoins (the_Vertices_of G) \ V2,
V2,
G
by A108, A110, GLIB_000:def 18;
verum end; end; end; hence
e in G .edgesDBetween ((the_Vertices_of G) \ V2),
V2
by GLIB_000:def 33;
verum end; then A112:
G .edgesDBetween ((the_Vertices_of G) \ V2),
V2 = E2
by TARSKI:2;
A113:
dom (EL | E2) = EC \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by PARTFUN1:def 4;
dom (EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) = G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2
by PARTFUN1:def 4;
then dom ((EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) +* (EL | ED)) =
(G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2) \/ ED
by A46, FUNCT_4:def 1
.=
(G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2) \/ ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2))
by XBOOLE_1:39
.=
EC
by XBOOLE_1:6
;
then A118:
Sum (EL | EC) = (Sum (EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2))) + (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))))
by A21, A51, A47, FUNCT_1:9, GLIB_004:3;
dom (EL | (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) = G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by PARTFUN1:def 4;
then dom ((EL | (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) +* (EL | E2)) =
(G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \/ (EC \ (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by A113, FUNCT_4:def 1
.=
(G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \/ ((G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),(V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2))
by XBOOLE_1:39
.=
EC
by A67, XBOOLE_1:10, XBOOLE_1:12
;
then A119:
Sum (EL | EC) = (Sum (EL | E2)) + (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})))
by A51, A114, FUNCT_1:9, GLIB_004:3;
dom (EL | (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) = G .edgesDBetween V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by PARTFUN1:def 4;
then dom ((EL | (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) +* (EL | EB)) =
(G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \/ EB
by A29, FUNCT_4:def 1
.=
(G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \/ ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by XBOOLE_1:39
.=
EA
by XBOOLE_1:6
;
then A120:
Sum (EL | EA) = (Sum (EL | (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) + (Sum (EL | (G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))))
by A28, A18, A30, FUNCT_1:9, GLIB_004:3;
reconsider EV1Xdb =
(G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) as
Subset of
(the_Edges_of G) ;
A121:
dom (EL | EV1Xdb) = (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by PARTFUN1:def 4;
now let e be
set ;
( e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2 implies e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}) )assume A122:
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2
;
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})then A123:
e DSJoins {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2,
G
by GLIB_000:def 33;
then A124:
(the_Target_of G) . e in V2
by GLIB_000:def 18;
then
not
(the_Target_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A68, TARSKI:def 1;
then A125:
(the_Target_of G) . e in (the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A124, XBOOLE_0:def 5;
(the_Source_of G) . e in {(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A123, GLIB_000:def 18;
then
e DSJoins {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
(the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
G
by A122, A125, GLIB_000:def 18;
hence
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by GLIB_000:def 33;
verum end; then A126:
G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2 c= G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by TARSKI:def 3;
A127:
dom (EL | E1) = EA \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))
by PARTFUN1:def 4;
A132:
dom (EL | (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) = G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by PARTFUN1:def 4;
A133:
now let e be
set ;
( e in dom (EL | (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) implies (EL | (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) . e = ((EL | (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) +* (EL | EV1Xdb)) . e )assume A134:
e in dom (EL | (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
;
(EL | (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) . e = ((EL | (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) +* (EL | EV1Xdb)) . ethen A135:
e in G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by PARTFUN1:def 4;
hence
(EL | (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) . e = ((EL | (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) +* (EL | EV1Xdb)) . e
by A132, A134, FUNCT_1:72;
verum end;
dom (EL | (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) = G .edgesDBetween V2,
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by PARTFUN1:def 4;
then dom ((EL | (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})) +* (EL | ((G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))})))) =
(G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \/ ((G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by A121, FUNCT_4:def 1
.=
(G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}) \/ (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by XBOOLE_1:39
.=
G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by A73, XBOOLE_1:12
;
then A138:
(Sum (EL | (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) + (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) = Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by A63, A132, A133, FUNCT_1:9, GLIB_004:3;
dom (EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))) = G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by PARTFUN1:def 4;
then dom ((EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))) +* (EL | E1)) =
(G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (EA \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))))
by A127, FUNCT_4:def 1
.=
(G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ ((G .edgesDBetween (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) \/ (G .edgesDBetween V2,{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by XBOOLE_1:39
.=
EA
by A25, XBOOLE_1:10, XBOOLE_1:12
;
then A139:
Sum (EL | EA) = (Sum (EL | E1)) + (Sum (EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))))
by A18, A128, FUNCT_1:9, GLIB_004:3;
A140:
dom (EL | EXV1cb) = (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)
by PARTFUN1:def 4;
A141:
dom (EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) = G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by PARTFUN1:def 4;
A142:
now let e be
set ;
( e in dom (EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) implies (EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) . e = ((EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) +* (EL | EXV1cb)) . e )assume A143:
e in dom (EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))
;
(EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) . e = ((EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) +* (EL | EXV1cb)) . ethen A144:
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by PARTFUN1:def 4;
hence
(EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) . e = ((EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) +* (EL | EXV1cb)) . e
by A141, A143, FUNCT_1:72;
verum end;
dom (EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) = G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
V2
by PARTFUN1:def 4;
then dom ((EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)) +* (EL | ((G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2)))) =
(G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2) \/ ((G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})) \ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2))
by A140, FUNCT_4:def 1
.=
(G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2) \/ (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))
by XBOOLE_1:39
.=
G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by A126, XBOOLE_1:12
;
then A147:
(Sum (EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},V2))) + (Sum (EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ (V2 \/ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}))))) = Sum (EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))
by A45, A141, A142, FUNCT_1:9, GLIB_004:3;
reconsider x =
choose (((the_Vertices_of G) \ V2) \ {sink}) as
Vertex of
G by A12;
A148:
x .edgesOut() = G .edgesDBetween {x},
(the_Vertices_of G)
by GLIB_000:42;
reconsider EXXeb =
(G .edgesDBetween {x},(the_Vertices_of G)) \ (G .edgesDBetween {x},{x}) as
Subset of
(the_Edges_of G) ;
reconsider EXXfb =
(G .edgesDBetween (the_Vertices_of G),{x}) \ (G .edgesDBetween {x},{x}) as
Subset of
(the_Edges_of G) ;
A149:
dom (EL | (G .edgesDBetween (the_Vertices_of G),{x})) = G .edgesDBetween (the_Vertices_of G),
{x}
by PARTFUN1:def 4;
now let e be
set ;
( ( e in (G .edgesDBetween (the_Vertices_of G),{x}) \ (G .edgesDBetween {x},{x}) implies e in G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))} ) & ( e in G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))} implies e in (G .edgesDBetween (the_Vertices_of G),{x}) \ (G .edgesDBetween {x},{x}) ) )hereby ( e in G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))} implies e in (G .edgesDBetween (the_Vertices_of G),{x}) \ (G .edgesDBetween {x},{x}) )
assume A150:
e in (G .edgesDBetween (the_Vertices_of G),{x}) \ (G .edgesDBetween {x},{x})
;
e in G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}then
e in G .edgesDBetween (the_Vertices_of G),
{x}
by XBOOLE_0:def 5;
then A151:
e DSJoins the_Vertices_of G,
{x},
G
by GLIB_000:def 33;
then A152:
(the_Source_of G) . e in the_Vertices_of G
by GLIB_000:def 18;
A153:
(the_Target_of G) . e in {x}
by A151, GLIB_000:def 18;
not
e in G .edgesDBetween {x},
{x}
by A150, XBOOLE_0:def 5;
then
not
e DSJoins {x},
{x},
G
by GLIB_000:def 33;
then
not
(the_Source_of G) . e in {x}
by A150, A153, GLIB_000:def 18;
then
(the_Source_of G) . e in (the_Vertices_of G) \ {x}
by A152, XBOOLE_0:def 5;
then
e DSJoins (the_Vertices_of G) \ {x},
{x},
G
by A150, A153, GLIB_000:def 18;
hence
e in G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by GLIB_000:def 33;
verum
end; assume A154:
e in G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
;
e in (G .edgesDBetween (the_Vertices_of G),{x}) \ (G .edgesDBetween {x},{x})then A155:
e DSJoins (the_Vertices_of G) \ {x},
{x},
G
by GLIB_000:def 33;
then A156:
(the_Source_of G) . e in (the_Vertices_of G) \ {x}
by GLIB_000:def 18;
then
not
(the_Source_of G) . e in {x}
by XBOOLE_0:def 5;
then
not
e DSJoins {x},
{x},
G
by GLIB_000:def 18;
then A157:
not
e in G .edgesDBetween {x},
{x}
by GLIB_000:def 33;
(the_Target_of G) . e in {x}
by A155, GLIB_000:def 18;
then
e DSJoins the_Vertices_of G,
{x},
G
by A154, A156, GLIB_000:def 18;
then
e in G .edgesDBetween (the_Vertices_of G),
{x}
by GLIB_000:def 33;
hence
e in (G .edgesDBetween (the_Vertices_of G),{x}) \ (G .edgesDBetween {x},{x})
by A157, XBOOLE_0:def 5;
verum end; then A158:
(G .edgesDBetween (the_Vertices_of G),{x}) \ (G .edgesDBetween {x},{x}) = G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),
{(choose (((the_Vertices_of G) \ V2) \ {sink}))}
by TARSKI:2;
A159:
dom (EL | EXXfb) = EXXfb
by PARTFUN1:def 4;
A160:
now let e be
set ;
( e in dom (EL | (G .edgesDBetween (the_Vertices_of G),{x})) implies (EL | (G .edgesDBetween (the_Vertices_of G),{x})) . e = ((EL | (G .edgesDBetween {x},{x})) +* (EL | EXXfb)) . e )assume
e in dom (EL | (G .edgesDBetween (the_Vertices_of G),{x}))
;
(EL | (G .edgesDBetween (the_Vertices_of G),{x})) . e = ((EL | (G .edgesDBetween {x},{x})) +* (EL | EXXfb)) . ethen A161:
e in G .edgesDBetween (the_Vertices_of G),
{x}
by PARTFUN1:def 4;
hence
(EL | (G .edgesDBetween (the_Vertices_of G),{x})) . e = ((EL | (G .edgesDBetween {x},{x})) +* (EL | EXXfb)) . e
by A161, FUNCT_1:72;
verum end; now let e be
set ;
( ( e in (G .edgesDBetween {x},(the_Vertices_of G)) \ (G .edgesDBetween {x},{x}) implies e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}) ) & ( e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}) implies e in (G .edgesDBetween {x},(the_Vertices_of G)) \ (G .edgesDBetween {x},{x}) ) )hereby ( e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}) implies e in (G .edgesDBetween {x},(the_Vertices_of G)) \ (G .edgesDBetween {x},{x}) )
assume A164:
e in (G .edgesDBetween {x},(the_Vertices_of G)) \ (G .edgesDBetween {x},{x})
;
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})then
e in G .edgesDBetween {x},
(the_Vertices_of G)
by XBOOLE_0:def 5;
then A165:
e DSJoins {x},
the_Vertices_of G,
G
by GLIB_000:def 33;
then A166:
(the_Target_of G) . e in the_Vertices_of G
by GLIB_000:def 18;
A167:
(the_Source_of G) . e in {x}
by A165, GLIB_000:def 18;
not
e in G .edgesDBetween {x},
{x}
by A164, XBOOLE_0:def 5;
then
not
e DSJoins {x},
{x},
G
by GLIB_000:def 33;
then
not
(the_Target_of G) . e in {x}
by A164, A167, GLIB_000:def 18;
then
(the_Target_of G) . e in (the_Vertices_of G) \ {x}
by A166, XBOOLE_0:def 5;
then
e DSJoins {x},
(the_Vertices_of G) \ {x},
G
by A164, A167, GLIB_000:def 18;
hence
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by GLIB_000:def 33;
verum
end; assume A168:
e in G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
;
e in (G .edgesDBetween {x},(the_Vertices_of G)) \ (G .edgesDBetween {x},{x})then A169:
e DSJoins {x},
(the_Vertices_of G) \ {x},
G
by GLIB_000:def 33;
then A170:
(the_Target_of G) . e in (the_Vertices_of G) \ {x}
by GLIB_000:def 18;
then
not
(the_Target_of G) . e in {x}
by XBOOLE_0:def 5;
then
not
e DSJoins {x},
{x},
G
by GLIB_000:def 18;
then A171:
not
e in G .edgesDBetween {x},
{x}
by GLIB_000:def 33;
(the_Source_of G) . e in {x}
by A169, GLIB_000:def 18;
then
e DSJoins {x},
the_Vertices_of G,
G
by A168, A170, GLIB_000:def 18;
then
e in G .edgesDBetween {x},
(the_Vertices_of G)
by GLIB_000:def 33;
hence
e in (G .edgesDBetween {x},(the_Vertices_of G)) \ (G .edgesDBetween {x},{x})
by A171, XBOOLE_0:def 5;
verum end; then A172:
(G .edgesDBetween {x},(the_Vertices_of G)) \ (G .edgesDBetween {x},{x}) = G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},
((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})
by TARSKI:2;
A173:
dom (EL | (G .edgesDBetween {x},(the_Vertices_of G))) = G .edgesDBetween {x},
(the_Vertices_of G)
by PARTFUN1:def 4;
A174:
dom (EL | EXXeb) = EXXeb
by PARTFUN1:def 4;
A175:
now let e be
set ;
( e in dom (EL | (G .edgesDBetween {x},(the_Vertices_of G))) implies (EL | (G .edgesDBetween {x},(the_Vertices_of G))) . e = ((EL | (G .edgesDBetween {x},{x})) +* (EL | EXXeb)) . e )assume
e in dom (EL | (G .edgesDBetween {x},(the_Vertices_of G)))
;
(EL | (G .edgesDBetween {x},(the_Vertices_of G))) . e = ((EL | (G .edgesDBetween {x},{x})) +* (EL | EXXeb)) . ethen A176:
e in G .edgesDBetween {x},
(the_Vertices_of G)
by PARTFUN1:def 4;
hence
(EL | (G .edgesDBetween {x},(the_Vertices_of G))) . e = ((EL | (G .edgesDBetween {x},{x})) +* (EL | EXXeb)) . e
by A176, FUNCT_1:72;
verum end; A179:
dom (EL | (G .edgesDBetween {x},{x})) = G .edgesDBetween {x},
{x}
by PARTFUN1:def 4;
then dom ((EL | (G .edgesDBetween {x},{x})) +* (EL | EXXfb)) =
(G .edgesDBetween {x},{x}) \/ EXXfb
by A159, FUNCT_4:def 1
.=
(G .edgesDBetween {x},{x}) \/ (G .edgesDBetween (the_Vertices_of G),{x})
by XBOOLE_1:39
.=
G .edgesDBetween (the_Vertices_of G),
{x}
by GLIB_000:41, XBOOLE_1:12
;
then A180:
Sum (EL | (G .edgesDBetween (the_Vertices_of G),{x})) = (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))}),{(choose (((the_Vertices_of G) \ V2) \ {sink}))}))) + (Sum (EL | (G .edgesDBetween {x},{x})))
by A158, A149, A160, FUNCT_1:9, GLIB_004:3;
dom ((EL | (G .edgesDBetween {x},{x})) +* (EL | EXXeb)) =
(G .edgesDBetween {x},{x}) \/ EXXeb
by A179, A174, FUNCT_4:def 1
.=
(G .edgesDBetween {x},{x}) \/ (G .edgesDBetween {x},(the_Vertices_of G))
by XBOOLE_1:39
.=
G .edgesDBetween {x},
(the_Vertices_of G)
by GLIB_000:41, XBOOLE_1:12
;
then A181:
Sum (EL | (G .edgesDBetween {x},(the_Vertices_of G))) = (Sum (EL | (G .edgesDBetween {(choose (((the_Vertices_of G) \ V2) \ {sink}))},((the_Vertices_of G) \ {(choose (((the_Vertices_of G) \ V2) \ {sink}))})))) + (Sum (EL | (G .edgesDBetween {x},{x})))
by A172, A173, A175, FUNCT_1:9, GLIB_004:3;
x .edgesIn() = G .edgesDBetween (the_Vertices_of G),
{x}
by GLIB_000:42;
then
Sum (EL | (G .edgesDBetween (the_Vertices_of G),{x})) = Sum (EL | (G .edgesDBetween {x},(the_Vertices_of G)))
by A1, A9, A68, A16, A148, Def2;
hence
EL .flow source,
sink = (Sum (EL | (G .edgesDBetween V2,((the_Vertices_of G) \ V2)))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ V2),V2)))
by A17, A93, A139, A120, A112, A119, A118, A138, A147, A180, A181;
verum end; hence
S1[
n + 1]
;
verum end;
now set ESS =
G .edgesDBetween {sink},
{sink};
let V be
Subset of
(the_Vertices_of G);
( card ((the_Vertices_of G) \ V) = 1 & source in V & not sink in V implies EL .flow source,sink = (Sum (EL | (G .edgesDBetween V,((the_Vertices_of G) \ V)))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ V),V))) )assume that A182:
card ((the_Vertices_of G) \ V) = 1
and
source in V
and A183:
not
sink in V
;
EL .flow source,sink = (Sum (EL | (G .edgesDBetween V,((the_Vertices_of G) \ V)))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ V),V)))reconsider EOUT =
(G .edgesOutOf {sink}) \ (G .edgesDBetween {sink},{sink}) as
Subset of
(the_Edges_of G) ;
consider v being
set such that A184:
(the_Vertices_of G) \ V = {v}
by A182, CARD_2:60;
sink is
Vertex of
G
by A1, Def2;
then
sink in (the_Vertices_of G) \ V
by A183, XBOOLE_0:def 5;
then A185:
v = sink
by A184, TARSKI:def 1;
then A189:
V = (the_Vertices_of G) \ {sink}
by TARSKI:2;
now let e be
set ;
( ( e in G .edgesDBetween ((the_Vertices_of G) \ V),V implies e in EOUT ) & ( e in EOUT implies e in G .edgesDBetween ((the_Vertices_of G) \ V),V ) )assume A194:
e in EOUT
;
e in G .edgesDBetween ((the_Vertices_of G) \ V),V
(G .edgesOutOf {sink}) \ (G .edgesDBetween {sink},{sink}) is
Subset of
(G .edgesOutOf {sink})
;
then A195:
(the_Source_of G) . e in {sink}
by A194, GLIB_000:def 29;
A196:
not
e in G .edgesDBetween {sink},
{sink}
by A194, XBOOLE_0:def 5;
then
e DSJoins (the_Vertices_of G) \ V,
V,
G
by A184, A185, A194, A195, GLIB_000:def 18;
hence
e in G .edgesDBetween ((the_Vertices_of G) \ V),
V
by GLIB_000:def 33;
verum end; then A198:
G .edgesDBetween ((the_Vertices_of G) \ V),
V = EOUT
by TARSKI:2;
set EESS =
EL | (G .edgesDBetween {sink},{sink});
reconsider EIN =
(G .edgesInto {sink}) \ (G .edgesDBetween {sink},{sink}) as
Subset of
(the_Edges_of G) ;
A199:
dom (EL | (G .edgesInto {sink})) = G .edgesInto {sink}
by PARTFUN1:def 4;
now let e be
set ;
( ( e in G .edgesDBetween V,((the_Vertices_of G) \ V) implies e in EIN ) & ( e in EIN implies e in G .edgesDBetween V,((the_Vertices_of G) \ V) ) )assume A204:
e in EIN
;
e in G .edgesDBetween V,((the_Vertices_of G) \ V)
(G .edgesInto {sink}) \ (G .edgesDBetween {sink},{sink}) is
Subset of
(G .edgesInto {sink})
;
then A205:
(the_Target_of G) . e in {sink}
by A204, GLIB_000:def 28;
A206:
not
e in G .edgesDBetween {sink},
{sink}
by A204, XBOOLE_0:def 5;
then
e DSJoins V,
{sink},
G
by A204, A205, GLIB_000:def 18;
hence
e in G .edgesDBetween V,
((the_Vertices_of G) \ V)
by A184, A185, GLIB_000:def 33;
verum end; then A208:
G .edgesDBetween V,
((the_Vertices_of G) \ V) = EIN
by TARSKI:2;
then A210:
G .edgesDBetween {sink},
{sink} c= G .edgesOutOf {sink}
by TARSKI:def 3;
then A212:
G .edgesDBetween {sink},
{sink} c= G .edgesInto {sink}
by TARSKI:def 3;
A213:
dom (EL | (G .edgesDBetween {sink},{sink})) = G .edgesDBetween {sink},
{sink}
by PARTFUN1:def 4;
A214:
dom (EL | EOUT) = EOUT
by PARTFUN1:def 4;
A220:
dom (EL | EIN) = EIN
by PARTFUN1:def 4;
A226:
(G .edgesDBetween {sink},{sink}) \/ EIN =
(G .edgesInto {sink}) \/ (G .edgesDBetween {sink},{sink})
by XBOOLE_1:39
.=
G .edgesInto {sink}
by A212, XBOOLE_1:12
;
dom ((EL | (G .edgesDBetween {sink},{sink})) +* (EL | EIN)) = (G .edgesDBetween {sink},{sink}) \/ EIN
by A213, A220, FUNCT_4:def 1;
then A227:
Sum (EL | (G .edgesInto {sink})) = (Sum (EL | EIN)) + (Sum (EL | (G .edgesDBetween {sink},{sink})))
by A226, A199, A221, FUNCT_1:9, GLIB_004:3;
(G .edgesDBetween {sink},{sink}) \/ EOUT =
(G .edgesOutOf {sink}) \/ (G .edgesDBetween {sink},{sink})
by XBOOLE_1:39
.=
G .edgesOutOf {sink}
by A210, XBOOLE_1:12
;
then A228:
dom ((EL | (G .edgesDBetween {sink},{sink})) +* (EL | EOUT)) = G .edgesOutOf {sink}
by A213, A214, FUNCT_4:def 1;
dom (EL | (G .edgesOutOf {sink})) = G .edgesOutOf {sink}
by PARTFUN1:def 4;
then EL .flow source,
sink =
((Sum (EL | EIN)) + (Sum (EL | (G .edgesDBetween {sink},{sink})))) - ((Sum (EL | (G .edgesDBetween {sink},{sink}))) + (Sum (EL | EOUT)))
by A227, A228, A215, FUNCT_1:9, GLIB_004:3
.=
(Sum (EL | EIN)) - (Sum (EL | EOUT))
;
hence
EL .flow source,
sink = (Sum (EL | (G .edgesDBetween V,((the_Vertices_of G) \ V)))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ V),V)))
by A208, A198;
verum end;
then A229:
S1[1]
;
for n being non empty Nat holds S1[n]
from NAT_1:sch 10(A229, A6);
hence
EL .flow source,sink = (Sum (EL | (G .edgesDBetween V,((the_Vertices_of G) \ V)))) - (Sum (EL | (G .edgesDBetween ((the_Vertices_of G) \ V),V)))
by A2, A3, A4; verum