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

Материал из testwiki
Версия от 15:34, 28 июля 2024; 5.143.143.67 (обсуждение)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

Шаблон:Навигация Идемпоте́нтность («равносильность» от Шаблон:Lang-la «тот же самый» + Шаблон:Lang-la2 «способный») — свойство объекта или операции при повторном применении операции к объекту давать тот же результат, что и при первом. Термин предложил американский математик Бенджамин Пирс (Шаблон:Lang-en) в статьях 1870-х годов.

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

Элемент

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

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

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

Операция

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

x:xx=x.

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

Идемпотентная унарная операция — операция, для которой выполняется x:f(f(x))=f(x), или ff=f.

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

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

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

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

Для препроцессора языка Си директива «Шаблон:Cpp» является идемпотентной, если в заголовочном файле есть защита от двойного включения.

Литература