Thm* n: , as:A List(n). ||as|| = n | [list_n_properties] |
Thm* as:T List. ( i: ||as||. as[i]){ ||as||} = as | [listify_select_id] |
Thm* m,n: , f:({m..n } T). n<m ||f{m..n }|| = n-m | [listify_length] |
Thm* f:(A B), as:A List, n: ||as||. map(f;as)[n] = f(as[n]) | [map_select] |
Thm* a:T, as:T List, i: . 0<i  i ||as||  (a.as)\[i] = a.as\[i-1] | [reject_cons_tl] |
Thm* as:T List, n:{0...||as||}, i: n. firstn(n;as)[i] = as[i] | [select_firstn] |
Thm* as:T List, n:{0...||as||}, i: (||as||-n). nth_tl(n;as)[i] = as[(i+n)] | [select_nth_tl] |
Thm* as:A List, n: (||as||-1). tl(as)[n] = as[(n+1)] | [select_tl] |
Thm* as,bs:T List, i: ||as||. (as @ bs)[i] = as[i] | [select_append_front] |
Thm* as,bs:T List, i:{||as||..(||as||+||bs||) }. (as @ bs)[i] = bs[(i-||as||)] | [select_append_back] |
Thm* a:T, as:T List, i: . 0<i  i ||as||  (a.as)[i] = as[(i-1)] | [select_cons_tl] |
Thm* A:Type, l:A List, n: . 0 n  n<||l||  l[n] A | [select_wf] |
Thm* as:T List, i:{0...||as||}, j:{i...||as||}. ||as[i..j ]|| = j-i | [length_segment] |
Thm* as:A List, n:{0...||as||}. ||firstn(n;as)|| = n | [length_firstn] |
Thm* as:A List, n:{0...||as||}. ||nth_tl(n;as)|| = ||as||-n | [length_nth_tl] |
Thm* l:A List. ||l|| 1  ||tl(l)|| = ||l||-1 | [length_tl] |
Thm* A:Type, l:A List. ||l|| 1  hd(l) A | [hd_wf] |
Thm* f:(A B), as:A List. ||map(f;as)|| = ||as|| | [map_length] |
Thm* as:A List. as = nil  ||as|| = 0 | [length_of_null_list] |
Thm* as:A List. as = nil  ||as|| 1 | [length_of_not_nil] |
Thm* as,bs:T List. ||as @ bs|| = ||as||+||bs|| | [length_append] |
Thm* l:A List. l = nil  ||l|| 1 | [pos_length] |
Thm* l:A List. ||l|| 0 | [non_neg_length] |
Thm* ||nil|| = 0 | [length_nil] |
Thm* a:A, as:A List. ||a.as|| = ||as||+1 | [length_cons] |
Def A List(n) == {x:(A List)| ||x|| = n } | [list_n] |