At:
dfs induction4
10
2
1
1.
the_graph: Graph
2.
the_obj: GraphObject(the_graph)
3.
P: Vertices(the_graph)
traversal(the_graph)
traversal(the_graph)
Prop
4.
s: traversal(the_graph)
5.
i: Vertices(the_graph)
6.
s:traversal(the_graph), i:Vertices(the_graph). (inl(i)
s)
(inr(i)
s) 
P(i,s,nil)
7.
s1,s2,s3:traversal(the_graph), i,j:Vertices(the_graph).
i-the_graph- > j

paren(Vertices(the_graph);s2)

(
k:Vertices(the_graph). (inr(k)
s2) 
j-the_graph- > *k)

paren(Vertices(the_graph);s3) 
P(j,s1,s2) 
P(i,s2 @ s1,s3) 
P(i,s1,s3 @ s2)
8.
s1,s2:traversal(the_graph), i:Vertices(the_graph).
(inr(i)
s1)

(inl(i)
s1)

paren(Vertices(the_graph);s2)

l_disjoint(Vertices(the_graph)+Vertices(the_graph);s2;s1)

no_repeats(Vertices(the_graph)+Vertices(the_graph);s2)

(
j:Vertices(the_graph). (inr(j)
s2) 
i-the_graph- > *j)

(
j:Vertices(the_graph). i-the_graph- > j 
j = i 
(inl(j)
s2)
(inl(j)
s1)
(inr(j)
s1))

P(i,[inr(i) / s1],s2) 
P(i,s1,[inl(i) / (s2 @ [inr(i)])])
9.
s1: traversal(the_graph)
10.
s2: traversal(the_graph)
11.
i1: Vertices(the_graph)
12.
j:Vertices(the_graph).
i1-the_graph- > j 
j = i1 
(inl(j)
s2)
member-paren(x,y.the_obj.eq(x,y);j;s1)
13.
P(i1,[inr(i1) / s1],s2)
14.
l_disjoint(Vertices(the_graph)+Vertices(the_graph);s2;[inr(i1) / s1])
15.
no_repeats(Vertices(the_graph)+Vertices(the_graph);s2)
16.
paren(Vertices(the_graph);s2)
17.
j:Vertices(the_graph). (inr(j)
s2) 
i1-the_graph- > *j
18.
x,y:Vertices(the_graph). the_obj.eq(x,y) 
x = y
19.
T:Type, s:T, x:Vertices(the_graph), f:(T
Vertices(the_graph)
T).
L:Vertices(the_graph) List.
(
y:Vertices(the_graph). x-the_graph- > y 
(y
L))
& the_obj.eacc(f,s,x) = list_accum(s',x'.f(s',x');s;L)
20.
T:Type, s:T, f:(T
Vertices(the_graph)
T).
L:Vertices(the_graph) List.
no_repeats(Vertices(the_graph);L)
& (
y:Vertices(the_graph). (y
L))
& the_obj.vacc(f,s) = list_accum(s',x'.f(s',x');s;L)
21.
(inl(i1)
s1)
(inl(i1)
s1)
(inr(i1)
s1)
By:
ObviousFrom [-1]
Generated subgoals:
None
About: