Definitions graph 1 3 Sections Graphs Doc

Some definitions of interest.
graphobj Def GraphObject(the_graph) == eq:Vertices(the_graph)Vertices(the_graph)(x,y:Vertices(the_graph). (eq(x,y)) x = y)(eacc:(T:Type. (TVertices(the_graph)T)TVertices(the_graph)T)(T:Type, s:T, x:Vertices(the_graph), f:(TVertices(the_graph)T). L:Vertices(the_graph) List. (y:Vertices(the_graph). x-the_graph- > y (y L)) & eacc(f,s,x) = list_accum(s',x'.f(s',x');s;L))(vacc:(T:Type. (TVertices(the_graph)T)TT)(T:Type, s:T, f:(TVertices(the_graph)T). L:Vertices(the_graph) List. no_repeats(Vertices(the_graph);L) & (y:Vertices(the_graph). (y L)) & vacc(f,s) = list_accum(s',x'.f(s',x');s;L))Top))
Thm* the_graph:Graph. GraphObject(the_graph) Type{i'}
assert Def b == if b True else False fi
Thm* b:. b Prop
dfs Def dfs(the_obj;s;i) == if member-paren(x,y.the_obj.eq(x,y);i;s) s else [inl(i) / (the_obj.eacc((s',j. dfs(the_obj;s';j)),[inr(i) / s],i))] fi (recursive)
Thm* For any graph the_obj:GraphObject(the_graph), s:Traversal, i:V. dfs(the_obj;s;i) Traversal
traversal Def traversal(G) == (Vertices(G)+Vertices(G)) List
Thm* For any graph Traversal Type
gr_v Def Vertices(t) == 1of(t)
Thm* t:Graph. Vertices(t) Type
graph Def Graph == v:Typee:Type(evv)Top
Thm* Graph Type{i'}
gro_eacc Def t.eacc == 1of(2of(2of(t)))
Thm* For any graph t:GraphObject(the_graph), T:Type. t.eacc (TVT)TVT
gro_eq Def t.eq == 1of(t)
Thm* For any graph t:GraphObject(the_graph). t.eq VV
nat Def == {i:| 0i }
Thm* Type
le Def AB == B < A
Thm* i,j:. (ij) Prop
member-paren Def member-paren(x,y.E(x;y);i;s) == (xs.InjCase(x; a. E(a;i), E(a;i)))
not Def A == A False
Thm* A:Prop. (A) Prop

About:
productproductlistconsboolifthenelseassertintnatural_numberless_than
unioninlinrdecideset
isectlambdaapplyfunctionrecursive_def_noticeuniverseequal
membertoppropimpliesandfalsetrueallexists
!abstraction

Definitions graph 1 3 Sections Graphs Doc