Uniquely reverse an arithmetic OR operation

76 Views Asked by At

i'm not sure if this is more a CS or math problem, but i'll try my luck here first:

  • given a pool of unique 32 bit integers (the values are under my control)
  • up to 8 integers are randomly taken from the pool (a value can not be picked more than once)
  • the integers are combined with an arithmetic OR into a new 32 bit value

Given only the result integer, and knowledge about all possible values (= the pool), all integers taken from the pool must be uniquely identified (at this time, the number of input integers is unknown, it could be anything from 1 to 8)

Task: Maximize the size of the pool of integers

Currently i only have the trivial case: 32 values in the pool, every value has only one bit from 0 to 31 set

Is there any way to increase the size of the pool of integers?