Расстояние Хэмминга — различия между версиями
Whiplash (обсуждение | вклад) |
|||
Строка 27: | Строка 27: | ||
а) ''База индукции:'' Пусть слова <tex>x</tex> и <tex>y</tex> отличаются в некоторой позиции. Тогда какое бы слово <tex>z</tex> мы не взяли оно будет отличатся хотя бы от одного из слов <tex>x</tex> или <tex>y</tex>. А это означает, что неравенство <tex>~d(x,y) \le d(x,z) + d(z,y)</tex> выполняется. | а) ''База индукции:'' Пусть слова <tex>x</tex> и <tex>y</tex> отличаются в некоторой позиции. Тогда какое бы слово <tex>z</tex> мы не взяли оно будет отличатся хотя бы от одного из слов <tex>x</tex> или <tex>y</tex>. А это означает, что неравенство <tex>~d(x,y) \le d(x,z) + d(z,y)</tex> выполняется. | ||
− | б) Пусть неравенство <tex>~d(x,y) \le d(x,z) + d(z,y)</tex> выполняется при <tex>~d(x,y) = k</tex>. <tex>(*)</tex> Докажем, что оно верно для <tex>~d(x,y) = k + 1</tex>. Для <tex>k</tex> позиций из <tex>k + 1</tex> общее количество отличий слова <tex>x</tex> от <tex>z</tex> и слова <tex>y</tex> от <tex>z</tex>, благодаря предположению <tex>(*)</tex>, не меньше, чем количество отличий слова <tex>x</tex> от <tex>y</tex>. Рассмотрим оставшуюся позицию, в которой отличаются слова <tex>x</tex> и <tex>y</tex>. Так как какое бы слово <tex>z</tex> мы не взяли оно, в этой позиции, будет отличатся хотя бы от одного из слов <tex>x</tex> или <tex>y</tex>, то неравенство <tex>~d(x,y) \le d(x,z) + d(z,y)</tex> для <tex>~d(x,y) = k + 1</tex> | + | б) Пусть неравенство <tex>~d(x,y) \le d(x,z) + d(z,y)</tex> выполняется при <tex>~d(x,y) = k</tex>. <tex>(*)</tex> Докажем, что оно верно для <tex>~d(x,y) = k + 1</tex>. Для <tex>k</tex> позиций из <tex>k + 1</tex> общее количество отличий слова <tex>x</tex> от <tex>z</tex> и слова <tex>y</tex> от <tex>z</tex>, благодаря предположению <tex>(*)</tex>, не меньше, чем количество отличий слова <tex>x</tex> от <tex>y</tex>. Рассмотрим оставшуюся позицию, в которой отличаются слова <tex>x</tex> и <tex>y</tex>. Так как какое бы слово <tex>z</tex> мы не взяли оно, в этой позиции, будет отличатся хотя бы от одного из слов <tex>x</tex> или <tex>y</tex>, то неравенство <tex>~d(x,y) \le d(x,z) + d(z,y)</tex> для <tex>~d(x,y) = k + 1</tex> выполняется. |
Индуктивное предположение верно, значит, неравенство <tex>~d(x,y) \le d(x,z) + d(z,y)</tex> выполняется для любого натурального k (k - количество отличий слова <tex>x</tex> от <tex>y</tex>). | Индуктивное предположение верно, значит, неравенство <tex>~d(x,y) \le d(x,z) + d(z,y)</tex> выполняется для любого натурального k (k - количество отличий слова <tex>x</tex> от <tex>y</tex>). |
Версия 06:12, 9 ноября 2011
Определение: |
Расстояние Хэмминга (Hamming distance) — число позиций, в которых соответствующие цифры двух двоичных слов одинаковой длины различны. |
В более общем случае расстояние Хэмминга применяется для строк одинаковой длины любых k-ичных алфавитов и служит метрикой различия (функцией, определяющей расстояние в метрическом пространстве) объектов одинаковой размерности.
Пример
Свойства
Расстояние Хэмминга обладает свойствами метрики, так как удовлетворяет ее определению.
- (Если расстояние от до равно нулю, то и совпадают ( ))
- (Объект удален от объекта так же, как объект удален от объекта )
- (Расстояние от до всегда меньше или равно расстоянию от до через точку (равенство достигается только в том случае, если точка принадлежит отрезку ). Это свойство обычно называют неравенством треугольника за его естественную геометрическую аналогию: сумма двух сторон треугольника всегда больше третьей стороны.)
Доказательство неравенства треугольника
Утверждение: |
I. Все позиции независимы. II. Рассмотрим два варианта, когда (1) и (2):
а) База индукции: Пусть слова и отличаются в некоторой позиции. Тогда какое бы слово мы не взяли оно будет отличатся хотя бы от одного из слов или . А это означает, что неравенство выполняется.б) Пусть неравенство Индуктивное предположение верно, значит, неравенство выполняется при . Докажем, что оно верно для . Для позиций из общее количество отличий слова от и слова от , благодаря предположению , не меньше, чем количество отличий слова от . Рассмотрим оставшуюся позицию, в которой отличаются слова и . Так как какое бы слово мы не взяли оно, в этой позиции, будет отличатся хотя бы от одного из слов или , то неравенство для выполняется. выполняется для любого натурального k (k - количество отличий слова от ). |