| Some definitions of interest. |
|
eq_int | Def i=j == if i=j true ; false fi |
| | Thm* i,j:. (i=j) |
|
sublist | Def L1 L2
Def == f:(||L1||||L2||).
Def == increasing(f;||L1||) & (j:||L1||. L1[j] = L2[(f(j))] T) |
| | Thm* T:Type, L1,L2:T List. L1 L2 Prop |
|
increasing | Def increasing(f;k) == i:(k-1). f(i)<f(i+1) |
| | Thm* k:, f:(k). increasing(f;k) Prop |
|
int_seg | Def {i..j} == {k:| i k < j } |
| | Thm* m,n:. {m..n} Type |
|
label | Def t ...$L == t |
|
length | Def ||as|| == Case of as; nil 0 ; a.as' ||as'||+1 (recursive) |
| | Thm* A:Type, l:A List. ||l|| |
| | Thm* ||nil|| |
|
nat | Def == {i:| 0i } |
| | Thm* Type |
|
select | Def l[i] == hd(nth_tl(i;l)) |
| | Thm* A:Type, l:A List, n:. 0n n<||l|| l[n] A |