let G be _Graph; :: thesis: for C being Component of G
for v1 being Vertex of G
for v2 being Vertex of C st v1 = v2 holds
( v1 .edgesIn() = v2 .edgesIn() & v1 .inDegree() = v2 .inDegree() & v1 .edgesOut() = v2 .edgesOut() & v1 .outDegree() = v2 .outDegree() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .degree() = v2 .degree() )

let C be Component of G; :: thesis: for v1 being Vertex of G
for v2 being Vertex of C st v1 = v2 holds
( v1 .edgesIn() = v2 .edgesIn() & v1 .inDegree() = v2 .inDegree() & v1 .edgesOut() = v2 .edgesOut() & v1 .outDegree() = v2 .outDegree() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .degree() = v2 .degree() )

let v1 be Vertex of G; :: thesis: for v2 being Vertex of C st v1 = v2 holds
( v1 .edgesIn() = v2 .edgesIn() & v1 .inDegree() = v2 .inDegree() & v1 .edgesOut() = v2 .edgesOut() & v1 .outDegree() = v2 .outDegree() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .degree() = v2 .degree() )

let v2 be Vertex of C; :: thesis: ( v1 = v2 implies ( v1 .edgesIn() = v2 .edgesIn() & v1 .inDegree() = v2 .inDegree() & v1 .edgesOut() = v2 .edgesOut() & v1 .outDegree() = v2 .outDegree() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .degree() = v2 .degree() ) )
assume A1: v1 = v2 ; :: thesis: ( v1 .edgesIn() = v2 .edgesIn() & v1 .inDegree() = v2 .inDegree() & v1 .edgesOut() = v2 .edgesOut() & v1 .outDegree() = v2 .outDegree() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .degree() = v2 .degree() )
then A2: ( v2 .edgesIn() c= v1 .edgesIn() & v2 .edgesOut() c= v1 .edgesOut() ) by GLIB_000:78;
now :: thesis: for e being object st e in v1 .edgesIn() holds
e in v2 .edgesIn()
end;
then v1 .edgesIn() c= v2 .edgesIn() by TARSKI:def 3;
hence A7: v1 .edgesIn() = v2 .edgesIn() by A2, XBOOLE_0:def 10; :: thesis: ( v1 .inDegree() = v2 .inDegree() & v1 .edgesOut() = v2 .edgesOut() & v1 .outDegree() = v2 .outDegree() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .degree() = v2 .degree() )
hence A8: v1 .inDegree() = v2 .inDegree() ; :: thesis: ( v1 .edgesOut() = v2 .edgesOut() & v1 .outDegree() = v2 .outDegree() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .degree() = v2 .degree() )
now :: thesis: for e being object st e in v1 .edgesOut() holds
e in v2 .edgesOut()
end;
then v1 .edgesOut() c= v2 .edgesOut() by TARSKI:def 3;
hence A13: v1 .edgesOut() = v2 .edgesOut() by A2, XBOOLE_0:def 10; :: thesis: ( v1 .outDegree() = v2 .outDegree() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .degree() = v2 .degree() )
hence A14: v1 .outDegree() = v2 .outDegree() ; :: thesis: ( v1 .edgesInOut() = v2 .edgesInOut() & v1 .degree() = v2 .degree() )
thus v1 .edgesInOut() = v2 .edgesInOut() by A7, A13; :: thesis: v1 .degree() = v2 .degree()
thus v1 .degree() = v2 .degree() by A8, A14; :: thesis: verum