reserve G, G2 for _Graph, V, E for set,
  v for object;

theorem Th73:
  for G2, v, V for G1 being addAdjVertexAll of G2, v, V
  st V c= the_Vertices_of G2 & not v in the_Vertices_of G2 &
    ex G3 being Component of G2 st for w being Vertex of G3 holds not w in V
  holds G1 is non connected
proof
  let G2, v, V;
  let G1 be addAdjVertexAll of G2, v, V;
  assume that
    A1: V c= the_Vertices_of G2 & not v in the_Vertices_of G2 and
    A2: ex G3 being Component of G2 st
      for w being Vertex of G3 holds not w in V;
  consider G3 being Component of G2 such that
    A3: for w being Vertex of G3 holds not w in V by A2;
  set v1 = the Vertex of G3;
  A4: the_Vertices_of G3 c= the_Vertices_of G2;
  then A5: v1 in the_Vertices_of G2 by TARSKI:def 3;
  then A6: v1 <> v by A1;
  A7: the_Vertices_of G1 = the_Vertices_of G2 \/ {v} by A1, Def4;
  v in {v} by TARSKI:def 1;
  then A8: v in the_Vertices_of G1 by A7, XBOOLE_0:def 3;
  A9: v1 in the_Vertices_of G1 by A5, A7, XBOOLE_0:def 3;
  not ex W being Walk of G1 st W is_Walk_from v1,v
  proof
    given W being Walk of G1 such that
      A10: W is_Walk_from v1,v;
    set P = the Path of W;
    reconsider u1=v1, u2=v as set by TARSKI:1;
    P is_Walk_from u1,u2 by A10, GLIB_001:160;
    then A11: P.first() = v1 & P.last() = v by GLIB_001:def 23;
    then P.first() <> P.last() by A6;
    then P is non trivial by GLIB_001:127;
    then 3 <= len P by GLIB_001:125;
    then 1 < len P by XXREAL_0:2;
    then reconsider m=len P-2 as odd Element of NAT by Lm13;
    A12: m < len P - 0 & m <= len P - 0 by XREAL_1:15;
    set P2 = P.cut(1,m);
    A13: len P2 = m by A12, GLIB_001:45;
    not v in P2.vertices()
    proof
      assume v in P2.vertices();
      then consider k being odd Element of NAT such that
        A14: k <= len P2 & P2.k = v by GLIB_001:87;
      1 <= k by ABIAN:12;
      then k in dom P2 by A14, FINSEQ_3:25;
      then P.k = P2.k by A12, GLIB_001:46;
      then A15: P.k = v by A14;
      A16: P.len P = v by A11, GLIB_001:def 7;
      k < len P by A14, A13, A12, XXREAL_0:2;
      then k = 1 by A15, A16, GLIB_001:def 28;
      then P.1 = v by A15;
      hence contradiction by A11, A6, GLIB_001:def 6;
    end;
    then reconsider P3=P2 as Walk of G2 by A1, Th64;
    A17: 1 <= m by ABIAN:12;
    set v2 = P3.last();
    v2 in the_Vertices_of G3
    proof
      A18: 1 in dom P2 by A13, A17, FINSEQ_3:25;
      P3.first() = P2.1 by GLIB_001:def 6
        .= P.1 by A18, A12, GLIB_001:46
        .= v1 by A11, GLIB_001:def 6;
      then A19: P3 is_Walk_from v1, v2 by GLIB_001:def 23;
      reconsider v3=v1 as Vertex of G2 by A4, TARSKI:def 3;
      v2 in G2.reachableFrom(v3) by A19, GLIB_002:def 5;
      hence thesis by GLIB_002:33;
    end;
    then A20: not v2 in V by A3;
    v2 = P2.last() by GLIB_001:16
      .= P.m by A12, A17, Lm16, GLIB_001:37;
    then P.(m+1) Joins v2,P.(m+2),G1 by A12, GLIB_001:def 3;
    then P.(m+1) Joins v2,P.len P,G1;
    then P.(m+1) Joins v2,v,G1 by GLIB_001:def 7, A11;
    hence contradiction by A20, A1, Def4;
  end;
  hence thesis by A8, A9, GLIB_002:def 1;
end;
