| Symbol | Specification | Kind | Type |
|---|
| # . | tree | f | Tree[A] → Nat |
| # . | list-data | f | List[A] → Nat |
| . ' | list | f | A → List[A] |
| . ( . ) | tree-path | pf | Tree[A] × List[Bool] → Tree[A] with λ t, p. p ∈ t |
| . ( . := . ) | tree-path | pf | Tree[A] × List[Bool] × Tree[A] → Tree[A] with λ t, p, t0. p ∈ t |
| . + . | nat-basic | f | Nat × Nat → Nat |
| . + . | list-data | f | A × List[A] → List[A] |
| . + . | list | f | List[A] × List[A] → List[A] |
| . + . | list | f | List[A] × A → List[A] |
| . +1 | nat-basic | f | Nat → Nat |
| . +2 . | list | f | A × A → List[A] |
| . - . | 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 |
| . < . | list-data | p | List('A) × List('A) |
| . > . | nat | p | Nat × Nat |
| . ∈ . | list | p | 'A × List('A) |
| . ∈ . | tree-path | p | List(Bool) × Tree('A) |
| . ≤ . | nat | p | Nat × Nat |
| . ≥ . | nat | p | Nat × Nat |
| . foldLeft ( . ) | list | f | List[A] × B × (B × A → B) → B |
| . head | list-data | pf | List[A] → A with λ x. x ≠ [] |
| . left | tree | pf | Tree[A] → Tree[A] with λ t. t ≠ leaf |
| . left:= . | tree | pf | Tree[A] × Tree[A] → Tree[A] with λ t, t0. t ≠ leaf |
| . map ( . ) | list | f | List[A] × (A → B) → List[B] |
| . right | tree | pf | Tree[A] → Tree[A] with λ t. t ≠ leaf |
| . right:= . | tree | pf | Tree[A] × Tree[A] → Tree[A] with λ t, t0. t ≠ leaf |
| . tail | list-data | pf | List[A] → List[A] with λ x. x ≠ [] |
| . val | tree | pf | Tree[A] → A with λ t. t ≠ leaf |
| . val:= . | tree | pf | Tree[A] × A → Tree[A] with λ t, val. t ≠ leaf |
| [] | list-data | c | List[A] |
| List | list-data | s | |
| Nat | nat-basic | s | |
| Tree | tree | s | |
| a | tree-path | v | A |
| b | tree-path | v | Bool |
| branch | tree | f | Tree[A] × A × Tree[A] → Tree[A] |
| leaf | tree | c | Tree[A] |
| p | tree-path | v | List[Bool] |
| t | tree-path | v | Tree[A] |