From Wikipedia, the free encyclopedia
Jump to: navigation, search
WikiProject Mathematics (Rated C-class, Low-priority)
WikiProject Mathematics
This article is within the scope of WikiProject Mathematics, a collaborative effort to improve the coverage of Mathematics on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Mathematics rating:
C Class
Low Priority
 Field:  Unassessed
The assessment information for this article is not complete. Anyone can add information about the quality, significance, or subject area of an article.
WikiProject Computing / Software / CompSci (Rated C-class, Low-importance)
WikiProject icon This article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
C-Class article C  This article has been rated as C-Class on the project's quality scale.
 Low  This article has been rated as Low-importance on the project's importance scale.
Taskforce icon
This article is supported by WikiProject Software (marked as Low-importance).
Taskforce icon
This article is supported by WikiProject Computer science (marked as Mid-importance).

Humorous Example[edit]

> Elevator call buttons are idempotent, though many people think they are not.

That cracked me up!

who actually believes this daesotho 20:42, 21 Oct 2004 (UTC)
What are you talking about? Dysprosia 23:32, 21 Oct 2004 (UTC)
Obviously an old entry long ago deleted into history. Meaning that pressing the 3rd floor button several times does not cause a change to the elevator's destination. פשוט pashute ♫ (talk) 07:47, 2 August 2016 (UTC)


Is there a correct pronunciation for idempotent? Is it like omnipotent (om-nip-o-tent), so id-EMP-o-tent, or is it more like the two seperate words idem + potent

I'd say EYE-dm-POT-nt, but then I speak Brit. Charles Matthews 07:57, 30 Jun 2004 (UTC)
Ditto, but then I speak Australian ;) Dysprosia 08:01, 30 Jun 2004 (UTC)
Actually the British is more like EYE-dm-PO-tnt, I guess. Charles Matthews
I'd just like to pedantically point out that it would be pronounced i-DEM-po-tent because because syllable onsets are maximized. daesotho 20:33, 21 Oct 2004 (UTC)
The American pronunciation puts primary stress on the second syllable ('dem') and secondary stress on the fourth syllable ('tence'). Could somebody more familiar with IPA than I am please add this to the article as an accepted pronunciation?
My American dictionary says |ˈīdemˌpōtənt| for the adjective. I speak American (non-natively) and I wouldn't stress the second syllable for itempotence. My only question is, right now it says /ˌaɪdɪmˈpoʊtəns/ -- but can't it be stressed on the first syllable too? Should we add /'aɪdɪmˌpoʊtəns/ as an alternative? -- (talk) 14:50, 3 June 2011 (UTC)

And by the way I think it's silly giving a pronounciation guide as this is just imposing a particular accent. (For what it's worth I pronounce idempotent with a short 'i', as in the word 'id'). Alex Selby

  • JA: I think this is an idyll question. Jon Awbrey 14:16, 14 February 2006 (UTC)

I agree with Alex Selby - the pronunciation guide should be extended to show the variation, or removed. Strictly, there's no reason for the first i to be long (neuter idem has a short first syllable in Latin), and I can't find any authoritative source which advocates the pronunciation given. Ms7821 (talk) 22:59, 15 July 2015 (UTC)

There is only one meaning given here[edit]

The article starts by claiming that there are two meanings, but clearly they are the same. The "unary operation" definition is the same because the operation involved is function composition which is a binary operation. If @ denotes function composition, then an idempotent function f is one satisfying f@f=f. This is in fact suggested in the parenthetical comment "(or for a function, composed with)" near the start, but then the article continues as if functions are special. They aren't. McKay 10:52, 29 June 2006 (UTC)

Primitive Idempotents[edit]

Primitive idempotents are important in quantum mechanics as they are the pure states in density matrix or density operator theory. The pure states can be reprsented by spinors, for example if |a> is a spinor, then |a><a| is a primitive idempotent. See the "Density Matrix Formalism" portion of Frank Porter's quantum mechanics class notes (Cal Tech):

Can we add this to the discussion? What other examples of idempotents are important in physics and mathematics? If this is something that should be included, let me know or do it yourself.

CarlAB 02:57, 7 October 2006 (UTC)

Unary operation[edit]

I don't agree with this sentence: If f is a unary operation, i.e. a map f from some set X into itself... An unary operation doesn't have to be from one set to itself. Even if we are talking about idempotence. For example, if , function might be idempotent. If I'm right, then the next few sentences would need corrections as well. -- Obradović Goran (talk 20:22, 30 April 2007 (UTC)

Merge proposal (Conclusion: merge; discussion archived)[edit]

The following discussion is closed. Please do not modify it. Subsequent comments should be made in a new section.

The result was merge Idempotence (computer science) into Idempotence. Angus Lepper(T, C, D) 23:27, 27 May 2007 (UTC)

I've made a proposal at Idempotence (computer science) that it be merged into this article (or simply deleted and redirected here if — as I suspect — there is no real extra content in the other article which would serve a useful purpose here). The two terms describe exactly the same concept with the exception that this article a) does not provide examples from computing and b) provides a better and more formal definition of the subject. Any comment? Angus Lepper(T, C, D) 15:44, 23 May 2007 (UTC)

Support - the merge sounds like a good idea to me. --Allan McInnes (talk) 05:13, 24 May 2007 (UTC)
The following is transcluded from Wikipedia talk:WikiProject Computer science
I agree with the merge proposal. Just adding a section in Idempotence to include the (rather limited) encyclopedic content of the other article seems sufficient. Gimme danger 17:54, 23 May 2007 (UTC)
Transcluded by Angus Lepper(T, C, D) 17:14, 24 May 2007 (UTC)

The above discussion is closed. Please do not modify it. Subsequent comments should be made in a new section.


The first paragraph has embeded parens, and one is not closed. It is not clear how to fix this error.

Fixed, I introduced this error when merging. Angus Lepper(T, C, D) 23:45, 9 June 2007 (UTC)


But the probability distributions associated with eigenstates are idempotents.

How so? The probability distribution is simply constant in time. It's not equal to its square its composition with itself. Sure, an idempotent function relates the distribution at one time to that at another, but that's because it's the identity function. This doesn't belong in an article about idempotence, any more than anything else that's constant. —Preceding unsigned comment added by (talk) 01:36, 19 October 2007 (UTC)

Since nobody has defended or changed this section, I've removed it. (talk) 15:13, 8 December 2007 (UTC)

Add use for web[edit]

I have heard a number of people use idempotence to describe web pages etc. A web request is idempotent if the same URL returns exactly the same page. POST actions are, by definition, not idempotent, but GET requests may be. So a Wikipedia page is idempotent only if nobody edits it. Many web pages fail to be idempotent because they include things like the current date and time. Thoughts? GhostInTheMachine (talk) 09:10, 30 April 2008 (UTC)

Hmm. One way "idempotence" is defined in HTTP terms related to the effect on the server. The fact that you get pages with different times doesn't count. POST could return the same page, but order, as noted in the article, more than one car. Not being an expert, I believe that it should be in terms of server side effects, not client side effects. I first knew about it in terms of NFS, where reads or writes from/to a file are idempotent. Each includes the file offset. A file append operation is not idempotent, and NFS doesn't supply one. (Networks can duplicate packets, so this is important.) Also, it seem that POST could be idempotent, but is often used for cases that aren't. Gah4 (talk) 21:19, 14 October 2016 (UTC)

Theoretical computer science?[edit]

I changed the classification Category:Theoretical computer science to Category:Computer science, since the meanings in computing described here, such as relating to databases and ESP, do in my opinion not belong to the realm of theoretical computer science. However, this change was reverted. What do others think, is this TCS or just CS?  --Lambiam 14:22, 7 August 2008 (UTC)

"Alternative definition", huh?[edit]

Sometimes a unary operation is called idempotent if, whenever it is applied twice to any value, it gives the original value. For example, the complex conjugation of a number is considered an idempotent operation.

I've never heard of this. Could someone please point me to some references? (Because I haven't found any.) I think this is confusing (if not bogus), and should be removed. --Matt Kovacs (talk) 17:07, 24 January 2009 (UTC)

In the context of operator algebras within functional analysis one finds the expanded usage of idempotence.Rgdboer (talk) 00:40, 25 January 2009 (UTC)
Ah, okay, thanks. --Matt Kovacs (talk) 01:08, 25 January 2009 (UTC)

Sorry to nag, but can you show us an actual example of such usage? I could only find the standard definition in 10 mins of searching. For example, V. Paulsen, Operator Algebras of Idempotents, Journal of Functional Analysis, vol 181 (2001) 209-226, which is a paper in the field you mention, an operator E is called idempotent if E2=E. Frankly I find your claim very dubious. McKay (talk) 01:20, 13 February 2009 (UTC)

This seems strange to me as well. Personally, I suspect that the author of the comment may be confusing idempotent and involution. AlfredR (talk) 22:09, 16 June 2009 (UTC)

I've never heard somebody call something involutary idempotent, so i'm also pretty sure the author mixed it up. Complex conjugation is definitely involutary and not idempotent. I'll just remove that part to avoid further confusion. Catskineater (talk) 19:03, 2 August 2009 (UTC)

Broken Link[edit]

The External Link to SSW is broken ... —Preceding unsigned comment added by (talk) 21:19, 16 January 2010 (UTC)

Advertising Paragraph[edit]

Dunno if it's just me, but this reads as an endorsement for "Cfengine", and is at best, off-topic {{{ The notion of idempotence at the end of a chain of operations was applied to so-called "desired-outcome" functions in the widely used configuration management software Cfengine in 1993, changing the industry approach to datacenter automation by bringing "self-healing" by simple repetition with a predictable outcome. }}}

It was inserted here: —Preceding unsigned comment added by Jonschreiber (talkcontribs) 03:27, 11 May 2010 (UTC)Jonschreiber (talk) 03:28, 11 May 2010 (UTC)

Agree - The page for cfengine doesn't even mention idempotence. 21:46, 1 July 2010 (UTC)bloopyflam

Definition for computer science is wrong[edit]

This part of the computer science definition is not correct:

In computer science, the term idempotent is used to describe methods or subroutine calls that can safely be called multiple times, as invoking the procedure a single time or multiple times has the same result; i.e., after any number of method calls all variables have the same value as they did after the first call. Any method or subroutine that has no side effects is also idempotent.

According to this description, the following function would be idempotent, since it has no side effects:

def f(x): return x+1

But it's not. It's a pure function, or side effects-free if you prefer, but certainly not idempotent. f . f = f must hold in computing too, for a given function or method to be called idempotent, and in the case above f(f(x)) != f(x). —Preceding unsigned comment added by Gniemeyer (talkcontribs) 21:01, 31 August 2010 (UTC)

I don't think it's completely wrong, but the present explanation in the article is definitely unclear. In computer programming, a piece of code usually is reentrant if running it multiple times in sequence has the same effect as running it just once. This is the case for your function. The reason reentrant is sometimes called idempotent is that in imperative programming, the effect of a piece of code is thought of as what modifications it causes to be made to the program state, and that effect can be modeled as a function on the space of potential program states - reentrance then is idempotence of that function. Rp (talk) 10:04, 14 September 2012 (UTC)
I see nothing wrong or unclear, except that it is perhaps not clear that the procedure is not intended to be interpreted as a function (i.e. acting on its own output). An idempotent procedure is one that, when called more than once in sequence, has no additional side effects. This has nothing to do with reentrancy, which refers to a procedure that may be halted at any (interruptable) point in its execution, another call to it executed (e.g. in an interrupt), and the first then completed with the same effect as if the calls had executed sequentially. — Quondum 14:46, 14 September 2012 (UTC)
Well, it is often implied that a reentrant procedure is idempotent, but it certainly isn't a requirement, so what I wrote is wrong - thanks for the correction. I maintain that it would be useful to explain how imperative code is interpreted as a function when it's called idempotent. Rp (talk) 09:38, 17 September 2012 (UTC)
Seems to me that this is mixing the mathematical and CS definitions. And since CS uses math, that could easily happen. I first knew idempotence from descriptions of NFS, where it is important when using UDP for the transport protocol. Networks can duplicate packets. I suspect it is not unusual for math and CS to use the same term with different meanings, such that you have to say which one you are using. Also, for NFS, the server could crash while doing an operation. The client will then repeat the request, without knowing if the previous request was satisfied. There is nothing related to f . f = f in that case. Gah4 (talk) 21:27, 14 October 2016 (UTC)

Splitting off ring-theoretic portion[edit]

I think this makes sense. An idempotent is an important concept in the ring theory and deserves its own article (not just a part of the general ideal). -- Taku (talk) 01:59, 4 December 2012 (UTC)

To make sure I'm understanding the suggestion, you mean an article named something like "ring idempotent" or "idempotent element" which the "idempotents in rings" section could point to? I think that makes sense too. There is quite a bit to say about them!
I was having a little trouble figuring out what the title would be. Integral element seems to establish a precedent of being an independent page which the redirect idempotent element might follow up on, although I see nilpotent element is a redirect to nilpotence. Rschwieb (talk) 15:02, 4 December 2012 (UTC)
That's what's meant. By the way, nilpotent element redirects to nilpotent (not nilpotence). That's probably not a good title. Because of physics materials, I'm not comfortable doing anything about it, though. An "idempotent element" sounds good to me too. -- Taku (talk) 17:04, 5 December 2012 (UTC)
As a general comment, the level of detail on ring idempotents seems to go beyond what would be sensible in an article that covers many definitions of idempotence, or at least its use in widely divergent fields. For this reason. I would strongly agree with splitting this topic off into a separate article that could be classified within the field of rings. Nilpotents do not necessarily serve as a counterexample if they are not described with nearly the same level of richness. — Quondum 17:43, 5 December 2012 (UTC)
OK, I went ahead and made preliminary moves. I could use help with formatting mistakes I've introduced, as well as fixing redirects. About redirects: I was thinking "idempotent" should maybe disambiguate between "idempotence" and "idempotent element"? If "idempotent" only redirects to "idempotence", I feel like a large portion of people will not be getting to the place they should have reached first.
Another "by the way" about the page I created: I defined "idempotent element" in the context of any binary operation, but that might wind up being too broad if a true "ring idempotent" page seems like a better approach. I was just trying to be a little conservative, but the scope should probably be discussed further. Rschwieb (talk) 19:40, 5 December 2012 (UTC)
To introduce a disambiguation page only to differentiate the word idempotent used as an adjective and as a noun seems clunky. As a noun, it is in effect an abbreviation for idempotent element. For this, redirecting idempotent to Idempotence seems okay, as the article does deal with it and gives a link to the main article.
The general concept of an idempotent element with respect to a binary operation is the abstract algebraic topic, dealt with by Idempotent element. The implications of this property when further structure is added (e.g. as in a ring) will naturally be interesting and involved. However, the implications within a ring (I imagine the most studied) are not yet necessarily too burdensome for the current article context (abstract algebra: at least the expected readership's eyes should not glaze over). Thus, I would not yet suggest taking the previous argument further to making an article Idempotent ring element, though it may make sense to create such a redirect. In time, it may become more textbooky (or simply more extensive), at which time the ring-specific portion could be split off again. I like the way the two articles are at the moment. — Quondum 06:10, 6 December 2012 (UTC)
@Rschwieb – Wow, looking at the number of links you've been having to change from idempotent to idempotent element, it is clear that the use of the term as a noun is quite common. Nevertheless, I think the result is pretty natural. — Quondum 05:02, 7 December 2012 (UTC)

Idempotence of 1 in multiplication[edit]

Idemptoence of 1 in multiplication is demonstrated in both 1 x A = A, and in A x 1 = A.

Showing the example of 1 x 1 = 1, is a BAD example since it could bring the mistaken idea that 1 x 3 = 3 does not show idempotence of multiplication by one.

1 x 1 = 1 would not serve as a good example for the other definitions given in this article, even not for the idempotence of a binary function (where the example of Max(a, a) = a was given, since a x a = a is only correct in the case of 1.

Therefor I propose other examples such as 3.7 x 1 = 3.7 and 1 x 45 = 45 as better examples. My edit in that direction has been revoked. Your thoughts? פשוט pashute ♫ (talk) 21:50, 19 December 2015 (UTC)

@Pashute (talk · contribs) Well, 1 x 3 = 3 doesn't show idempotence of the map given by multiplication by 1. It demonstrates that 1 acts as an identity element but it does not demonstrate that 1 is idempotent. These two concepts are completely different.
It would be fair to say that demonstrates the the idempotence of the map 1, but that is the same thing as saying . Rewriting the composition as multiplication (because that's what it is in this case), does a much better job. Regards Rschwieb (talk) 15:27, 22 December 2015 (UTC)
@Rschwieb (talk · contribs) Here's the third definition given in the text:
  • Given a binary operation, an idempotent element (or simply an "idempotent") for the operation is a value for which the operation, when given that value for both of its operands, gives that value as the result. For example, the number 1 is an idempotent of multiplication: 1 × 1 = 1.
If what you say was correct this should be: when given two identical values for both of its operands...
I would add at the end of the definition and before the example:
i.e. f(x,x) = x
But, of course that is incorrect. The third definition with its example is where f(C,x) = x where f(C, is the idempotent operation and C is the idempotent element of that operation. Therefore 1 x 45 = 45 is just as idempotent as 45 x 1 = 45, and of course a better example than 1 x 1 = 1, for this definition. פשוט pashute ♫ (talk) 13:15, 28 December 2015 (UTC)
@Pashute: I agree with Rschwieb. The text "when given that value for both of its operands" in the third definition in fact implies "when given two identical values for both of its operands", so the article's text is perfectly ok in my view; it should however give a citation (I couldn't yet find one). Anyway, adding "i.e. f(x,x) = x", as you suggested, is a good idea. Your sentence "The third definition with its example ..." appears to be syntactically incorrect, so I couldn't get what you meant. - Jochen Burghardt (talk) 18:12, 28 December 2015 (UTC)
@Pashute (talk · contribs) The collection of words "1 x 45 = 45 is just as idempotent as 45 x 1 = 45" doesn't make any sense. Equalities aren't idempotent. The article somewhat confusingly lists "three meanings" which should actually be manifestations of the first item. The core concept is the idea of a map obeying . Given an element m of a monoid M, you can view left multiplication by m as a map from M into M, and is precisely with the binary operation. If this map is idempotent, it is saying exactly that since and m are defining the same maps. That is how the third notion is related to the first. Frankly i have never heard of the second notion of idempotence, and I'm going to call it into question. Rschwieb (talk) 20:52, 28 December 2015 (UTC)
Pending @Rschwieb (talk · contribs)'s questions about the validity of the second notion of idempotence, if the second notion is correct then it is saying that . In particular: when is defined as then multiplying the result of multiplication by 1, by 1, again and again will always result with the same result. So 1 x A = 1 x (1 x A) = 1 x (1 x (1 x A))... etc. hence 1 x A is idempotent. Not too hard to understand.
Also your argument against this is seemingly idempotent, because no matter what I explain and discuss, you are determined to say it is not... Just joking there. Please take that extra remark lightly. If you don't like it, tell me and I'll remove it forever. פשוט pashute ♫ (talk) 21:13, 30 December 2015 (UTC)
The second notion is perfectly valid, I just hadn't seen it in the right light at the time. As for the function , yes, that is a perfectly good example to demonstrate that f is idempotent. The problem with what you've written may then be more a problem with expression. Supposing for the moment that the A in your "1 x A" is meant to be the input of the function, it is incorrect to say that "1 x A" is idempotent because that denotes the image of A, not the function itself. You wouldn't say that is idempotent, you would say that f is idempotent. That at least, we could agree upon. But saying that "1x45" is idempotent does not work. Rschwieb (talk) 14:52, 8 January 2016 (UTC)
I'm glad my correct reading of the formerly incorrect or at least imprecise definition, and therefore my formerly incorrect examples for idempotency, lead to the extreme clarity and simplicity that the article now has. Thanks Jochen Burghardt and Rschwieb!!
In some articles on the web people wrote that idempotency is a highly complex concept. But thanks to you, it has now become a no-brainer. Thank you again! פשוט pashute ♫ (talk) 07:56, 2 August 2016 (UTC)

Doubts about the second meaning being 'a thing'[edit]

Can we get a citation for the second meaning in the list of three meanings of idempotence?

*A binary operation is idempotent if, whenever it is applied to two equal values, it gives that value as the result. For example, the function giving the maximum value of two equal values is idempotent: max (x, x) ≡ x.

This text feels like it might have been a botched explanation, but I could be wrong. To reformulate what it's saying, it seems to be saying that any function which sends elements of the form is an "idempotent binary operation."

It's perfectly reasonable to say that if X is a lattice and y is a fixed element of X, then is an idempotent operation, that is, . Perhaps this is what was intended? Otherwise, this notion is quite far departed from the more common meaning of idempotence, and really needs to be cited. Rschwieb (talk) 21:04, 28 December 2015 (UTC)

The second meaning is common at least in lattice theory and boolean algebra (see box "Proven properties"). E.g. Birkhoff (Garrett Birkhoff (1967). Lattice Theory. Colloquium Publications. 25. Providence: Am. Math. Soc. ) proves on p.8 (lemma 1 in sect. I.5) the properties xx=x and xx=x, which he calls "Idempotent"; on p.111 (def. in sect.V.1), he defines cl(X)=cl(cl(X)) as a property of a closure operation, which he again calls "Idempotent". This shows that he used the second meaning as well as the first one. However, he didn't explicitly define any of both notions of idempotency. - Jochen Burghardt (talk) 22:09, 28 December 2015 (UTC)
@Jochen Burghardt (talk · contribs) Rereading it and your comment, I guess I can live with it. It's just a different way of "slicing" the data. You fix an operation and observe which elements are idempotent, OR you apply the idempotence appellation to an operation which makes all elements idempotent. Thanks for the hints in your comment. Rschwieb (talk) 14:45, 8 January 2016 (UTC)
In fact, I think that's pretty good justifcation to put the "idempotent element" point above the "idempotent operation" point. Any opposition to that? Rschwieb (talk) 14:54, 8 January 2016 (UTC)
Ok for me. - Jochen Burghardt (talk) 14:09, 11 January 2016 (UTC)
@Rschwieb: Wouldn't it be also a good idea to explain "idempotency of a unary operation" (now 1st item in lead) by "idempotent element" (now 2nd)? You did that in the above discussion: "If this map is idempotent, it is saying exactly that m·m=m since m·m and m are defining the same maps. That is how the third notion is related to the first." To fit this into the lead, I'd swap the 1st and 2nd item there, and then change the text "A unary operation (or function) is idempotent if, whenever ..." into: "A unary operation (or function) is idempotent if it is an idempotent element with respect to function composition, that is if, whenever ...".
Independent of that suggestion, it might be a good idea to highlight the key notions of each item (i.e. idempotent elementunary operation (or function) is idempotentbinary operation is called idempotent) in boldface. What do you think? - Jochen Burghardt (talk) 20:58, 14 January 2016 (UTC)

Page fault idempotence and Citation Needed[edit]

In a load-store architecture, instructions that might possibly cause a page fault are idempotent. So if a page fault occurs, the OS can load the page from disk and then simply re-execute the faulted instruction. In a processor where such instructions are not idempotent, dealing with page faults is much more complex.[citation needed] Which part of the description needs a citation? VS architectures are designed around this, such that instruction can be reexecuted. VAX has a special first part done flag for some instructions, to make sure that works. S/370 has trial execution for TR, such that it verifies that no page fault will occur before changing storage. S/370 MVCL saves state in registers, such that it can continue from where it left off. All those could be referenced. Gah4 (talk) 21:32, 14 October 2016 (UTC)