1. A method of determining ranges for algorithmic variables for a processor that uses fixed point arithmetic, the method comprising: expressing overflow requirements of processor instructions as inequalities; expressing precision requirements and expressiveness requirements as inequalities and merit functions; and using a global constraint and optimizer tool to find ranges for the algorithmic variables based on the inequalities and the merit functions.