Description
Compare explicit unassigned-seat remainders without selecting an apportionment method.
Election and representation indicators depend on the selected vote, seat, population, or eligibility denominator. A threshold also needs an explicit equality and rounding rule. A single quotient, balance, or share can support a larger counting workflow without implementing the full electoral procedure.
Compare explicit unassigned-seat remainders without selecting an apportionment method.
When to use this tool
Use Seat Transfer Remainder Gap when you need this particular counting term under an explicit vote, seat, threshold, or reporting-base rule.
How to use the tool and how it works
- Enter beforeSeats, afterSeats, totalSeats. Keep parallel arrays aligned. Use the units and conventions below.
- Run the tool. Correct any format, range, or cross-field input error before interpreting the output.
- Read beforeRemainderDecimal, afterRemainderDecimal, remainderChangeDecimal. Use the output convention below.
Require equally sized nonnegative integer beforeSeats and afterSeats arrays and nonnegative integer totalSeats. Use exact integer sums for beforeRemainderDecimal=totalSeats-sum(beforeSeats), afterRemainderDecimal=totalSeats-sum(afterSeats), and remainderChangeDecimal=after-before.1
| Input field | Meaning and units | Accepted input |
|---|---|---|
| beforeSeats | Before Seats | Required. Array of safe integer; maximum items 256. |
| afterSeats | After Seats | Required. Array of safe integer; maximum items 256. |
| totalSeats | Total Seats | Required. Safe integer; minimum 0. |
| Output field | Interpretation | Returned shape |
|---|---|---|
| beforeRemainderDecimal | Exact signed decimal integer text; total minus prior assigned seats. | Required. Text; maximum UTF-16 length 8192. |
| afterRemainderDecimal | Exact signed decimal integer text; total minus new assigned seats. | Required. Text; maximum UTF-16 length 8192. |
| remainderChangeDecimal | Remainder Change Decimal | Required. Text; maximum UTF-16 length 8192. |
{
"input": {
"beforeSeats": [
2,
3
],
"afterSeats": [
3,
3
],
"totalSeats": 7
},
"output": {
"beforeRemainderDecimal": "2",
"afterRemainderDecimal": "1",
"remainderChangeDecimal": "-1"
}
} Limitations and assumptions
- Results are decimal integer text and may be negative when assigned seats exceed the total. Seat conservation and a valid transfer procedure are not enforced.
- Inputs must satisfy both the field types and the cross-field conditions above. Invalid input causes an error; a successful false flag or documented placeholder is a different result.
- Numeric calculations use binary floating point unless exact decimal-integer arithmetic is explicitly stated. No hidden measurement tolerance or decimal rounding is added; nonfinite or out-of-contract results are rejected. Signed zero is exported as zero.
Alternative or Complementary methods
Compare the supplied counting rule with the authoritative procedure for the relevant election or chamber. Complete allocations need additional eligibility, ranking, transfer, tie, and reporting rules beyond one arithmetic term.
References
Similar or alternative tools
- Ballot Transfer Exhaustion One Round
For nonnegative integer transferable, exhausted within transferable, and nonnegative integer receivedByCandidates, return continuing=sum(receivedByCandidates), accounted=exhausted+continuing, and balanced=(accounted===transferable).
- Bicameral Seat Share One Chamber
For positive integer occupiedSeats, partySeats within occupiedSeats, and nonnegative vacantSeats choose denominator=occupiedSeats plus vacantSeats only if includeVacancies; return share=partySeats/denominator.