let G1 be loopless _Graph; for V being set
for G2 being addLoops of G1,V
for G3 being removeLoops of G2 holds G1 == G3
let V be set ; for G2 being addLoops of G1,V
for G3 being removeLoops of G2 holds G1 == G3
let G2 be addLoops of G1,V; for G3 being removeLoops of G2 holds G1 == G3
let G3 be removeLoops of G2; G1 == G3
per cases
( V c= the_Vertices_of G1 or not V c= the_Vertices_of G1 )
;
suppose A1:
V c= the_Vertices_of G1
;
G1 == G3then A2:
the_Vertices_of G1 =
the_Vertices_of G2
by Def5
.=
the_Vertices_of G3
by GLIB_000:53
;
A3:
the_Edges_of G1 =
((the_Edges_of G1) \/ (G2 .loops())) \ (G2 .loops())
by A1, Th25, XBOOLE_1:88
.=
(the_Edges_of G2) \ (G2 .loops())
by A1, Th25
.=
the_Edges_of G3
by GLIB_000:53
;
A4:
dom (the_Source_of G1) =
the_Edges_of G3
by A3, FUNCT_2:def 1
.=
dom (the_Source_of G3)
by FUNCT_2:def 1
;
A5:
dom (the_Target_of G1) =
the_Edges_of G3
by A3, FUNCT_2:def 1
.=
dom (the_Target_of G3)
by FUNCT_2:def 1
;
then A7:
the_Source_of G1 = the_Source_of G3
by A4, FUNCT_1:2;
then
the_Target_of G1 = the_Target_of G3
by A5, FUNCT_1:2;
hence
G1 == G3
by A2, A3, A7, GLIB_000:def 34;
verum end; end;