| symbol | specification | entry |
|---|
| # | set-basic | function,
set → nat |
| # | refset | function,
refset → nat |
| # | heap | function,
heap → nat |
| # | list-data | function,
list → nat |
| # | reflist | function,
reflist → nat |
| ' | list | function,
elem → list |
| ' | reflist | function,
ref → reflist |
| * | heap-sep | function,
heap → bool × heap → bool → heap → bool |
| + | nat-basic2 | function,
nat × nat → nat |
| + | list-data | function,
elem × list → list |
| + | list | function,
elem × elem → list |
| + | list | function,
list × elem → list |
| + | list | function,
list × list → list |
| + | reflist | function,
ref × ref → reflist |
| + | reflist | function,
reflist × ref → reflist |
| + | reflist | function,
reflist × reflist → reflist |
| + | reflist | function,
ref × reflist → reflist |
| ++ | set-basic | function,
set × elem → set |
| ++ | refset | function,
refset × ref → refset |
| ++ | heap | function,
heap × ref → heap |
| ++ | reflist | function,
reflist × ref → reflist |
| ++ | list-dup | function,
list × elem → list |
| +1 | nat-basic1 | function,
nat → nat |
| - | nat | function,
nat × nat → nat |
| -* | heap-sep | function,
heap → bool × heap → bool → heap → bool |
| -- | set-union | function,
set × elem → set |
| -- | refset | function,
refset × ref → refset |
| -- | heap | function,
heap × ref → heap |
| -1 | nat-basic1 | function,
nat → nat |
| -⊗ | heap-sep | function,
heap → bool × heap → bool → heap → bool |
| .butlast | reflist | function,
reflist → reflist |
| .butlast | list-last | function,
list → list |
| .first | list-data | function,
list → elem |
| .first | reflist | function,
reflist → ref |
| .last | reflist | function,
reflist → ref |
| .last | list-last | function,
list → elem |
| .left | cell | function,
cell → ref |
| .left:= | cell | function,
cell × ref → cell |
| .rest | list-data | function,
list → list |
| .rest | reflist | function,
reflist → reflist |
| .right | cell | function,
cell → ref |
| .right:= | cell | function,
cell × ref → cell |
| .val | cell | function,
cell → elem |
| .val:= | cell | function,
cell × elem → cell |
| < | nat-basic1 | predicate,
nat × nat |
| < | list-data | predicate,
list × list |
| < | oelem | predicate,
elem × elem |
| < | reflist | predicate,
reflist × reflist |
| => | maplet | function,
ref × obj → heap → bool |
| => | cell-heap | function,
ref × cell → heap → bool |
| =>? | maplet | function,
ref → heap → bool |
| =>_ | maplet | function,
ref → heap → bool |
| > | nat | predicate,
nat × nat |
| H | heap | variable,
heap |
| H0 | heap | variable,
heap |
| H1 | heap | variable,
heap |
| H2 | heap | variable,
heap |
| P | heap-sep | variable,
heap → bool |
| P0 | heap-sep | variable,
heap → bool |
| P1 | heap-sep | variable,
heap → bool |
| P2 | heap-sep | variable,
heap → bool |
| True | separation | predicate,
bool |
| [] | list-data | constant,
list |
| [] | reflist | constant,
reflist |
| \ | set-union | function,
set × set → set |
| \ | refset | function,
refset × refset → refset |
| \ | heap | function,
heap × heap → heap |
| \ | heap | function,
heap × refset → heap |
| ] | heap | function,
heap × ref × obj → heap |
| ] | heap | function,
heap × ref → obj |
| ] | cell-heap | function,
heap × ref × cell → heap |
| ] | cell-heap | function,
heap × ref → cell |
| _∃ | maplet | function,
obj → heap → bool → heap → bool |
| _∃ | maplet | function,
ref × ref → heap → bool → heap → bool |
| _∃ | maplet | function,
ref → heap → bool → heap → bool |
| _∃ | cell-heap | function,
cell → heap → bool → heap → bool |
| a | elem | variable,
elem |
| a0 | cell | variable,
elem |
| a0 | list-data | variable,
elem |
| b | elem | variable,
elem |
| butlastn | reflist | function,
nat × reflist → reflist |
| butlastn | list-last | function,
nat × list → list |
| bv | heap-sep | variable,
bool |
| c | elem | variable,
elem |
| ce | cell | variable,
cell |
| ce0 | cell-heap | variable,
cell |
| ce1 | cell-heap | variable,
cell |
| cell | cell | sort,
|
| disj | reflist | predicate,
reflist × reflist |
| disj | list-dup | predicate,
list × list |
| dls | dllist | function,
ref × ref × list × reflist × ref × ref → heap → bool |
| dups | reflist | predicate,
reflist |
| dups | list-dup | predicate,
list |
| elem | elem | sort,
|
| emp | heap-sep | predicate,
heap |
| false | heap-sep | predicate,
heap |
| fillfirst | reflist | function,
nat × ref × reflist → reflist |
| fillfirst | list-last | function,
nat × elem × list → list |
| head | dllist | variable,
ref |
| heap | heap | sort,
|
| insert | implementation | procedure,
ref : heap |
| list | list-data | sort,
|
| m | nat-basic2 | variable,
nat |
| mkcell | cell | function,
ref × ref × elem → cell |
| mklist | reflist | function,
ref × nat → reflist |
| mklist | list-last | function,
elem × nat → list |
| n | nat-basic1 | variable,
nat |
| n0 | nat-basic1 | variable,
nat |
| n1 | nat-basic1 | variable,
nat |
| nat | nat-basic1 | sort,
|
| next | dllist | variable,
ref |
| null | ref | constant,
ref |
| o | obj | variable,
obj |
| o0 | obj | variable,
obj |
| o1 | obj | variable,
obj |
| oP | maplet | variable,
obj → heap → bool |
| oP | cell-heap | variable,
cell → heap → bool |
| obj | obj | sort,
|
| precise | heap-sep | predicate,
heap → bool |
| prev | dllist | variable,
ref |
| r | ref | variable,
ref |
| r0 | ref | variable,
ref |
| r1 | ref | variable,
ref |
| r2 | cell | variable,
ref |
| r2 | reflist | variable,
ref |
| rP | maplet | variable,
ref → heap → bool |
| ref | ref | sort,
|
| reflist | reflist | sort,
|
| refset | refset | sort,
|
| remove | implementation | procedure,
ref : heap |
| rev | reflist | function,
reflist → reflist |
| rev | list-last | function,
list → list |
| rmdup | reflist | function,
reflist → reflist |
| rmdup | list-dup | function,
list → list |
| rrP | maplet | variable,
ref × ref → heap → bool |
| rs | refset | variable,
refset |
| rs0 | refset | variable,
refset |
| rs1 | refset | variable,
refset |
| rs2 | refset | variable,
refset |
| rx | reflist | variable,
reflist |
| rx0 | reflist | variable,
reflist |
| rx1 | reflist | variable,
reflist |
| rx2 | reflist | variable,
reflist |
| ry | reflist | variable,
reflist |
| ry0 | reflist | variable,
reflist |
| ry1 | reflist | variable,
reflist |
| ry2 | reflist | variable,
reflist |
| rz | reflist | variable,
reflist |
| rz0 | reflist | variable,
reflist |
| rz1 | reflist | variable,
reflist |
| rz2 | reflist | variable,
reflist |
| s | set-basic | variable,
set |
| s0 | set-basic | variable,
set |
| s1 | set-basic | variable,
set |
| s2 | set-basic | variable,
set |
| set | set-basic | sort,
|
| tail | dllist | variable,
ref |
| true | heap-sep | predicate,
heap |
| x | list-data | variable,
list |
| x0 | list-data | variable,
list |
| x1 | list-data | variable,
list |
| x2 | list-data | variable,
list |
| y | list-data | variable,
list |
| y0 | list-data | variable,
list |
| y1 | list-data | variable,
list |
| y2 | list-data | variable,
list |
| z | list-data | variable,
list |
| z0 | list-data | variable,
list |
| z1 | list-data | variable,
list |
| z2 | list-data | variable,
list |
| } | set-union | function,
elem → set |
| } | refset | function,
ref → refset |
| } | heap-sep | function,
heap → heap → bool |
| ¬ | heap-sep | function,
heap → bool → heap → bool |
| → | heap-sep | function,
heap → bool × heap → bool → heap → bool |
| ∅ | set-basic | constant,
set |
| ∅ | refset | constant,
refset |
| ∅ | heap | constant,
heap |
| ∈ | set-basic | predicate,
elem × set |
| ∈ | refset | predicate,
ref × refset |
| ∈ | heap | predicate,
ref × heap |
| ∈ | list | predicate,
elem × list |
| ∈ | reflist | predicate,
ref × reflist |
| ∧ | heap-sep | function,
heap → bool × heap → bool → heap → bool |
| ∨ | heap-sep | function,
heap → bool × heap → bool → heap → bool |
| ∩ | set-union | function,
set × set → set |
| ∩ | refset | function,
refset × refset → refset |
| ∪ | set-union | function,
set × set → set |
| ∪ | refset | function,
refset × refset → refset |
| ∪ | heap | function,
heap × heap → heap |
| ≡ | separation | predicate,
heap × heap |
| ≤ | nat | predicate,
nat × nat |
| ≥ | nat | predicate,
nat × nat |
| ⊆ | set-basic | predicate,
set × set |
| ⊆ | refset | predicate,
refset × refset |
| ⊆ | heap-sep | predicate,
heap → bool × heap → bool |
| ⊑ | reflist | predicate,
reflist × reflist |
| ⊑ | list-last | predicate,
list × list |
| ⊒ | reflist | predicate,
reflist × reflist |
| ⊒ | list-last | predicate,
list × list |
| ⊥ | heap | predicate,
heap × heap |
| ⌝ | heap-sep | function,
bool → heap → bool |