With the new library(hashtable) and the following code:

```
hashtable_gen(N) :-
ht_new(HT),
forall( between(1,N,I),
( ht_put(HT,I,I)
)
),
assertz(hashtable(HT)).
hashtable_lookup(N) :-
hashtable(HT),
forall( between(1,N,I),
( ht_get(HT,I,I)
)
).
hashtable_cleanup(N) :-
hashtable(HT),
forall( between(1,N,I),
( ht_del(HT,I,I)
)
),
retractall(hashtable(_)).
```

I get the following error:

```
1 ?- hashtable_gen(100).
true.
2 ?- hashtable_lookup(100).
ERROR: Arithmetic: evaluation error: `zero_divisor'
ERROR: In:
ERROR: [12] _62620 is 8085836 mod 0
ERROR: [11] hashtable:ht_get(ht(0,0,[](_62674)),1,1) at /home/u/tmp/swipl-devel/build.release/home/library/hashtable.pl:264
ERROR: [10] hashtable_lookup(100) at /home/u/bld/prolog/tmp/db_bench.pl:170
ERROR: [9] <user>
3 ?- hashtable_cleanup(100).
false.
4 ?-
```

Also, how do you delete the entire hashtable? We have a predicate for deleting keys (ht_del/3), but how do we delete the entire hashtable?