
theorem
  for G being _finite natural-weighted WGraph, source, sink being Vertex
  of G st sink <> source holds FF:MaxFlow(G,source,sink) has_maximum_flow_from
  source,sink
proof
  let G be _finite natural-weighted WGraph, source, sink be Vertex of G;
  set CS = FF:CompSeq(G,source,sink);
  set n = CS.Lifespan(), Gn = CS.n, Gn1 = CS.(n+1);
A1: Gn1 = FF:Step(Gn,source,sink) by Def20;
  assume
A2: sink <> source;
  then CS is halting by Th17;
  then
A3: Gn = CS.(n+1) by GLIB_000:def 56;
  now
    given P being Path of G such that
A4: P is_Walk_from source,sink and
A5: P is_augmenting_wrt Gn;
    set P = AP:GetAugPath(Gn,source,sink);
A6: sink in dom AP:FindAugPath(Gn,source) by A4,A5,Th9;
    then
A7: P is_Walk_from source,sink by Def14;
    then
A8: P.first() = source by GLIB_001:def 23;
A9: P.last() = sink by A7,GLIB_001:def 23;
A10: P is_augmenting_wrt Gn by A6,Def14;
    Gn1 = FF:PushFlow(Gn, AP:GetAugPath(Gn,source,sink)) by A1,A6,Def18;
    then
    Gn.flow(source,sink) + P.tolerance(Gn) = Gn1.flow(source,sink) by A2,A7,A10
,Th15;
    hence contradiction by A2,A3,A8,A9,A10,Th13,GLIB_001:127;
  end;
  hence thesis by A2,Th16,Th18;
end;
