Ok, here's what I hope is my final draft of this proposed constitutional amendment. I've added language reduce the options to the smith set before falling back on condorcet.
I'd like to allow a day for people to poke holes in this one. I'm looking for outright flaws, not style issues. If no one comes up with an ambiguity or such in the next 24 hours, could the people who sponsored my prior proposal sponsor this one instead? [Note that I'm withdrawing my support for my prior proposal.] [I know that there's open questions, like: should vote tallying be described using psuedo code? Presumably, Norman's group will ponder these sorts of questions, and come up with a good answer.] As far as the DFSG issue goes: we may or may not need the robustness of this replacement voting mechanism for the DFSG. We also may or may not need it for other issues which come up. However, we can't prove that we aren't going to need a robust vote tallying mechanism. I'll run through Anthony's example which demonstrated that my prior proposal was broken, at the bottom of this message. --- debian/constitution.txt Tue Sep 14 18:00:00 1999 +++ tmp/constitution.txt Tue Dec 19 22:43:02 2000 @@ -162,7 +162,7 @@ This does not apply to decisions which have only become gradually urgent through lack of relevant action, unless there is a fixed deadline. - 4. Make any decision for whom noone else has responsibility. + 4. Make any decision for whom no one else has responsibility. 5. Propose draft General Resolutions and amendments. 6. Together with the Technical Committee, appoint new members to the Committee. (See s.6.2.) @@ -197,9 +197,9 @@ nominated themselves and have not yet withdrawn, plus None Of The Above. If None Of The Above wins the election then the election procedure is repeated, many times if necessary. - 7. The decision will be made using Concorde Vote Counting. The quorum - is the same as for a General Resolution (s.4.2) and the default - option is None Of The Above. + 7. The decision will be made using Smith/Condorcet Vote Counting. The + quorum is the same as for a General Resolution (s.4.2) and + the default option is None Of The Above. 8. The Project Leader serves for one year from their election. 5.3. Procedure @@ -259,7 +259,7 @@ including themselves; there is no None Of The Above option. The vote finishes when all the members have voted or when the outcome is no longer in doubt. The result is determined according to - Concorde Vote Counting. + Smith/Condorcet Vote Counting. 8. The Chairman can stand in for the Leader, together with the Secretary As detailed in s.7.1(2), the Chairman of the Technical Committee @@ -470,8 +470,8 @@ amendments will be voted on instead of the originals. 6. The proposer of a resolution may make changes to correct minor errors (for example, typographical errors or inconsistencies) or - changes which do not alter the meaning, providing noone objects - within 24 hours. In this case the mininum discussion period is not + changes which do not alter the meaning, providing no one objects + within 24 hours. In this case the minimum discussion period is not restarted. A.2. Calling for a vote @@ -508,18 +508,17 @@ procedure is set back to the start of the discussion period. 3. The vote taker (if there is one) or the voters (if voting is done by public pronouncement) may arrange for these ballots to be held - simultaneously, even (for example) using a single voting message. - If amendment ballot(s) and the final ballot are combined in this - way then it must be possible for a voter to vote differently in - the final ballot for each of the possible forms of the final draft - resolution. + simultaneously, even (for example) using a single voting message, + or a single ballot. If amendment ballot(s) and the final + ballot are combined in this way then the final ballot must + present every possible outcome as an option. 4. Votes may be cast during the voting period, as specified elsewhere. If the voting period can end if the outcome is no longer in doubt, the possibility that voters may change their votes is not considered. - 5. The votes are counted according to the Concorde Vote Counting. If - a quorum is required then the default option is Further - Discussion. + 5. The votes are counted according to the Smith/Condorcet Vote + Counting. If a quorum is required then the default option is + Further Discussion. 6. In cases of doubt the Project Secretary shall decide on matters of procedure (for example, whether particular amendments should be considered independent or not). @@ -544,48 +543,79 @@ otherwise dealt with for 4 weeks then it is considered to have been withdrawn. - A.6. Concorde Vote Counting + A.6. Smith/Condorcet Vote Counting 1. This is used to determine the winner amongst a list of options. Each ballot paper gives a ranking of the voter's preferred options. (The ranking need not be complete.) - 2. Option A is said to Dominate option B if strictly more ballots - prefer A to B than prefer B to A. - 3. All options which are Dominated by at least one other option are - discarded, and references to them in ballot papers will be - ignored. - 4. If there is any option which Dominates all others then that is the - winner. - 5. If there is now more than one option remaining Single - Transferrable Vote will be applied to choose amongst those - remaining: - + The number of first preferences for each option is counted, - and if any option has more than half it is the winner. - + Otherwise the option with the lowest number of first - preferences is eliminated and its votes redistributed - according to the second preferences. - + This elimination procedure is repeated, moving down ballot - papers to 2nd, 3rd, 4th, etc. preferences as required, until - one option gets more than half of the `first' preferences. - 6. In the case of ties the elector with a casting vote will decide. - The casting vote does not count as a normal vote; however that - elector will usually also get a normal vote. - 7. If a supermajority is required the number of Yes votes in the - final ballot is reduced by an appropriate factor. Strictly - speaking, for a supermajority of F:A, the number of ballots which - prefer Yes to X (when considering whether Yes Dominates X or X - Dominates Yes) or the number of ballots whose first (remaining) - preference is Yes (when doing STV comparisons for winner and - elimination purposes) is multiplied by a factor A/F before the - comparison is done. This means that a 2:1 vote, for example, means - twice as many people voted for as against; abstentions are not - counted. - 8. If a quorum is required, there must be at least that many votes - which prefer the winning option to the default option. If there - are not then the default option wins after all. For votes - requiring a supermajority, the actual number of Yes votes is used - when checking whether the quorum has been reached. - + 2. A square "initial totals table" is constructed, recording the + ballot totals: the number in the table at row j, column k indicates + the number of ballots which prefer ballot option j to ballot + option k. + 3. A square "adjusted totals table" is constructed such that all + entries in row j from the initial totals table have been + multiplied by m and divided by n where option j has an n:m + majority requirement. For options with no such majority + requirement, the row in the adjusted totals table is the same as + the row from the initial totals table. + 4. A "transposed adjusted totals table" is constructed such that + row j, column k of the transposed adjusted totals table is the + same as row k, column j of the adjusted totals table. + 5. A square "beats table" is constructed which has a 1 where + the value in adjusted totals table is greater than the value at + the same location in the transposed adjusted totals table, and + a 0 otherwise. + 6. Each element of the beats table is checked for transitive + properties: if row j, column k corresponds to any row j, column + n which is 1 and also corresponds to a row n, column k which is 1, + then row j, column k becomes a 1. This process is repeated until + no further change is possible. + 7. Each row of the beats table is totaled. The largest total + is identified. Any option corresponding to a column with a + total less than the largest is eliminated, and a new + reduced adjusted totals table is constructed from the adjusted + totals table by eliminating all rows and columns which correspond + to eliminated options. + 8. A four column "winning criteria table" is constructed with one row + for each cell in the reduced adjusted totals table: the "for" + column holds option j; the "against" column holds option k; the + "votes in favor" column holds the value from the adjusted totals + table for row j, column k; the "votes against" column holds + the value from the reduced adjusted totals table for row k, column j. + 9. The winning criteria table is sorted in a descending order based on + the "votes in favor" column (and, where values in the "votes + in favor" column are equal, in an ascending order based on the + "votes against" column). + 10. Eliminate all rows from the winning criteria table where "votes + in favor" are less than the corresponding "votes against" column. + If only a single option remains, in the "for" column, it is the + chosen option. + 11. If there is a single option in "for" column of the winning criteria + table which does not appear in "against" column, that option is + the chosen option. + 12. If there are multiple options in the "for" column of the chosen + criteria table which do not appear in "against" column, the + option(s) which correspond to rows in the winning criteria table + where "votes in favor" and "votes against" equivalent to those + of the first row are candidates for being chosen. If there's + more than one candidate for being chosen, the person with a + casting vote picks the chosen option from among the options listed + in the "for" column of the candidate rows. If there's only one + candidate, the option listed in the "for" column of the candidate + row is the chosen option. + 13. Until there is a chosen option, the last row of the winning + criteria table is examined and (permanently) removed from the + winning criteria table. At the same time, any adjacent row(s) are + removed, if they are identical to what the removed row has in the + "votes in favor" and "votes against" columns. Exception: if all + rows of the winning criteria would be eliminated, the person with + a casting vote picks the chosen option from those which remained + in the "for" column. + 14. Once the chosen option is picked, the ballots are re-checked: + if the number of ballots which mention the chosen option is less + than a quorum for the vote, the default option wins. Otherwise, + the chosen option wins. + When the Standard Resolution Procedure is to be used, the text which refers to it must specify what is sufficient to have a draft resolution proposed and/or sponsored, what the minimum discussion Sample ballot: with five options: A, B, C, X, and o. I'm indicating preference in order from left to right. 30 ballots: ABCXo 20 ballots: BCAXo 10 ballots: XBCAo 30 ballots: XCABo Initial totals table: A B C X o A 0 60 30 50 90 B 30 0 60 50 90 C 60 30 0 50 90 X 40 40 40 0 90 o 0 0 0 0 0 The adjusted totals table is the same. The transposed adjusted totals table is: A B C X o A 0 30 60 40 0 B 60 0 30 40 0 C 30 60 0 40 0 X 50 50 50 0 0 o 90 90 90 90 0 The beats table (before transitive closure) is: A B C X o A 0 1 0 1 1 B 0 0 1 1 1 C 1 0 0 1 1 X 0 0 0 0 1 o 0 0 0 0 0 The beats table (after transitive closure) is: A B C X o A 1 1 1 1 1 B 1 1 1 1 1 C 1 1 1 1 1 X 0 0 0 0 1 o 0 0 0 0 0 The row totals are: A 5 B 5 C 5 X 1 o 0 X and o are eliminated, so the reduced adjusted totals table is: A B C A 0 60 30 B 30 0 60 C 60 30 0 The winning criteria table is (after sorting): votes in votes for against favor against A B 60 30 B C 60 30 C A 60 30 A C 30 60 B A 30 60 C B 30 60 A A 0 0 B B 0 0 C C 0 0 Note that the sorting is arbitrary between rows where votes are the same, but that doesn't affect the outcome, because the tallying mechanism treats rows the same, if they have the same votes values. After getting rid rows where "in favor" is less than "against", we have: votes in votes for against favor against A B 60 30 B C 60 30 C A 60 30 A A 0 0 B B 0 0 C C 0 0 And, after the first round of iterative elimination, we have: votes in votes for against favor against A B 60 30 B C 60 30 C A 60 30 At this point, rule 12 kicks in, and the person with the casting vote chooses one of these three options. Quorum wouldn't be an issue unless we had a lot more developers than this year. Thanks, -- Raul