Design automation digital signal processors error analysis fast Fourier transforms finite wordlength effects formal verification higher order logic theorem proving