Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions pabutools/election/ballot/approvalballot.py
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,9 @@ def __init__(
if isinstance(init, AbstractBallot):
meta = init.meta
else:
meta = dict
FrozenBallot.__init__(self, name, meta)
AbstractApprovalBallot.__init__(self)
meta = dict()
FrozenBallot.__init__(self, name=name, meta=meta)
AbstractApprovalBallot.__init__(self, name=name, meta=meta)

def __new__(
cls,
Expand Down Expand Up @@ -126,8 +126,8 @@ def __init__(
meta = init.meta
else:
meta = dict()
Ballot.__init__(self, name, meta)
AbstractApprovalBallot.__init__(self)
Ballot.__init__(self, name=name, meta=meta)
AbstractApprovalBallot.__init__(self, name=name, meta=meta)

def frozen(self) -> FrozenApprovalBallot:
"""
Expand Down
6 changes: 3 additions & 3 deletions pabutools/election/ballot/cardinalballot.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ def __init__(
else:
meta = dict()
FrozenBallot.__init__(self, name=name, meta=meta)
AbstractCardinalBallot.__init__(self)
AbstractCardinalBallot.__init__(self, name=name, meta=meta)

def __setitem__(self, key, value):
raise ValueError("You cannot set values of a FrozenCardinalBallot")
Expand Down Expand Up @@ -125,9 +125,9 @@ def __init__(
if isinstance(init, AbstractBallot):
meta = init.meta
else:
meta = dict
meta = dict()
Ballot.__init__(self, name=name, meta=meta)
AbstractCardinalBallot.__init__(self)
AbstractCardinalBallot.__init__(self, name=name, meta=meta)

def complete(self, projects: Iterable[Project], default_score: Numeric) -> None:
"""
Expand Down
8 changes: 4 additions & 4 deletions pabutools/election/ballot/cumulativeballot.py
Original file line number Diff line number Diff line change
Expand Up @@ -75,9 +75,9 @@ def __init__(
if isinstance(init, AbstractBallot):
meta = init.meta
else:
meta = dict
meta = dict()
FrozenBallot.__init__(self, name=name, meta=meta)
AbstractCumulativeBallot.__init__(self)
AbstractCumulativeBallot.__init__(self, name=name, meta=meta)

def __setitem__(self, key, value):
raise ValueError("You cannot set values of a FrozenCumulativeBallot")
Expand Down Expand Up @@ -134,9 +134,9 @@ def __init__(
if isinstance(init, AbstractBallot):
meta = init.meta
else:
meta = dict
meta = dict()
CardinalBallot.__init__(self, init, name=name, meta=meta)
AbstractCumulativeBallot.__init__(self)
AbstractCumulativeBallot.__init__(self, name=name, meta=meta)

def frozen(self) -> FrozenCumulativeBallot:
"""
Expand Down
6 changes: 3 additions & 3 deletions pabutools/election/ballot/ordinalballot.py
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,8 @@ def __init__(
meta = init.meta
else:
meta = dict()
FrozenBallot.__init__(self, name, meta)
AbstractOrdinalBallot.__init__(self)
FrozenBallot.__init__(self, name=name, meta=meta)
AbstractOrdinalBallot.__init__(self, name=name, meta=meta)

def __new__(
cls,
Expand Down Expand Up @@ -154,7 +154,7 @@ def __init__(
meta = dict()
dict.__init__(self, {e: None for e in init})
Ballot.__init__(self, name=name, meta=meta)
AbstractOrdinalBallot.__init__(self)
AbstractOrdinalBallot.__init__(self, name=name, meta=meta)

def append(self, project: Project) -> None:
"""
Expand Down
5 changes: 2 additions & 3 deletions pabutools/rules/phragmen.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,9 +72,9 @@ def sequential_phragmen(
) -> BudgetAllocation | list[BudgetAllocation]:
"""
Phragmén's sequential rule. It works as follows. Voters receive money in a virtual currency. They all start with a
budget of 0 and that budget continuously increases. As soon asa group of supporters have enough virtual currency to
budget of 0 and that budget continuously increases. As soon as a group of supporters have enough virtual currency to
buy a project they all approve, the project is bought. The rule stops as soon as there is a project that could be
bought but only by violating the budget constraint.
bought but only by violating the budget constraint.

Note that this rule can only be applied to profiles of approval ballots.

Expand Down Expand Up @@ -211,7 +211,6 @@ def aux(

approval_scores = {project: profile.approval_score(project) for project in instance}

print("\n")
all_budget_allocations: list[BudgetAllocation] = []
aux(
initial_projects,
Expand Down
Loading