let G1 be _Graph; :: thesis: for G2 being spanning Subgraph of G1 st ( for v1 being Vertex of G1
for v2 being Vertex of G2 st v1 = v2 holds
G1 .reachableFrom v1 = G2 .reachableFrom v2 ) holds
G1 .numComponents() = G2 .numComponents()

let G2 be spanning Subgraph of G1; :: thesis: ( ( for v1 being Vertex of G1
for v2 being Vertex of G2 st v1 = v2 holds
G1 .reachableFrom v1 = G2 .reachableFrom v2 ) implies G1 .numComponents() = G2 .numComponents() )

assume A1: for v1 being Vertex of G1
for v2 being Vertex of G2 st v1 = v2 holds
G1 .reachableFrom v1 = G2 .reachableFrom v2 ; :: thesis: G1 .numComponents() = G2 .numComponents()
thus G1 .numComponents() = card (G1 .componentSet()) by GLIB_002:def 9
.= card (G2 .componentSet()) by A1, Th37
.= G2 .numComponents() by GLIB_002:def 9 ; :: thesis: verum