[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
Автор: Serge Osnach, <ench@netcity.ru> Kiev, Ukraine, 25 ноября 2002 года в 12:29:26 В ответ на : Re: еще дополнение о суперкомпрессии от Алексей в 22 ноября 2002 года в 17:15:54: > > > > > Или проще: берем не сжимаемый файл (мы не знаем что это zip архив) и преобразуем его в новый файл (с помощью алгоритма unzip), затем сжимаем например rar'ом - получили снова случайные данные, но файл наверняка будет меньше. > > > > Это неверно. Если мы возьмем некую случайную последовательность, и распакуем ее unzip, мы получим файл с избыточностью, достаточно точно соответствующей модели избыточности, присутствующей в pkzip. Такой файл будет лучше всего жаться именно pkzip :) > > > Неверно что? Если мы рассматриваем под случайной последовательностью zip архив (чем он и является), > > Если мы будем распаковывать случайную последовательность unzip, то в подавляющем большинстве случаев то, что получится после распаковки лучше всего будет жаться zip. > Может и так, если алгоритм упаковки будет использовать _только_ статистические данные zip'кие, а если он использует не только их (7zip жмет лучше zip, потому что использует другую статистику нежели zip) Пусть мы распаковываем некие случайные данные неким достаточно слабым биективным компрессором C. > > Не смотри, что на тестах Rar обходит zip -- это вовсе не означает, что для _всех_ файлов Rar будет лучше, чем zip. > Но если бы rar был хуже для большинства файлов, он не получил своего распространения. А никто не запрещает комбинировать при сжатии несколько алгоритмов, или сразу выбирать из нескольких лучший, это потребует всего несколько бит в архиве. В отдельных, я бы сказал, уникальных случаях, такой подход действительно позволит добится выигрыша. > > > Поскольку рар(или 7zip) будет находить в распакованном файле избыточность, которую unzip не добавлял (в соответствии со своей моделью) но она появилась, т.к. используется новый алгоритм упаковки. > > 7zip может распакованные unzip данные сжать и лучше из-за особенностей LZ. > > > > Кроме того, один и тот же файл можно по-разному упаковать так, чтобы unzip выдал одинаковые результаты. > > > но не получиться сжать файл меньше определенного размера так, чтобы unzip его распаковал однозначно, а другой архиватор эту границу может с легкостью преодолеть. > > > т.е. _любому_ unpack'ку пожно подсунуть два разных файла, которые он распакует совершенно одинакого??? > > Да, теоретически, за исключением биективных компрессоров. > значит не любому ;) |