|
Недавно на сайте АТ опубликована Часть I. Критически-важные приложения и парадокс кода Хемминга моей новой статьи [1]. В этой части обсуждается понятие «критически-важных систем» [2]:
“Критически важная система (Mission-Critical System) - это система, отказ которой может привести к отказу от какой-либо целенаправленной деятельности. Критически-важное оборудование (Mission-essential equipment) и критически-важное приложение (mission critical application) также известны под названием «критически важных систем» (mission-critical system). Примерами критически важных систем являются: система онлайн-банкинга, системы управления и контроля на железнодорожном / воздушном транспорте, системы электроснабжения и многие другие компьютерные системы, которые могут серьезно повлиять на бизнес и общество, если они будут подвержены ошибкам. Хорошим примером критически-важной системы является навигационная система для космического корабля”
Далее обсуждаются требования к использованию корректирующих кодов в таких системах [2] и на примере кода Хемминга демонстрируется существенный недостаток этого кода, который автор назвал «парадоксом кода Хемминга».
Мой «вечный» оппонет доктор наук Василенко написал очередной «размышлизм» [3], в котором дает негативную оценку моей публикации [1]. Статья Василенко обширна. Кроме разделов «Введение» и «В погоне за мнимым парадоксом», «Академик А. Харкевич», остальные разделы не имеют отношения к моей статье [1]. Основной критический материал, касающийя «парадокса кода Хемминга», изложен в разделе «В погоне за мнимым парадоксом». На замечания Василенко в этом разделе я и попытаюсь ответить.
Василенко пишет:
«Код Хэмминга, как простейший линейный код, полностью выполняет свою первоначальную полезную функцию: позволяет исправлять одиночные и фиксировать двойные ошибки в кодовом слове. Более не может.
То есть допустимо говорить о его несовершенстве, отдельных недостатках». С этим я могу согласиться. Давайте будем говорить о несовершенстве кода Хемминга. Однако я не вижу особой ошибки в словосочетании «парадокс кода Хемминга».
Объясняю, почему я не вижу никакой особой ошибки в таком названии.
В Википедии [4] мы находим следующее объяснение понятия «парадокс»:
«Парадокс выглядит как отрицание некоторого мнения, которое кажется «безусловно правильным». Не секрет, что оригинальность высказывания воспринять гораздо проще, чем разбираться в его истинности или ложности. Именно поэтому парадоксальные высказывания часто воспринимаются как свидетельства независимости и самобытности того мнения, которое высказывает субъект. Особенно убедительным парадокс становится тогда, когда он приобретает форму афоризма. Например: «Что было раньше – курица или яйцо?»
Применительно к коду Хемминга парадокс может быть сформулирован в виде афоризма:
«Является ли код Хемминга корректирующим или анти-корректирующим кодом?»
Согласно общепринятому мнению код Хемминга является корректирующим, который корректирует все одиночные ошибки в кодовой комбинации. Но в своей статье я доказываю, что код Хемминга является анти-корректирующим кодом в случае, если в кодовой комбинации Хемминга возникают нечетные ошибки высокой кратности (3,5,7,...). Корректор кода Хемминга воспринимает все нечетные ошибки высокой кратности (3,5,7,...), как одиночные ошибки, и осуществляет их «ложное исправление». В этом случае на выходе устройства (например, электронной памяти) возникает «ложный сигнал», который может привести к огромной технологической катастрофе. Например, «ложный сигнал», возникший на выходе такой критически-важной системы как навигационная система для космического корабля приводит к отклонению космического корабля от заданного курса. Это означает, что корректирующий код Хемминга на самом деле является анти-корректирующимся кодом. В этом и состоит парадокс кода Хемминга.
У меня сложилось впечатление, что доктор наук Василенко имеет весьма поверхностное представление о коде Хемминга.
И это подтверждается следующей цитатой из статьи Василенко:
«Модифицированные коды Хэмминга, которые отличаются добавлением дополнительных проверочных битов кодового слова, способны детектировать ошибки большей кратности: три, четыре и более».
За такой ответ на экзамене по курсу «Теория информации и кодирования» я ставил студентам жирную двойку! Дело в том, что модифицированный код Хемминга корректирует все одиночные ошибки и обнаруживает двойные ошибки. Нечетные ошибки большой кратности (3,5,7,...) код Хемминга не детектирует. В случае таких ошибок корректор кода Хемминга осуществляет «ложное исправление», которое может стать причиной крупной технологической катастрофы, что недопустмо для критичеси важных систем. Об этом я и предупреждаю в своей статье [1] всех специалистов в области кодирования.
Так что, уважаемый доктор наук Василенко, Вам надо существенно повысить уровень знаний в области «Теории информации и кодирования» перед тем, как писать критичские замечания на статьи в области кодирования.
Что касается Части II «Троянский конь» двоичной системы и новые научные идеи в технической реализации информационных систем Фибоначчи для критически-важных приложений моей статьи [1], то я ее публиковать не буду, учитывая реплику Василенко:
«Обещанную 2-ю часть статьи уважаемого профессора мы, конечно, посмотрим. Хотя, сдается, заранее знаем её содержание, сполна построенное на уже известных результатах».
Зачем же публиковать статью, содержание которой Василенко заранее знает?
Литература