module Combinatorics.Utility where

scalarProduct :: Num a => [a] -> [a] -> a
scalarProduct :: forall a. Num a => [a] -> [a] -> a
scalarProduct [a]
x [a]
y = forall (t :: * -> *) a. (Foldable t, Num a) => t a -> a
sum (forall a b c. (a -> b -> c) -> [a] -> [b] -> [c]
zipWith forall a. Num a => a -> a -> a
(*) [a]
x [a]
y)