The New York City Board of Elections published an inaccurate tally of votes for the Democratic primary for Mayor. It appeared that there was a near-death heat during an automatic race before the actual count was revealed to be a fiasco. The results showed that Eric Adams, the front-runner, had a significantly smaller lead than Kathryn Garcia or Maya Wiley. Adams campaign pointed out an error in the results, prompting the board to withdraw its report. Later, the board revealed that 135,000 test ballots had been mistakenly included in the actual ballot group. This error occurred after the first use of ranked choice voting in the city. In this system, voters can order candidates according to their preference. Votes are then re-assigned until a candidate reaches a majority. Although the board will release a corrected intermediary count on Wednesday, it is likely that final results won't be available for several weeks.AdvertisementAdvertisementAdvertisementAndrew Myers, a Cornell University computer science professor, gave me a detailed explanation of the issues. He has been running an open-source, online ranked-choice voting system called CIVS for 18 years. Organizations can use it to conduct their own elections. This is a condensed version of our conversation that has been edited for clarity.Slate: Based on your experience with ranked-choice voting, how did you feel about the voting infrastructure and systems New York City built for the race? It seemed promising.Andrew Myers: While I don't know all the details of the software they used, it is difficult to make it work the first time when dealing with a complex system with software, humans, and many complicated processes. It seems that they made an error in counting test ballots. This is something they should have spotted earlier and corrected before they released the results.AdvertisementThis could have been a human error or a technical glitch.Although it is difficult to predict, it seems that the system wasn't tested thoroughly before it was put online. Even if they had, I would expect problems. If you run the system with 10,000 people and then scale it up, you suddenly see changes and new types of bugs. But this bug seems to be the type you could have caught with a 10,000-vote trial.AdvertisementI believe they should have noticed the fact that the results weren't right. This is an error by humans, but it should not have happened. It is important to have a system like this that can be accessed easily. All processes should be well-understood and everyone knows exactly what to do at each stage. Inadvertently including fake data indicates that they don't have solid processes.AdvertisementWhat is the procedure for testing ballots?You would expect them to have a set of input files that would specify the ballots to be counted. Perhaps separate files for each geographical region. Or, mail-in votes could be handled separately. They probably included the file they used to test the system in those input files.They would have been better able to spot ballots that were not supposed to be there during actual tabulation if they had performed more solid tests.Although they were testing the system using their test ballots, you would expect them to conduct a mock election in which all ballots had been collected, tabulated, and then run through the entire process until they decided what the outcome was. All of this would be preprogrammed so that there wouldn't be any humans performing the intermediate steps. The inputs would be made at the beginning, then the entire process would be run through and the final results presented. I believe this suggests that their processes were too manual and that they didn't do enough cross-checking so that the automated process was working as they expected.AdvertisementAdvertisementThis error caused it to appear that the differences in vote counts between Eric Adams, the front-runner, and two of his rivals was smaller than they were at the time of the tabulation process. Could this be because test ballots took earlier polling into account, which would have suggested that the race was very close.This seems to be a plausible speculation. It is possible that they used current polling numbers to create the test ballots. This would then tend to strengthen certain directions that may not reflect the actual electorate.Are ranked-choice voting systems more complex or more prone to errors?AdvertisementYes. New York's rank-choice voting system works by running a series of simulated runoff election using the ballots. This would make it more difficult to spot potential problems. One of the best features of plurality voting, the traditional election method we all know, is what we call a summable vote system. It is possible to tabulate each district's election outcome and then add them together to find the final result. In ranked choice voting, each ballot must be submitted to one central location. If mistakes are made they can affect all. Each district can produce its own results in plurality voting. Although mistakes might be made by a district, you can still analyze each one and determine if it is correct. With ranked choice voting, there is one algorithm that takes all the ballots and uses them in a way that is somewhat unpredictable.AdvertisementAdvertisementWhat can the Board of Elections do so that this kind of error does not happen again?Automation, verification, cross-checking, and making sure the correct data is available at every stage would be my recommendations. You should verify that the computation is correct at every stage, but you also shouldn't allow humans to manually move data.In the ideal scenario, however, it would be automated through all stages, but more people would be involved to monitor how things are going at each stage.Yes. With the existing plurality voting system, we know how to do it. Over hundreds of years, the processes have been perfected to do that. This kind of stuff is not something we have as much experience.Future Tense is a collaboration between Slate, New America and Arizona State University. It examines emerging technologies and public policy.