home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / compress / 2826 < prev    next >
Encoding:
Internet Message Format  |  1992-07-27  |  5.4 KB

  1. Path: sparky!uunet!mcsun!uknet!acorn!armltd!dseal
  2. From: dseal@armltd.co.uk (David Seal)
  3. Newsgroups: comp.compression
  4. Subject: Re: PERPETUAL MOTION
  5. Message-ID: <4675@armltd.uucp>
  6. Date: 27 Jul 92 14:49:16 GMT
  7. References: <62692@cup.portal.com>
  8. Sender: dseal@armltd.uucp
  9. Distribution: comp
  10. Organization: A.R.M. Ltd, Swaffham Bulbeck, Cambs, UK
  11. Lines: 108
  12.  
  13. In article <62692@cup.portal.com> ts@cup.portal.com (Tim W Smith) writes:
  14.  
  15. >Most impossible compressors claim to only work on files past a certain
  16. >size.  Let that size be M bits.  Let F(X) be the total number of files
  17. >of X bits or less.  Let f(X) be the total number of files of X bits.
  18. >
  19. >Assume we have some ordering of all files.  With each file, associate
  20. >a number, which is the position of the file in this ordering relative
  21. >to the first file of the same size.
  22. >
  23. >Now consider the following compressor.  For files of length M+1, the
  24. >first F(M) of them are mapped to files of length M or less.  The rest
  25. >of the files of length M+1 are mapped to the files whose number is
  26. >F(M) less than theirs.
  27. >
  28. >This leaves us F(M) files of length M+1 that do not have files mapped
  29. >onto them.
  30. >
  31. >We can now do a similar thing for files of length M+2.  ...
  32. >
  33. >Repeat forever.  At each step, there are F(M) files that compress, and
  34. >applying this to a file of size N at most f(N)/F(M) times will compress
  35. >it.
  36. >
  37. >I don't recall all the WEB claims, but I think that this satisfies them
  38. >in spirit.
  39. >
  40. >...
  41. >
  42. >However, I believe that it *DOES* provide a counterexample to the
  43. >usual counting argument. 
  44.  
  45. It does *NOT* provide such a counterexample. The counting argument *only*
  46. applies to lossless compression methods. Your methods are lossy: the
  47. counting argument simply doesn't apply to them, and so they cannot be
  48. counterexamples to the counting argument.
  49.  
  50. To see why your methods are lossy:
  51.  
  52. A single application of the method outlined above is lossy because it has
  53. got to do *something* with input files of length M or less. The claims about
  54. always compressing only apply to files of length greater than M, so such
  55. input files don't need to be compressed: in fact, they may be expanded
  56. drastically if you want. But they do have to map to *some* output file.
  57.  
  58. But the method uses all possible output files to represent the input files
  59. of length greater than M: whatever output file you choose for any input file
  60. of length M or less has already been used for a file of length greater than
  61. M. So the method maps two distinct input files to the same output file, and
  62. so is lossy.
  63.  
  64. If you like, you can refuse to apply the method to input files of length M
  65. or less. But if you're then given a "compressed" file of length M or less,
  66. you cannot tell whether the original file was identical to the output file
  67. or was the file of length M+1 that compressed down to the output file.
  68. Again, the method is lossy.
  69.  
  70. You can get around this by adding an extra bit to each output file, to say
  71. whether it needs to be decompressed or is a verbatim length M or less file.
  72. This is lossless, but unfortunately this extra bit has more than negated all
  73. the compression you've achieved...
  74.  
  75. Now to deal with the "multiple applications, until the file is length M or
  76. less" technique: the length M or less output file is not enough to
  77. reconstruct the input file, so the technique is lossy. To make it lossless,
  78. you also need to record the number of times that you need to apply the
  79. decompression algorithm to it. Unfortunately, this number is liable to be
  80. rather big: so big in fact that any technique for adding some representation
  81. of it to the file will either result in some files having been increased in
  82. size or in all files being restored to their original size...
  83.  
  84. To summarise:
  85.   * The counting argument applies only to lossless techniques.
  86.   * A compression technique must specify what it does to all possible input
  87.     files - even if you're only interested in what it does to files greater
  88.     than a certain length.
  89.   * A compression technique is lossless if its output file *always* contains
  90.     enough information to reproduce the input file (using a fixed
  91.     decompression algorithm and without relying on any information
  92.     surreptitiously hidden elsewhere than in the output file). It is lossy
  93.     otherwise: in particular, if two distinct input files produce the same
  94.     output file, it is lossy.
  95.   * For a "apply compression algorithm X until condition C is true"
  96.     compression technique to be lossless, the decompression program must not
  97.     merely be capable of applying decompression algorithm X; it must also be
  98.     capable of establishing *how many times* to apply decompression
  99.     algorithm X.
  100.  
  101. A general suggestion: if you seriously think you've found a counterexample
  102. to the counting argument, may I suggest you follow it through to its logical
  103. conclusion? Such a counterexample would result in a proof that two distinct
  104. integers are equal to each other. If you've got a valid proof of this form,
  105. you could:
  106.  
  107. (1) Make vast amounts of money by borrowing the smaller of these two
  108.     integers, observing that what you have got is equal to the larger,
  109.     paying back the loan out of the larger, and pocketing the difference...
  110.  
  111. (2) Become famous as the mathematician who established the inconsistency of
  112.     practically all known mathematics...
  113.  
  114. Doing either of these successfully would be far more profitable to you
  115. personally than simply posting to Usenet :-) :-) :-)
  116.  
  117. David Seal
  118. dseal@armltd.co.uk
  119.  
  120. All opinions are mine only...
  121.