| append | Def as @ bs == Case of as; nil  bs ; a.as'  a.(as' @ bs)  (recursive) 
 Thm*  | 
| ge | Def i  j == j  i Thm*  | 
| inject | Def Inj(A; B; f) ==  a1,a2:A. f(a1) = f(a2)  B   a1 = a2 Thm*  | 
| int_seg | Def {i..j  } == {k:  | i  k  <  j } Thm*  | 
| length | Def ||as|| == Case of as; nil  0 ; a.as'  ||as'||+1  (recursive) 
 Thm*  
 Thm* ||nil||  | 
| nat_plus | Def   == {i:  | 0 < i } Thm*  | 
| segment | Def as[m..n  ] == firstn(n-m;nth_tl(m;as)) Thm*  | 
| surject | Def Surj(A; B; f) ==  b:B.  a:A. f(a) = b Thm*  | 
| lelt | Def i  j  <  k == i  j  &  j < k | 
| le | Def A  B ==  B < A Thm*  | 
| nth_tl | Def nth_tl(n;as) == if n   0  as else nth_tl(n-1;tl(as)) fi  (recursive) 
 Thm*  | 
| firstn | Def firstn(n;as)
 == Case of as; nil  nil ; a.as'  if 0 <  n  a.firstn(n-1;as') else nil fi
 (recursive) 
 Thm*  | 
| not | Def  A == A   False Thm*  | 
| tl | Def tl(l) == Case of l; nil  nil ; h.t  t 
 Thm*  | 
| le_int | Def i   j ==   j <  i Thm*  | 
| lt_int | Def i <  j == if i < j  true  ; false  fi Thm*  | 
| bnot | Def   b == if b  false  else true  fi Thm*  | 
About:
|  |  |  |  |  |  |  | 
|  |  |  |  |  |  |  | 
|  |  |  |  |  |  |  | 
|  |  |  |  |  |  |  |