| Some definitions of interest. |
|
adjl-graph | Def adjl-graph(G) == < vertices = G.size, edges = x: G.size ||G.out(x)||, incidence = e. < 1of(e),(G.out(1of(e)))[2of(e)] > > |
|
adjl_out | Def t.out == 2of(t) |
| | Thm* t:AdjList. t.out t.size ( t.size List) |
|
adjl_size | Def t.size == 1of(t) |
| | Thm* t:AdjList. t.size  |
|
adjlist | Def AdjList == size:  size ( size List) |
| | Thm* AdjList Type |
|
eq_adjl | Def x =A= y == x= y |
| | Thm* A:AdjList, x,y:Vertices(adjl-graph(A)). x =A= y  |
|
eq_int | Def i= j == if i=j true ; false fi |
| | Thm* i,j: . (i= j)  |
|
gr_v | Def Vertices(t) == 1of(t) |
| | Thm* t:Graph. Vertices(t) Type |
|
int_seg | Def {i..j } == {k: | i k < j } |
| | Thm* m,n: . {m..n } Type |
|
length | Def ||as|| == Case of as; nil 0 ; a.as' ||as'||+1 (recursive) |
| | Thm* A:Type, l:A List. ||l||  |
| | Thm* ||nil||  |
|
mkgraph | Def < vertices = v, edges = e, incidence = f > == < v,e,f,o > |
| | Thm* v,e:Type, f:(e v v), o:Top. < vertices = v, edges = e, incidence = f > Graph |
|
pi1 | Def 1of(t) == t.1 |
| | Thm* A:Type, B:(A Type), p:(a:A B(a)). 1of(p) A |
|
pi2 | Def 2of(t) == t.2 |
| | Thm* A:Type, B:(A Type), p:(a:A B(a)). 2of(p) B(1of(p)) |
|
select | Def l[i] == hd(nth_tl(i;l)) |
| | Thm* A:Type, l:A List, n: . 0 n  n < ||l||  l[n] A |