NAME

Vote::Count::Redact

VERSION 2.04

Methods for Redacting Ballots.

Purpose

Redacting Ballots is useful for what-if analysis and identifying Later Harm effects. Compound Methods seeking to reduce Later Harm effects can also be developed using this technique.

use Vote::Count::Redact qw/RedactPair RedactBullet RedactSingle/;

RedactBullet

Takes a list (array) of choices to be converted to bullet votes. Returns a modified BallotSet where all votes that had a first choice vote for a member of the list are votes for only that choice.

my $newBallotSet = RedactBullet( $Election->BallotSet(), 'A', 'B', 'F');

RedactSingle

Return a new BallotSet truncating the ballots after the given choice.

my $newBallotSet = RedactSingle( $VoteCountObject->BallotSet(), $choice);

RedactPair

For a Ballot Set and two choices, on each ballot where both appear it removes the later one and all subsequent choices, returning a completely independent new BallotSet. If the later choices were left intact, they would become votes against the redacted choices in those pairings.

my $newBallotSet = RedactPair( $VoteCountObject->BallotSet(), 'A', 'B');

BUG TRACKER

https://github.com/brainbuz/Vote-Count/issues

AUTHOR

John Karr (BRAINBUZ) brainbuz@cpan.org

CONTRIBUTORS

Copyright 2019-2021 by John Karr (BRAINBUZ) brainbuz@cpan.org.

LICENSE

This module is released under the GNU Public License Version 3. See license file for details. For more information on this license visit http://fsf.org.

SUPPORT

This software is provided as is, per the terms of the GNU Public License. Professional support and customisation services are available from the author.