let G be non-multi _Graph; ex f being one-to-one Function st
( dom f = the_Edges_of G & rng f c= (2Set (the_Vertices_of G)) \/ (singletons (the_Vertices_of G)) & ( for e being object st e in dom f holds
f . e = {((the_Source_of G) . e),((the_Target_of G) . e)} ) )
deffunc H1( object ) -> set = {((the_Source_of G) . $1),((the_Target_of G) . $1)};
consider f being Function such that
A1:
dom f = the_Edges_of G
and
A2:
for e being object st e in the_Edges_of G holds
f . e = H1(e)
from FUNCT_1:sch 3();
now for x1, x2 being object st x1 in dom f & x2 in dom f & f . x1 = f . x2 holds
x1 = x2let x1,
x2 be
object ;
( x1 in dom f & x2 in dom f & f . x1 = f . x2 implies b1 = b2 )assume A3:
(
x1 in dom f &
x2 in dom f &
f . x1 = f . x2 )
;
b1 = b2then A4:
(
f . x1 = {((the_Source_of G) . x1),((the_Target_of G) . x1)} &
f . x2 = {((the_Source_of G) . x2),((the_Target_of G) . x2)} )
by A1, A2;
A5:
(
x1 Joins (the_Source_of G) . x1,
(the_Target_of G) . x1,
G &
x2 Joins (the_Source_of G) . x2,
(the_Target_of G) . x2,
G )
by A1, A3, GLIB_000:def 13;
end;
then reconsider f = f as one-to-one Function by FUNCT_1:def 4;
take
f
; ( dom f = the_Edges_of G & rng f c= (2Set (the_Vertices_of G)) \/ (singletons (the_Vertices_of G)) & ( for e being object st e in dom f holds
f . e = {((the_Source_of G) . e),((the_Target_of G) . e)} ) )
thus
dom f = the_Edges_of G
by A1; ( rng f c= (2Set (the_Vertices_of G)) \/ (singletons (the_Vertices_of G)) & ( for e being object st e in dom f holds
f . e = {((the_Source_of G) . e),((the_Target_of G) . e)} ) )
for y being object st y in rng f holds
y in (2Set (the_Vertices_of G)) \/ (singletons (the_Vertices_of G))
hence
rng f c= (2Set (the_Vertices_of G)) \/ (singletons (the_Vertices_of G))
by TARSKI:def 3; for e being object st e in dom f holds
f . e = {((the_Source_of G) . e),((the_Target_of G) . e)}
thus
for e being object st e in dom f holds
f . e = {((the_Source_of G) . e),((the_Target_of G) . e)}
by A1, A2; verum