let G1, G2 be _Graph; :: thesis: for e being set
for v1 being Vertex of G1
for v2 being Vertex of G2 st v1 = v2 & G1 == G2 holds
( v1 .edgesIn() = v2 .edgesIn() & v1 .edgesOut() = v2 .edgesOut() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .adj e = v2 .adj e & v1 .inDegree() = v2 .inDegree() & v1 .outDegree() = v2 .outDegree() & v1 .degree() = v2 .degree() & v1 .inNeighbors() = v2 .inNeighbors() & v1 .outNeighbors() = v2 .outNeighbors() & v1 .allNeighbors() = v2 .allNeighbors() )

let e be set ; :: thesis: for v1 being Vertex of G1
for v2 being Vertex of G2 st v1 = v2 & G1 == G2 holds
( v1 .edgesIn() = v2 .edgesIn() & v1 .edgesOut() = v2 .edgesOut() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .adj e = v2 .adj e & v1 .inDegree() = v2 .inDegree() & v1 .outDegree() = v2 .outDegree() & v1 .degree() = v2 .degree() & v1 .inNeighbors() = v2 .inNeighbors() & v1 .outNeighbors() = v2 .outNeighbors() & v1 .allNeighbors() = v2 .allNeighbors() )

let v1 be Vertex of G1; :: thesis: for v2 being Vertex of G2 st v1 = v2 & G1 == G2 holds
( v1 .edgesIn() = v2 .edgesIn() & v1 .edgesOut() = v2 .edgesOut() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .adj e = v2 .adj e & v1 .inDegree() = v2 .inDegree() & v1 .outDegree() = v2 .outDegree() & v1 .degree() = v2 .degree() & v1 .inNeighbors() = v2 .inNeighbors() & v1 .outNeighbors() = v2 .outNeighbors() & v1 .allNeighbors() = v2 .allNeighbors() )

let v2 be Vertex of G2; :: thesis: ( v1 = v2 & G1 == G2 implies ( v1 .edgesIn() = v2 .edgesIn() & v1 .edgesOut() = v2 .edgesOut() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .adj e = v2 .adj e & v1 .inDegree() = v2 .inDegree() & v1 .outDegree() = v2 .outDegree() & v1 .degree() = v2 .degree() & v1 .inNeighbors() = v2 .inNeighbors() & v1 .outNeighbors() = v2 .outNeighbors() & v1 .allNeighbors() = v2 .allNeighbors() ) )
assume that
A1: v1 = v2 and
A2: G1 == G2 ; :: thesis: ( v1 .edgesIn() = v2 .edgesIn() & v1 .edgesOut() = v2 .edgesOut() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .adj e = v2 .adj e & v1 .inDegree() = v2 .inDegree() & v1 .outDegree() = v2 .outDegree() & v1 .degree() = v2 .degree() & v1 .inNeighbors() = v2 .inNeighbors() & v1 .outNeighbors() = v2 .outNeighbors() & v1 .allNeighbors() = v2 .allNeighbors() )
thus A3: v1 .edgesIn() = v2 .edgesIn() by A1, A2, Th93; :: thesis: ( v1 .edgesOut() = v2 .edgesOut() & v1 .edgesInOut() = v2 .edgesInOut() & v1 .adj e = v2 .adj e & v1 .inDegree() = v2 .inDegree() & v1 .outDegree() = v2 .outDegree() & v1 .degree() = v2 .degree() & v1 .inNeighbors() = v2 .inNeighbors() & v1 .outNeighbors() = v2 .outNeighbors() & v1 .allNeighbors() = v2 .allNeighbors() )
thus A4: v1 .edgesOut() = v2 .edgesOut() by A1, A2, Th93; :: thesis: ( v1 .edgesInOut() = v2 .edgesInOut() & v1 .adj e = v2 .adj e & v1 .inDegree() = v2 .inDegree() & v1 .outDegree() = v2 .outDegree() & v1 .degree() = v2 .degree() & v1 .inNeighbors() = v2 .inNeighbors() & v1 .outNeighbors() = v2 .outNeighbors() & v1 .allNeighbors() = v2 .allNeighbors() )
thus v1 .edgesInOut() = v2 .edgesInOut() by A1, A2, Th93; :: thesis: ( v1 .adj e = v2 .adj e & v1 .inDegree() = v2 .inDegree() & v1 .outDegree() = v2 .outDegree() & v1 .degree() = v2 .degree() & v1 .inNeighbors() = v2 .inNeighbors() & v1 .outNeighbors() = v2 .outNeighbors() & v1 .allNeighbors() = v2 .allNeighbors() )
now
per cases ( ( e in the_Edges_of G1 & (the_Target_of G1) . e = v1 ) or ( e in the_Edges_of G1 & (the_Source_of G1) . e = v1 & not (the_Target_of G1) . e = v1 ) or ( ( not e in the_Edges_of G1 or not (the_Target_of G1) . e = v1 ) & ( not e in the_Edges_of G1 or not (the_Source_of G1) . e = v1 or (the_Target_of G1) . e = v1 ) ) ) ;
suppose A5: ( e in the_Edges_of G1 & (the_Target_of G1) . e = v1 ) ; :: thesis: v1 .adj e = v2 .adj e
then A6: ( e in the_Edges_of G2 & (the_Target_of G2) . e = v2 ) by A1, A2, Def36;
thus v1 .adj e = (the_Source_of G1) . e by A5, Def43
.= (the_Source_of G2) . e by A2, Def36
.= v2 .adj e by A6, Def43 ; :: thesis: verum
end;
suppose A7: ( e in the_Edges_of G1 & (the_Source_of G1) . e = v1 & not (the_Target_of G1) . e = v1 ) ; :: thesis: v1 .adj e = v2 .adj e
then A8: not (the_Target_of G2) . e = v2 by A1, A2, Def36;
A9: ( e in the_Edges_of G2 & (the_Source_of G2) . e = v2 ) by A1, A2, A7, Def36;
thus v1 .adj e = (the_Target_of G1) . e by A7, Def43
.= (the_Target_of G2) . e by A2, Def36
.= v2 .adj e by A9, A8, Def43 ; :: thesis: verum
end;
suppose A10: ( ( not e in the_Edges_of G1 or not (the_Target_of G1) . e = v1 ) & ( not e in the_Edges_of G1 or not (the_Source_of G1) . e = v1 or (the_Target_of G1) . e = v1 ) ) ; :: thesis: v1 .adj e = v2 .adj e
then A11: ( ( not e in the_Edges_of G2 or not (the_Target_of G2) . e = v2 ) & ( not e in the_Edges_of G2 or not (the_Source_of G2) . e = v2 or (the_Target_of G2) . e = v2 ) ) by A1, A2, Def36;
thus v1 .adj e = v2 by A1, A10, Def43
.= v2 .adj e by A11, Def43 ; :: thesis: verum
end;
end;
end;
hence v1 .adj e = v2 .adj e ; :: thesis: ( v1 .inDegree() = v2 .inDegree() & v1 .outDegree() = v2 .outDegree() & v1 .degree() = v2 .degree() & v1 .inNeighbors() = v2 .inNeighbors() & v1 .outNeighbors() = v2 .outNeighbors() & v1 .allNeighbors() = v2 .allNeighbors() )
thus v1 .inDegree() = v2 .inDegree() by A1, A2, Th93; :: thesis: ( v1 .outDegree() = v2 .outDegree() & v1 .degree() = v2 .degree() & v1 .inNeighbors() = v2 .inNeighbors() & v1 .outNeighbors() = v2 .outNeighbors() & v1 .allNeighbors() = v2 .allNeighbors() )
thus v1 .outDegree() = v2 .outDegree() by A1, A2, Th93; :: thesis: ( v1 .degree() = v2 .degree() & v1 .inNeighbors() = v2 .inNeighbors() & v1 .outNeighbors() = v2 .outNeighbors() & v1 .allNeighbors() = v2 .allNeighbors() )
hence v1 .degree() = v2 .degree() by A1, A2, Th93; :: thesis: ( v1 .inNeighbors() = v2 .inNeighbors() & v1 .outNeighbors() = v2 .outNeighbors() & v1 .allNeighbors() = v2 .allNeighbors() )
thus v1 .inNeighbors() = v2 .inNeighbors() by A2, A3, Def36; :: thesis: ( v1 .outNeighbors() = v2 .outNeighbors() & v1 .allNeighbors() = v2 .allNeighbors() )
thus v1 .outNeighbors() = v2 .outNeighbors() by A2, A4, Def36; :: thesis: v1 .allNeighbors() = v2 .allNeighbors()
hence v1 .allNeighbors() = v2 .allNeighbors() by A2, A3, Def36; :: thesis: verum