At:
dfs induction4
14
3
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.
member-paren(x,y.the_obj.eq(x,y);i1;s1)
13.
j:Vertices(the_graph).
i1-the_graph- > j 
j = i1 
(inl(j)
s2)
member-paren(x,y.the_obj.eq(x,y);j;s1)
14.
P(i1,[inr(i1) / s1],s2)
15.
l_disjoint(Vertices(the_graph)+Vertices(the_graph);s2;[inr(i1) / s1])
16.
no_repeats(Vertices(the_graph)+Vertices(the_graph);s2)
17.
paren(Vertices(the_graph);s2)
18.
j:Vertices(the_graph). (inr(j)
s2) 
i1-the_graph- > *j
19.
j: Vertices(the_graph)
20.
inr(j) = inr(i1)
Vertices(the_graph)+Vertices(the_graph)
i1-the_graph- > *j
By:
Subst (j = i1) 0
Generated subgoals:
1 | j = i1 | 1 step |
  |
2 | i1-the_graph- > *i1 | 1 step |
About: