Opaque predicate

From Wikipedia, the free encyclopedia
Revision as of 20:53, 30 September 2022 by imported>Citation bot (Alter: url. URLs might have been anonymized. Add: authors 1-1. Removed parameters. Some additions/deletions were parameter name changes. | Use this bot. Report bugs. | Suggested by AManWithNoPlan | #UCB_CommandLine)
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

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.[1] Opaque predicates have been used as watermarks, as they will be identifiable in a program's executable.[2] They can also be used to prevent an overzealous optimizer from optimizing away a portion of a program. Another use is in obfuscating the control or dataflow of a program to make reverse engineering harder.

External links

References

  1. Script error: No such module "citation/CS1".
  2. Script error: No such module "citation/CS1".

Template:Asbox