Lm1:
for X, Y being set
for f being Function of X,Y
for V being ManySortedSet of Y
for E being one-to-one ManySortedSet of X holds (V * f) * (E ") is Function of (rng E),(rng V)
definition
let G be
_Graph;
let V be non
empty one-to-one ManySortedSet of
the_Vertices_of G;
let E be
one-to-one ManySortedSet of
the_Edges_of G;
existence
ex b1 being plain _Graph ex S, T being Function of (rng E),(rng V) st
( S = (V * (the_Source_of G)) * (E ") & T = (V * (the_Target_of G)) * (E ") & b1 = createGraph ((rng V),(rng E),S,T) )
uniqueness
for b1, b2 being plain _Graph st ex S, T being Function of (rng E),(rng V) st
( S = (V * (the_Source_of G)) * (E ") & T = (V * (the_Target_of G)) * (E ") & b1 = createGraph ((rng V),(rng E),S,T) ) & ex S, T being Function of (rng E),(rng V) st
( S = (V * (the_Source_of G)) * (E ") & T = (V * (the_Target_of G)) * (E ") & b2 = createGraph ((rng V),(rng E),S,T) ) holds
b1 = b2
;
end;
definition
let I be
set ;
let F1,
F2 be
Graph-yielding ManySortedSet of
I;
compatibility
( F1,F2 are_Disomorphic iff ex p being Permutation of I st
for x being object st x in I holds
ex G1, G2 being _Graph st
( G1 = F1 . x & G2 = F2 . (p . x) & G2 is G1 -Disomorphic ) )
reflexivity
for F1 being Graph-yielding ManySortedSet of I ex p being Permutation of I st
for x being object st x in I holds
ex G1, G2 being _Graph st
( G1 = F1 . x & G2 = F1 . (p . x) & G2 is G1 -Disomorphic )
symmetry
for F1, F2 being Graph-yielding ManySortedSet of I st ex p being Permutation of I st
for x being object st x in I holds
ex G1, G2 being _Graph st
( G1 = F1 . x & G2 = F2 . (p . x) & G2 is G1 -Disomorphic ) holds
ex p being Permutation of I st
for x being object st x in I holds
ex G1, G2 being _Graph st
( G1 = F2 . x & G2 = F1 . (p . x) & G2 is G1 -Disomorphic )
compatibility
( F1,F2 are_isomorphic iff ex p being Permutation of I st
for x being object st x in I holds
ex G1, G2 being _Graph st
( G1 = F1 . x & G2 = F2 . (p . x) & G2 is G1 -isomorphic ) )
reflexivity
for F1 being Graph-yielding ManySortedSet of I ex p being Permutation of I st
for x being object st x in I holds
ex G1, G2 being _Graph st
( G1 = F1 . x & G2 = F1 . (p . x) & G2 is G1 -isomorphic )
symmetry
for F1, F2 being Graph-yielding ManySortedSet of I st ex p being Permutation of I st
for x being object st x in I holds
ex G1, G2 being _Graph st
( G1 = F1 . x & G2 = F2 . (p . x) & G2 is G1 -isomorphic ) holds
ex p being Permutation of I st
for x being object st x in I holds
ex G1, G2 being _Graph st
( G1 = F2 . x & G2 = F1 . (p . x) & G2 is G1 -isomorphic )
end;
Lm2:
for S being non empty Graph-membered vertex-disjoint set holds card S = card { (H .componentSet()) where H is Element of S : verum }
Lm3:
for X being non empty set holds 1 c= card X
definition
let F be non
empty Graph-yielding Function;
existence
ex b1 being Graph-yielding Function st
( dom b1 = dom F & ( for x being Element of dom F holds b1 . x = replaceVerticesEdges ((renameElementsDistinctlyFunc ((the_Vertices_of F),x)),(renameElementsDistinctlyFunc ((the_Edges_of F),x))) ) )
uniqueness
for b1, b2 being Graph-yielding Function st dom b1 = dom F & ( for x being Element of dom F holds b1 . x = replaceVerticesEdges ((renameElementsDistinctlyFunc ((the_Vertices_of F),x)),(renameElementsDistinctlyFunc ((the_Edges_of F),x))) ) & dom b2 = dom F & ( for x being Element of dom F holds b2 . x = replaceVerticesEdges ((renameElementsDistinctlyFunc ((the_Vertices_of F),x)),(renameElementsDistinctlyFunc ((the_Edges_of F),x))) ) holds
b1 = b2
end;
theorem Th90:
for
F being non
empty Graph-yielding Function for
x being
Element of
dom F for
x9 being
Element of
dom (canGFDistinction F) for
v,
e,
w being
object st
x = x9 &
e DJoins v,
w,
F . x holds
[(the_Edges_of F),x,e] DJoins [(the_Vertices_of F),x,v],
[(the_Vertices_of F),x,w],
(canGFDistinction F) . x9
theorem Th91:
for
F being non
empty Graph-yielding Function for
x being
Element of
dom F for
x9 being
Element of
dom (canGFDistinction F) for
v,
e,
w being
object st
x = x9 &
e Joins v,
w,
F . x holds
[(the_Edges_of F),x,e] Joins [(the_Vertices_of F),x,v],
[(the_Vertices_of F),x,w],
(canGFDistinction F) . x9
theorem Th92:
for
F being non
empty Graph-yielding Function for
x being
Element of
dom F for
x9 being
Element of
dom (canGFDistinction F) for
v9,
e9,
w9 being
object st
x = x9 &
e9 DJoins v9,
w9,
(canGFDistinction F) . x9 holds
ex
v,
e,
w being
object st
(
e DJoins v,
w,
F . x &
e9 = [(the_Edges_of F),x,e] &
v9 = [(the_Vertices_of F),x,v] &
w9 = [(the_Vertices_of F),x,w] )
theorem Th93:
for
F being non
empty Graph-yielding Function for
x being
Element of
dom F for
x9 being
Element of
dom (canGFDistinction F) for
v9,
e9,
w9 being
object st
x = x9 &
e9 Joins v9,
w9,
(canGFDistinction F) . x9 holds
ex
v,
e,
w being
object st
(
e Joins v,
w,
F . x &
e9 = [(the_Edges_of F),x,e] &
v9 = [(the_Vertices_of F),x,v] &
w9 = [(the_Vertices_of F),x,w] )
Lm4:
for F being non empty Graph-yielding Function
for x, y being Element of dom F holds [:{[(the_Vertices_of F),x]},((the_Vertices_of F) . x):] misses the_Vertices_of (F . y)
Lm5:
for F being non empty Graph-yielding Function
for x, y being Element of dom F holds [:{[(the_Edges_of F),x]},((the_Edges_of F) . x):] misses the_Edges_of (F . y)
theorem
for
F being non
empty Graph-yielding Function for
x,
z being
Element of
dom F for
x9 being
Element of
dom (canGFDistinction (F,z)) for
v,
e,
w being
object st
x <> z &
x = x9 &
e DJoins v,
w,
F . x holds
[(the_Edges_of F),x,e] DJoins [(the_Vertices_of F),x,v],
[(the_Vertices_of F),x,w],
(canGFDistinction (F,z)) . x9
theorem
for
F being non
empty Graph-yielding Function for
x,
z being
Element of
dom F for
x9 being
Element of
dom (canGFDistinction (F,z)) for
v,
e,
w being
object st
x <> z &
x = x9 &
e Joins v,
w,
F . x holds
[(the_Edges_of F),x,e] Joins [(the_Vertices_of F),x,v],
[(the_Vertices_of F),x,w],
(canGFDistinction (F,z)) . x9
theorem
for
F being non
empty Graph-yielding Function for
x,
z being
Element of
dom F for
x9 being
Element of
dom (canGFDistinction (F,z)) for
v9,
e9,
w9 being
object st
x <> z &
x = x9 &
e9 DJoins v9,
w9,
(canGFDistinction (F,z)) . x9 holds
ex
v,
e,
w being
object st
(
e DJoins v,
w,
F . x &
e9 = [(the_Edges_of F),x,e] &
v9 = [(the_Vertices_of F),x,v] &
w9 = [(the_Vertices_of F),x,w] )
theorem
for
F being non
empty Graph-yielding Function for
x,
z being
Element of
dom F for
x9 being
Element of
dom (canGFDistinction (F,z)) for
v9,
e9,
w9 being
object st
x <> z &
x = x9 &
e9 Joins v9,
w9,
(canGFDistinction (F,z)) . x9 holds
ex
v,
e,
w being
object st
(
e Joins v,
w,
F . x &
e9 = [(the_Edges_of F),x,e] &
v9 = [(the_Vertices_of F),x,v] &
w9 = [(the_Vertices_of F),x,w] )
Lm6:
for G1, G2 being _Graph
for G9 being GraphUnion of rng (canGFDistinction <*G1,G2*>) ex G3, G4 being _Graph st
( the_Edges_of G3 misses the_Edges_of G4 & G3 tolerates G4 & the_Vertices_of G3 misses the_Vertices_of G4 & G9 is GraphUnion of G3,G4 & G3 is G1 -Disomorphic & G4 is G2 -Disomorphic )