“In logic, anything that either provides a function already being applied to a problem or analysis, or dealing with a variable that has already been dealt with a different way but in which the same results can be obtained is an unnecessary redundancy. In analogy, like defrosting food in the microwave, then sitting it in warm water to defrost some more.
In some logics like many-valued logics or in the field of AI, redundancies are necessary even when functionally superfluous because the functions in question are being applied to a variable at a different time which may yield different results. But these are rare cases in logic. The principle of parsimony doesn’t just apply to the conclusions but the process itself.
Logical redundancy is also used to get around the problem of incompleteness as in Godel’s incompleteness theory. Redundant but different logic systems can be over-layed and applied to allow for complete systems that are also functionally consistent.“