   odd compression idea
  given two pieces of data of length N, one can use one of XOR,AND,OR to combine them together and get a single piece of data of length N. Based on which operation you choose you could reconstruct the two pieces of data, with a calculated amount of variations and a calculated amount of exact data.This would grant 50% compression to any data, but reconstructing the pieces would take potentially alot of time.What I don't know is, what would be the optimal method for sifting through the possibilities ?   
  Oh my, I'm so excited about this thread in advance!50% compression of any data. So you can compress the stuff again and again, and voilá, you compressed the stuff to 1 bit!Decompressing this 1 bit to the original data will be lots of fun!   ;  No. It won't be able to be actually 50% if one has to store some kind of crc value to make sure the decompressed data comes out correct. Depending on how long it takes to test all the possibilities, using this method to decompress a given set of data 1- 3 times will be time consuming.   ;  Anybody thinking about compression should first make sure to understand the pigenhole principle.   ;Quote:Original post by vanegergiven two pieces of data of length N, one can use one of XOR,AND,OR to combine them together and get a single piece of data of length N. Based on which operation you choose you could reconstruct the two pieces of data, with a calculated amount of variations and a calculated amount of exact data.How would you ever get the original data, without already knowing what one of the two sources were?   ;Quote:Original post by RattrapQuote:Original post by vanegergiven two pieces of data of length N, one can use one of XOR,AND,OR to combine them together and get a single piece of data of length N. Based on which operation you choose you could reconstruct the two pieces of data, with a calculated amount of variations and a calculated amount of exact data.How would you ever get the original data, without already knowing what one of the two sources were?How? Just like in the CSI series. Where you have a big noisy sound recording with tons of different sources, then you apply an "algorithm", and voliá, you have separated and restored the sound sources perfectly.   ;0x10101010 & 0x01010101 == 0x00000000How do I reconstruct the original input from the result 0?   ;  Given the operation AND and a value of 0, we know that because you have 0s across the board none of the bit values can both be true. So they are either all 0s or alternating 1s and 0s. I believe this leaves you with 6 possible outcomes to be tested.;Quote:Original post by szecsWhere you have a big noisy sound recording with tons of different sources, then you apply an "algorithm", and voliá, you have separated and restored the sound sources perfectly.I'm truly intrigued! Where can I learn more about this strange "algorithm" thingamabob that you're talking about?   ;Quote:Original post by vanegerI believe this leaves you with 6 possible outcomes to be tested.Six? More like 1.8 quadrillion, assuming 32 bit inputs. And even if it were only two possibilities, how would you "test" them to see what was the "correct" one?   