2 | 1. the_graph: Graph 2. the_obj: GraphObject(the_graph) 3. l: Vertices(the_graph) List 4. u: Vertices(the_graph) 5. v: Vertices(the_graph) List 6. s:traversal(the_graph).
s':traversal(the_graph).
( i:Vertices(the_graph). (i v)  (inl(i) s') (inl(i) s) (inr(i) s))
& l_disjoint(Vertices(the_graph)+Vertices(the_graph);s';s)
& no_repeats(Vertices(the_graph)+Vertices(the_graph);s')
& paren(Vertices(the_graph);s')
& list_accum(s',j.dfs(the_obj;s';j);s;v) = (s' @ s) 7. s: traversal(the_graph) s':traversal(the_graph). ( i:Vertices(the_graph). (i [u / v])  (inl(i) s') (inl(i) s) (inr(i) s)) & l_disjoint(Vertices(the_graph)+Vertices(the_graph);s';s) & no_repeats(Vertices(the_graph)+Vertices(the_graph);s') & paren(Vertices(the_graph);s') & list_accum(s',j.dfs(the_obj;s';j);dfs(the_obj;s;u);v) = (s' @ s) | 10 steps |