Use different PairStruct for PAPAIR
Clarification and motivation
PAPAIR
and UNPAIR
use the same structure (called PairStruct
), but current structure is correct only for UNPAIR
, because UNPAIR
can produce multiple items on stack and hence can have multiple variable annotations, while PAPAIR
can't.
So VarAnn
s inside PairStruct
inside PAPAIR
are always ignored.
Acceptance criteria
Another representation should be used for PAPAIR
which exactly captures set of all possible PAPAIR
s.