:: GLIB_000 semantic presentation :: Showing IDV graph ... (Click the Palm Trees again to close it)
:: deftheorem Def1 defines GraphStruct GLIB_000:def 1 :
:: deftheorem defines VertexSelector GLIB_000:def 2 :
:: deftheorem defines EdgeSelector GLIB_000:def 3 :
:: deftheorem defines SourceSelector GLIB_000:def 4 :
:: deftheorem defines TargetSelector GLIB_000:def 5 :
:: deftheorem defines _GraphSelectors GLIB_000:def 6 :
:: deftheorem defines the_Vertices_of GLIB_000:def 7 :
:: deftheorem defines the_Edges_of GLIB_000:def 8 :
:: deftheorem defines the_Source_of GLIB_000:def 9 :
:: deftheorem defines the_Target_of GLIB_000:def 10 :
:: deftheorem Def11 defines [Graph-like] GLIB_000:def 11 :
Lm1:
for G being _Graph holds
( dom (the_Source_of G) = the_Edges_of G & dom (the_Target_of G) = the_Edges_of G & rng (the_Source_of G) c= the_Vertices_of G & rng (the_Target_of G) c= the_Vertices_of G )
by FUNCT_2:def 1;
definition
let V be non
empty set ;
let E be
set ;
let S,
T be
Function of
E,
V;
func createGraph V,
E,
S,
T -> _Graph equals :: GLIB_000:def 12
<*V,E,S,T*>;
coherence
<*V,E,S,T*> is _Graph
end;
:: deftheorem defines createGraph GLIB_000:def 12 :
Lm2:
for V being non empty set
for E being set
for S, T being Function of E,V holds
( the_Vertices_of (createGraph V,E,S,T) = V & the_Edges_of (createGraph V,E,S,T) = E & the_Source_of (createGraph V,E,S,T) = S & the_Target_of (createGraph V,E,S,T) = T )
by SCMPDS_1:3;
:: deftheorem defines .set GLIB_000:def 13 :
:: deftheorem defines .strict GLIB_000:def 14 :
Lm3:
for GS being GraphStruct holds
( GS is [Graph-like] iff ( _GraphSelectors c= dom GS & not the_Vertices_of GS is empty & the_Source_of GS is Function of the_Edges_of GS, the_Vertices_of GS & the_Target_of GS is Function of the_Edges_of GS, the_Vertices_of GS ) )
:: deftheorem Def15 defines Joins GLIB_000:def 15 :
:: deftheorem Def16 defines DJoins GLIB_000:def 16 :
:: deftheorem Def17 defines SJoins GLIB_000:def 17 :
:: deftheorem Def18 defines DSJoins GLIB_000:def 18 :
Lm4:
for G being _Graph
for e, x, y being set holds
( e Joins x,y,G iff ( e DJoins x,y,G or e DJoins y,x,G ) )
definition
let G be
_Graph;
attr G is
finite means :
Def19:
:: GLIB_000:def 19
(
the_Vertices_of G is
finite &
the_Edges_of G is
finite );
attr G is
loopless means :
Def20:
:: GLIB_000:def 20
for
e being
set holds
( not
e in the_Edges_of G or not
(the_Source_of G) . e = (the_Target_of G) . e );
attr G is
trivial means :
Def21:
:: GLIB_000:def 21
Card (the_Vertices_of G) = one ;
attr G is
non-multi means :
Def22:
:: GLIB_000:def 22
for
e1,
e2,
v1,
v2 being
set st
e1 Joins v1,
v2,
G &
e2 Joins v1,
v2,
G holds
e1 = e2;
attr G is
non-Dmulti means :
Def23:
:: GLIB_000:def 23
for
e1,
e2,
v1,
v2 being
set st
e1 DJoins v1,
v2,
G &
e2 DJoins v1,
v2,
G holds
e1 = e2;
end;
:: deftheorem Def19 defines finite GLIB_000:def 19 :
:: deftheorem Def20 defines loopless GLIB_000:def 20 :
:: deftheorem Def21 defines trivial GLIB_000:def 21 :
:: deftheorem Def22 defines non-multi GLIB_000:def 22 :
:: deftheorem Def23 defines non-Dmulti GLIB_000:def 23 :
:: deftheorem Def24 defines simple GLIB_000:def 24 :
:: deftheorem Def25 defines Dsimple GLIB_000:def 25 :
Lm5:
for G being _Graph st the_Edges_of G = {} holds
G is simple
:: deftheorem defines .order() GLIB_000:def 26 :
:: deftheorem defines .size() GLIB_000:def 27 :
:: deftheorem Def28 defines .edgesInto GLIB_000:def 28 :
:: deftheorem Def29 defines .edgesOutOf GLIB_000:def 29 :
:: deftheorem defines .edgesInOut GLIB_000:def 30 :
:: deftheorem defines .edgesBetween GLIB_000:def 31 :
definition
let G be
_Graph;
let X,
Y be
set ;
func G .edgesBetween X,
Y -> Subset of
(the_Edges_of G) means :
Def32:
:: GLIB_000:def 32
for
e being
set holds
(
e in it iff
e SJoins X,
Y,
G );
existence
ex b1 being Subset of (the_Edges_of G) st
for e being set holds
( e in b1 iff e SJoins X,Y,G )
uniqueness
for b1, b2 being Subset of (the_Edges_of G) st ( for e being set holds
( e in b1 iff e SJoins X,Y,G ) ) & ( for e being set holds
( e in b2 iff e SJoins X,Y,G ) ) holds
b1 = b2
func G .edgesDBetween X,
Y -> Subset of
(the_Edges_of G) means :
Def33:
:: GLIB_000:def 33
for
e being
set holds
(
e in it iff
e DSJoins X,
Y,
G );
existence
ex b1 being Subset of (the_Edges_of G) st
for e being set holds
( e in b1 iff e DSJoins X,Y,G )
uniqueness
for b1, b2 being Subset of (the_Edges_of G) st ( for e being set holds
( e in b1 iff e DSJoins X,Y,G ) ) & ( for e being set holds
( e in b2 iff e DSJoins X,Y,G ) ) holds
b1 = b2
end;
:: deftheorem Def32 defines .edgesBetween GLIB_000:def 32 :
:: deftheorem Def33 defines .edgesDBetween GLIB_000:def 33 :
:: deftheorem Def34 defines Subgraph GLIB_000:def 34 :
Lm6:
for G being _Graph holds G is Subgraph of G
Lm7:
for G1 being _Graph
for G2 being Subgraph of G1
for x, y, e being set st e Joins x,y,G2 holds
e Joins x,y,G1
:: deftheorem Def35 defines spanning GLIB_000:def 35 :
:: deftheorem Def36 defines == GLIB_000:def 36 :
:: deftheorem Def37 defines c= GLIB_000:def 37 :
:: deftheorem Def38 defines c< GLIB_000:def 38 :
for
G1,
G2 being
_Graph holds
(
G1 c< G2 iff (
G1 c= G2 &
G1 != G2 ) );
:: deftheorem Def39 defines inducedSubgraph GLIB_000:def 39 :
Lm8:
for G being _Graph
for e, X being set holds
( ( e in the_Edges_of G & (the_Source_of G) . e in X & (the_Target_of G) . e in X ) iff e in G .edgesBetween X )
Lm9:
for G being _Graph holds the_Edges_of G = G .edgesBetween (the_Vertices_of G)
:: deftheorem defines .edgesIn() GLIB_000:def 40 :
:: deftheorem defines .edgesOut() GLIB_000:def 41 :
:: deftheorem defines .edgesInOut() GLIB_000:def 42 :
Lm10:
for G being _Graph
for v being Vertex of G
for e being set holds
( e in v .edgesIn() iff ( e in the_Edges_of G & (the_Target_of G) . e = v ) )
Lm11:
for G being _Graph
for v being Vertex of G
for e being set holds
( e in v .edgesOut() iff ( e in the_Edges_of G & (the_Source_of G) . e = v ) )
:: deftheorem Def43 defines .adj GLIB_000:def 43 :
:: deftheorem defines .inDegree() GLIB_000:def 44 :
:: deftheorem defines .outDegree() GLIB_000:def 45 :
:: deftheorem defines .degree() GLIB_000:def 46 :
:: deftheorem defines .degree() GLIB_000:def 47 :
:: deftheorem defines .inNeighbors() GLIB_000:def 48 :
:: deftheorem defines .outNeighbors() GLIB_000:def 49 :
:: deftheorem defines .allNeighbors() GLIB_000:def 50 :
:: deftheorem Def51 defines isolated GLIB_000:def 51 :
:: deftheorem defines isolated GLIB_000:def 52 :
:: deftheorem Def53 defines endvertex GLIB_000:def 53 :
:: deftheorem defines endvertex GLIB_000:def 54 :
:: deftheorem Def55 defines Graph-yielding GLIB_000:def 55 :
:: deftheorem Def56 defines halting GLIB_000:def 56 :
:: deftheorem defines .Lifespan() GLIB_000:def 57 :
:: deftheorem defines .Result() GLIB_000:def 58 :
:: deftheorem defines .-> GLIB_000:def 59 :
:: deftheorem Def60 defines finite GLIB_000:def 60 :
:: deftheorem Def61 defines loopless GLIB_000:def 61 :
:: deftheorem Def62 defines trivial GLIB_000:def 62 :
:: deftheorem Def63 defines non-trivial GLIB_000:def 63 :
:: deftheorem Def64 defines non-multi GLIB_000:def 64 :
:: deftheorem Def65 defines non-Dmulti GLIB_000:def 65 :
:: deftheorem Def66 defines simple GLIB_000:def 66 :
:: deftheorem Def67 defines Dsimple GLIB_000:def 67 :
:: deftheorem defines halting GLIB_000:def 68 :
theorem :: GLIB_000:1 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:2 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:3 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:4 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:5 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:6 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem :: GLIB_000:7 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:8 :: Showing IDV graph ... (Click the Palm Tree again to close it)
for
V being non
empty set for
E being
set for
S,
T being
Function of
E,
V holds
(
the_Vertices_of (createGraph V,E,S,T) = V &
the_Edges_of (createGraph V,E,S,T) = E &
the_Source_of (createGraph V,E,S,T) = S &
the_Target_of (createGraph V,E,S,T) = T )
by Lm2;
theorem Th9: :: GLIB_000:9 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:10 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th11: :: GLIB_000:11 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th12: :: GLIB_000:12 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:13 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:14 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:15 :: Showing IDV graph ... (Click the Palm Tree again to close it)
for
GS being
GraphStruct for
x,
y being
set for
n1,
n2 being
Nat st
n1 <> n2 holds
(
n1 in dom ((GS .set n1,x) .set n2,y) &
n2 in dom ((GS .set n1,x) .set n2,y) &
((GS .set n1,x) .set n2,y) . n1 = x &
((GS .set n1,x) .set n2,y) . n2 = y )
theorem :: GLIB_000:16 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:17 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:18 :: Showing IDV graph ... (Click the Palm Tree again to close it)
for
G being
_Graph for
e,
x1,
y1,
x2,
y2 being
set st
e Joins x1,
y1,
G &
e Joins x2,
y2,
G & not (
x1 = x2 &
y1 = y2 ) holds
(
x1 = y2 &
y1 = x2 )
theorem :: GLIB_000:19 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:20 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:21 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:22 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:23 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:24 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th25: :: GLIB_000:25 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:26 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:27 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:28 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:29 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:30 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th31: :: GLIB_000:31 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:32 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:33 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:34 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:35 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:36 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th37: :: GLIB_000:37 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th38: :: GLIB_000:38 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:39 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:40 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:41 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:42 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:43 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th44: :: GLIB_000:44 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:45 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th46: :: GLIB_000:46 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th47: :: GLIB_000:47 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th48: :: GLIB_000:48 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:49 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th50: :: GLIB_000:50 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:51 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th52: :: GLIB_000:52 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:53 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th54: :: GLIB_000:54 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:55 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th56: :: GLIB_000:56 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:57 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:58 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:59 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:60 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:61 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:62 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:63 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th64: :: GLIB_000:64 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th65: :: GLIB_000:65 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th66: :: GLIB_000:66 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:67 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:68 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:69 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:70 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:71 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th72: :: GLIB_000:72 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th73: :: GLIB_000:73 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th74: :: GLIB_000:74 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th75: :: GLIB_000:75 :: Showing IDV graph ... (Click the Palm Tree again to close it)
for
G1 being
_Graph for
G2 being
Subgraph of
G1 for
x,
y,
e being
set holds
( (
e Joins x,
y,
G2 implies
e Joins x,
y,
G1 ) & (
e DJoins x,
y,
G2 implies
e DJoins x,
y,
G1 ) & (
e SJoins x,
y,
G2 implies
e SJoins x,
y,
G1 ) & (
e DSJoins x,
y,
G2 implies
e DSJoins x,
y,
G1 ) )
theorem :: GLIB_000:76 :: Showing IDV graph ... (Click the Palm Tree again to close it)
for
G1 being
_Graph for
G2 being
Subgraph of
G1 for
x,
y,
e being
set st
e in the_Edges_of G2 holds
( (
e Joins x,
y,
G1 implies
e Joins x,
y,
G2 ) & (
e DJoins x,
y,
G1 implies
e DJoins x,
y,
G2 ) & (
e SJoins x,
y,
G1 implies
e SJoins x,
y,
G2 ) & (
e DSJoins x,
y,
G1 implies
e DSJoins x,
y,
G2 ) )
theorem :: GLIB_000:77 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:78 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:79 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:80 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th81: :: GLIB_000:81 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th82: :: GLIB_000:82 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:83 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:84 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:85 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:86 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:87 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th88: :: GLIB_000:88 :: Showing IDV graph ... (Click the Palm Tree again to close it)
for
G1,
G2,
G3 being
_Graph st
G1 == G2 &
G2 == G3 holds
G1 == G3
theorem Th89: :: GLIB_000:89 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th90: :: GLIB_000:90 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th91: :: GLIB_000:91 :: Showing IDV graph ... (Click the Palm Tree again to close it)
for
G1,
G2 being
_Graph for
e,
x,
y,
X,
Y being
set st
G1 == G2 holds
( (
e Joins x,
y,
G1 implies
e Joins x,
y,
G2 ) & (
e DJoins x,
y,
G1 implies
e DJoins x,
y,
G2 ) & (
e SJoins X,
Y,
G1 implies
e SJoins X,
Y,
G2 ) & (
e DSJoins X,
Y,
G1 implies
e DSJoins X,
Y,
G2 ) )
theorem :: GLIB_000:92 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th93: :: GLIB_000:93 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th94: :: GLIB_000:94 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:95 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:96 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:97 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:98 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th99: :: GLIB_000:99 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:100 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th101: :: GLIB_000:101 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: GLIB_000:102 :: Showing IDV graph ... (Click the Palm Tree again to close it)