In
computer programming, an
opaque predicate is a
predicate—an expression that evaluates to either "true" or "false"—for which the outcome is known by the programmer
a priori, but which, for a variety of reasons, still needs to be evaluated at
run time. Opaque predicates have can be used as
watermarks, as it will be identifiable in a program's executable. They can also be used to prevent an overzealous
optimizer from optimizing away a portion of a program.
External links