| Symbol | Specification | Kind | Type |
|---|
| # . | array | f | Array('a) → Nat |
| #c . | matrix | f | Matrix('a) → Nat |
| #r . | matrix | f | Matrix('a) → Nat |
| . + . | nat-basic | f | Nat × Nat → Nat |
| . +1 | nat-basic | f | Nat → Nat |
| . - . | nat | pf | Nat × Nat → Nat with λ n, m. n ≥ m |
| . -1 | nat-basic | pf | Nat → Nat with λ n. n ≠ 0 |
| . < . | nat-basic | p | Nat × Nat |
| . > . | nat | p | Nat × Nat |
| . [ . := . ] | matrix | pf | Matrix('a) × Nat × Nat × 'a → Matrix('a) with λ mx, r, c, a. r < #r mx ∧ c < #c mx |
| . [ . := . ] | array | pf | Array('a) × Nat × 'a → Array('a) with λ ar, n, a. n < # ar |
| . [ . ] | matrix | pf | Matrix('a) × Nat × Nat → 'a with λ mx, r, c. r < #r mx ∧ c < #c mx |
| . [ . ] | array | pf | Array('a) × Nat → 'a with λ ar, n. n < # ar |
| . [ . ]c | matrix+array | pf | Matrix('a) × Nat → Array('a) with λ mx, c. c < #c mx |
| . [ . ]r | matrix+array | pf | Matrix('a) × Nat → Array('a) with λ mx, r. r < #r mx |
| . ≤ . | nat | p | Nat × Nat |
| . ≥ . | nat | p | Nat × Nat |
| Array | array | s | |
| Matrix | matrix | s | |
| Nat | nat-basic | s | |
| c | matrix+array | v | Nat |
| mkarray | array | f | Nat → Array('a) |
| mkarray | array | f | Nat × 'a → Array('a) |
| mkmatrix | matrix | f | Nat × Nat × 'a → Matrix('a) |
| mx | matrix+array | v | Matrix('a) |
| r | matrix+array | v | Nat |