arithmetic1 :: (Int -> Int) -- arithmetic operator
                -> (GMState -> GMState) -- state transition
arithmetic1 = primitive1 boxInteger unboxInteger
arithmetic1 :: (Int -> Int) -- arithmetic operator
                -> (GMState -> GMState)
arithmetic1 = primitive1 boxInteger unboxInteger
arithmetic1 = primitive1 boxInteger unboxInteger