- Primitive:
    name: GHC.Num.Integer.IS
    comment: Needed to make the evaluator handle this constructor strictly
    primType: Constructor
    warning: 'GHC.Num.Integer.IS: Integers are dynamically sized in simulation, but
      fixed-length after synthesization. Use carefully.'
    workInfo: Never
- Primitive:
    name: GHC.Num.Integer.IP
    comment: Needed to make the evaluator handle this constructor strictly
    primType: Constructor
    warning: 'GHC.Num.Integer.IP: Integers are dynamically sized in simulation, but
      fixed-length after synthesization. Use carefully.'
    workInfo: Never
- Primitive:
    name: GHC.Num.Integer.IN
    comment: Needed to make the evaluator handle this constructor strictly
    primType: Constructor
    warning: 'GHC.Num.Integer.IN: Integers are dynamically sized in simulation, but
      fixed-length after synthesization. Use carefully.'
    workInfo: Never
- Primitive:
    name: GHC.Num.Integer.integerFromNatural
    primType: Function
    warning: 'GHC.Num.Integer.integerFromNatural: No blackbox available without size
      inference for Natural and Integer'
    workInfo: Never
- BlackBox:
    name: GHC.Num.Integer.integerAdd
    kind: Expression
    type: 'integerAdd :: Integer
      -> Integer -> Integer'
    template: ~ARG[0] + ~ARG[1]
    warning: 'GHC.Num.Integer.integerAdd: Integers are dynamically sized in simulation,
      but fixed-length after synthesization. Use carefully.'
- BlackBox:
    name: GHC.Num.Integer.integerSub
    kind: Expression
    type: 'integerSub :: Integer
      -> Integer -> Integer'
    template: ~ARG[0] - ~ARG[1]
    warning: 'GHC.Num.Integer.integerSub: Integers are dynamically sized in simulation,
      but fixed-length after synthesization. Use carefully.'
- BlackBox:
    name: GHC.Num.Integer.integerLe
    kind: Expression
    type: 'integerLe :: Integer
      -> Integer -> Bool'
    template: ~ARG[0] <= ~ARG[1]
    warning: 'GHC.Num.Integer.integerLe: Integers are dynamically sized in simulation,
      but fixed-length after synthesization. Use carefully.'
- BlackBox:
    name: GHC.Num.Integer.integerGt
    kind: Expression
    type: 'integerGt :: Integer
      -> Integer -> Bool'
    template: ~ARG[0] > ~ARG[1]
    warning: 'GHC.Num.Integer.integerGt: Integers are dynamically sized in simulation,
      but fixed-length after synthesization. Use carefully.'
- BlackBox:
    name: GHC.Num.Integer.integerLt
    kind: Expression
    type: 'integerLt :: Integer
      -> Integer -> Bool'
    template: ~ARG[0] < ~ARG[1]
    warning: 'GHC.Num.Integer.integerLt: Integers are dynamically sized in simulation,
      but fixed-length after synthesization. Use carefully.'
- BlackBox:
    name: GHC.Num.Integer.integerGe
    kind: Expression
    type: 'integerGe :: Integer
      -> Integer -> Bool'
    template: ~ARG[0] >= ~ARG[1]
    warning: 'GHC.Num.Integer.integerGe: Integers are dynamically sized in simulation,
      but fixed-length after synthesization. Use carefully.'
