| Some definitions of interest. |
|
p_array | Def [T]Array{i..j} == {a:[T]Array | a.l = i & a.u = j } |
| | Thm* T:Type{i}, i:, j:{i...}. [T]Array{i..j} Type{[i']} |
|
array | Def [T]Array == n:m:{n...}{n..m}T |
| | Thm* T:Type{i}. [T]Array Type{[i']} |
|
array_append | Def arr1 @ arr2 == <arr1.l,arr2.u,(i.if i<arr1.u arr1[i] ; arr2[i] fi)> |
| | Thm* T:Type, i:, j:{i...}, k:{j...}, a:[T]Array{i..j}, b:[T]Array{j..k}.
Thm* a @ b [T]Array{i..k} |
|
array_lb | Def a.l == 1of(a) |
| | Thm* T:Type, a:[T]Array . a.l |
|
array_ub | Def a.u == 1of(2of(a)) |
| | Thm* T:Type, a:[T]Array . a.u |
|
int_upper | Def {i...} == {j:| ij } |
| | Thm* n:. {n...} Type |