reserve x,y,X for set,
  i,j,k,m,n for Nat,
  p for FinSequence of X,
  ii for Integer;
reserve G for Graph,
  pe,qe for FinSequence of the carrier' of G,
  p,q for oriented Chain of G,
  W for Function,
  U,V,e,ee for set,
  v1,v2,v3,v4 for Vertex of G;
reserve G for finite Graph,
  P,Q for oriented Chain of G,
  v1,v2,v3 for Vertex of G;
reserve G for finite oriented Graph,
  P,Q for oriented Chain of G,
  W for Function of (the carrier' of G), Real>=0,
  v1,v2,v3,v4 for Vertex of G;
reserve f,g,h for Element of REAL*,
  r for Real;
reserve G for oriented Graph,
  v1,v2 for Vertex of G,
  W for Function of (the carrier' of G), Real>=0;

theorem Th38:
  OuterVx((repeat(Relax(n)*findmin(n))).i.f,n) <> {} implies
UnusedVx((repeat(Relax(n)*findmin(n))).(i+1).f,n) c< UnusedVx((repeat(Relax(n)*
  findmin(n))).i.f,n)
proof
  set R=Relax(n), M=findmin(n), ff=(repeat (R*M)).i.f;
  set Fi1=(repeat (R*M)).(i+1).f;
  assume OuterVx(ff,n) <> {};
  then
A1: ex j st j in OuterVx(ff,n) & 1 <= j & j <= n & (M.ff). j=-1 by Th34;
A2: dom Fi1 = dom ff by Th37
    .= dom (M.ff) by Th33;
A3: now
    let x;
    assume x in UnusedVx(Fi1,n);
    then consider k such that
A4: x=k and
A5: k in dom Fi1 and
    1 <= k and
A6: k <= n and
A7: Fi1.k <> -1;
    Fi1.k=(R.(M.ff)).k by Th22
      .=(M.ff).k by A2,A5,A6,Th36;
    hence (M.ff).x <> -1 by A4,A7;
  end;
A8: UnusedVx(Fi1,n) c= UnusedVx(ff,n)
  proof
A9: n < n*n+3*n+1 by Lm7;
    let x be object;
    assume x in UnusedVx(Fi1,n);
    then consider k such that
A10: x=k and
A11: k in dom Fi1 and
A12: 1 <= k and
A13: k <= n and
A14: Fi1.k <> -1;
A15: k in dom ff by A11,Th37;
    Fi1.k=(R.(M.ff)).k by Th22
      .=(M.ff).k by A2,A11,A13,Th36;
    then ff.k <> -1 by A13,A14,A15,A9,Th32;
    hence thesis by A10,A12,A13,A15;
  end;
  OuterVx(ff,n) c= UnusedVx(ff,n) by Th27;
  then UnusedVx(Fi1,n) <> UnusedVx(ff,n) by A1,A3;
  hence thesis by A8,XBOOLE_0:def 8;
end;
