{-# htermination product :: [Float] -> Float #-}