Prelude> :t (**) (**) :: (Floating a) => a -> a -> a Prelude> :t (^) (^) :: (Integral b, Num a) => a -> b -> a Prelude> :t (^^) (^^) :: (Integral b, Fractional a) => a -> b -> a