packages feed

abcBridge 0.14 → 0.15

raw patch · 10 files changed

+74/−40 lines, 10 filesdep +base-compatPVP ok

version bump matches the API change (PVP)

Dependencies added: base-compat

API changes (from Hackage documentation)

- Data.ABC.AIG: Network :: g s -> [l s] -> Network l g
- Data.ABC.AIG: SomeGraph :: g s -> SomeGraph g
- Data.ABC.AIG: instance Eq (Lit s)
- Data.ABC.AIG: instance IsAIG Lit AIG
- Data.ABC.AIG: instance IsLit Lit
- Data.ABC.AIG: instance Ord (Lit s)
- Data.ABC.AIG: instance Storable (Lit s)
- Data.ABC.AIG: instance Traceable Lit
- Data.ABC.GIA: Network :: g s -> [l s] -> Network l g
- Data.ABC.GIA: SomeGraph :: g s -> SomeGraph g
- Data.ABC.GIA: instance Eq (Lit s)
- Data.ABC.GIA: instance IsAIG Lit GIA
- Data.ABC.GIA: instance IsLit Lit
- Data.ABC.GIA: instance Ord (Lit s)
- Data.ABC.GIA: instance Storable (Lit s)
- Data.ABC.GIA: instance Traceable Lit
- Data.ABC.Internal.ABC: instance Enum Abc_InitType_t
- Data.ABC.Internal.ABC: instance Enum Abc_NtkFunc_t
- Data.ABC.Internal.ABC: instance Enum Abc_NtkType_t
- Data.ABC.Internal.ABC: instance Enum Abc_ObjType_t
- Data.ABC.Internal.ABC: instance Eq Abc_InitType_t
- Data.ABC.Internal.ABC: instance Eq Abc_NtkFunc_t
- Data.ABC.Internal.ABC: instance Eq Abc_NtkType_t
- Data.ABC.Internal.ABC: instance Eq Abc_ObjType_t
- Data.ABC.Internal.ABC: instance Show Abc_InitType_t
- Data.ABC.Internal.ABC: instance Show Abc_NtkFunc_t
- Data.ABC.Internal.ABC: instance Show Abc_NtkType_t
- Data.ABC.Internal.ABC: instance Show Abc_ObjType_t
- Data.ABC.Internal.ABCGlobal: iFrame'Abc_Cex :: Abc_Cex_t_ -> Int
- Data.ABC.Internal.ABCGlobal: iPo'Abc_Cex :: Abc_Cex_t_ -> Int
- Data.ABC.Internal.ABCGlobal: instance Eq Abc_Cex_t_
- Data.ABC.Internal.ABCGlobal: instance Read Abc_Cex_t_
- Data.ABC.Internal.ABCGlobal: instance Show Abc_Cex_t_
- Data.ABC.Internal.ABCGlobal: nBits'Abc_Cex :: Abc_Cex_t_ -> Int
- Data.ABC.Internal.ABCGlobal: nPis'Abc_Cex :: Abc_Cex_t_ -> Int
- Data.ABC.Internal.ABCGlobal: nRegs'Abc_Cex :: Abc_Cex_t_ -> Int
- Data.ABC.Internal.ABCGlobal: pData'inputs'Abc_Cex :: Abc_Cex_t_ -> [[Bool]]
- Data.ABC.Internal.ABCGlobal: pData'regs'Abc_Cex :: Abc_Cex_t_ -> [Bool]
- Data.ABC.Internal.AIG: instance Enum Aig_Type_t
- Data.ABC.Internal.AIG: instance Eq Aig_Type_t
- Data.ABC.Internal.AIG: instance Show Aig_Type_t
- Data.ABC.Internal.CEC: fCheckMiter'Cec_ParSat :: Cec_ParSat_t_ -> Bool
- Data.ABC.Internal.CEC: fLearnCls'Cec_ParSat :: Cec_ParSat_t_ -> Bool
- Data.ABC.Internal.CEC: fNaive'Cec_ParCec :: Cec_ParCec_t_ -> Bool
- Data.ABC.Internal.CEC: fNonChrono'Cec_ParSat :: Cec_ParSat_t_ -> Bool
- Data.ABC.Internal.CEC: fPolarFlip'Cec_ParSat :: Cec_ParSat_t_ -> Bool
- Data.ABC.Internal.CEC: fRewriting'Cec_ParCec :: Cec_ParCec_t_ -> Bool
- Data.ABC.Internal.CEC: fUseSmartCnf'Cec_ParCec :: Cec_ParCec_t_ -> Bool
- Data.ABC.Internal.CEC: fVerbose'Cec_ParCec :: Cec_ParCec_t_ -> Bool
- Data.ABC.Internal.CEC: fVerbose'Cec_ParSat :: Cec_ParSat_t_ -> Bool
- Data.ABC.Internal.CEC: fVeryVerbose'Cec_ParCec :: Cec_ParCec_t_ -> Bool
- Data.ABC.Internal.CEC: iOutFail'Cec_ParCec :: Cec_ParCec_t_ -> Int
- Data.ABC.Internal.CEC: instance Eq Cec_ParCec_t_
- Data.ABC.Internal.CEC: instance Eq Cec_ParSat_t_
- Data.ABC.Internal.CEC: instance Read Cec_ParCec_t_
- Data.ABC.Internal.CEC: instance Read Cec_ParSat_t_
- Data.ABC.Internal.CEC: instance Show Cec_ParCec_t_
- Data.ABC.Internal.CEC: instance Show Cec_ParSat_t_
- Data.ABC.Internal.CEC: instance Storable Cec_ParCec_t_
- Data.ABC.Internal.CEC: instance Storable Cec_ParSat_t_
- Data.ABC.Internal.CEC: nBTLimit'Cec_ParCec :: Cec_ParCec_t_ -> Int
- Data.ABC.Internal.CEC: nBTLimit'Cec_ParSat :: Cec_ParSat_t_ -> CInt
- Data.ABC.Internal.CEC: nCallsRecycle'Cec_ParSat :: Cec_ParSat_t_ -> CInt
- Data.ABC.Internal.CEC: nSatVarMax'Cec_ParSat :: Cec_ParSat_t_ -> CInt
- Data.ABC.Internal.CEC: nTimeLimit'Cec_ParCec :: Cec_ParCec_t_ -> Int
- Data.ABC.Internal.FRAIG: fBddReorder'Prove_Params :: Prove_Params_t_ -> Bool
- Data.ABC.Internal.FRAIG: fUseBdds'Prove_Params :: Prove_Params_t_ -> Bool
- Data.ABC.Internal.FRAIG: fUseFraiging'Prove_Params :: Prove_Params_t_ -> Bool
- Data.ABC.Internal.FRAIG: fUseRewriting'Prove_Params :: Prove_Params_t_ -> Bool
- Data.ABC.Internal.FRAIG: fVerbose'Prove_Params :: Prove_Params_t_ -> Bool
- Data.ABC.Internal.FRAIG: instance Eq Prove_Params_t_
- Data.ABC.Internal.FRAIG: instance Read Prove_Params_t_
- Data.ABC.Internal.FRAIG: instance Show Prove_Params_t_
- Data.ABC.Internal.FRAIG: instance Storable Prove_Params_t_
- Data.ABC.Internal.FRAIG: nBddSizeLimit'Prove_Params :: Prove_Params_t_ -> Int
- Data.ABC.Internal.FRAIG: nFraigingLimitMulti'Prove_Params :: Prove_Params_t_ -> Float
- Data.ABC.Internal.FRAIG: nFraigingLimitStart'Prove_Params :: Prove_Params_t_ -> Int
- Data.ABC.Internal.FRAIG: nItersMax'Prove_Params :: Prove_Params_t_ -> Int
- Data.ABC.Internal.FRAIG: nMiteringLimitLast'Prove_Params :: Prove_Params_t_ -> Int
- Data.ABC.Internal.FRAIG: nMiteringLimitMulti'Prove_Params :: Prove_Params_t_ -> Float
- Data.ABC.Internal.FRAIG: nMiteringLimitStart'Prove_Params :: Prove_Params_t_ -> Int
- Data.ABC.Internal.FRAIG: nRewritingLimitMulti'Prove_Params :: Prove_Params_t_ -> Float
- Data.ABC.Internal.FRAIG: nRewritingLimitStart'Prove_Params :: Prove_Params_t_ -> Int
- Data.ABC.Internal.FRAIG: nTotalBacktrackLimit'Prove_Params :: Prove_Params_t_ -> Int64
- Data.ABC.Internal.FRAIG: nTotalBacktracksMade'Prove_Params :: Prove_Params_t_ -> Int64
- Data.ABC.Internal.FRAIG: nTotalInspectLimit'Prove_Params :: Prove_Params_t_ -> Int64
- Data.ABC.Internal.FRAIG: nTotalInspectsMade'Prove_Params :: Prove_Params_t_ -> Int64
- Data.ABC.Internal.Field: readAt :: Field a b -> a -> IO b
- Data.ABC.Internal.Field: writeAt :: Field a b -> a -> b -> IO ()
- Data.ABC.Internal.GIA: instance Eq GiaLit
- Data.ABC.Internal.GIA: instance Eq GiaVar
- Data.ABC.Internal.GIA: instance Ord GiaLit
- Data.ABC.Internal.GIA: instance Ord GiaVar
- Data.ABC.Internal.GIA: instance Storable GiaLit
- Data.ABC.Internal.GIA: instance Storable GiaVar
- Data.ABC.Internal.GIA: unGiaLit :: GiaLit -> CInt
- Data.ABC.Internal.GIA: unGiaVar :: GiaVar -> CInt
+ Data.ABC.AIG: [Network] :: Network l g
+ Data.ABC.AIG: [SomeGraph] :: SomeGraph g
+ Data.ABC.AIG: instance Data.AIG.Interface.IsAIG Data.ABC.AIG.Lit Data.ABC.AIG.AIG
+ Data.ABC.AIG: instance Data.AIG.Interface.IsLit Data.ABC.AIG.Lit
+ Data.ABC.AIG: instance Data.AIG.Trace.Traceable Data.ABC.AIG.Lit
+ Data.ABC.AIG: instance Foreign.Storable.Storable (Data.ABC.AIG.Lit s)
+ Data.ABC.AIG: instance GHC.Classes.Eq (Data.ABC.AIG.Lit s)
+ Data.ABC.AIG: instance GHC.Classes.Ord (Data.ABC.AIG.Lit s)
+ Data.ABC.GIA: [Network] :: Network l g
+ Data.ABC.GIA: [SomeGraph] :: SomeGraph g
+ Data.ABC.GIA: instance Data.AIG.Interface.IsAIG Data.ABC.GIA.Lit Data.ABC.GIA.GIA
+ Data.ABC.GIA: instance Data.AIG.Interface.IsLit Data.ABC.GIA.Lit
+ Data.ABC.GIA: instance Data.AIG.Trace.Traceable Data.ABC.GIA.Lit
+ Data.ABC.GIA: instance Foreign.Storable.Storable (Data.ABC.GIA.Lit s)
+ Data.ABC.GIA: instance GHC.Classes.Eq (Data.ABC.GIA.Lit s)
+ Data.ABC.GIA: instance GHC.Classes.Ord (Data.ABC.GIA.Lit s)
+ Data.ABC.Internal.ABC: instance GHC.Classes.Eq Data.ABC.Internal.ABC.Abc_InitType_t
+ Data.ABC.Internal.ABC: instance GHC.Classes.Eq Data.ABC.Internal.ABC.Abc_NtkFunc_t
+ Data.ABC.Internal.ABC: instance GHC.Classes.Eq Data.ABC.Internal.ABC.Abc_NtkType_t
+ Data.ABC.Internal.ABC: instance GHC.Classes.Eq Data.ABC.Internal.ABC.Abc_ObjType_t
+ Data.ABC.Internal.ABC: instance GHC.Enum.Enum Data.ABC.Internal.ABC.Abc_InitType_t
+ Data.ABC.Internal.ABC: instance GHC.Enum.Enum Data.ABC.Internal.ABC.Abc_NtkFunc_t
+ Data.ABC.Internal.ABC: instance GHC.Enum.Enum Data.ABC.Internal.ABC.Abc_NtkType_t
+ Data.ABC.Internal.ABC: instance GHC.Enum.Enum Data.ABC.Internal.ABC.Abc_ObjType_t
+ Data.ABC.Internal.ABC: instance GHC.Show.Show Data.ABC.Internal.ABC.Abc_InitType_t
+ Data.ABC.Internal.ABC: instance GHC.Show.Show Data.ABC.Internal.ABC.Abc_NtkFunc_t
+ Data.ABC.Internal.ABC: instance GHC.Show.Show Data.ABC.Internal.ABC.Abc_NtkType_t
+ Data.ABC.Internal.ABC: instance GHC.Show.Show Data.ABC.Internal.ABC.Abc_ObjType_t
+ Data.ABC.Internal.ABCGlobal: [iFrame'Abc_Cex] :: Abc_Cex_t_ -> Int
+ Data.ABC.Internal.ABCGlobal: [iPo'Abc_Cex] :: Abc_Cex_t_ -> Int
+ Data.ABC.Internal.ABCGlobal: [nBits'Abc_Cex] :: Abc_Cex_t_ -> Int
+ Data.ABC.Internal.ABCGlobal: [nPis'Abc_Cex] :: Abc_Cex_t_ -> Int
+ Data.ABC.Internal.ABCGlobal: [nRegs'Abc_Cex] :: Abc_Cex_t_ -> Int
+ Data.ABC.Internal.ABCGlobal: [pData'inputs'Abc_Cex] :: Abc_Cex_t_ -> [[Bool]]
+ Data.ABC.Internal.ABCGlobal: [pData'regs'Abc_Cex] :: Abc_Cex_t_ -> [Bool]
+ Data.ABC.Internal.ABCGlobal: instance GHC.Classes.Eq Data.ABC.Internal.ABCGlobal.Abc_Cex_t_
+ Data.ABC.Internal.ABCGlobal: instance GHC.Read.Read Data.ABC.Internal.ABCGlobal.Abc_Cex_t_
+ Data.ABC.Internal.ABCGlobal: instance GHC.Show.Show Data.ABC.Internal.ABCGlobal.Abc_Cex_t_
+ Data.ABC.Internal.AIG: instance GHC.Classes.Eq Data.ABC.Internal.AIG.Aig_Type_t
+ Data.ABC.Internal.AIG: instance GHC.Enum.Enum Data.ABC.Internal.AIG.Aig_Type_t
+ Data.ABC.Internal.AIG: instance GHC.Show.Show Data.ABC.Internal.AIG.Aig_Type_t
+ Data.ABC.Internal.CEC: [fCheckMiter'Cec_ParSat] :: Cec_ParSat_t_ -> Bool
+ Data.ABC.Internal.CEC: [fLearnCls'Cec_ParSat] :: Cec_ParSat_t_ -> Bool
+ Data.ABC.Internal.CEC: [fNaive'Cec_ParCec] :: Cec_ParCec_t_ -> Bool
+ Data.ABC.Internal.CEC: [fNonChrono'Cec_ParSat] :: Cec_ParSat_t_ -> Bool
+ Data.ABC.Internal.CEC: [fPolarFlip'Cec_ParSat] :: Cec_ParSat_t_ -> Bool
+ Data.ABC.Internal.CEC: [fRewriting'Cec_ParCec] :: Cec_ParCec_t_ -> Bool
+ Data.ABC.Internal.CEC: [fUseSmartCnf'Cec_ParCec] :: Cec_ParCec_t_ -> Bool
+ Data.ABC.Internal.CEC: [fVerbose'Cec_ParCec] :: Cec_ParCec_t_ -> Bool
+ Data.ABC.Internal.CEC: [fVerbose'Cec_ParSat] :: Cec_ParSat_t_ -> Bool
+ Data.ABC.Internal.CEC: [fVeryVerbose'Cec_ParCec] :: Cec_ParCec_t_ -> Bool
+ Data.ABC.Internal.CEC: [iOutFail'Cec_ParCec] :: Cec_ParCec_t_ -> Int
+ Data.ABC.Internal.CEC: [nBTLimit'Cec_ParCec] :: Cec_ParCec_t_ -> Int
+ Data.ABC.Internal.CEC: [nBTLimit'Cec_ParSat] :: Cec_ParSat_t_ -> CInt
+ Data.ABC.Internal.CEC: [nCallsRecycle'Cec_ParSat] :: Cec_ParSat_t_ -> CInt
+ Data.ABC.Internal.CEC: [nSatVarMax'Cec_ParSat] :: Cec_ParSat_t_ -> CInt
+ Data.ABC.Internal.CEC: [nTimeLimit'Cec_ParCec] :: Cec_ParCec_t_ -> Int
+ Data.ABC.Internal.CEC: instance Foreign.Storable.Storable Data.ABC.Internal.CEC.Cec_ParCec_t_
+ Data.ABC.Internal.CEC: instance Foreign.Storable.Storable Data.ABC.Internal.CEC.Cec_ParSat_t_
+ Data.ABC.Internal.CEC: instance GHC.Classes.Eq Data.ABC.Internal.CEC.Cec_ParCec_t_
+ Data.ABC.Internal.CEC: instance GHC.Classes.Eq Data.ABC.Internal.CEC.Cec_ParSat_t_
+ Data.ABC.Internal.CEC: instance GHC.Read.Read Data.ABC.Internal.CEC.Cec_ParCec_t_
+ Data.ABC.Internal.CEC: instance GHC.Read.Read Data.ABC.Internal.CEC.Cec_ParSat_t_
+ Data.ABC.Internal.CEC: instance GHC.Show.Show Data.ABC.Internal.CEC.Cec_ParCec_t_
+ Data.ABC.Internal.CEC: instance GHC.Show.Show Data.ABC.Internal.CEC.Cec_ParSat_t_
+ Data.ABC.Internal.FRAIG: [fBddReorder'Prove_Params] :: Prove_Params_t_ -> Bool
+ Data.ABC.Internal.FRAIG: [fUseBdds'Prove_Params] :: Prove_Params_t_ -> Bool
+ Data.ABC.Internal.FRAIG: [fUseFraiging'Prove_Params] :: Prove_Params_t_ -> Bool
+ Data.ABC.Internal.FRAIG: [fUseRewriting'Prove_Params] :: Prove_Params_t_ -> Bool
+ Data.ABC.Internal.FRAIG: [fVerbose'Prove_Params] :: Prove_Params_t_ -> Bool
+ Data.ABC.Internal.FRAIG: [nBddSizeLimit'Prove_Params] :: Prove_Params_t_ -> Int
+ Data.ABC.Internal.FRAIG: [nFraigingLimitMulti'Prove_Params] :: Prove_Params_t_ -> Float
+ Data.ABC.Internal.FRAIG: [nFraigingLimitStart'Prove_Params] :: Prove_Params_t_ -> Int
+ Data.ABC.Internal.FRAIG: [nItersMax'Prove_Params] :: Prove_Params_t_ -> Int
+ Data.ABC.Internal.FRAIG: [nMiteringLimitLast'Prove_Params] :: Prove_Params_t_ -> Int
+ Data.ABC.Internal.FRAIG: [nMiteringLimitMulti'Prove_Params] :: Prove_Params_t_ -> Float
+ Data.ABC.Internal.FRAIG: [nMiteringLimitStart'Prove_Params] :: Prove_Params_t_ -> Int
+ Data.ABC.Internal.FRAIG: [nRewritingLimitMulti'Prove_Params] :: Prove_Params_t_ -> Float
+ Data.ABC.Internal.FRAIG: [nRewritingLimitStart'Prove_Params] :: Prove_Params_t_ -> Int
+ Data.ABC.Internal.FRAIG: [nTotalBacktrackLimit'Prove_Params] :: Prove_Params_t_ -> Int64
+ Data.ABC.Internal.FRAIG: [nTotalBacktracksMade'Prove_Params] :: Prove_Params_t_ -> Int64
+ Data.ABC.Internal.FRAIG: [nTotalInspectLimit'Prove_Params] :: Prove_Params_t_ -> Int64
+ Data.ABC.Internal.FRAIG: [nTotalInspectsMade'Prove_Params] :: Prove_Params_t_ -> Int64
+ Data.ABC.Internal.FRAIG: instance Foreign.Storable.Storable Data.ABC.Internal.FRAIG.Prove_Params_t_
+ Data.ABC.Internal.FRAIG: instance GHC.Classes.Eq Data.ABC.Internal.FRAIG.Prove_Params_t_
+ Data.ABC.Internal.FRAIG: instance GHC.Read.Read Data.ABC.Internal.FRAIG.Prove_Params_t_
+ Data.ABC.Internal.FRAIG: instance GHC.Show.Show Data.ABC.Internal.FRAIG.Prove_Params_t_
+ Data.ABC.Internal.Field: [readAt] :: Field a b -> a -> IO b
+ Data.ABC.Internal.Field: [writeAt] :: Field a b -> a -> b -> IO ()
+ Data.ABC.Internal.GIA: [unGiaLit] :: GiaLit -> CInt
+ Data.ABC.Internal.GIA: [unGiaVar] :: GiaVar -> CInt
+ Data.ABC.Internal.GIA: instance Foreign.Storable.Storable Data.ABC.Internal.GIA.GiaLit
+ Data.ABC.Internal.GIA: instance Foreign.Storable.Storable Data.ABC.Internal.GIA.GiaVar
+ Data.ABC.Internal.GIA: instance GHC.Classes.Eq Data.ABC.Internal.GIA.GiaLit
+ Data.ABC.Internal.GIA: instance GHC.Classes.Eq Data.ABC.Internal.GIA.GiaVar
+ Data.ABC.Internal.GIA: instance GHC.Classes.Ord Data.ABC.Internal.GIA.GiaLit
+ Data.ABC.Internal.GIA: instance GHC.Classes.Ord Data.ABC.Internal.GIA.GiaVar
- Data.ABC.AIG: (===) :: IsLit l => l s -> l s -> Bool
+ Data.ABC.AIG: (===) :: l s -> l s -> Bool
- Data.ABC.AIG: Sat :: SrictNotUnpacked[Bool] -> SatResult
+ Data.ABC.AIG: Sat :: ~[Bool] -> SatResult
- Data.ABC.AIG: abstractEvaluateAIG :: IsAIG l g => g s -> (LitView a -> IO a) -> IO (l s -> IO a)
+ Data.ABC.AIG: abstractEvaluateAIG :: g s -> (LitView a -> IO a) -> IO (l s -> IO a)
- Data.ABC.AIG: aigerNetwork :: IsAIG l g => Proxy l g -> FilePath -> IO (Network l g)
+ Data.ABC.AIG: aigerNetwork :: Proxy l g -> FilePath -> IO (Network l g)
- Data.ABC.AIG: and :: IsAIG l g => g s -> l s -> l s -> IO (l s)
+ Data.ABC.AIG: and :: g s -> l s -> l s -> IO (l s)
- Data.ABC.AIG: ands :: IsAIG l g => g s -> [l s] -> IO (l s)
+ Data.ABC.AIG: ands :: g s -> [l s] -> IO (l s)
- Data.ABC.AIG: asConstant :: IsAIG l g => g s -> l s -> Maybe Bool
+ Data.ABC.AIG: asConstant :: g s -> l s -> Maybe Bool
- Data.ABC.AIG: cec :: IsAIG l g => Network l g -> Network l g -> IO VerifyResult
+ Data.ABC.AIG: cec :: Network l g -> Network l g -> IO VerifyResult
- Data.ABC.AIG: checkSat :: IsAIG l g => g s -> l s -> IO SatResult
+ Data.ABC.AIG: checkSat :: g s -> l s -> IO SatResult
- Data.ABC.AIG: constant :: IsAIG l g => g s -> Bool -> l s
+ Data.ABC.AIG: constant :: g s -> Bool -> l s
- Data.ABC.AIG: eq :: IsAIG l g => g s -> l s -> l s -> IO (l s)
+ Data.ABC.AIG: eq :: g s -> l s -> l s -> IO (l s)
- Data.ABC.AIG: evaluate :: IsAIG l g => Network l g -> [Bool] -> IO [Bool]
+ Data.ABC.AIG: evaluate :: Network l g -> [Bool] -> IO [Bool]
- Data.ABC.AIG: evaluator :: IsAIG l g => g s -> [Bool] -> IO (l s -> Bool)
+ Data.ABC.AIG: evaluator :: g s -> [Bool] -> IO (l s -> Bool)
- Data.ABC.AIG: falseLit :: IsAIG l g => g s -> l s
+ Data.ABC.AIG: falseLit :: g s -> l s
- Data.ABC.AIG: getInput :: IsAIG l g => g s -> Int -> IO (l s)
+ Data.ABC.AIG: getInput :: g s -> Int -> IO (l s)
- Data.ABC.AIG: implies :: IsAIG l g => g s -> l s -> l s -> IO (l s)
+ Data.ABC.AIG: implies :: g s -> l s -> l s -> IO (l s)
- Data.ABC.AIG: inputCount :: IsAIG l g => g s -> IO Int
+ Data.ABC.AIG: inputCount :: g s -> IO Int
- Data.ABC.AIG: litView :: IsAIG l g => g s -> l s -> IO (LitView (l s))
+ Data.ABC.AIG: litView :: g s -> l s -> IO (LitView (l s))
- Data.ABC.AIG: mux :: IsAIG l g => g s -> l s -> l s -> l s -> IO (l s)
+ Data.ABC.AIG: mux :: g s -> l s -> l s -> l s -> IO (l s)
- Data.ABC.AIG: newGraph :: IsAIG l g => Proxy l g -> IO (SomeGraph g)
+ Data.ABC.AIG: newGraph :: Proxy l g -> IO (SomeGraph g)
- Data.ABC.AIG: newInput :: IsAIG l g => g s -> IO (l s)
+ Data.ABC.AIG: newInput :: g s -> IO (l s)
- Data.ABC.AIG: not :: IsLit l => l s -> l s
+ Data.ABC.AIG: not :: l s -> l s
- Data.ABC.AIG: or :: IsAIG l g => g s -> l s -> l s -> IO (l s)
+ Data.ABC.AIG: or :: g s -> l s -> l s -> IO (l s)
- Data.ABC.AIG: trueLit :: IsAIG l g => g s -> l s
+ Data.ABC.AIG: trueLit :: g s -> l s
- Data.ABC.AIG: withNewGraph :: IsAIG l g => Proxy l g -> (forall s. g s -> IO a) -> IO a
+ Data.ABC.AIG: withNewGraph :: Proxy l g -> (forall s. g s -> IO a) -> IO a
- Data.ABC.AIG: writeAiger :: IsAIG l g => FilePath -> Network l g -> IO ()
+ Data.ABC.AIG: writeAiger :: FilePath -> Network l g -> IO ()
- Data.ABC.AIG: writeCNF :: IsAIG l g => g s -> l s -> FilePath -> IO [Int]
+ Data.ABC.AIG: writeCNF :: g s -> l s -> FilePath -> IO [Int]
- Data.ABC.AIG: xor :: IsAIG l g => g s -> l s -> l s -> IO (l s)
+ Data.ABC.AIG: xor :: g s -> l s -> l s -> IO (l s)
- Data.ABC.GIA: (===) :: IsLit l => l s -> l s -> Bool
+ Data.ABC.GIA: (===) :: l s -> l s -> Bool
- Data.ABC.GIA: And :: SrictNotUnpackeda -> SrictNotUnpackeda -> LitView a
+ Data.ABC.GIA: And :: ~a -> ~a -> LitView a
- Data.ABC.GIA: Input :: SrictNotUnpackedInt -> LitView a
+ Data.ABC.GIA: Input :: ~Int -> LitView a
- Data.ABC.GIA: NotAnd :: SrictNotUnpackeda -> SrictNotUnpackeda -> LitView a
+ Data.ABC.GIA: NotAnd :: ~a -> ~a -> LitView a
- Data.ABC.GIA: NotInput :: SrictNotUnpackedInt -> LitView a
+ Data.ABC.GIA: NotInput :: ~Int -> LitView a
- Data.ABC.GIA: Sat :: SrictNotUnpacked[Bool] -> SatResult
+ Data.ABC.GIA: Sat :: ~[Bool] -> SatResult
- Data.ABC.GIA: abstractEvaluateAIG :: IsAIG l g => g s -> (LitView a -> IO a) -> IO (l s -> IO a)
+ Data.ABC.GIA: abstractEvaluateAIG :: g s -> (LitView a -> IO a) -> IO (l s -> IO a)
- Data.ABC.GIA: aigerNetwork :: IsAIG l g => Proxy l g -> FilePath -> IO (Network l g)
+ Data.ABC.GIA: aigerNetwork :: Proxy l g -> FilePath -> IO (Network l g)
- Data.ABC.GIA: and :: IsAIG l g => g s -> l s -> l s -> IO (l s)
+ Data.ABC.GIA: and :: g s -> l s -> l s -> IO (l s)
- Data.ABC.GIA: ands :: IsAIG l g => g s -> [l s] -> IO (l s)
+ Data.ABC.GIA: ands :: g s -> [l s] -> IO (l s)
- Data.ABC.GIA: asConstant :: IsAIG l g => g s -> l s -> Maybe Bool
+ Data.ABC.GIA: asConstant :: g s -> l s -> Maybe Bool
- Data.ABC.GIA: cec :: IsAIG l g => Network l g -> Network l g -> IO VerifyResult
+ Data.ABC.GIA: cec :: Network l g -> Network l g -> IO VerifyResult
- Data.ABC.GIA: checkSat :: IsAIG l g => g s -> l s -> IO SatResult
+ Data.ABC.GIA: checkSat :: g s -> l s -> IO SatResult
- Data.ABC.GIA: constant :: IsAIG l g => g s -> Bool -> l s
+ Data.ABC.GIA: constant :: g s -> Bool -> l s
- Data.ABC.GIA: eq :: IsAIG l g => g s -> l s -> l s -> IO (l s)
+ Data.ABC.GIA: eq :: g s -> l s -> l s -> IO (l s)
- Data.ABC.GIA: evaluate :: IsAIG l g => Network l g -> [Bool] -> IO [Bool]
+ Data.ABC.GIA: evaluate :: Network l g -> [Bool] -> IO [Bool]
- Data.ABC.GIA: evaluator :: IsAIG l g => g s -> [Bool] -> IO (l s -> Bool)
+ Data.ABC.GIA: evaluator :: g s -> [Bool] -> IO (l s -> Bool)
- Data.ABC.GIA: falseLit :: IsAIG l g => g s -> l s
+ Data.ABC.GIA: falseLit :: g s -> l s
- Data.ABC.GIA: getInput :: IsAIG l g => g s -> Int -> IO (l s)
+ Data.ABC.GIA: getInput :: g s -> Int -> IO (l s)
- Data.ABC.GIA: implies :: IsAIG l g => g s -> l s -> l s -> IO (l s)
+ Data.ABC.GIA: implies :: g s -> l s -> l s -> IO (l s)
- Data.ABC.GIA: inputCount :: IsAIG l g => g s -> IO Int
+ Data.ABC.GIA: inputCount :: g s -> IO Int
- Data.ABC.GIA: litView :: IsAIG l g => g s -> l s -> IO (LitView (l s))
+ Data.ABC.GIA: litView :: g s -> l s -> IO (LitView (l s))
- Data.ABC.GIA: mux :: IsAIG l g => g s -> l s -> l s -> l s -> IO (l s)
+ Data.ABC.GIA: mux :: g s -> l s -> l s -> l s -> IO (l s)
- Data.ABC.GIA: newGraph :: IsAIG l g => Proxy l g -> IO (SomeGraph g)
+ Data.ABC.GIA: newGraph :: Proxy l g -> IO (SomeGraph g)
- Data.ABC.GIA: newInput :: IsAIG l g => g s -> IO (l s)
+ Data.ABC.GIA: newInput :: g s -> IO (l s)
- Data.ABC.GIA: not :: IsLit l => l s -> l s
+ Data.ABC.GIA: not :: l s -> l s
- Data.ABC.GIA: or :: IsAIG l g => g s -> l s -> l s -> IO (l s)
+ Data.ABC.GIA: or :: g s -> l s -> l s -> IO (l s)
- Data.ABC.GIA: trueLit :: IsAIG l g => g s -> l s
+ Data.ABC.GIA: trueLit :: g s -> l s
- Data.ABC.GIA: withNewGraph :: IsAIG l g => Proxy l g -> (forall s. g s -> IO a) -> IO a
+ Data.ABC.GIA: withNewGraph :: Proxy l g -> (forall s. g s -> IO a) -> IO a
- Data.ABC.GIA: writeAiger :: IsAIG l g => FilePath -> Network l g -> IO ()
+ Data.ABC.GIA: writeAiger :: FilePath -> Network l g -> IO ()
- Data.ABC.GIA: writeCNF :: IsAIG l g => g s -> l s -> FilePath -> IO [Int]
+ Data.ABC.GIA: writeCNF :: g s -> l s -> FilePath -> IO [Int]
- Data.ABC.GIA: xor :: IsAIG l g => g s -> l s -> l s -> IO (l s)
+ Data.ABC.GIA: xor :: g s -> l s -> l s -> IO (l s)

Files

abc-build/.hg_archival.txt view
@@ -1,5 +1,5 @@ repo: 27f68cec826fd69da083a19ad1384a074eb56f73-node: c16b9de6d2b4c7c267517efb75e50baf33a5d6f7-branch: galois-abcBridge-0.14-dev+node: 758ca61dba9ee9403b5e723b2dbdb49670d6616f+branch: galois-abcBridge-0.15-dev latesttag: null-latesttagdistance: 2713+latesttagdistance: 2716
abc-build/galois-abcBridge.version view
@@ -1,1 +1,1 @@-0.14+0.15
abcBridge.cabal view
@@ -1,5 +1,5 @@ Name:               abcBridge-Version:            0.14+Version:            0.15 Synopsis:           Bindings for ABC, A System for Sequential                     Synthesis and Verification Description:        Bindings for ABC focused on creating And-Inverter@@ -56,7 +56,6 @@     Data.ABC.Util   Default-Language:     Haskell98   Default-Extensions:   ForeignFunctionInterface,-                        CPP,                         FlexibleContexts,                         MultiParamTypeClasses,                         EmptyDataDecls@@ -71,7 +70,11 @@   }    if os(windows) {+    if arch(x86_64) {+     CC-options: -D_WIN64 -DHAVE_STRUCT_TIMESPEC+    } else {      Cc-options: -D_WIN32+    }   }    if !os(windows) {@@ -87,6 +90,7 @@    Build-depends:     base == 4.*,+    base-compat >= 0.6.0,     aig >= 0.2.3,     containers,     directory,@@ -116,6 +120,7 @@     abc-test.hs   build-depends:     base == 4.*,+    base-compat >= 0.6.0,     abcBridge,     aig,     directory,@@ -143,6 +148,7 @@      buildable: True      build-depends:        base == 4.*,+       base-compat >= 0.6.0,        abcBridge,        aig,        directory,@@ -172,4 +178,5 @@     long-test.hs   build-depends:     base == 4.*,+    base-compat >= 0.6.0,     abcBridge
cbits/pthread_stubs.c view
@@ -11,7 +11,7 @@ #include <stdlib.h> #include <stdio.h> -#ifdef _WIN32+#if defined(_WIN32) || defined(_WIN64) #include "../abc-build/lib/pthread.h"  #else
scripts/build-abc.sh view
@@ -1,4 +1,4 @@-#!/bin/sh+#!/bin/bash  # bail out immediately if any command fails set -e@@ -22,18 +22,49 @@   -R .debug_ranges \   -R .debug_str" -# Select architecture-dependent compiler flags-case "$ARCH" in-  "I386") A="-m32 -DLIN -DSIZEOF_VOID_P=4 -DSIZEOF_LONG=4 -DSIZEOF_INT=4" ;;-  "X86_64") A="-m64 -fPIC -DLIN64 -DSIZEOF_VOID_P=8 -DSIZEOF_LONG=8 -DSIZEOF_INT=4" ;;-  *) echo "Unknown architecture: $ARCH" ; exit 2 ;;-esac--# Set up some OS-dependent flags and actions+# Select architecture- and OS-dependent compiler flags case "$OS" in-  "Linux") S="" ;;-  "OSX") S="" ;;-  "Windows") S="libabc.dll" ; A="-m32 -DWIN32_NO_DLL -DABC_NO_DYNAMIC_LINKING -DLIN -DNT -UWIN32 -DSIZEOF_VOID_P=4 -DSIZEOF_LONG=4 -DSIZEOF_INT=4 -DPTW32_STATIC_LIB -UZLIB_DLL -lmsvcrt -Wl,--undefined=___strtod,--wrap,strtod,--defsym,___wrap_strtod=___strtod" ; REMOVE_CMD="objcopy ${REMOVE_ARGS}" ;;+  "Linux" | "OSX")+    S=""+    case "$ARCH" in+      "I386") A="-m32 -DLIN -DSIZEOF_VOID_P=4 -DSIZEOF_LONG=4 -DSIZEOF_INT=4" ;;+      "X86_64") A="-m64 -fPIC -DLIN64 -DSIZEOF_VOID_P=8 -DSIZEOF_LONG=8 -DSIZEOF_INT=4" ;;+      *) echo "Unknown architecture: $ARCH" ; exit 2 ;;+    esac ;;+  "Windows")+    S="libabc.dll"+    REMOVE_CMD="objcopy ${REMOVE_ARGS}"+    case "$ARCH" in+      "I386")+        A="-m32 \+           -DWIN32_NO_DLL \+           -DABC_NO_DYNAMIC_LINKING \+           -DLIN \+           -DNT \+           -D_WIN32 \+           -UWIN32 \+           -DSIZEOF_VOID_P=4 -DSIZEOF_LONG=4 -DSIZEOF_INT=4 \+           -DPTW32_STATIC_LIB \+           -UZLIB_DLL \+           -lmsvcrt \+           -Wl,--undefined=___strtod,--wrap,strtod,--defsym,___wrap_strtod=___strtod" ;;++      "X86_64")+        # The `SIZEOF_*` arguments came from printing the+        # corresponding `sizeof` results (using+        # `abc-build/arch_flags.c`) on the Win64 machine. Note that+        # the `SIZEOF_LONG` differs from the Lin64 value.+        A="-m64 \+           -DWIN32_NO_DLL \+           -DABC_NO_DYNAMIC_LINKING \+           -DNT64 \+           -D_WIN64 \+           -UWIN32 \+           -DSIZEOF_VOID_P=8 -DSIZEOF_LONG=4 -DSIZEOF_INT=4 \+           -UZLIB_DLL \+           -lmsvcrt" ;;+      *) echo "Unknown architecture: $ARCH" ; exit 2 ;;+    esac ;;   *) echo "Unknown OS: $OS" ; exit 2 ;; esac 
src/Data/ABC.hs view
@@ -54,6 +54,10 @@  type AIGLit = AIG.Lit +{-# WARNING aigNetwork, readAigerAsAIG+    "The Data.ABC.AIG module has known bugs (http://github.com/GaloisInc/abcBridge/issues/4) for which solutions do not currently exist.  Consider using Data.ABC.GIA instead."+  #-}+ -- | Proxy for AIG interface. aigNetwork :: Proxy AIGLit AIG aigNetwork = AIG.proxy
src/Data/ABC/AIG.hs view
@@ -14,7 +14,6 @@ > import qualified Data.ABC.AIG as AIG  -}-{-# LANGUAGE CPP #-} {-# LANGUAGE DoAndIfThenElse #-} {-# LANGUAGE EmptyDataDecls #-} {-# LANGUAGE FlexibleInstances #-}@@ -24,6 +23,9 @@ {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE ViewPatterns #-} module Data.ABC.AIG+{-# WARNING+    "The Data.ABC.AIG module has known bugs (http://github.com/GaloisInc/abcBridge/issues/4) for which solutions do not currently exist.  Consider using Data.ABC.GIA instead."+  #-}   ( AIG   , newAIG   , readAiger@@ -43,23 +45,19 @@   , AIG.SomeGraph(..)   ) where -import Prelude hiding (and, or, not)+import Prelude ()+import Prelude.Compat hiding (and, or, not)  import Foreign -#if !MIN_VERSION_base(4,8,0)-import Control.Applicative-#endif import Control.Exception-import Control.Monad+import Control.Monad.Compat import qualified Data.Vector.Storable as V import qualified Data.Vector.Storable.Mutable as VM import System.IO import qualified System.IO.Unsafe as Unsafe import qualified Data.Map as Map import           Data.IORef--  import Data.ABC.Internal.ABC import Data.ABC.Internal.AIG
src/Data/ABC/GIA.hs view
@@ -18,7 +18,6 @@ <http://bvsrc.org/research.html#AIG%20Package>  It is a more memory efficient method of storing AIG graphs. -}-{-# LANGUAGE CPP #-} {-# LANGUAGE DoAndIfThenElse #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE Rank2Types #-}@@ -50,19 +49,16 @@     , AIG.VerifyResult(..)     ) where -import Prelude hiding (and, not, or)+import Prelude ()+import Prelude.Compat hiding (and, not, or) import qualified Prelude import Control.Exception hiding (evaluate)-import Control.Monad+import Control.Monad.Compat import qualified Data.Map as Map import           Data.IORef import qualified Data.AIG as AIG import           Data.AIG.Interface (LitView(..)) import qualified Data.AIG.Trace as Tr-#if !MIN_VERSION_base(4,8,0)-import Data.Functor-import Data.Traversable (traverse)-#endif  import qualified Data.Vector.Storable as SV import qualified Data.Vector.Unboxed as V
tests/Tests/Basic.hs view
@@ -1,16 +1,14 @@-{-# LANGUAGE CPP #-} {-# LANGUAGE PatternGuards #-} module Tests.Basic   ( basic_tests   ) where -#if !MIN_VERSION_base(4,8,0)-import Control.Applicative-#endif import Control.Exception-import Control.Monad+import Control.Monad.Compat import System.Directory import System.IO+import Prelude ()+import Prelude.Compat  import Test.Tasty import Test.Tasty.HUnit as HU
tests/Tests/Operations.hs view
@@ -1,6 +1,6 @@-{-# LANGUAGE CPP #-} {-# LANGUAGE Rank2Types #-} {-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE CPP #-}  module Tests.Operations   ( op_tests