Re: еще дополнение о суперкомпрессии
Автор: Serge Osnach, <ench@netcity.ru> Kiev, Ukraine, 26 ноября 2002 года в 19:43:25 В ответ на : Re: еще дополнение о суперкомпрессии от Алексей в 26 ноября 2002 года в 16:18:59: > > > Почему кодировать надо сразу на основании вероятности... непонятно. > > Какими бы ты кодами ни пользовался, ты всегда неявно присваиваешь некоему кодируемому символу или строке определенную вероятность появления в данном месте. > вот именно, если наш декодер выводил вероятность появления 1 (или к) символа,
> > > 111222333111222333 - здесь использовать другой алгоритм :) > > > > Если мы оценим эту вероятность в 9/10, > > > > Так в данном случае такой MMP-компрессор будет кодировать хуже, чем C. > > > Не в данном случае, а в среднем. А в данном вполне вероятно что лучше. > > Естественно, _некоторые_ исходые файлы после такого преобразования уменьшатся. > может стоит заменить _некоторые_ на _многие_, в конце концов все зависит от алгоритма. Проведи эксперименты, и сам все увидишь. > > > (11 симв в системе по основанию 13 много больше чем 13 симв в системе с основанием 4!) > > > > А что будем делать, если совпадений будет достаточно мало, и их будет невыгодно кодировать? > А если их будет предостаточно... Отчего ты делаешь вывод, что в некое случайном числе, записанном в 13-ричной системе должно быть большое количество повторов? Если мы возьмем наугад некоторую k-ю цифру в такой записи, то вероятность того, что она совпадет с k+1 будет 1/13. > > > так систем счисления ой как много, причем можно и не через одну пропускать, только бы ресурсов хватило... > > Тогда тебе прийдется отдельно писать в архив используемую систему счисления... > вот уж проблемо-та - по 30 бит на систему, коих и будет-то может не более 3-х. Только перебрать ~2^30 (или 2^90)систем и для каждой попробовать сжать - вот проблема. Переберем все 2^30 систем, но вот беда -- ни в одной из систем больше 20 бит выигрыша не получили. Что поделать, бывает... > > > А ведь таких случаев будет подавляющее большинство... > > Повторяю доказательство в несколько ином виде: > > Пусть у нас есть компрессор, позволяющий сжимать и распаковывать без потерь :) произвольные файлы длиной не более N. > эти два исходных файла будут соответствовать одному архиву. Теперь положим, что один из этих файлов является полностью состоящим из нулей. А зачем его вообще сжимать? (а если добавить и одни единицы, получается что один число-архив еще и не используеться!) Ты считаешь, что не встречаются файлы, состоящие из одних нулей? > > Мы пришли к противоречию, которое показывает, что по крайней мере одно из исходных утверждений неверно. Следовательно, либо произвольный компрессор сжимает хоть на один бит менне половины исходных файлов длины не более, чем N, либо он не сможет распаковать некоторые файлы без потерь. > > Замечу, что и рекурсивные схемы сжатия также попадают под это доказательство. > > Если ты принципиально согласен с этим доказательством, то тема исчерпана. > Как же тут можно согласиться. > Теперь о доказательстве: Откуда получена цифра 2^18 цепочек? Навскидку, или все-таки подсчетом? Итак, некоторый исходный файл твой "супер"-компрессор может закодировать двумя различными способами. Еще раз посмотри на доказательство невозможности суперсжатия, и скажи, где же ошибка -- в твоих рассуждениях или моих? > > Сразу замечу, что рекурсивное применение такого подхода не будет возможно, поскольку ты собираешься отображать множество "архивов" на множество всех файлов. Ты только что предлагал сделать компрессор, работающий только для "архивов", то есть отображающий множество всех "архивов" на множество всех теоретически возможных файлов. Или ты считаешь, что на выходе компрессора всегда будет файл, попадающий под твое определение "архива"? > Кто-то что-то хотел сделать "для поднятия траффика", а тут и так он уже зашкаливает! ;) Вот тебе простенькая задача на суперсжатие: упакуй произвольное число от 0 до 260 в 1 байт. |
Ответы:
- Re: еще дополнение о суперкомпрессии Алексей 14:46:00 27/11/2002
(2)
- Re: еще дополнение о суперкомпрессии Serge Osnach 18:05:58 27/11/2002
(1)
- Re: еще дополнение о суперкомпрессии Алексей 13:23:01 28/11/2002
(0)
- Re: еще дополнение о суперкомпрессии Алексей 13:23:01 28/11/2002
(0)
- Re: еще дополнение о суперкомпрессии Serge Osnach 18:05:58 27/11/2002
(1)
Ответить на это сообщение