A Self-Enforcing Protocol to Solve Gerrymandering

Read Time:1 Minute, 49 Second

In 2009, I wrote:

There are several ways two people can divide a piece of cake in half. One way is to find someone impartial to do it for them. This works, but it requires another person. Another way is for one person to divide the piece, and the other person to complain (to the police, a judge, or his parents) if he doesn’t think it’s fair. This also works, but still requires another person—­at least to resolve disputes. A third way is for one person to do the dividing, and for the other person to choose the half he wants.

The point is that unlike protocols that require a neutral third party to complete (arbitrated), or protocols that require that neutral third party to resolve disputes (adjudicated), self-enforcing protocols just work. Cut-and-choose works because neither side can cheat. And while the math can get really complicated, the idea generalizes to multiple people.

Well, someone just solved gerrymandering in this way. Prior solutions required either a bipartisan commission to create fair voting districts (arbitrated), or require a judge to approve district boundaries (adjudicated), their solution is self-enforcing.

And it’s trivial to explain:

One party defines a map of equal-population contiguous districts.
Then, the second party combines pairs of contiguous districts to create the final map.

It’s not obvious that this solution works. You could imagine that all the districts are defined so that one party has a slight majority. In that case, no combination of pairs will make that map fair. But real-world gerrymandering is never that clean. There’s “cracking,” where a party’s voters are split amongst several districts to dilute its power; and “packing,” where a party’s voters are concentrated in a single district so its influence can be minimized elsewhere. It turns out that this “define-combine procedure” works; the combining party can undo any damage that the defining party does—that the results are fair. The paper has all the details, and they’re fascinating.

Of course, a theoretical solution is not a political solution. But it’s really neat to have a theoretical solution.

Read More

python-nikola-8.3.0-1.fc38

Read Time:38 Second

FEDORA-2024-1eb20f8ec3

Packages in this update:

python-nikola-8.3.0-1.fc38

Update description:

Update to the latest stable version:

Features

Implement a new plugin manager from scratch to replace Yapsy,
which does not work on Python 3.12 due to Python 3.12 carelessly
removing parts of the standard library (Issue #3719)
Support for Discourse as comment system (Issue #3689)

Bugfixes

Fix loading of templates from plugins with __init__.py files
(Issue #3725)
Fix margins of paragraphs at the end of sections (Issue #3704)
Ignore .DS_Store files in listing indexes (Issue #3698)
Fix baguetteBox.js invoking in the base theme (Issue #3687)
Fix development (preview) server nikola auto
for non-root SITE_URL, in particular when URL_TYPE is full_path.
(Issue #3715)

Read More