Идемпотентность

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая V1adis1av (обсуждение | вклад) в 08:41, 10 августа 2015. Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску

Идемпоте́нтность — термин, означающий свойство математического объекта или операции, которое проявляется в том, что повторное применение операции к объекту даёт тот же результат, что и одинарное. Термин предложил американский математик Бенджамин Пирс (англ. Benjamin Peirce) в статьях 1870-х годов. Пирс получил термин путём комбинации двух латинских слов: «idem» («тот же самый») и «potens» («способный»).

Примеры идемпотентных операций:

  • сложение с нулём:
  • умножение на единицу:
  • модуль числа:
  • поиск максимального значения:
  • вычисление наибольшего общего делителя:
  • сложение по модулю 2 с нулём:

Элемент

Идемпотентный элемент (идемпотент) в алгебре — элемент полугруппы, сохраняющийся при умножении самого на себя: Теорема об идемпотенте гласит: в конечной полугруппе есть идемпотент.

Идемпотентный элемент содержит идемпотентный элемент (обозначается ), если Отношение является отношением частичного порядка в множестве идемпотентных элементов и называется естественным частичным порядком на множестве

Два идемпотентных элемента ассоциативного кольца (которое будет полугруппой по умножению) и называются ортогональными, если

Операция

В математике

Идемпотентная бинарная операция в математике — операция, относительно которой всякий элемент обладает идемпотентностью в вышеназванном смысле:

Этим свойством обладают, например, логическое И и логическое ИЛИ.

Идемпотентная унарная операция — операция, для которой выполняется

, или

Из линейных операторов в идемпотентны только тождественный оператор, нулевой оператор и параллельная проекция. Поэтому проектор в алгебре — в том числе в бесконечномерных пространствах — определяется как

В информатике

Идемпотентная операция в информатике — действие, многократное повторение которого эквивалентно однократному.

Примером такой операции могут служить GET-запросы в протоколе HTTP. По спецификации, сервер должен возвращать одни и те же ответы на идентичные запросы (при условии, что ресурс не изменился между ними по иным причинам). Такая особенность позволяет кэшировать ответы, снижая нагрузку на сеть.

Для препроцессора языка C директива «#include "xxx.h"» является идемпотентной, если в заголовочном файле есть защита от двойного включения.