Русская Википедия:Идемпотентность
Идемпоте́нтность (Шаблон:Lang-la «тот же самый» + Шаблон:Lang-la2 «способный») — свойство объекта или операции при повторном применении операции к объекту давать тот же результат, что и при первом. Термин предложил американский математик Бенджамин Пирс (Шаблон:Lang-en) в статьях 1870-х годов.
Примеры идемпотентных операций:
- сложение с нулём: <math>a = a + 0 = (a+0) + 0 = ((a+0)+0) + 0 = \dots</math>;
- умножение на единицу: <math>x = x * 1 = (x*1) * 1 = ( (x*1) * 1 ) * 1 = \dots</math>;
- модуль числа: <math>|x| = | (|x|) | = | ( | (|x|) | ) | = \dots</math>;
- выбор максимального значения: <math>\max(x,y) = \max( \max(x,y), y ) = \max( x, \max(x,y) )</math>;
- вычисление наибольшего общего делителя: <math>\operatorname{gcd}(x,y) = \operatorname{gcd}( \operatorname{gcd}(x,y), y ) = \operatorname{gcd}( x, \operatorname{gcd}(x,y) )</math>;
- сложение по модулю 2 с нулём: <math>a = a \oplus 0 = ( a \oplus 0 ) \oplus 0 = \dots</math>;
- нахождение остатка от деления: <math>r = a\mod b = ( a\mod b )\mod b = \dots</math>;
- возведение в степень единицы: <math>a^1 = (a^1)^1 = ((a^1)^1)^1 \dots</math>.
Элемент
Идемпотентный элемент (идемпотент) в алгебре — элемент полугруппы, сохраняющийся при умножении самого на себя: <math>e^2=e</math>. Теорема об идемпотенте гласит: в конечной полугруппе есть идемпотент.
Идемпотентный элемент <math>e</math> содержит идемпотентный элемент <math>f</math> (обозначается <math>e\geqslant f</math>), если <math>ef=e=fe</math>. Отношение <math>\geqslant</math> является отношением частичного порядка в множестве <math>E</math> идемпотентных элементов и называется естественным частичным порядком на множестве <math>E</math>.
Два идемпотентных элемента ассоциативного кольца (которое будет полугруппой по умножению) <math>u</math> и <math>v</math> называются ортогональными, если <math>u v = 0 = v u</math>.
Операция
Шаблон:См. также Идемпотентная бинарная операция в математике — операция, относительно которой всякий элемент обладает идемпотентностью в вышеназванном смысле:
- <math>\forall x: \quad x \cdot x = x</math>.
Этим свойством обладают, например, логическое И и логическое ИЛИ.
Идемпотентная унарная операция — операция, для которой выполняется <math>\forall x: f(f(x)) = f(x)</math>, или <math>f \circ f = f</math>.
Из линейных операторов в <math>\mathbb{R}^n</math> идемпотентны только тождественный оператор, нулевой оператор и параллельная проекция. Поэтому проектор в алгебре — в том числе в бесконечномерных пространствах — определяется как <math>P \circ P = P</math>.
В информатике
Идемпотентная операция в информатике — действие, многократное повторение которого эквивалентно однократному.
Примером такой операции могут служить GET-запросы в протоколе HTTP. По спецификации, сервер должен возвращать идентичные ответы на идентичные GET-запросы (при условии, что ресурс не изменился). Это позволяет корректно кэшировать эти ответы, снижая нагрузку на сеть.
Для препроцессора языка Си директива «Шаблон:Cpp» является идемпотентной, если в заголовочном файле есть защита от двойного включения.
Литература
- Peirce B. Linear Associative Algebra. 1870.
- Шаблон:Citation
- Шаблон:Из