let G1, G2 be _Graph; :: thesis: ( G1 == G2 implies ( ( G1 is finite implies G2 is finite ) & ( G1 is loopless implies G2 is loopless ) & ( G1 is trivial implies G2 is trivial ) & ( G1 is non-multi implies G2 is non-multi ) & ( G1 is non-Dmulti implies G2 is non-Dmulti ) & ( G1 is simple implies G2 is simple ) & ( G1 is Dsimple implies G2 is Dsimple ) ) )
assume A1: G1 == G2 ; :: thesis: ( ( G1 is finite implies G2 is finite ) & ( G1 is loopless implies G2 is loopless ) & ( G1 is trivial implies G2 is trivial ) & ( G1 is non-multi implies G2 is non-multi ) & ( G1 is non-Dmulti implies G2 is non-Dmulti ) & ( G1 is simple implies G2 is simple ) & ( G1 is Dsimple implies G2 is Dsimple ) )
then A2: ( the_Vertices_of G1 = the_Vertices_of G2 & the_Edges_of G1 = the_Edges_of G2 & the_Source_of G1 = the_Source_of G2 & the_Target_of G1 = the_Target_of G2 ) by Def36;
thus ( G1 is finite implies G2 is finite ) by A2, Def19; :: thesis: ( ( G1 is loopless implies G2 is loopless ) & ( G1 is trivial implies G2 is trivial ) & ( G1 is non-multi implies G2 is non-multi ) & ( G1 is non-Dmulti implies G2 is non-Dmulti ) & ( G1 is simple implies G2 is simple ) & ( G1 is Dsimple implies G2 is Dsimple ) )
A3: now end;
hence ( G1 is loopless implies G2 is loopless ) ; :: thesis: ( ( G1 is trivial implies G2 is trivial ) & ( G1 is non-multi implies G2 is non-multi ) & ( G1 is non-Dmulti implies G2 is non-Dmulti ) & ( G1 is simple implies G2 is simple ) & ( G1 is Dsimple implies G2 is Dsimple ) )
hereby :: thesis: ( ( G1 is non-multi implies G2 is non-multi ) & ( G1 is non-Dmulti implies G2 is non-Dmulti ) & ( G1 is simple implies G2 is simple ) & ( G1 is Dsimple implies G2 is Dsimple ) ) end;
A4: now
assume A5: G1 is non-multi ; :: thesis: G2 is non-multi
now
let e1, e2, v1, v2 be set ; :: thesis: ( e1 Joins v1,v2,G2 & e2 Joins v1,v2,G2 implies e1 = e2 )
assume ( e1 Joins v1,v2,G2 & e2 Joins v1,v2,G2 ) ; :: thesis: e1 = e2
then ( e1 Joins v1,v2,G1 & e2 Joins v1,v2,G1 ) by A1, Th91;
hence e1 = e2 by A5, Def22; :: thesis: verum
end;
hence G2 is non-multi by Def22; :: thesis: verum
end;
hence ( G1 is non-multi implies G2 is non-multi ) ; :: thesis: ( ( G1 is non-Dmulti implies G2 is non-Dmulti ) & ( G1 is simple implies G2 is simple ) & ( G1 is Dsimple implies G2 is Dsimple ) )
A6: now
assume A7: G1 is non-Dmulti ; :: thesis: G2 is non-Dmulti
now
let e1, e2, v1, v2 be set ; :: thesis: ( e1 DJoins v1,v2,G2 & e2 DJoins v1,v2,G2 implies e1 = e2 )
assume ( e1 DJoins v1,v2,G2 & e2 DJoins v1,v2,G2 ) ; :: thesis: e1 = e2
then ( e1 DJoins v1,v2,G1 & e2 DJoins v1,v2,G1 ) by A1, Th91;
hence e1 = e2 by A7, Def23; :: thesis: verum
end;
hence G2 is non-Dmulti by Def23; :: thesis: verum
end;
hence ( G1 is non-Dmulti implies G2 is non-Dmulti ) ; :: thesis: ( ( G1 is simple implies G2 is simple ) & ( G1 is Dsimple implies G2 is Dsimple ) )
thus ( G1 is simple implies G2 is simple ) by A3, A4; :: thesis: ( G1 is Dsimple implies G2 is Dsimple )
thus ( G1 is Dsimple implies G2 is Dsimple ) by A3, A6; :: thesis: verum