reserve G,G1,G2 for _Graph;
reserve W,W1,W2 for Walk of G;
reserve e,x,y,z for set;
reserve v for Vertex of G;
reserve n,m for Element of NAT;

theorem Th99:
  rng W = W.vertices() \/ W.edges()
proof
  now
    let y be object;
    assume
A1: y in W.vertices() \/ W.edges();
    now
      per cases by A1,XBOOLE_0:def 3;
      suppose
        y in W.vertices();
        then consider x being odd Element of NAT such that
A2:     x <= len W and
A3:     W.x = y by Lm45;
        1 <= x by ABIAN:12;
        then x in dom W by A2,FINSEQ_3:25;
        hence y in rng W by A3,FUNCT_1:def 3;
      end;
      suppose
        y in W.edges();
        then consider x being even Element of NAT such that
A4:     1 <= x and
A5:     x <= len W and
A6:     W.x = y by Lm46;
        x in dom W by A4,A5,FINSEQ_3:25;
        hence y in rng W by A6,FUNCT_1:def 3;
      end;
    end;
    hence y in rng W;
  end;
  then
A7: W.vertices() \/ W.edges() c= rng W by TARSKI:def 3;
  now
    let y be object;
    assume y in rng W;
    then consider x being Nat such that
A8: x in dom W and
A9: W.x = y by FINSEQ_2:10;
A10: x <= len W by A8,FINSEQ_3:25;
A11: 1 <= x by A8,FINSEQ_3:25;
    now
      per cases;
      suppose
        x is odd;
        then y in W.vertices() by A8,A9,A10,Lm45;
        hence y in W.vertices() \/ W.edges() by XBOOLE_0:def 3;
      end;
      suppose
        x is even;
        then y in W.edges() by A8,A9,A11,A10,Lm46;
        hence y in W.vertices() \/ W.edges() by XBOOLE_0:def 3;
      end;
    end;
    hence y in W.vertices() \/ W.edges();
  end;
  then rng W c= W.vertices() \/ W.edges() by TARSKI:def 3;
  hence thesis by A7,XBOOLE_0:def 10;
end;
