:: GRAPH_5 semantic presentation
:: Showing IDV graph ... (Click the Palm Trees again to close it)
theorem Th1: :: GRAPH_5:1
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th2: :: GRAPH_5:2
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th3: :: GRAPH_5:3
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th4: :: GRAPH_5:4
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th5: :: GRAPH_5:5
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th6: :: GRAPH_5:6
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th7: :: GRAPH_5:7
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th8: :: GRAPH_5:8
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
Lm1:
for n being Nat
for p, q being FinSequence st 1 <= n & n <= len p holds
p . n = (p ^ q) . n
Lm2:
for n being Nat
for q, p being FinSequence st 1 <= n & n <= len q holds
q . n = (p ^ q) . ((len p) + n)
theorem Th9: :: GRAPH_5:9
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th10: :: GRAPH_5:10
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th11: :: GRAPH_5:11
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th12: :: GRAPH_5:12
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th13: :: GRAPH_5:13
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th14: :: GRAPH_5:14
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th15: :: GRAPH_5:15
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th16: :: GRAPH_5:16
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th17: :: GRAPH_5:17
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th18: :: GRAPH_5:18
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th19: :: GRAPH_5:19
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th20: :: GRAPH_5:20
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
:: deftheorem defines vertices GRAPH_5:def 1 :
:: deftheorem defines vertices GRAPH_5:def 2 :
theorem Th21: :: GRAPH_5:21
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th22: :: GRAPH_5:22
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th23: :: GRAPH_5:23
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th24: :: GRAPH_5:24
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th25: :: GRAPH_5:25
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th26: :: GRAPH_5:26
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th27: :: GRAPH_5:27
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th28: :: GRAPH_5:28
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th29: :: GRAPH_5:29
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th30: :: GRAPH_5:30
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th31: :: GRAPH_5:31
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th32: :: GRAPH_5:32
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
:: deftheorem Def3 defines is_orientedpath_of GRAPH_5:def 3 :
:: deftheorem Def4 defines is_orientedpath_of GRAPH_5:def 4 :
:: deftheorem defines OrientedPaths GRAPH_5:def 5 :
theorem Th33: :: GRAPH_5:33
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: GRAPH_5:34
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th35: :: GRAPH_5:35
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th36: :: GRAPH_5:36
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th37: :: GRAPH_5:37
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th38: :: GRAPH_5:38
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
:: deftheorem Def6 defines is_acyclicpath_of GRAPH_5:def 6 :
:: deftheorem Def7 defines is_acyclicpath_of GRAPH_5:def 7 :
:: deftheorem defines AcyclicPaths GRAPH_5:def 8 :
:: deftheorem defines AcyclicPaths GRAPH_5:def 9 :
:: deftheorem defines AcyclicPaths GRAPH_5:def 10 :
:: deftheorem defines AcyclicPaths GRAPH_5:def 11 :
theorem :: GRAPH_5:39
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: GRAPH_5:40
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: GRAPH_5:41
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th42: :: GRAPH_5:42
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th43: :: GRAPH_5:43
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th44: :: GRAPH_5:44
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th45: :: GRAPH_5:45
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: GRAPH_5:46
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th47: :: GRAPH_5:47
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th48: :: GRAPH_5:48
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th49: :: GRAPH_5:49
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
:: deftheorem defines Real>=0 GRAPH_5:def 12 :
:: deftheorem Def13 defines is_weight>=0of GRAPH_5:def 13 :
:: deftheorem Def14 defines is_weight_of GRAPH_5:def 14 :
:: deftheorem Def15 defines RealSequence GRAPH_5:def 15 :
:: deftheorem defines cost GRAPH_5:def 16 :
theorem Th50: :: GRAPH_5:50
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th51: :: GRAPH_5:51
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th52: :: GRAPH_5:52
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
Lm3:
for f being FinSequence of REAL holds
( ( for y being Real st y in rng f holds
y >= 0 ) iff for i being Nat st i in dom f holds
f . i >= 0 )
Lm4:
for p, q, r being FinSequence of REAL st r = p ^ q & ( for x being Real st x in rng r holds
x >= 0 ) holds
( ( for i being Nat st i in dom p holds
p . i >= 0 ) & ( for i being Nat st i in dom q holds
q . i >= 0 ) )
theorem :: GRAPH_5:53
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th54: :: GRAPH_5:54
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th55: :: GRAPH_5:55
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th56: :: GRAPH_5:56
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th57: :: GRAPH_5:57
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th58: :: GRAPH_5:58
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th59: :: GRAPH_5:59
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th60: :: GRAPH_5:60
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
:: deftheorem Def17 defines is_shortestpath_of GRAPH_5:def 17 :
definition
let G be
Graph;
let v1,
v2 be
Vertex of
G;
let p be
oriented Chain of
G;
let V be
set ;
let W be
Function;
pred p is_shortestpath_of v1,
v2,
V,
W means :
Def18:
:: GRAPH_5:def 18
(
p is_orientedpath_of v1,
v2,
V & ( for
q being
oriented Chain of
G st
q is_orientedpath_of v1,
v2,
V holds
cost p,
W <= cost q,
W ) );
end;
:: deftheorem Def18 defines is_shortestpath_of GRAPH_5:def 18 :
for
G being
Graph for
v1,
v2 being
Vertex of
G for
p being
oriented Chain of
G for
V being
set for
W being
Function holds
(
p is_shortestpath_of v1,
v2,
V,
W iff (
p is_orientedpath_of v1,
v2,
V & ( for
q being
oriented Chain of
G st
q is_orientedpath_of v1,
v2,
V holds
cost p,
W <= cost q,
W ) ) );
theorem :: GRAPH_5:61
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th62: :: GRAPH_5:62
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
Lm5:
for G being finite Graph holds AcyclicPaths G is finite
Lm6:
for G being finite Graph
for P being oriented Chain of G holds AcyclicPaths P is finite
Lm7:
for G being finite Graph
for v1, v2 being Element of the Vertices of G holds AcyclicPaths v1,v2 is finite
Lm8:
for V being set
for G being finite Graph
for v1, v2 being Element of the Vertices of G holds AcyclicPaths v1,v2,V is finite
theorem :: GRAPH_5:63
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: GRAPH_5:64
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: GRAPH_5:65
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th66: :: GRAPH_5:66
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th67: :: GRAPH_5:67
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
for
V being
set for
W being
Function for
G being
finite Graph for
P being
oriented Chain of
G for
v1,
v2 being
Element of the
Vertices of
G st
W is_weight>=0of G &
P is_shortestpath_of v1,
v2,
V,
W &
v1 <> v2 & ( for
Q being
oriented Chain of
G for
v3 being
Element of the
Vertices of
G st not
v3 in V &
Q is_shortestpath_of v1,
v3,
V,
W holds
cost P,
W <= cost Q,
W ) holds
P is_shortestpath_of v1,
v2,
W
theorem :: GRAPH_5:68
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
for
V,
U being
set for
W being
Function for
G being
finite Graph for
P being
oriented Chain of
G for
v1,
v2 being
Element of the
Vertices of
G st
W is_weight>=0of G &
P is_shortestpath_of v1,
v2,
V,
W &
v1 <> v2 &
V c= U & ( for
Q being
oriented Chain of
G for
v3 being
Element of the
Vertices of
G st not
v3 in V &
Q is_shortestpath_of v1,
v3,
V,
W holds
cost P,
W <= cost Q,
W ) holds
P is_shortestpath_of v1,
v2,
U,
W
:: deftheorem Def19 defines islongestInShortestpath GRAPH_5:def 19 :
theorem :: GRAPH_5:69
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
for
e,
V being
set for
W being
Function for
G being
oriented finite Graph for
P,
Q,
R being
oriented Chain of
G for
v1,
v2,
v3 being
Element of the
Vertices of
G st
e in the
Edges of
G &
W is_weight>=0of G &
len P >= 1 &
P is_shortestpath_of v1,
v2,
V,
W &
v1 <> v2 &
v1 <> v3 &
R = P ^ <*e*> &
Q is_shortestpath_of v1,
v3,
V,
W &
e orientedly_joins v2,
v3 &
P islongestInShortestpath V,
v1,
W holds
( (
cost Q,
W <= cost R,
W implies
Q is_shortestpath_of v1,
v3,
V \/ {v2},
W ) & (
cost Q,
W >= cost R,
W implies
R is_shortestpath_of v1,
v3,
V \/ {v2},
W ) )