Anti-Harassment Tools/SecurePoll Improvements/Test Results/20 9 496 604810680 reorder reverse/archive

From mediawiki.org

3.0.0 (3007c40) 06:36, 26 August 2021[edit]

Output from SecurePoll tally.php: actual

Output from SecurePoll var_export( ->tallier->resultsLog );: https://github.com/dominic998/SecurePoll-Test-Data/blob/main/test_data/20_9_496_604810680_reorder_reverse_3007c40.blt.php

Comments[edit]

SecurePoll and OpenSTV disagree on elected candidates. This is due to how we deal with ties and arithmetic precision.

SecurePoll elects candidates 1, 2, 3, 4, 5, 6, 7 and 8.

OpenSTV elects candidates 1, 2, 3, 4, 5, 6, 7, 8 and 9. The exact outcome is somewhat determined by randomness. Until round ~107 OpenSTV reports candidate 9 as having the same number of votes as the other candidates. If candidate 9 is eliminated randomly before then, they will not win the election. If it does not, they will.

Candidate 9 is eliminated in round 3 by SecurePoll, in spite of the fact they "earned" 1.6776880458616138E-17 votes in that round. The precision of "earned" is greater than "total".

This is the same election as 20_9_496_604810680 but the order votes were cast was reversed. This leads to slight discrepancies in vote calculations. Compare round 3 for this election compared to 20_9_496_604810680. (see Precision#Order_of_operands)