Multiple data types for pointer manipulation proofs #100
-
For pointer manipulation functions(e.g.
Would it be better to write separate proofs for each data type(this would result in 10+ proofs for each function) or to combine them in one proof? Since there are many integer types, is it enough to use an i8 array to represent all integer types? Thank you! @zhassan-aws |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments
-
I would recommend writing separate harnesses for each of the types. It's nice to have smaller harnesses so that you can more easily pinpoint issues if verification fails or if a harness is posing a performance bottleneck. |
Beta Was this translation helpful? Give feedback.
-
Hi @QinyuanWu, please let us know if you have any follow up question or if we can close this question. Thanks! |
Beta Was this translation helpful? Give feedback.
I would recommend writing separate harnesses for each of the types. It's nice to have smaller harnesses so that you can more easily pinpoint issues if verification fails or if a harness is posing a performance bottleneck.
For the integer types question -- no, we want to verify all integer types, not just
i8
. I would suggest writing a declarative macro that generates a harness given an integer type as a parameter. That way, it will be easy for you to generate harnesses for multiple integer types (and it also saves on space). For now, I'd recommend gettingi8
working, and then you can move on to the other integer types.