Для определенных функций это так. Особенно, когда вы знаете функцию ;-)
Если вы подразумеваете под своим вопросом «существует ли алгоритм для автоматического решения, является ли произвольная функция идемпотентной или нет», ответ будет отрицательным из-за теорем, уже упомянутых в комментариях. Однако для определенных классов функций теоретически можно очень легко решить, является ли функция идемпотентной или нет. Например, если функция чистая (имеется в виду: без каких-либо побочных эффектов), и каждый знает, что она всегда возвращает значение за конечное время для любого заданного входа, тогда идемпотентность может быть определена простым испытанием, если f(f(x))=f(x)
для любого возможного ввода x
к функции. Не то чтобы это было очень эффективно, это могло бы продолжаться до конца вселенной.
Так что, если это не тот ответ, который вы искали, напишите лучший вопрос, в настоящее время неясно, что именно вы действительно ищете.