powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Компрессия данных любого размера до бесконечности с помощью числа "Пи"
13 сообщений из 13, страница 1 из 1
Компрессия данных любого размера до бесконечности с помощью числа "Пи"
    #39765643
Great Future
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток.

У меня вопрос к программистам по поводу реальности метода сжатия данных, который мне пришел в голову. Так как я сам не программист и не математик ), проверить работоспособность схемы не представляется для меня возможным.

В кратце суть схемы на пальцах. С одной стороны есть бесконечное число десятичных знаков числа "Пи", с другой данные (любой файл) которые легко могут быть конвертированы в такую же десятичную систему. Если взять к примеру объем числа "Пи" весом в 1гб из расчета 1 знак = 1 байт(здесь могу ошибаться), то получается один миллиард знаков. Вполне естественно предположить что части файла переведенного в десятичную форму будут в каких то местах полностью совпадать с последовательностью знаков из числа "Пи". Таким образом мы можем собрать любой файл. Дело будет лишь в количестве этих частей. 1, 10, 100 000 или более. Но при любом раскладе получается что сам код такой сборки будет ничтожно мал по сравнению с первоначальным объемом самого файла.

Представить такой код можно так же в десятичной форме. Например. Точка захода в число "Пи", то есть количество знаков от его начала и само количество знаков в этой части. Так же можно добавить перед этими двумя числами по одному знаку который будет обозначать количество знаков в этих двух числах для того что бы отделить одну часть от другой в непрерывном коде из знаков. Так как общее количество знаков в числе "Пи" не будет превышать одного миллиарда то и эти два добавочных числа не могут быть двузначными. (Например есть совпадающая последовательность с 765789 от начала числа "Пи" до 1202345. В этом случае код будет выглядеть как 676578971202345)

В итоге мы имеем такую же последовательность десятичных чисел, которую в свою очередь мы сжимаем таким же способом шагом номер два. В конечном счете после нескольких таких шагов мы имеем последовательность которая со стопроцентной гарантией попадет в число "Пи" одной частью. И код этой части будет иметь от четырех до шестнадцати знаков. То есть по сути вообще ничто. Зная число шагов и делая обратную операцию мы получаем наш исходный файл. Получается что мы имеем возможность сжимать любой объем данных будь то гигабайты или терабайты до этого ничтожного размера. Но и это еще не все. Собрав громадный
архив из этих микроскопических файлов мы так же можем их сжимать до бесконечности используя тот же метод. Если это работает, то мы закрываем тему объема как такового вообще пробив боковую дверь в законе Мура, оставляя лишь одно число "Пи". Было бы здорово передавать бесценные научные данные терабайтных размеров скажем откуда нибудь с Марса сжав все в несколько байт...

Но вполне может быть что я ошибаюсь. Проверить бы все это.
...
Рейтинг: 0 / 0
Компрессия данных любого размера до бесконечности с помощью числа "Пи"
    #39765645
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конечно ошибаетесь. Лучше всего у Вас сожмётся текст, в к-ром записано Пи. Всё остальное - маловероятно (что сожмётся). И хранить репоизитарий с Пи придётся в общедоступном месте, на Марсе тоже.
По-вашему, какими порциями будет совпадать "Война и Миръ"? по однуму байту? а адрес этого байта в Пи какой длины будет? Надёжнее забить в базу все варианты байт диграммы, триграммы ...
Ну время поиска в этом псевдословаре ...
...
Рейтинг: 0 / 0
Компрессия данных любого размера до бесконечности с помощью числа "Пи"
    #39765683
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сжатие файла в одно число))) Я такое еще в 5 классе проектировал. Только вместо числа Пи собирался использовать датчик случайных чисел. Но потом узнал про энтропию, и что файл длиной 2^N бит невозможно представить в виде 2^(N-1).
...
Рейтинг: 0 / 0
Компрессия данных любого размера до бесконечности с помощью числа "Пи"
    #39765695
Лысый дядька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Great Future,

Ознакомьтесь , пожалуйста
...
Рейтинг: 0 / 0
Компрессия данных любого размера до бесконечности с помощью числа "Пи"
    #39765732
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почему число Пи?

Более продуктивно КМК пронумеровать все файлы и пересылать в космос их номера. Как в том анекдоте... про номера
анекдотов. Кстати система версионного контроля Git считает что файлы уникальны в рамках 160 битного хеша. Грубо
говоря одинаковость двух файлов будет предопределена заранее... Туда-ж
торрент-трекеры. Правда у них формула чуть посложнее для длинных файлов. Для каждого куска (чанка) расчитывается
хеш.

Более продуктивно КМК отказаться от числа Пи в пользу других генераторов. И учитывать специфику сжимаемых данных.
Например если это текст - то зачем нам линейно-шумящий Пи? Мы можем собрать Марковскую модель генератора
бредовых текстов и этот генератор бреда гораздо раньше выйдет на частичное совпадение с оригинальным документом.
Тут и к бабке не ходи. Готов спорить на коньяк.

Ну или всякие там концептуальные архиваторы которые рассматривают уже созданый архив как справочник слов для
будущего сжатия и так далее. Или вообще укомплектовать архиватор всеми "Словарями Даля" всех времен и народов.
...
Рейтинг: 0 / 0
Компрессия данных любого размера до бесконечности с помощью числа "Пи"
    #39765799
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня есть подозрение, что если рассчитывать число Pi перед упаковкой\распаковкой, то на разных архитектурах, а возможно и на процессорах одинаковой архитектуры вы получите совершенно 2 разных числа. При такой уровне точности, о котором вы пишите, это гарантировано.
...
Рейтинг: 0 / 0
Компрессия данных любого размера до бесконечности с помощью числа "Пи"
    #39765902
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtesу меня есть подозрение, что если рассчитывать число Pi перед упаковкой\распаковкой, то на разных архитектурах, а возможно и на процессорах одинаковой архитектуры вы получите совершенно 2 разных числа. При такой уровне точности, о котором вы пишите, это гарантировано.
Современные алгоритмы (те которые соревнуются в рекордах по вычислению этого числа) используют
точную арифметику. Не float/double.
...
Рейтинг: 0 / 0
Компрессия данных любого размера до бесконечности с помощью числа "Пи"
    #39765917
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Great FutureДоброго времени суток.
Идея индексирования данных по некому словарю известна давно. Эффективна она в случаях большого процента совпадений словаря с данными. Например - в английском языке не так много окончаний, как в русском, поэтому кодирование индексами слов может быть более или менее вменяемым, но к другому языку, очевидно, такое кодирование не применить из-за чужого словаря, как и к русскому в случае с русским словарём, потому что русских вариаций слов из-за сложной морфологии будет очень много.

Но корень идеи правильный. Только область применения - узкая.
...
Рейтинг: 0 / 0
Компрессия данных любого размера до бесконечности с помощью числа "Пи"
    #39766165
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Great Future...Проверить бы все это.

наверное нет такого разработчика который бы.... но получается всегда что-то боковое. то повышенной надёжности кодирование, то новый алгоритм хранения, то новый алгоритм распределения на числовой прямой. А проверял, своё время, на компах сотрудниках. Делал резидент, который распространял через сервак новелла(у него был сценарий загрузки для клиента), алгоритм простоя станции, вирусный принцип маскирования в оси, ловля админ пароля и прочие попутные мелкие задачки :)

и ещё. Вы не поверите - но периодически накрывает эта задача :) но конечно же с пониманием существующей математики как тут уже выше прозвучало...

удачи вам
(круглый)
...
Рейтинг: 0 / 0
Компрессия данных любого размера до бесконечности с помощью числа "Пи"
    #39766217
Great Future
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Огромное спасибо за ответы. Именно это я и хотел услышать.
...
Рейтинг: 0 / 0
Компрессия данных любого размера до бесконечности с помощью числа "Пи"
    #39766241
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Автор почитай еще Борхеса. Так... ради досуга. Может еще мысли какие-то будут.

http://www.library.ru/lib/book.php?b_uid=42
...
Рейтинг: 0 / 0
Компрессия данных любого размера до бесконечности с помощью числа "Пи"
    #39766372
Great Future
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, почитал. Интересно.
...
Рейтинг: 0 / 0
Компрессия данных любого размера до бесконечности с помощью числа "Пи"
    #39766376
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Great FutureНо вполне может быть что я ошибаюсь.
Не просто может быть, а даже наверняка. Ибо любая идея о сжатии терабайт в байты распадается в прах при столкновении с теоремой Шеннона и смысла в ней примерно столько же, сколько в проектах вечных двигателей.

Что же до конкретно Вашего предложения, то его суть в сжатии данных по некоему постоянному, заранее рассчитанному для всех словарю, в роли которого выступает число "пи". Из чего интуитивно понятно, что такой метод будет уступать сжатию по адаптивному словарю, наиболее подходящему к конкретному случаю (это тот метод, которым давным-давно пользуются архиваторы).
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Компрессия данных любого размера до бесконечности с помощью числа "Пи"
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]