    {-# LANGUAGE OverloadedStrings, Safe #-}
    module SMTLib1.QF_AUFBV (module SMTLib1.QF_AUFBV, module X) where

    import SMTLib1.QF_BV as X

    -- | 'tArray i n' is an array indexed by bitvectors of widht 'i',
    -- and storing bitvectors of width 'n'.
    tArray :: Integer -> Integer -> Sort
    tArray x y = I "Array" [x,y]

    -- | @select array index@
    select :: Term -> Term -> Term
    select a i = App "select" [a,i]

    -- | @store array index value@
    store :: Term -> Term -> Term -> Term
    store a i v = App "store" [a,i,v]