Closed Anonymous-Stranger closed 3 years ago
Update: After discussion with Aarti, I'm going to revise this model to keep input and output objects separate. Will fix accordingly and include in the SIMD-instructions pull request.
The simd instructions PR will also be complex, so I decided to reopen this one. Effectively, I've just taken @Bo-Yuan-Huang's advice that we separate input and state objects everywhere.
Also included is an alpha of some transformation functions for partitioning, zipping/unzipping, projecting, and joining certain kinds of objects. The code is correct, but I didn't include these functions in the facade because I wasn't sure about the return type of partitioning.
Also something to think about: should I go through and rename vector to array everywhere? As I've started working with CHCs, it seems to me like the model may eventually need vectors where the capacity is an SMT variable, and that may be more deserving of the name "vector". Dunno if it's worth the effort to do all that renaming on a hunch.