Two vectors of the sign_verify test use different partial signatures even though their signer set, message, and nonces are the same. These are those two vectors:
Vector 1 (in valid_test_ cases):
"key_indices": [0, 1, 2],
"nonce_indices": [0, 1, 2],
"aggnonce_index": 0,
"msg_index": 0,
"signer_index": 0,
"expected": "012ABBCB52B3016AC03AD82395A1A415C48B93DEF78718E62A7A90052FE224FB"
Vector 2 (in verify_fail_test_cases):
"sig": "68537CC5234E505BD14061F8DA9E90C220A181855FD8BDB7F127BB12403B4D3B",
"key_indices": [0, 1, 2],
"nonce_indices": [0, 1, 2],
"msg_index": 0,
"signer_index": 1,
"comment": "Wrong signer"
In Vector 2, if we change the signer_index to 0 (the correct index), partial_sig_verify will still fail. Therefore, it has the incorrect partial signature. As a result, creating another vector by negating this paritalsig is also incorrect.
This PR fixes Vector 2 and the one created by negating Vector 2’s partial signature.