2023-10-25 18:12:26 +02:00
|
|
|
|
|
|
|
|
-- | Testing some sub-circuits
|
|
|
|
|
--
|
|
|
|
|
|
|
|
|
|
module Main where
|
|
|
|
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
|
|
2025-05-19 20:28:20 +02:00
|
|
|
import R1CS
|
2023-10-25 18:12:26 +02:00
|
|
|
|
|
|
|
|
import qualified R1CS.Test.Spec as Spec
|
|
|
|
|
|
|
|
|
|
import qualified Circuit.BinaryLTE as BinaryLTE
|
|
|
|
|
import qualified Circuit.BinaryGTE as BinaryGTE
|
|
|
|
|
import qualified Circuit.BinaryCompare as BinaryCmp
|
|
|
|
|
import qualified Circuit.ExtractBits as ExtractBits
|
2023-11-24 12:40:21 +01:00
|
|
|
import qualified Circuit.Log2 as Log2
|
2023-11-25 20:50:54 +01:00
|
|
|
import qualified Circuit.CeilingLog2 as CeilingLog2
|
2023-10-25 18:12:26 +02:00
|
|
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
|
|
2025-05-19 20:28:20 +02:00
|
|
|
testSimple :: FieldChoice -> IO ()
|
|
|
|
|
testSimple field = testSimple' field Silent
|
2023-10-25 18:12:26 +02:00
|
|
|
|
2025-05-19 20:28:20 +02:00
|
|
|
testSimple' :: FieldChoice -> Verbosity -> IO ()
|
|
|
|
|
testSimple' field verbosity = runWithField field $ \pxy -> do
|
2023-10-25 18:12:26 +02:00
|
|
|
|
2025-05-19 20:28:20 +02:00
|
|
|
let runSpec what = Spec.testSemantics pxy what verbosity
|
|
|
|
|
let runSpecMany what = Spec.testSemanticsMany pxy what verbosity
|
2023-10-25 18:12:26 +02:00
|
|
|
|
2023-11-25 20:50:54 +01:00
|
|
|
runSpecMany CeilingLog2.specs
|
2023-11-24 12:40:21 +01:00
|
|
|
runSpecMany Log2.specs
|
|
|
|
|
|
2023-10-25 18:12:26 +02:00
|
|
|
runSpecMany BinaryCmp.specs
|
|
|
|
|
runSpecMany BinaryLTE.specs
|
|
|
|
|
runSpecMany BinaryGTE.specs
|
|
|
|
|
|
2024-03-12 11:48:13 +01:00
|
|
|
-- runSpecMany ExtractBits.specs -- this test doesn't work currently?
|
2023-10-25 18:12:26 +02:00
|
|
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
main = do
|
2025-05-19 20:28:20 +02:00
|
|
|
testSimple' Field20 Silent -- Info
|
2023-10-25 18:12:26 +02:00
|
|
|
|