Z Notation To Haskell To FPGA Formal Framework