May Analysis


May Analysis

A May Analysis determines, for a give property $P$, whether a given program (or program part) may have $P$. A Must Analysis determines whether it neccessarily has that property. Depending on whether we are computing Must or May information, the notions of Soundness and Completeness that some analysis $A$ has regarding the property $P$ are swapped:

   | Must                   | May

-------- | ---------------------------- | ---------------------------- Sound | If $A$, then $P$ | If not $A$, then not $P$ Complete | If not $A$, then not $P$ | If $A$, then $P$