reserve G for _Graph;

theorem Th6:
  for G being _Graph st for C being Component of G holds C is non _trivial
  holds field VertexDomRel(G) = the_Vertices_of G
proof
  let G be _Graph;
  assume A1: for C being Component of G holds C is non _trivial;
  A2: field VertexDomRel(G) c= the_Vertices_of G \/ the_Vertices_of G
    by RELSET_1:8;
  now
    let x be object;
    assume x in the_Vertices_of G;
    then reconsider v = x as Vertex of G;
    set H = the inducedSubgraph of G,G.reachableFrom(v);
    reconsider H0 = H as non _trivial _Graph by A1;
    the_Vertices_of H = G.reachableFrom(v) by GLIB_000:def 37;
    then reconsider v0 = v as Vertex of H0 by GLIB_002:9;
    (the_Vertices_of H0) \ {v0} is non empty by GLIB_000:20;
    then consider w being object such that
      A3: w in (the_Vertices_of H) \ {v0} by XBOOLE_0:def 1;
    reconsider w as Vertex of H by A3, XBOOLE_0:def 5;
    the_Vertices_of H = G.reachableFrom(v) by GLIB_000:def 37;
    then consider W being Walk of G such that
      A4: W is_Walk_from v,w by GLIB_002:def 5;
    A5: W.first() = v & W.last() = w by A4, GLIB_001:def 23;
    not w in {v} by A3, XBOOLE_0:def 5;
    then v <> w by TARSKI:def 1;
    then 3 <= len W by A5, GLIB_001:125, GLIB_001:127;
    then 1 < len W by XXREAL_0:2;
    then W.(1+1) Joins W.1,W.(1+2),G by GLIB_001:def 3, POLYFORM:4;
    then W.2 Joins v,W.3,G by A5, GLIB_001:def 6;
    then per cases by GLIB_000:16;
    suppose W.2 DJoins v,W.3,G;
      then [v,W.3] in VertexDomRel(G) by Th1;
      hence x in field VertexDomRel(G) by RELAT_1:15;
    end;
    suppose W.2 DJoins W.3,v,G;
      then [W.3,v] in VertexDomRel(G) by Th1;
      hence x in field VertexDomRel(G) by RELAT_1:15;
    end;
  end;
  then the_Vertices_of G c= field VertexDomRel(G) by TARSKI:def 3;
  hence thesis by A2, XBOOLE_0:def 10;
end;
