Menu
Home Explore People Places Arts History Plants & Animals Science Life & Culture Technology
On this page
Polyvariance

In program analysis, a polyvariant or context-sensitive analysis (as opposed to a monovariant or context-insensitive analysis) analyzes each function multiple times—typically once at each call site—to improve the precision of the analysis. Polyvariance is common in data-flow and pointer analyses.

Forms of polyvariance include:

  • Call-site sensitivity
  • The Cartesian product algorithm
  • Object sensitivity
  • Type sensitivity

The first two are more often used for dataflow analyses, the latter two are more frequently used for pointer analyses.

Sources

We don't have any images related to Polyvariance yet.
We don't have any YouTube videos related to Polyvariance yet.
We don't have any PDF documents related to Polyvariance yet.
We don't have any Books related to Polyvariance yet.
We don't have any archived web articles related to Polyvariance yet.

References

  1. Palsberg, Jens; Pavlopoulou, Christina (2001). "From Polyvariant Flow Information to Intersection and Union Types". Proceedings of the 25th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL '98). 11 (3): 197–208. CiteSeerX 10.1.1.36.4441. doi:10.1017/S095679680100394X. S2CID 16895848. /w/index.php?title=Jens_Palsberg&action=edit&redlink=1

  2. Smaragdakis & Balatsouras 2015. - Smaragdakis, Yannis; Balatsouras, George (2015). "Pointer Analysis" (PDF). Foundations and Trends in Programming Languages. 2 (1): 1–69. doi:10.1561/2500000014. Retrieved May 30, 2019. https://yanniss.github.io/points-to-tutorial15.pdf

  3. Gilray, Thomas; Adams, Michael D.; Might, Matthew (2016-09-04). "Allocation characterizes polyvariance: A unified methodology for polyvariant control-flow analysis". Proceedings of the 21st ACM SIGPLAN International Conference on Functional Programming. ICFP 2016. New York, NY, USA: Association for Computing Machinery. pp. 407–420. doi:10.1145/2951913.2951936. ISBN 978-1-4503-4219-3. S2CID 7768606. 978-1-4503-4219-3

  4. Smaragdakis & Balatsouras 2015. - Smaragdakis, Yannis; Balatsouras, George (2015). "Pointer Analysis" (PDF). Foundations and Trends in Programming Languages. 2 (1): 1–69. doi:10.1561/2500000014. Retrieved May 30, 2019. https://yanniss.github.io/points-to-tutorial15.pdf

  5. Smaragdakis & Balatsouras 2015. - Smaragdakis, Yannis; Balatsouras, George (2015). "Pointer Analysis" (PDF). Foundations and Trends in Programming Languages. 2 (1): 1–69. doi:10.1561/2500000014. Retrieved May 30, 2019. https://yanniss.github.io/points-to-tutorial15.pdf