We present a bottom-up copying garbage collector for WAM based Prolog. In contrast to the top-down copying garbage collector of Bevemyr and Lindgren, it preserves the order of the heap segments in the WAM like sliding collectors do, so that space can be reclaimed on backtracking, Moreover, the collector can move some old data to newer segments so that future instant redahuing becomes better than with sllding collectors; this behavior can not be explained by use)Culhess logic and applies when the underlying Prolog machine implements ehoieepoint trimming. The algorithm is mostly explained informally through examples. The garbage collector is implemented in the context of BinProlog, a production quality Prolog system working on various 32-bit and 64-bit architectures. It shows outstanding practiced performance when compared with the high-quality sliding collector of SICStus Prolog.