Idempotence

From Citizendium
Revision as of 15:47, 23 December 2008 by imported>Richard Pinch (added section In computing from talk page)
Jump to navigation Jump to search
This article is developing and not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
This editable Main Article is under development and subject to a disclaimer.

In mathematics and computer science idempotence is the property of an operation that repeated application has no further effect.

In mathematics

A binary operation is idempotent if

for all x:

equivalently, every element is an idempotent element for .

Examples of idempotent binary operations include join and meet in a lattice; union and intersection on sets; disjunction and conjunction in propositional logic.

A unary operation (a function from a set to itself) π is idempotent if it is an idempotent element for function composition, .

In computing

In applications such as databases and transaction processing, idempotent operations are those for which the intended effect is that repeated application should have no effect, such as inserting a record into a file, an element into a set, or sending a message. Implementations must therefore be constructed in such a way that the intended effect is actually carried into practice. For example, messages might have unique sequence numbers with duplicates being discarded on receipt; a set might be implemented as a bit vector, and member insertion implemented by an idempotent mathematical operation such as inclusive or with a bit mask.