| Symbol | Specification | Kind | Type |
|---|---|---|---|
| # . | refset | f | refset → nat |
| # . | heap | f | heap → nat |
| # . | heap-aux-inst | f | heap-aux → nat |
| . * . | heap-sep | f | (heap → bool) × (heap → bool) → heap → bool |
| . * . | heap-aux-inst | f | (heap-aux → bool) × (heap-aux → bool) → heap-aux → bool |
| . + . | nat-basic | f | nat × nat → nat |
| . ++ . | refset | f | refset × ref → refset |
| . ++ . | heap | f | heap × ref → heap |
| . ++ . | heap-aux-inst | f | heap-aux × ref → heap-aux |
| . +1 | nat-basic | f | nat → nat |
| . - . | nat | pf | nat × nat → nat with λ n, m. n ≥ m |
| . -* . | heap-sep | f | (heap → bool) × (heap → bool) → heap → bool |
| . -* . | heap-aux-inst | f | (heap-aux → bool) × (heap-aux → bool) → heap-aux → bool |
| . -- . | refset | f | refset × ref → refset |
| . -- . | heap | f | heap × ref → heap |
| . -- . | heap-aux-inst | f | heap-aux × ref → heap-aux |
| . -> . | heap-sep | f | (heap → bool) × (heap → bool) → heap → bool |
| . -> . | heap-aux-inst | f | (heap-aux → bool) × (heap-aux → bool) → heap-aux → bool |
| . -⊗ . | heap-sep | f | (heap → bool) × (heap → bool) → heap → bool |
| . -⊗ . | heap-aux-inst | f | (heap-aux → bool) × (heap-aux → bool) → heap-aux → bool |
| . -1 | nat-basic | pf | nat → nat with λ n. n ≠ 0 |
| . .aux | obj-aux | f | objaux → aux |
| . .nxt | cell | f | cell → ref |
| . .nxt:= . | cell | f | cell × ref → cell |
| . .obj | cell-heap-aux | f | objaux → cell |
| . .val | cell | f | cell → elem |
| . .val:= . | cell | f | cell × elem → cell |
| . < . | nat-basic | p | nat × nat |
| . ==> ( . ) | cell-heap-aux | f | ref × cell × aux → heap-aux → bool |
| . ==>? | heap-aux-inst | f | ref → heap-aux → bool |
| . ==>_ | heap-aux-inst | f | ref → heap-aux → bool |
| . => . | cell-heap-aux | f | ref × cell → heap → bool |
| . =>? | maplet | f | ref → heap → bool |
| . =>_ | maplet | f | ref → heap → bool |
| . > . | nat | p | nat × nat |
| . [ . ] | cell-heap-aux | f | heap × ref → cell |
| . [ . ] | cell-heap-aux | f | heap × ref × cell → heap |
| . [ . ] | cell-heap-aux | f | heap-aux × ref × cell × aux → heap-aux |
| . [ . ] | embed-aux | f | aux × (heap → bool) → heap-aux → bool |
| . [ . ] | cell-heap-aux | p | (heap → bool) × refset × (ref → cell) |
| . [ . ] | cell-heap-aux | p | (heap-aux → bool) × refset × (ref → cell) × (ref → aux) |
| . [ . ]__ | heap-aux-inst | f | heap-aux × ref → objaux |
| . [ . ]__ | heap-aux-inst | f | heap-aux × ref × objaux → heap-aux |
| . [ . ]__ | heap-aux-inst | p | (heap-aux → bool) × refset × (ref → objaux) |
| . [ . ]a | heap-aux | f | heap-aux × ref → aux |
| . [ . ]o | cell-heap-aux | f | heap-aux × ref → cell |
| . \ . | refset | f | refset × refset → refset |
| . \ . | heap | f | heap × refset → heap |
| . \ . | heap | f | heap × heap → heap |
| . \ . | heap-aux-inst | f | heap-aux × refset → heap-aux |
| . \ . | heap-aux-inst | f | heap-aux × heap-aux → heap-aux |
| . __=> ( . ) | heap-aux-inst | f | ref × objaux → heap-aux → bool |
| . × . | cell | f | elem × ref → cell |
| . ×× . | cell-heap-aux | f | cell × aux → objaux |
| . ∈ . | refset | p | ref × refset |
| . ∈ . | heap | p | ref × heap |
| . ∈ . | heap-aux-inst | p | ref × heap-aux |
| . ∩ . | refset | f | refset × refset → refset |
| . ∪ . | refset | f | refset × refset → refset |
| . ∪ . | heap | f | heap × heap → heap |
| . ∪ . | heap-aux-inst | f | heap-aux × heap-aux → heap-aux |
| . ≤ . | nat | p | nat × nat |
| . ≥ . | nat | p | nat × nat |
| . ⊆ . | refset | p | refset × refset |
| . ⊆ . | heap | p | heap × heap |
| . ⊆ . | heap-sep | p | (heap → bool) × (heap → bool) |
| . ⊆ . | heap-aux-inst | p | heap-aux × heap-aux |
| . ⊆ . | heap-aux-inst | p | (heap-aux → bool) × (heap-aux → bool) |
| . ⊗ . | heap-sep | f | (heap → bool) × (heap → bool) → heap → bool |
| . ⊗ . | heap-aux-inst | f | (heap-aux → bool) × (heap-aux → bool) → heap-aux → bool |
| . ⊥ . | heap | p | heap × heap |
| . ⊥ . | heap-aux-inst | p | heap-aux × heap-aux |
| . and . | heap-sep | f | (heap → bool) × (heap → bool) → heap → bool |
| . and . | heap-aux-inst | f | (heap-aux → bool) × (heap-aux → bool) → heap-aux → bool |
| . or . | heap-sep | f | (heap → bool) × (heap → bool) → heap → bool |
| . or . | heap-aux-inst | f | (heap-aux → bool) × (heap-aux → bool) → heap-aux → bool |
| __∃ . | heap-aux-inst | f | (objaux → heap-aux → bool) → heap-aux → bool |
| __mk | heap-aux-inst | f | refset × (ref → objaux) → heap-aux |
| _∃ . | maplet | f | (ref → heap → bool) → heap → bool |
| _∃ . | maplet | f | (ref × ref → heap → bool) → heap → bool |
| _∃ . | cell-heap-aux | f | (cell → heap → bool) → heap → bool |
| _∃ . | heap-aux-inst | f | (ref → heap-aux → bool) → heap-aux → bool |
| _∃ . | heap-aux-inst | f | (ref × ref → heap-aux → bool) → heap-aux → bool |
| _∃ . | cell-heap-aux | f | (cell × aux → heap-aux → bool) → heap-aux → bool |
| { . } | refset | f | ref → refset |
| { . } | heap-sep | f | heap → heap → bool |
| { . } | heap-aux-inst | f | heap-aux → heap-aux → bool |
| ∅ | refset | c | refset |
| ∅ | heap | c | heap |
| ∅ | heap-aux-inst | c | heap-aux |
| ⌜ . ⌝ | heap-sep | f | bool → heap → bool |
| ⌜ . ⌝ | heap-aux-inst | f | bool → heap-aux → bool |
| aux | aux | s | |
| cell | cell | s | |
| dom . | heap | f | heap → refset |
| dom . | heap-aux-inst | f | heap-aux → refset |
| elem | elem | s | |
| emp | heap-sep | p | heap |
| emp | heap-aux-inst | p | heap-aux |
| false | heap-sep | p | heap |
| false | heap-aux-inst | p | heap-aux |
| heap | heap | s | |
| heap-aux | heap-aux-inst | s | |
| ite | heap-sep | f | bool × (heap → bool) × (heap → bool) → heap → bool |
| ite | heap-aux-inst | f | bool × (heap-aux → bool) × (heap-aux → bool) → heap-aux → bool |
| mk | cell-heap-aux | f | refset × (ref → cell) → heap |
| mk | cell-heap-aux | f | refset × (ref → cell) × (ref → aux) → heap-aux |
| nat | nat-basic | s | |
| not . | heap-sep | f | (heap → bool) → heap → bool |
| not . | heap-aux-inst | f | (heap-aux → bool) → heap-aux → bool |
| null | ref | c | ref |
| objaux | obj-aux | s | |
| owns-none | rg | p | aux × refset × (ref → aux) |
| owns-one | rg | p | aux × ref × refset × (ref → aux) |
| precise | heap-sep | p | (heap → bool) |
| precise | heap-aux-inst | p | (heap-aux → bool) |
| ref | ref | s | |
| refset | refset | s | |
| rely | cell-heap-aux | p | aux × refset × (ref → cell) × (ref → aux) × refset × (ref → cell) × (ref → aux) |
| true | heap-sep | p | heap |
| true | heap-aux-inst | p | heap-aux |