reserve GS for GraphStruct;
reserve G,G1,G2,G3 for _Graph;
reserve e,x,x1,x2,y,y1,y2,E,V,X,Y for set;
reserve n,n1,n2 for Nat;
reserve v,v1,v2 for Vertex of G;

theorem Th107:
  for G being _Graph, X being set, v being Vertex of G
  holds G.edgesBetween(X \ {v}) = G.edgesBetween(X) \ v.edgesInOut()
proof
  let G be _Graph, X be set, v be Vertex of G;
  for e being object holds e in G.edgesBetween(X \ {v})
    iff e in G.edgesBetween(X) \ v.edgesInOut()
  proof
    let e be object;
    set u = (the_Source_of G).e, w = (the_Target_of G).e;
    hereby
      assume e in G.edgesBetween(X \ {v});
      then A1: e in the_Edges_of G & u in X\{v} & w in X\{v} by Lm5;
      then A2: e in G.edgesBetween(X) by Lm5;
      not e in v.edgesInOut()
      proof
        assume e in v.edgesInOut();
        then u = v or w = v by Th61;
        hence contradiction by A1, ZFMISC_1:56;
      end;
      hence e in G.edgesBetween(X) \ v.edgesInOut() by A2, XBOOLE_0:def 5;
    end;
    assume e in G.edgesBetween(X) \ v.edgesInOut();
    then A3: e in G.edgesBetween(X) & not e in v.edgesInOut()
      by XBOOLE_0:def 5;
    then A4: e in the_Edges_of G & u in X & w in X by Lm5;
    u <> v & w <> v by A3, Th61;
    then not u in {v} & not w in {v} by TARSKI:def 1;
    then u in X\{v} & w in X\{v} by A4, XBOOLE_0:def 5;
    hence thesis by A3, Lm5;
  end;
  hence thesis by TARSKI:2;
end;
