Download PDFOpen PDF in browserAbstract Domains for Bit-Level Machine Integer and Floating-point Operations16 pages•Published: July 28, 2013AbstractWe present a few lightweight numeric abstract domains to analyze C programs thatexploit the binary representation of numbers in computers, for instance to perform ``compute-through-overflow'' on machine integers, or to directly manipulate the exponent and mantissa of floating-point numbers. On integers, we propose an extension of intervals with a modular component, as well as a bitfield domain. On floating-point numbers, we propose a predicate domain to match, infer, and propagate selected expression patterns. These domains are simple, efficient, and extensible. We have included them into the Astree and AstreeA static analyzers to supplement existing domains. Experimental results show that they can improve the analysis precision at a reasonable cost. Keyphrases: abstract interpretation, floating point numbers, machine integers, numeric domains, static analysis In: Jacques Fleuriot, Peter Höfner, Annabelle McIver and Alan Smaill (editors). ATx'12/WInG'12: Joint Proceedings of the Workshops on Automated Theory eXploration and on Invariant Generation, vol 17, pages 55-70.
|