module Hydra.Dsl.Lib.Math where

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


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

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

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

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

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

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

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