module Hydra.Impl.Haskell.Dsl.Lib.Math where

import Hydra.Phantoms
import qualified Hydra.Impl.Haskell.Dsl.Terms as Terms
import Hydra.Impl.Haskell.Sources.Libraries


add :: Datum (Int -> Int -> Int)
add :: Datum (Int -> Int -> Int)
add = forall a. Term Meta -> Datum a
Datum forall a b. (a -> b) -> a -> b
$ forall m. Name -> Term m
Terms.primitive Name
_math_add

div :: Datum (Int -> Int -> Int)
div :: Datum (Int -> Int -> Int)
div = forall a. Term Meta -> Datum a
Datum forall a b. (a -> b) -> a -> b
$ forall m. Name -> Term m
Terms.primitive Name
_math_div

mod :: Datum (Int -> Int -> Int)
mod :: Datum (Int -> Int -> Int)
mod = forall a. Term Meta -> Datum a
Datum forall a b. (a -> b) -> a -> b
$ forall m. Name -> Term m
Terms.primitive Name
_math_mod

mul :: Datum (Int -> Int -> Int)
mul :: Datum (Int -> Int -> Int)
mul = forall a. Term Meta -> Datum a
Datum forall a b. (a -> b) -> a -> b
$ forall m. Name -> Term m
Terms.primitive Name
_math_mul

neg :: Datum (Int -> Int)
neg :: Datum (Int -> Int)
neg = forall a. Term Meta -> Datum a
Datum forall a b. (a -> b) -> a -> b
$ forall m. Name -> Term m
Terms.primitive Name
_math_neg

rem :: Datum (Int -> Int -> Int)
rem :: Datum (Int -> Int -> Int)
rem = forall a. Term Meta -> Datum a
Datum forall a b. (a -> b) -> a -> b
$ forall m. Name -> Term m
Terms.primitive Name
_math_rem

sub :: Datum (Int -> Int -> Int)
sub :: Datum (Int -> Int -> Int)
sub = forall a. Term Meta -> Datum a
Datum forall a b. (a -> b) -> a -> b
$ forall m. Name -> Term m
Terms.primitive Name
_math_sub