-
Notifications
You must be signed in to change notification settings - Fork 37
Make sure terms_ is set in every path of parse in btor2encoder except for sorts #34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
yangy96
pushed a commit
to yangy96/cosa2
that referenced
this pull request
Jul 2, 2020
makaimann
pushed a commit
that referenced
this pull request
Jul 8, 2020
* add signed/unsigned reentrant, fix scanner bugs * implement case preprocess * resolve header conflict * inor changes * fix case error and add extract * clang format * clang format * add integer/real constant, add simple_expr * change time for ccase timeout * Install fl-dev for ubuntu bionic Travis * fl-dev -> libfl-dev * Hack for FlexLexer.h in Mac Travis test * Try removing from /Library/Developer/CommandLineTools/usr/include/ * Also remove Xcode version of FlexLexer.h -- hack for Travis Mac build * Use FLEX_INCLUDE_DIRS from find_package(FLEX ... * Don't remove headers * Just print found Flex info * Set cmake include and library paths for Mac * Try newer version of xcode * Don't set cmake paths anymore * minor * Manually set include directory * request changes update * fix a conflict bug * add boolean and change map to vector * add negative integer * Refactor: make FunctionalTransitionSystem inherit from RelationalTransitionSystem (compiles but untested) * Add get_free_symbols helper * Add constrain_inputs * Rename: RelationalTransitionSystem -> TransitionSystem * Rename: rts.* -> ts.* * Add convenience function for adding constraints * Use add_constraint in encoder and check init/prop for state vars * Print standard exception message if caught at main level * Have no next for inputs * Add a version of get_free_symbols that returns a set * Add witness to system if there are inputs in the bad definition (btor) * Dump system at logger level 3 * Rename: set_next -> assign_next (shouldn't be similar to set_init/set_trans) * Add is_functional query for transition system * Mark functions as override in fts and make them virtual * Make override methods virtual and throw exception if relational methods used on functional transition system * Add googletest and test unroller on functional transition system * Fix unroller for functional transition systems * Check that there's no next states in assign_next * Revert "Fix unroller for functional transition systems" This reverts commit c8d8d1a. * Use an abstract TransitionSystem class with two derived classes * Support make test * Test for different solvers * Add another test for functional transition systems * show default bound * Add CVC4 as a possible solver * Add travis configuration * Add different job configurations * Setup btor2tools * Check for libraries with glob instead of specific extension * Link available-solvers * Typo fix: mathsat -> cvc4 * Remove unnecessary scoping * Use a contains helper function for symbol checking when building transition systems * Formatting * Rename rts to fts or ts depending on context * minor const fixes * Add missing pragma once to rts.h * Don't use Const_Array PrimOp in printer -- deprecated * Pull latest master of smt-switch * Update smt-switch example pointer in README * Add instructions for generating btor * Change subheader * Fix local link * Minor fix in README * Add flatten command to btor2 instructions * Use btor2 symbol to name arbitrary terms if applicable * Add sim command to btor2 instructions: thanks to @zhanghongce for pointing this out * Add static configuration options * VCD Trace Dump (#28) * add file for vcd printer * vcd printer (no array yet) * plug in vcdprinter * version added * disable debug printing * array dump support * disable verbose debug printing * update msg display * update comment/remove unused code * rename state based on output * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> Co-authored-by: makaimann <[email protected]> * Updates to yosys sim instructions * Give better error message for name already being used * Catch exceptions for naming terms in btor2 encoder * Don't pass encoder to vcd printer * Add named terms to witness * smv frontends (#19) * add simple counter examples * clean flex and bison files * delete build folder * Use master version of CMakeLists.txt * Compile PIC code * Add a setup bison script and search for bison and flex in cmake * Rename: encoder -> smv_encoder * Update travis configuration for flex/bison * Rename smvparser.tab.* -> smvparser.* * Add cmake info for building smv parser * minor * Use propvec instead of badvec in btor encoder * Look in build dir for generated headers * WIP: almost compiling (need to run flex) * Compiles and runs but not cleaned up * Compiling and running now * Formatting * Use xcode9.2 * Add install script for mac travis builds * Fix bison install * move c parser to c++ parser * change name of the files * resolve git conflict * clean up files and integrate to cosa2 * add integer and real for more operations * remove debug print * remove Makefile for smvparser * change class name * clang format * clean up case temporarily and reformat smvencoder * use string for large integer and add enum for smv_node * clang format Co-authored-by: Makai Mann <[email protected]> * Fix use of vcdprinter and add for smv encoder also * Name bad state correctly in btor encoder * Remove colons from names in vcd printer * Use static smt-switch * In btor2 instructions put chformal command earlier * Check that term was saved when naming a term * Remove extra pragma once * Make sure terms_ is set in every path of parse in btor2encoder except for sorts (#34) * add signed/unsigned reentrant, fix scanner bugs * Add python bindings for cosa2 (#24) * Rename files: interpolant.* -> interpolantmc.* * Update setup script for smt-switch * Move trans getter next to init getter * WIP: CMake infrastructure * WIP: cython files * WIP: compiling now * Implement copy-and-swap idiom for transition systems * Revert "Implement copy-and-swap idiom for transition systems" This reverts commit dd42e89. * Assign transition system pointer to member variable in Cython wrapper * Fixes for data structure producing methods * Don't use hash functions directly (rely on overloaded hash struct in C++) * Implement python functions for map getters * Add a functional transition system * Implement Property * minor fix * Add RelationalTransitionSystem (compiling) * Hide Abstract TransitionSystem extension type when importing module -- should never be used directly * Add python tests for transition systems * Run python tests * use folders for pycosa2 header declarations * fix typo * Remove unnecessary linking commands * Pull cython-declarations-fix branch of smt-switch and install smt-switch python bindings * Try compiling btor2tools with fPIC * Install pytest and point to pycosa2 bindings * Implement Unroller in bindings and reorganize tests * Add prover and proverresult * Exit build dir in Travis after building * Implement prover wrapper * Update pythonpath for smt_switch location * cimport on separate lines * Set ld_library_path also * Add cython declarations for engines * Implement python wrappers for engines * Fix environment variable * Don't use Const_Array anymore * Test engines in googletest * Fix for AbstractProver and Property * Print interpolant at high verbosity * Add option to set logger verbosity in python api * Formatting * Add simple test for Cosa2 engines in python API * Add a manually strengthened property test * Add a setup.py file * Add installation instructions for python bindings * Add btor2tools setup to python installation instructions * Switch smt-switch back to master branch * Add BTOR2Encoder to Python API * Expose get_free_symbols to Python API * Formatting * Add wheel for cosa2 (#27) * add build_wheel scripts for cosa2 * test out cosa2 wheel * test out wheel * make it deploy only * Rename: pycosa2 -> cosa2, cosa2 target -> cosa2-lib * Add slides and python api example * Run bison setup script Co-authored-by: Keyi Zhang <[email protected]> * implement case preprocess * resolve header conflict * inor changes * Pin smt-switch version * Pin smt-switch version * Updates to keep in line with smt-switch (#37) * Create SmtSolvers without logging * Use hidden travis script for mathsat for now * Pass parameter for create function * Add instructions for mathsat and point to a different home folder * Revert "Pin smt-switch version" This reverts commit e0cc7d9. * Setup MathSAT on Travis * Fix another create function with logging flag * Another missing flag to create * Pull from smt-switch master * fix case error and add extract * clang format * clang format * add integer/real constant, add simple_expr * change time for ccase timeout * Install fl-dev for ubuntu bionic Travis * fl-dev -> libfl-dev * Hack for FlexLexer.h in Mac Travis test * Try removing from /Library/Developer/CommandLineTools/usr/include/ * Also remove Xcode version of FlexLexer.h -- hack for Travis Mac build * Use FLEX_INCLUDE_DIRS from find_package(FLEX ... * Don't remove headers * Just print found Flex info * Set cmake include and library paths for Mac * Try newer version of xcode * Don't set cmake paths anymore * minor * request changes update * resolve cmakelist * less untime cache (#42) * Only keep variables as keys in the unroller cache (#41) * Only keep variables as keys in the unroller cache * Add cache check back in -- but still not adding to it Co-authored-by: Ahmed Irfan <[email protected]> * Manually set include directory * Add test suite instantiation for unroller test * CoreIR Encoder (#33) * Rename files: interpolant.* -> interpolantmc.* * Update setup script for smt-switch * Move trans getter next to init getter * WIP: CMake infrastructure * WIP: cython files * WIP: compiling now * Implement copy-and-swap idiom for transition systems * Revert "Implement copy-and-swap idiom for transition systems" This reverts commit dd42e89. * Assign transition system pointer to member variable in Cython wrapper * Fixes for data structure producing methods * Don't use hash functions directly (rely on overloaded hash struct in C++) * Implement python functions for map getters * Add a functional transition system * Implement Property * minor fix * Add RelationalTransitionSystem (compiling) * Hide Abstract TransitionSystem extension type when importing module -- should never be used directly * Add python tests for transition systems * Run python tests * use folders for pycosa2 header declarations * fix typo * Remove unnecessary linking commands * Pull cython-declarations-fix branch of smt-switch and install smt-switch python bindings * Try compiling btor2tools with fPIC * Install pytest and point to pycosa2 bindings * Implement Unroller in bindings and reorganize tests * Add prover and proverresult * Exit build dir in Travis after building * Implement prover wrapper * Update pythonpath for smt_switch location * cimport on separate lines * Set ld_library_path also * Add cython declarations for engines * Implement python wrappers for engines * Fix environment variable * Don't use Const_Array anymore * Test engines in googletest * Fix for AbstractProver and Property * Print interpolant at high verbosity * Add option to set logger verbosity in python api * Formatting * Add simple test for Cosa2 engines in python API * Add a manually strengthened property test * Add a setup.py file * Add installation instructions for python bindings * Add btor2tools setup to python installation instructions * Switch smt-switch back to master branch * Add BTOR2Encoder to Python API * Expose get_free_symbols to Python API * Formatting * Add wheel for cosa2 (#27) * add build_wheel scripts for cosa2 * test out cosa2 wheel * test out wheel * make it deploy only * Rename: pycosa2 -> cosa2, cosa2 target -> cosa2-lib * Add slides and python api example * WIP: coreir encoder * WIP: adding different operators to coreir encoder * WIP: main modules implemented * Add the rest of the operators (that I know of) * Refactor and keep set of registers for second pass * Do second pass over registers * Constrain initial states of registers * Add build infrastructure for CoreIREncoder * Merge master and only build coreir when requested * Add setup script for coreir * Add a test for CoreIREncoder * Update coreir version * Fix in instance_of, stub for select cases * First pass on select equalities * Fix: cache created input for forward reference of dst * Keep track of visited instances * Flip type in interface for adding global inputs * Don't count selects as separate inputs * Don't iterate over connections twice, create wire_connection helper, wire connections to global inputs * Populate covered_inputs for global input drivers * Add global inputs to covered_inputs map * Load commonlib and cache dst_parent * Skip instances that have already been processed * Throw exception on reg_arst * Setup for explicit clock encoding * First pass on explicit clock and asynchronous reset encoding * Add WrappedPE test * Fixes: wire up clocks, check arst_driver for states, fix assertion Tests not passing now because of ARST driver -- should hopefully be able to fix for this case by detecting that global "input" ASYNCRESET should actually be a state * Fix: make coreir.arst types state variables for edge behavior * Future proof for memory state elements -- for now throw an exception * Factor out the state processing code in CoreIREncoder * Remove unnecessary extra arst state driver, and use boolsort_ when possible * Fix: use clocked next_st as else branch for arst * Expose CoreIREncoder in Python bindings * Add alternative CoreIREncoder that takes Module* directly * Separate reading the file and encoding the module Co-authored-by: Keyi Zhang <[email protected]> * API Update. Rename: inputs->inputvars, states->statevars (#45) * Update states/inputs name in python interface * Update use of states/inputs class property to statevars/inputvars in python tests * Increase required CMake version, handle CXX17 flag for versions between 3.5.1 and 3.8 * Revert "Increase required CMake version, handle CXX17 flag for versions between 3.5.1 and 3.8" This reverts commit 02099e8. * Use c++1z format for Mac (#47) * fix a conflict bug * add boolean and change map to vector * add negative integer * add more sort aliasing * resolve conflicts * change sample file * merge cocnflicct * fix name errors and add more type checking * change trans/init parsing, add real type in SMVnode * add word array type Co-authored-by: Makai Mann <[email protected]> Co-authored-by: Ahmed Irfan <[email protected]> Co-authored-by: Hongce Zhang <[email protected]> Co-authored-by: Keyi Zhang <[email protected]> Co-authored-by: Ahmed Irfan <[email protected]>
lonsing
pushed a commit
to lonsing/pono
that referenced
this pull request
Sep 1, 2020
* add signed/unsigned reentrant, fix scanner bugs * implement case preprocess * resolve header conflict * inor changes * fix case error and add extract * clang format * clang format * add integer/real constant, add simple_expr * change time for ccase timeout * Install fl-dev for ubuntu bionic Travis * fl-dev -> libfl-dev * Hack for FlexLexer.h in Mac Travis test * Try removing from /Library/Developer/CommandLineTools/usr/include/ * Also remove Xcode version of FlexLexer.h -- hack for Travis Mac build * Use FLEX_INCLUDE_DIRS from find_package(FLEX ... * Don't remove headers * Just print found Flex info * Set cmake include and library paths for Mac * Try newer version of xcode * Don't set cmake paths anymore * minor * Manually set include directory * request changes update * fix a conflict bug * add boolean and change map to vector * add negative integer * Refactor: make FunctionalTransitionSystem inherit from RelationalTransitionSystem (compiles but untested) * Add get_free_symbols helper * Add constrain_inputs * Rename: RelationalTransitionSystem -> TransitionSystem * Rename: rts.* -> ts.* * Add convenience function for adding constraints * Use add_constraint in encoder and check init/prop for state vars * Print standard exception message if caught at main level * Have no next for inputs * Add a version of get_free_symbols that returns a set * Add witness to system if there are inputs in the bad definition (btor) * Dump system at logger level 3 * Rename: set_next -> assign_next (shouldn't be similar to set_init/set_trans) * Add is_functional query for transition system * Mark functions as override in fts and make them virtual * Make override methods virtual and throw exception if relational methods used on functional transition system * Add googletest and test unroller on functional transition system * Fix unroller for functional transition systems * Check that there's no next states in assign_next * Revert "Fix unroller for functional transition systems" This reverts commit c8d8d1a. * Use an abstract TransitionSystem class with two derived classes * Support make test * Test for different solvers * Add another test for functional transition systems * show default bound * Add CVC4 as a possible solver * Add travis configuration * Add different job configurations * Setup btor2tools * Check for libraries with glob instead of specific extension * Link available-solvers * Typo fix: mathsat -> cvc4 * Remove unnecessary scoping * Use a contains helper function for symbol checking when building transition systems * Formatting * Rename rts to fts or ts depending on context * minor const fixes * Add missing pragma once to rts.h * Don't use Const_Array PrimOp in printer -- deprecated * Pull latest master of smt-switch * Update smt-switch example pointer in README * Add instructions for generating btor * Change subheader * Fix local link * Minor fix in README * Add flatten command to btor2 instructions * Use btor2 symbol to name arbitrary terms if applicable * Add sim command to btor2 instructions: thanks to @zhanghongce for pointing this out * Add static configuration options * VCD Trace Dump (stanford-centaur#28) * add file for vcd printer * vcd printer (no array yet) * plug in vcdprinter * version added * disable debug printing * array dump support * disable verbose debug printing * update msg display * update comment/remove unused code * rename state based on output * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> * Update printers/vcd_witness_printer.cpp Co-Authored-By: makaimann <[email protected]> Co-authored-by: makaimann <[email protected]> * Updates to yosys sim instructions * Give better error message for name already being used * Catch exceptions for naming terms in btor2 encoder * Don't pass encoder to vcd printer * Add named terms to witness * smv frontends (stanford-centaur#19) * add simple counter examples * clean flex and bison files * delete build folder * Use master version of CMakeLists.txt * Compile PIC code * Add a setup bison script and search for bison and flex in cmake * Rename: encoder -> smv_encoder * Update travis configuration for flex/bison * Rename smvparser.tab.* -> smvparser.* * Add cmake info for building smv parser * minor * Use propvec instead of badvec in btor encoder * Look in build dir for generated headers * WIP: almost compiling (need to run flex) * Compiles and runs but not cleaned up * Compiling and running now * Formatting * Use xcode9.2 * Add install script for mac travis builds * Fix bison install * move c parser to c++ parser * change name of the files * resolve git conflict * clean up files and integrate to cosa2 * add integer and real for more operations * remove debug print * remove Makefile for smvparser * change class name * clang format * clean up case temporarily and reformat smvencoder * use string for large integer and add enum for smv_node * clang format Co-authored-by: Makai Mann <[email protected]> * Fix use of vcdprinter and add for smv encoder also * Name bad state correctly in btor encoder * Remove colons from names in vcd printer * Use static smt-switch * In btor2 instructions put chformal command earlier * Check that term was saved when naming a term * Remove extra pragma once * Make sure terms_ is set in every path of parse in btor2encoder except for sorts (stanford-centaur#34) * add signed/unsigned reentrant, fix scanner bugs * Add python bindings for cosa2 (stanford-centaur#24) * Rename files: interpolant.* -> interpolantmc.* * Update setup script for smt-switch * Move trans getter next to init getter * WIP: CMake infrastructure * WIP: cython files * WIP: compiling now * Implement copy-and-swap idiom for transition systems * Revert "Implement copy-and-swap idiom for transition systems" This reverts commit dd42e89. * Assign transition system pointer to member variable in Cython wrapper * Fixes for data structure producing methods * Don't use hash functions directly (rely on overloaded hash struct in C++) * Implement python functions for map getters * Add a functional transition system * Implement Property * minor fix * Add RelationalTransitionSystem (compiling) * Hide Abstract TransitionSystem extension type when importing module -- should never be used directly * Add python tests for transition systems * Run python tests * use folders for pycosa2 header declarations * fix typo * Remove unnecessary linking commands * Pull cython-declarations-fix branch of smt-switch and install smt-switch python bindings * Try compiling btor2tools with fPIC * Install pytest and point to pycosa2 bindings * Implement Unroller in bindings and reorganize tests * Add prover and proverresult * Exit build dir in Travis after building * Implement prover wrapper * Update pythonpath for smt_switch location * cimport on separate lines * Set ld_library_path also * Add cython declarations for engines * Implement python wrappers for engines * Fix environment variable * Don't use Const_Array anymore * Test engines in googletest * Fix for AbstractProver and Property * Print interpolant at high verbosity * Add option to set logger verbosity in python api * Formatting * Add simple test for Cosa2 engines in python API * Add a manually strengthened property test * Add a setup.py file * Add installation instructions for python bindings * Add btor2tools setup to python installation instructions * Switch smt-switch back to master branch * Add BTOR2Encoder to Python API * Expose get_free_symbols to Python API * Formatting * Add wheel for cosa2 (stanford-centaur#27) * add build_wheel scripts for cosa2 * test out cosa2 wheel * test out wheel * make it deploy only * Rename: pycosa2 -> cosa2, cosa2 target -> cosa2-lib * Add slides and python api example * Run bison setup script Co-authored-by: Keyi Zhang <[email protected]> * implement case preprocess * resolve header conflict * inor changes * Pin smt-switch version * Pin smt-switch version * Updates to keep in line with smt-switch (stanford-centaur#37) * Create SmtSolvers without logging * Use hidden travis script for mathsat for now * Pass parameter for create function * Add instructions for mathsat and point to a different home folder * Revert "Pin smt-switch version" This reverts commit e0cc7d9. * Setup MathSAT on Travis * Fix another create function with logging flag * Another missing flag to create * Pull from smt-switch master * fix case error and add extract * clang format * clang format * add integer/real constant, add simple_expr * change time for ccase timeout * Install fl-dev for ubuntu bionic Travis * fl-dev -> libfl-dev * Hack for FlexLexer.h in Mac Travis test * Try removing from /Library/Developer/CommandLineTools/usr/include/ * Also remove Xcode version of FlexLexer.h -- hack for Travis Mac build * Use FLEX_INCLUDE_DIRS from find_package(FLEX ... * Don't remove headers * Just print found Flex info * Set cmake include and library paths for Mac * Try newer version of xcode * Don't set cmake paths anymore * minor * request changes update * resolve cmakelist * less untime cache (stanford-centaur#42) * Only keep variables as keys in the unroller cache (stanford-centaur#41) * Only keep variables as keys in the unroller cache * Add cache check back in -- but still not adding to it Co-authored-by: Ahmed Irfan <[email protected]> * Manually set include directory * Add test suite instantiation for unroller test * CoreIR Encoder (stanford-centaur#33) * Rename files: interpolant.* -> interpolantmc.* * Update setup script for smt-switch * Move trans getter next to init getter * WIP: CMake infrastructure * WIP: cython files * WIP: compiling now * Implement copy-and-swap idiom for transition systems * Revert "Implement copy-and-swap idiom for transition systems" This reverts commit dd42e89. * Assign transition system pointer to member variable in Cython wrapper * Fixes for data structure producing methods * Don't use hash functions directly (rely on overloaded hash struct in C++) * Implement python functions for map getters * Add a functional transition system * Implement Property * minor fix * Add RelationalTransitionSystem (compiling) * Hide Abstract TransitionSystem extension type when importing module -- should never be used directly * Add python tests for transition systems * Run python tests * use folders for pycosa2 header declarations * fix typo * Remove unnecessary linking commands * Pull cython-declarations-fix branch of smt-switch and install smt-switch python bindings * Try compiling btor2tools with fPIC * Install pytest and point to pycosa2 bindings * Implement Unroller in bindings and reorganize tests * Add prover and proverresult * Exit build dir in Travis after building * Implement prover wrapper * Update pythonpath for smt_switch location * cimport on separate lines * Set ld_library_path also * Add cython declarations for engines * Implement python wrappers for engines * Fix environment variable * Don't use Const_Array anymore * Test engines in googletest * Fix for AbstractProver and Property * Print interpolant at high verbosity * Add option to set logger verbosity in python api * Formatting * Add simple test for Cosa2 engines in python API * Add a manually strengthened property test * Add a setup.py file * Add installation instructions for python bindings * Add btor2tools setup to python installation instructions * Switch smt-switch back to master branch * Add BTOR2Encoder to Python API * Expose get_free_symbols to Python API * Formatting * Add wheel for cosa2 (stanford-centaur#27) * add build_wheel scripts for cosa2 * test out cosa2 wheel * test out wheel * make it deploy only * Rename: pycosa2 -> cosa2, cosa2 target -> cosa2-lib * Add slides and python api example * WIP: coreir encoder * WIP: adding different operators to coreir encoder * WIP: main modules implemented * Add the rest of the operators (that I know of) * Refactor and keep set of registers for second pass * Do second pass over registers * Constrain initial states of registers * Add build infrastructure for CoreIREncoder * Merge master and only build coreir when requested * Add setup script for coreir * Add a test for CoreIREncoder * Update coreir version * Fix in instance_of, stub for select cases * First pass on select equalities * Fix: cache created input for forward reference of dst * Keep track of visited instances * Flip type in interface for adding global inputs * Don't count selects as separate inputs * Don't iterate over connections twice, create wire_connection helper, wire connections to global inputs * Populate covered_inputs for global input drivers * Add global inputs to covered_inputs map * Load commonlib and cache dst_parent * Skip instances that have already been processed * Throw exception on reg_arst * Setup for explicit clock encoding * First pass on explicit clock and asynchronous reset encoding * Add WrappedPE test * Fixes: wire up clocks, check arst_driver for states, fix assertion Tests not passing now because of ARST driver -- should hopefully be able to fix for this case by detecting that global "input" ASYNCRESET should actually be a state * Fix: make coreir.arst types state variables for edge behavior * Future proof for memory state elements -- for now throw an exception * Factor out the state processing code in CoreIREncoder * Remove unnecessary extra arst state driver, and use boolsort_ when possible * Fix: use clocked next_st as else branch for arst * Expose CoreIREncoder in Python bindings * Add alternative CoreIREncoder that takes Module* directly * Separate reading the file and encoding the module Co-authored-by: Keyi Zhang <[email protected]> * API Update. Rename: inputs->inputvars, states->statevars (stanford-centaur#45) * Update states/inputs name in python interface * Update use of states/inputs class property to statevars/inputvars in python tests * Increase required CMake version, handle CXX17 flag for versions between 3.5.1 and 3.8 * Revert "Increase required CMake version, handle CXX17 flag for versions between 3.5.1 and 3.8" This reverts commit 02099e8. * Use c++1z format for Mac (stanford-centaur#47) * fix a conflict bug * add boolean and change map to vector * add negative integer * add more sort aliasing * resolve conflicts * change sample file * merge cocnflicct * fix name errors and add more type checking * change trans/init parsing, add real type in SMVnode * add word array type Co-authored-by: Makai Mann <[email protected]> Co-authored-by: Ahmed Irfan <[email protected]> Co-authored-by: Hongce Zhang <[email protected]> Co-authored-by: Keyi Zhang <[email protected]> Co-authored-by: Ahmed Irfan <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Ensure that the map from btor2 line ids to terms is always populated (unless the line was a sort).