Содержание к диссертации
Введение
1. Аналитический обзор методов цифровой обработки сигналов 18
1.1. Анализ требований, предъявляемых к вычислениям задач цифровой обработки сигналов 18
1.2. Обоснование необходимости применения нетрадиционных информационных технологий для цифровой обработки сигналов 33
1.3. Цифровая обработка сигналов на современной вычислительной базе 37
1.4. Применение модулярной арифметики для цифровой обработки сигналов 45
1.5. Критерии оценки качества вычислительных и алгоритмических средств. Постановка задачи исследований 50
1.6. Выводы 58
2. Разработка математических методов моделирования для исследования базисных немодульных операций модулярной арифметики реализованных на основе универсальной позиционной характеристики 60
2.1. Математическая модель модулярной алгебры 60
2.2. Выбор универсальной позиционной характеристики чисел для быстрого выполнения немодульных процедур 68
2.3. Разработка ускоренных методов и алгоритмов выполнения базисных немодульных процедур 74
2.4. Разработка метода расширения базы системы остаточных классов 83
2.5. Разработка матрицы связности для отображения позиционных и непозиционных числовых систем 89
2.6. Выводы 111
3. Методы и алгоритмы округления, масштабирования и деления чисел в модулярной арифметике 113
3.1. Деление с нулевым остатком 114
3.2. Масштабирование целых положительных чисел 115
3.3. Математические модели масштабирования целых отрицательных чисел 120
3.4. Разработка метода и алгоритма основного модулярного деления 122
3.5. Выводы 131
4. Моделирование основных функциональных модулей модулярного нейропроцессора цифровой обработки сигналов 132
4.1. Обобщенная вычислительная модель модулярного нейропро-цессора цифровой обработки сигналов 132
4.2. Моделирование процессов в нейронных сетях конечного кольца 137
4.3. Моделирование корректирующих свойств кодов системы остаточных классов нейронными сетями Хопфилда и Хэмминга 156
4.4. Математическое моделирование переходных процессов в нейронных сетях Хопфилда и Хэмминга при исследовании корректирующих свойств кодов СОК 167
4.5. Сравнительная оценка производительности модулярного ней-ропроцессора при различных соотношениях модульных и немодульных операций 171
4.6. Выводы 175
Заключение 177
Список использованных источников
- Обоснование необходимости применения нетрадиционных информационных технологий для цифровой обработки сигналов
- Выбор универсальной позиционной характеристики чисел для быстрого выполнения немодульных процедур
- Математические модели масштабирования целых отрицательных чисел
- Моделирование корректирующих свойств кодов системы остаточных классов нейронными сетями Хопфилда и Хэмминга
Введение к работе
Решение широкого круга задач современных фундаментальных и прикладных исследований в таких областях как ядерная физика, оптика, геофизика, нейрофизика, физика атмосферы, сейсмографии, связи, медицинской электроники и многих других требует формирования и быстрой обработки в реальном масштабе времени и высокой степени достоверности огромных массивов цифровой информации.
Благодаря последним достижениям теории и применения цифровой обработки сигналов (ЦОС), лишь сравнительно недавно удалось решить ряд важных трудоемких задач по обработке многомерных сигналов звуковой локации, космической астрономии, медицинской электроники и другим проблемам.
Вместе с тем обширные области задач в рамках быстродействия, обеспечиваемого современными компьютерными системами, практически не могут быть реализованы. Отмеченное обстоятельство стимулирует поиски нетрадиционных подходов к организации ЦОС, которые обеспечивают оптимальное отображение базовых алгоритмических структур на перспективные СБИС и ПЛИС архитектуры. Это вызвало к жизни новые направления, названные анализом компьютерных алгоритмов, а также компьютерной алгеброй.
Общей фундаментальной стратегией теоретических исследований и конкретных разработок, осуществляемых в настоящее время как у нас, так и за рубежом, является применение подходов, базирующихся на интенсивном использовании различных форм параллелизма на алгоритмическом, программном и аппаратном уровнях. Реализация этих подходов привела к созданию так называемых параллельно-конвейерных вычислительных структур, супер-ЭВМ, транспьютерных и тому подобных систем, которые отличаются принципиально новой организацией вычислений. При этом возникает ряд новых сложных проблем, связанных с оптимизацией алгоритмических, программных и аппаратных средств ЦОС. Несмотря на многообразие целевых функций, характерных для наиболее трудоемких процессов, их реализация фактически всегда сводится к выполнению определенного набора базовых процедур. Ключевую роль в современных системах ЦОС играет процедура быстрого преобразования Фурье (БПФ), фильтрации, свертки. Поскольку эти алгоритмы характеризуются внутренним параллелизмом, то перспективной и многообещающей является их реализация с помощью нетрадиционных методов кодирования информации и соответствующей компьютерной алгебры и, в первую очередь, с помощью модулярных систем счисления (МСС), как систем, обладающих максимальным уровнем внутреннего параллелизма. Подтверждением этому тезису являются публикации зарубежных авторов, появившиеся за последние пять лет, например [119, 120, 121, 122, 124] и другие. Применение модулярной арифметики позволяет синтезировать алгоритмические и аппаратные структуры процессоров ЦОС, которые по сравнению с традиционными обеспечивают более высокое быстродействие, надежность, отказоустойчивость и т.п.
Успешное решение подобных задач обеспечивается наличием современной вычислительной базы, представленной в виде искусственных нейронных сетей, которые тоже обладают массовым параллелизмом.
Интерес к принципам вычислений в СОК с использованием нейросете-вого базиса усиливается также благодаря тому, что вычислительные параллельные структуры, построенные на основе нейронных сетей и предназначенные для реализации всех арифметических операций без горизонтальных связей образуют регулярность вычислений по каждому модулю. Это позволяет ввести в реализацию принцип взаимозаменяемости каждого модульного тракта. На этой основе достаточно просто реализовать принцип арифметической реконфигурации, который позволяет при наличии устойчивого отказа по некоторому модулю, исключить его, заменив его избыточным резервным модулем или перестроить мультинейропроцессор путем записи новых хранимых констант и весовых коэффициентов во все нейронные сети. Этот принцип позволяет использовать деградацию системы, которая будет функционировать, но в снижении некоторых параметров.
Кроме того, модулярная арифметика постоянно привлекает к себе внимание специалистов по разработке позиционно-модулярных вычислительных структур, где четко обозначается тенденция совместного применения позиционных и модулярных компонентов. Это дает возможность с одной стороны сочетать достоинства модулярных систем счисления и позиционных систем счисления, а с другой нивелировать их недостатки.
Однако создание высокопроизводительных систем ЦОС с позиционно-модулярной структурной организацией требует решения целого ряда актуальных проблем, ориентированных на совместное использование с позиционными структурами.
К основным из этих проблем относятся:
разработка алгоритмических и вычислительных структур, позволяющих в полной мере реализовать достоинства модулярных систем счисления;
оптимизация процедур выполнения таких немодульных операций, как контроль переполнения, масштабирование кодовых преобразований и другие;
синтез перспективных позиционно-модулярных вычислительных структур, предназначенных для создания высокопроизводительных и надежных типовых блоков ЦОС.
В свете сказанного исключительно актуальными являются исследования, ориентированные на применение модулярной арифметики и нейронных сетей для ЦОС, при этом первостепенное значение имеют математические модели, которые включают в себя совокупность множества немодульных операций и алгоритмы вычислений.
Обоснование необходимости применения нетрадиционных информационных технологий для цифровой обработки сигналов
Повысить эффективность обработки информации можно за счет использования новой информационной технологии - технологии нейронных сетей [73, 111].
Применение искусственных нейронных сетей для решения широкого круга инженерных и научных задач в последние годы приняло массовый характер. Такое их широкое внедрение породило не только целые направления в прикладных областях науки, но и целую индустрию аппаратных средств -нейрокомпьютеров - для реализации нейронных сетей. В настоящее время нейрокомпьютерная технология является одним из наиболее быстро развивающихся разделов вычислительной техники. Нейросетевые методы широко открывают возможности использования средств вычислительной техники в различных сферах деятельности, ранее относящиеся лишь к области человеческого интеллекта. Наибольшие успехи достигнуты при решении задач обработки сигналов, распознавания образов, составления прогнозов, архивации и структурирования больших объемов информации, сжатия данных и т.п. Возможность массового параллелизма нейросетевых вычислений определила целесообразность создания специализированных вычислительных систем — нейрокомпьютеров, обеспечивающих эффективное выполнение арифметических и логических операций.
Анализ современных тенденций разработки и применения нейрокомпьютеров позволил сделать следующие выводы: число фирм, занимающихся нейрокомпьютерами, постоянно увеличивается, в число этих фирм включаются такие гиганты как Intel, DEC, IBM, Motorola и др.; наблюдается сдвиг разработок от программной эмуляции в сторону программно-аппаратной эмуляции нейросетевых алгоритмов с резким увеличением в последние годы числа разработок СБИС нейрочипов с нейросете-вой архитектурой; увеличивается внимание к военным разработкам, являющимися основным рынком супервычислителей.
Если говорить о главном перспективном направлении — интеллектуализации вычислительных средств, придании им свойств человеческого мышления и восприятия, то нейрокомпьютеры — практически единственный путь развития вычислительной техники в этом направлении.
В настоящее время активное развитие ЭВМ с массовым параллелизмом создало объективные условия для построения вычислительных средств, аде кватных по возможностям и архитектуре практически любым задачам искусственного интеллекта.
Основными преимуществами НС как логического базиса алгоритмов решения сложных задач являются следующие [34, 36]: 1. Инвариантность методов синтеза НС от размерности пространства признаков и их размеров. 2. Высокая параллельность нейросетевых алгоритмов (НСА) в сочетании с ограниченностью операций нейросетевого логического базиса {+, х, sigm}, что предполагает дешевую аппаратную реализацию такой системы и дает нейрокомпьютерам наиболее высокие характеристики в соотношении производительность-стоимость. 3. Самопрограммирование (обучаемость) нейросетевой структуры. 4. Отказоустойчивость в смысле монотонного, а не катастрофического изменения качества решения задачи в зависимости от числа вышедших из строя элементов. 5. Соответствие современным перспективным технологиям.
Длительное время считалось, что нейрокомпьютеры эффективны для решения так называемых неформализуемых и плохо формализуемых задач, связанных с необходимостью включения в алгоритм их решения процесса обучения на реальном экспериментальном материале. В первую очередь к таким задачам относилась задача аппроксимации частного вида функций, принимающих дискретное множество значений, т.е. задача распознавания образов.
Неформализуемые задачи являются важным аргументом использования нейрокомпьютеров. Однако, это всего лишь частная постановка аппроксимации функций, заданных некоторым множеством значений. При этом суть заключается в том, что для аппроксимации используются не прежние статистические, в частности регрессионные, модели, а гибкие нелинейные нейросете-вые модели.
В настоящее время к этому классу задач добавляется второй класс задач, иногда не требующий обучения на экспериментальном материале, но хорошо представимый в нейросетевом логическом базисе. К ним относятся в первую очередь задачи с ярко выраженным естественным параллелизмом: обработка сигналов, изображений и др.
Выбор универсальной позиционной характеристики чисел для быстрого выполнения немодульных процедур
Рассматривая вычисления в пределах модулярного кода, все операции можно разбить на две группы: модульные и немодульные. Первая группа, составляющая арифметические операции (сложение, вычитание и умножение) в остаточной арифметике, включает в себя быстрые операции; в то время операции второй группы являются медленными.
Вторая группа включает нахождение вычета чисел, его преобразование, определение переполнения диапазона, расширение базы оснований, масштабирование и другие, и требуют иногда частичного преобразования в позиционную систему. Следовательно, чтобы решить проблемы, для которых остаточная арифметика хорошо подходит или наоборот и, чтобы определить, использовать ли остаточную арифметику для решения заданной проблемы, необходимо рассмотреть типы арифметических операций, которые будут необходимы.
Существенным является сокращение медленных операций в общей системе используемых операций, либо разработать методы и алгоритмы быстрого выполнения медленных операций, тогда остаточная арифметика будет иметь более широкую применимость. Решение проблемы можно достичь, если решать их методами, подходящими для позиционных систем счисления.
При разработке модулярной арифметики, адаптированной к множеству проблемных вычислительных алгоритмов или для настройки компьютерной арифметики на вычислительную проблему при выбранном машинном диапазоне, необходимо: определить подмножество из множества модульных операций модулярного вычислительного базиса; определить подмножество из множества немодульных операций модулярного вычислительного базиса.
Центральной операцией для ряда вычислительных проблем является операция вычисления вычетов по модулям, входящим в выбранную систему модулей модулярной арифметики. Эта операция должна быть базисной в конструируемой компьютерной арифметике, которая накладывает требования на выбор и алгоритмы модульных и немодульных операций, обеспечивающих максимальную простоту операции вычисления вычетов.
Отображение вычисляемого алгоритма в систему остаточных классов для выполнения на модулярной вычислительной базе является настройкой вычисляемых алгоритмов на вычислительную базу. Взаимная настройка компьютерной арифметики на вычислительную проблему позволяет получить оптимальные по быстродействию и аппаратным затратам вычислительные алгоритмы [3,4]. Модулярная алгебра задается совокупностью множества носителя и сигнатурой, отмеченной в 2.1. Аддитивные и мультипликативные операции в модулярной компьютерной арифметике (сложение, вычитание, умножение) выполняются параллельно, независимо по каждому из модулей и не требуется учет переносов из модульных разрядов, вычисления по которым выполняются в автономных вычислительных трактах.
Алгоритмы выполнения вышеперечисленных операций рассмотрены в [1, 2, 3, 4, 6]. При полном наборе базисных модульных операций учитывается, что базовой операцией при решении вычислительных задач является операция вычета из числа, которая должна выполняться максимально эффективно. При вычислении выражений в виде формул в модулярной алгебре используется следующий порядок выполнения унарных и бинарных кольцевых операций с операндами - модулярными векторами: выражения в скобках; унарные; мультипликативные; аддитивные [5].
Разработка теоретических основ вычислительных средств на базе модулярной арифметики требует решения проблемы, заключающейся в знании числового значения модулярной величины, которая определенным образом связана со значениями компонент модулярного представления. Эти операции являются медленными, например, к таким операциям можно отнести сравнение чисел, определение знака числа, переполнение машинного диапазона и другие [1-6].
Именно медленность их выполнения сдерживает широкое применение модулярной машинной арифметики.
Для решения этой проблемы целесообразно использовать два пути. Первый путь - поиск простых алгоритмов выполнения этих операций. Второй путь - реализация вычислительных алгоритмов с помощью быстродействующих модульных операций.
Для реализации первого подход предлагаются специальные функционалы [1-6] - качественные характеристики отношения порядка над множест вом модулярных векторов, элементы декартового произведения колец-классов вычетов по простым модулям. Одно из устоявшихся названий для функционалов - позиционные характеристики (ПХ) модулярной величины или числовой величины в модулярном коде. ПХ должны [3-6]: быть универсальной основой большинства (или всех) немодульных операций, включая операции кодирования и декодирования помехозащищен-ного кода; обладать меньшей сложностью выполнения немодульных операций по сравнению с другими методами; эффективно вычисляться, желательно, модульным способом.
Поиск эффективных и универсальных ПХ важен для теоретических основ модулярных вычислительных структур и вычислительных средств на их основе.
В основе алгоритмов выполнения немодульных операций лежат методы вычислений ПХ, сложность которых непосредственно влияет на скорость выполнения немодульных операций в модулярной арифметике.
Исторически так сложилось, что поиск некоторого компромисса в удовлетворении требований, предъявляемых к ПХ, привел к введению первых характеристик модулярной арифметики: ранг, след, нормированный ранг, неточный ранг, ядро числа, модульное ядро, нормированное ядро, квазислед [3-6].
Анализ этих ПХ показал, что значение модулярной величины по ним не всегда определяется однозначно. Множество введенных ПХ обуславливает необходимость выявления связей между ними, нахождения способов и условий их оптимального использования, конструирования алгоритмов выполнения немодульных операций на их основе и проведения сравнительной оценки алгоритмической и временной сложности их вычисления.
Математические модели масштабирования целых отрицательных чисел
Пусть z будет результатом этой операции масштабирования, то есть Р-979 7-11 .тогда--14,+3 = 0, zn=l,-.-z7+2 = 0, Н7 = 4. 13,9,2,. В строку (0, 5, -, -, 1) - Р-979 7-11 добавляем zn, \z\ тогда оста точное представление z будет равно (0, 5, 1,4, 1). В зависимости от знака я, а 1 а Ь
Отрицательные числа в СОК можно записать как Р-а. Если известно, что число отрицательное, то легко можно его определить из Р-а, затем проводится масштабирование на Ь, получаем а Ь и затем представляем ре зультаты как Р+ . Если же знак неизвестен, то возникает определенная сложность. При масштабировании отрицательного числа как будто бы число вместо необходимого Р+ положительное, результатом будет
Поэтому перед масштабированием необходимо определить знак а, этого процесса можно избежать, если принять во внимание следующее обстоятельство: деление на Ъ отображает все числа в интервале [0, Р/С-\\ в интервал IP /2/ Ч и все числа в интервале [% Р-Ц в интервал [уік У}Х От сюда можно выполнить вначале деление числа на Ь, а затем, принимая во внимание интервал, в котором находится а , определяется знак а. Если а - отрицательное число Р Ь то к нему прибавляется по модулю Р для получения правильного ответа Р+ Определение интервала, в котором находится а требует такого же количества времени, что и для определения знака числа. Однако, как было рассмотрено в предыдущем примере, процесс масштабирования требует операции расширения базы модулей СОК на основе цифр ОПСС, поэтому мож , либо Р + . Цифры ОПСС остаточное представление z будет либо для z по модулям 13, 4, 2 были вычислены на протяжении процесса масштабирования и обозначились в преобразованиях. Отсюда z можно выразить как z = 1(9-13)+ 8(13) + 0(1).
Если а - положительное число, то \а\р должно быть в интервале 0. Р/-\ /2 1 или [0,(9-13)-1]. Так как наиболее значимой цифрой ОПС \z\ является 1, то \z\p не может входить в этот интервал. Отсюда а должно быть обходимо отрицательным. Следовательно, для получения правильного результата не-Р сложить с 2 . Для завершения примера необходимо число Лр Р_ Ъ (0, 0, 8, 4, 0), которое является величиной "-979 (0, 5, 1,4, 1). Результатом является число z = сложить с числом = -13.
Рассмотренные модели связаны со специальными случаями и неприменимы в ситуации, когда и делимое, и делитель представляют собой произвольные целые числа. Последний случай представлен формой 3.
Различные алгоритмы деления целых чисел — можно описать итера b тивной схемой, используемой так называемый метод спуска Ферма [2]. Конструируется некоторое правило р, которое каждой паре целых положительных чисел а и Ь ставит в соответствие некоторое целое положительное q такое, что a-bq=r 0. Тогда деление a nab осуществляется по следующему правилу: согласно операции р паре чисел а и b ставится в соответствие число qi, такое, что а - bql = г{ О. Если ri b, то деление закончено, если же r{ b, то, согласно р, паре чисел (гі, b) ставится в соответствие q2, такое, что Если (г2 Ь), то деление завершается, если же (r2 .Ь), то, согласно ? ,, паре ( 2, Ь) ставится в соответствие qz такое, что гг - bq3 = г3 0 и так далее. Так как последовательное применение операции р приводит к строго убы вающей последовательности положительных целых чисел а .г{ г2 г2 ... 0, то процесс является конечным и алгоритм реализует ся за конечное число шагов.
В общем случае b может быть и не равным модулю или их произведению. Здесь встает проблема выбора b таким, чтобы оно было равным либо модулю, либо их произведению. Если эта проблема будет решена, тогда итерации могут быть сведены к процессу масштабирования, которые рассмотрены выше. Для решения этой проблемы вначале докажем теорему о границах изменения Ь.
Моделирование корректирующих свойств кодов системы остаточных классов нейронными сетями Хопфилда и Хэмминга
В настоящее время нейрокомпьютерная технология является одним из наиболее перспективных направлений развития вычислительной техники, основой которой являются искусственные нейронные сети, представляющие собой устройства параллельных вычислений, состоящие из множества простых процессоров. Для представления и обработки данных в искусственных нейронных сетях могут быть использованы позиционные и непозиционные системы счисления. Позиционные системы являются традиционными и для согласования их с нейронными сетями используются искусственные приемы, которые снижают положительные свойства нейронных сетей, связанные с параллельными вычислениями. Непозиционные системы счисления, в частности, система остаточных классов, является параллельной системой и обеспечивает параллелизм на уровне выполнения элементарных операций, т.е. система остаточных классов является естественной основой представления данных в нейронных сетях, обеспечивая их новыми свойствами и возможностями. Этот симбиоз жизненно необходим для исследования нейронных сетей с модулярным кодированием и обработкой данных, который не отражен в литературе.
В данной работе предпринята попытка рассмотрения нейронных сетей, функционирующих в системе остаточных классов, обладающих массовым параллелизмом и ассоциативными свойствами. Объединение модулярного принципа представления и обработки данных и нейронных структур в единую вычислительную архитектуру зачастую приводит к свойствам, которых нет у них по отдельности. Эти два подхода реализуют естественный параллелизм представления и обработки данных и позволяют разрабатывать высокопроизводительные и надежные вычислительные средства. Ассоциативные свойства трактуются как взаимосвязь между информацией (образом) на входе логико-запоминающей среды и информацией (образом), хранящейся в ло гико-запоминающей среде. Способ доступа к информации в запоминающей среде, базирующийся на механизме ассоциации, получил название ассоциативного способа доступа. Ассоциативный способ доступа к информации обладает следующими достоинствами: практически одновременный доступ ко всей хранящейся в памяти информации; относительную независимость времени поиска информации от емкости памяти; внесение элементов обработки информации непосредственно в процесс самого доступа; обработку информации непосредственно в среде ее хранения. Эти, а также ряд других отличительных особенностей ассоциативного способа доступа к информации делает его чрезвычайно перспективным в системах обработки данных.
Метрика корректирующих кодов СОК
Система счисления в остаточных классах СОК открывает возможность использования единого помехоустойчивого кода для борьбы с ошибками, возникающими при передаче информации по каналам связи и при ее обработке в цифровых информационных системах.
Для оценки корректирующих способностей кодов обычно вводят понятие расстояния кода, которое помогает установить связь между избыточностью кодирования и возможностями обнаруживать и исправлять ошибки [1].
Минимальное расстояние кода - это наименьшее расстояние между любыми двумя кодовыми словами. Расстояние d между любыми двумя векторами (кодами) aj и а2 из множества Р (расстояние Хэмминга) - есть число компонент, в которых эти векторы (коды) отличаются друг от друга. Это расстояние обладает свойствами: d(ah а = d(a2, aj); d(ai, a2) = 0, тогда и только тогда, когда aj=a2; d(ah а2) 0; d(at, ат) d(ah а3)+ d(a2, а з).
Несложно заметить, что расстояние между различными векторами множества Р изменяется от 1 до п, причем двум соседним числам соответствуют векторы, расстояние между которыми равно п для любой системы остаточных классов.
Если один из символов кодового слова а, изменил свое значение в результате какой-либо помехи, то для полученного в результате нового вектора #/, расстояние Хэмминга d(a, aj) = 1. такую ошибку можно обнаружить лишь в том случае, если вектор а і не является кодовым словом. Поэтому все кодовые слова должны быть удалены от вектора а на расстояние большее 1. Чем больше расстояние между кодовыми словами, тем больше ошибок может обнаружить и исправить такой код.
В [1] установлена связь между минимальным расстоянием кода и его корректирующими способностями. Эту связь выражают две теоремы.
Теорема 4.2. Корректирующий код в СОК может обнаружить все совокупности из / или меньшего числа ошибок лишь в том случае, если минимальное расстояние кода больше /, т.е. dnb l + l. (4.21)
Теорема 4.3. Корректирующий код в СОК может исправить все совокупности из к или меньшего числа ошибок лишь в том случае, если минимальное расстояние кода больше удвоенного числа ошибок, т.е. d 2k + \. (4.22) Рассмотрим представление А = (а1г а2, .... аД (4.23) как кодовую комбинацию, причем цифры а/, а?, ..., ап, могут быть даны как в двоичном, так и в многопозиционном представлении. Диапазон п Р = Y[ Pi, гДе Pi - модули СОК, называют полным диапазоном, а диапазон Р = ПР," рабочим диапазоном. Отсюда следует, что элементами кодового 1=1 разрешенного множества, которые могут быть использованы в информаци онной системе, являются целые положительные числа рабочего диапазона, представленные в СОК по системе из п-\ модулей. Обычно п-\ модулей называют информационными, а я-ый модуль - контрольным.
Таким образом, все числа, которые передаются по каналам связи или участвуют в операциях, должны лежать в диапазоне [О, Р), и если в результате какой-либо операции или при передаче числа оказалось, что получено число А, большее Р, то значит при проведении операции была допущена ошибка.
Под одиночной ошибкой понимают искажение какой-либо одной цифры числа. Под Ажратной ошибкой понимают искажение к цифр представления.
Представляет интерес подсчет количества обнаруживаемых одиночных, двойных и т.д. ошибок. Если передано сообщение в виде (4.23), то принятым может оказаться, вообще говоря, любое из возможных Р сообщений. При этом Р ошибок не обнаруживается. Таким образом, число Р-Р показывает суммарное количество обнаруживаемых возможных ошибок.