public bool IsSupersetOf(LongBitSet <T> other) { return((bits | other.bits) == bits); }
public bool Overlaps(LongBitSet <T> other) { return((bits & other.bits) != 0); }
public bool Equals(LongBitSet <T> other) { return(other == this); }
public bool IsProperSupersetOf(LongBitSet <T> other) { return(IsSupersetOf(other) && !SetEquals(other)); }
public LongBitSet <T> Union(LongBitSet <T> other) { return(new LongBitSet <T>(bits | other.bits)); }
public LongBitSet <T> SymmetricExcept(LongBitSet <T> other) { return(new LongBitSet <T>(bits ^ other.bits)); }
public LongBitSet <T> Intersect(LongBitSet <T> other) { return(new LongBitSet <T>(bits & other.bits)); }
public LongBitSet <T> Except(LongBitSet <T> other) { return(new LongBitSet <T>(bits & ~other.bits)); }
public bool SetEquals(LongBitSet <T> other) { return(bits == other.bits); }