| 134 | | - `$pure $set<T> $set_with($set<T> s, T x);` // s U {x} |
| 135 | | - `$pure $set<T> $set_without($set<T> s, T x);` // s - {x} |
| 136 | | - `$pure $set<T> $set_union($set<T> s1, $set<T> s2);` // s1 U s2 |
| 137 | | - `$pure $set<T> $set_difference($set<T> s1, $set<T> s2);` // s1-s2 |
| 138 | | - `$pure $set_intersection($set<T> s1, $set<T> s2);` // s1 \cap s2 |
| 139 | | - `$pure T[] $set_elements($set<T> s);` |
| 140 | | - `$pure _Bool $set_isSubsetOf($set<T> s1, $set<T> s2);` |
| 141 | | - `$pure $set<U> $set_map($set<T> s, $fun<T,U> f);` |
| | 134 | - `$logic $set<T> $set_with($set<T> s, T x);` // s U {x} |
| | 135 | - `$logic $set<T> $set_without($set<T> s, T x);` // s - {x} |
| | 136 | - `$logic $set<T> $set_union($set<T> s1, $set<T> s2);` // s1 U s2 |
| | 137 | - `$logic $set<T> $set_difference($set<T> s1, $set<T> s2);` // s1-s2 |
| | 138 | - `$logic $set_intersection($set<T> s1, $set<T> s2);` // s1 \cap s2 |
| | 139 | - `$logic T[] $set_elements($set<T> s);` |
| | 140 | - `$logic _Bool $set_isSubsetOf($set<T> s1, $set<T> s2);` |
| | 141 | - `$logic $set<U> $set_map($set<T> s, $fun<T,U> f);` |
| 158 | | - `$pure T[] $seq_fun($int len, $fun<$int,T> f);` |
| 159 | | - `$pure T[] $seq_uniform($int n, T val);` |
| 160 | | - `$pure $int $length(T[] a);` // length of a |
| 161 | | - `$pure T[] $seq_write(T[] a, int i, T x);` // a[i:=x] |
| 162 | | - `$pure T[] $seq_subseq(T[] a, int i, int n);` // a[i..i+n-1] |
| 163 | | - `$pure T[] $seq_without(T[] a, int i);` // a with position i removed |
| 164 | | - `$pure T[] $seq_with(T[] a, int i, T x);` |
| 165 | | - `$pure T[] $seq_concat(T[] a1, T[] a2);` |
| 166 | | - `$pure U[] $seq_map(T[] a, $fun<T,U> f);` |
| 167 | | - `$pure T[] $seq_filter(T[] a, $fun<T,_Bool> f);` |
| 168 | | - `$pure U $seq_foldl(T[] a, $fun<$tuple<T,U>,U> f, U init);` |
| 169 | | - `$pure U $seq_foldr(T[] a, $fun<$tuple<T,U>,U> f, U init); ` |
| | 158 | - `$logic T[] $seq_fun($int len, $fun<$int,T> f);` |
| | 159 | - `$logic T[] $seq_uniform($int n, T val);` |
| | 160 | - `$logic $int $length(T[] a);` // length of a |
| | 161 | - `$logic T[] $seq_write(T[] a, int i, T x);` // a[i:=x] |
| | 162 | - `$logic T[] $seq_subseq(T[] a, int i, int n);` // a[i..i+n-1] |
| | 163 | - `$logic T[] $seq_without(T[] a, int i);` // a with position i removed |
| | 164 | - `$logic T[] $seq_with(T[] a, int i, T x);` |
| | 165 | - `$logic T[] $seq_concat(T[] a1, T[] a2);` |
| | 166 | - `$logic U[] $seq_map(T[] a, $fun<T,U> f);` |
| | 167 | - `$logic T[] $seq_filter(T[] a, $fun<T,_Bool> f);` |
| | 168 | - `$logic U $seq_foldl(T[] a, $fun<$tuple<T,U>,U> f, U init);` |
| | 169 | - `$logic U $seq_foldr(T[] a, $fun<$tuple<T,U>,U> f, U init); ` |
| 184 | | - `$pure V $map_get($map<K,V> K key);` |
| 185 | | - `$pure _Bool $map_containsKey($map<K,V> map, K key);` |
| 186 | | - `$pure _Bool $map_containsValue($map<K,V> map, V val);` |
| 187 | | - `$pure $map<K,V> $map_with($map<K,V> map, K key, V val);` |
| 188 | | - `$pure $map<K,V> $map_without($map<K,V> map, K key);` |
| 189 | | - `$pure $set<K> $map_keys($map<K,V> map);` |
| 190 | | - `$pure $set<$tuple<K,V>> $map_entries($map<K,V> map);` |
| | 184 | - `$logic V $map_get($map<K,V> K key);` |
| | 185 | - `$logic _Bool $map_containsKey($map<K,V> map, K key);` |
| | 186 | - `$logic _Bool $map_containsValue($map<K,V> map, V val);` |
| | 187 | - `$logic $map<K,V> $map_with($map<K,V> map, K key, V val);` |
| | 188 | - `$logic $map<K,V> $map_without($map<K,V> map, K key);` |
| | 189 | - `$logic $set<K> $map_keys($map<K,V> map);` |
| | 190 | - `$logic $set<$tuple<K,V>> $map_entries($map<K,V> map);` |