Thm* L1,L2,L:T List, x:T.
Thm* no_repeats(T;L) ![](FONT/eq.png) L1 @ [x] L ![](FONT/eq.png) [x / L2] L ![](FONT/eq.png) L1 @ [x / L2] L | [append_overlapping_sublists] |
Thm* l1,l2,l3:T List. l1 l2 ![](FONT/eq.png) l1 l2 @ l3 | [iseg_append] |
Thm* P:(T![](FONT/dash.png) ![](FONT/then_med.png) ), l1,l2:T List. filter(P;l1 @ l2) ~ (filter(P;l1) @ filter(P;l2)) | [filter_append] |
Thm* x:T, l1,l2:T List. (x l1 @ l2) ![](FONT/if_big.png) (x l1) (x l2) | [member_append] |
Thm* l:T List. (l @ nil) ~ l | [append_nil_sq] |
Thm* l1,l2:T List. (l1 @ l2) = nil ![](FONT/if_big.png) l1 = nil & l2 = nil | [append_is_nil] |
Thm* Q:((T List)![](FONT/dash.png) Prop).
Thm* Q(nil) ![](FONT/eq.png) ( ys:T List, x:T. Q(ys) ![](FONT/eq.png) Q(ys @ [x])) ![](FONT/eq.png) ( zs:T List. Q(zs)) | [list_append_singleton_ind] |
Thm* L:T List. 0<||L|| ![](FONT/eq.png) ( x:T, L':T List. L = (L' @ [x])) | [list_decomp_reverse] |
Thm* f,as':Top, A:Type, as:A List. map(f;as @ as') ~ (map(f;as) @ map(f;as')) | [map_append_sq] |
Thm* L:T List, P:( ||L||![](FONT/dash.png) Prop).
Thm* ( x: ||L||. Dec(P(x)))
Thm* ![](FONT/eq.png)
Thm* ( i,j: ||L||. P(i) ![](FONT/eq.png) i<j ![](FONT/eq.png) P(j))
Thm* ![](FONT/eq.png)
Thm* ( L_1,L_2:T List. L = (L_1 @ L_2) & ( i: ||L||. P(i) ![](FONT/if_big.png) ||L_1|| i)) | [append_split2] |
Thm* L:T List, n:{0...||L||}. (firstn(n;L) @ nth_tl(n;L)) = L | [append_firstn_lastn] |
Def l1 l2 == l:T List. l2 = (l1 @ l) | [iseg] |
Def mklist(n;f) == primrec(n;nil; i,l. l @ [(f(i))]) | [mklist] |