All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.googlecode.javaewah32.symmetric.BitmapSymmetricAlgorithm32 Maven / Gradle / Ivy

Go to download

The bit array data structure is implemented in Java as the BitSet class. Unfortunately, this fails to scale without compression. JavaEWAH is a word-aligned compressed variant of the Java bitset class. It uses a 64-bit run-length encoding (RLE) compression scheme. The goal of word-aligned compression is not to achieve the best compression, but rather to improve query processing time. Hence, we try to save CPU cycles, maybe at the expense of storage. However, the EWAH scheme we implemented is always more efficient storage-wise than an uncompressed bitmap (implemented in Java as the BitSet class). Unlike some alternatives, javaewah does not rely on a patented scheme.

There is a newer version: 1.2.3
Show newest version
package com.googlecode.javaewah32.symmetric;

import com.googlecode.javaewah32.BitmapStorage32;
import com.googlecode.javaewah32.EWAHCompressedBitmap32;

/**
 * Generic interface to compute symmetric Boolean functions.
 *
 * @author Daniel Lemire
 * @see http://en.wikipedia.org/wiki/Symmetric_Boolean_function
 * @since 0.8.2
 */
public interface BitmapSymmetricAlgorithm32 {
    /**
     * Compute a Boolean symmetric query.
     *
     * @param f   symmetric boolean function to be processed
     * @param out the result of the query
     * @param set the inputs
     */
    void symmetric(UpdateableBitmapFunction32 f, BitmapStorage32 out, EWAHCompressedBitmap32... set);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy