%-----------------------------------------------------------------------------%

:- module tree_bitset_difference.
:- interface.

:- import_module io.

:- pred main(io::di, io::uo) is det.

%-----------------------------------------------------------------------------%
%-----------------------------------------------------------------------------%

:- implementation.

:- import_module int.
:- import_module list.
:- import_module set.
:- import_module tree_bitset.

%-----------------------------------------------------------------------------%

main(!IO) :-
    A = [532, 32431],
    B = [32794],

    SetA = set.from_list(A),
    SetB = set.from_list(B),
    set.difference(SetA, SetB, SetC),
    set.to_sorted_list(SetC, C),

    BitSetA = tree_bitset.list_to_set(A),
    BitSetB = tree_bitset.list_to_set(B),
    tree_bitset.difference(BitSetA, BitSetB, BitSetC),
    BitSetC_List = tree_bitset.to_sorted_list(BitSetC),

    io.write_string("set: ", !IO),
    io.write(C, !IO),
    io.nl(!IO),
    io.write_string("tree_bitset: ", !IO),
    io.write(BitSetC_List, !IO),
    io.nl(!IO).

%-----------------------------------------------------------------------------%
% vim: ft=mercury ts=4 sts=4 sw=4 et
