Guth
NewsDocs
Page actions
View as Markdown ↗
Explore MCP tools ↗

instrument / verified-clean

Extra-Payment Payoff Impact

The current ledger marks this instrument verified clean within the source-bound verification corpus.

Status: VERIFIED_CLEANLifecycle: verified-clean

Inspectable records

Ledger state

The current ledger marks this instrument verified clean within the source-bound verification corpus.

Area
Finance, Economics & Business (educational only — never individualized investment, tax, or legal advice)
Tranche
tranche-3
Evidence ID
t3-020
Ledger rows
1

No ledger note is attached.

Review findings

The educational-only and non-individualized-advice labeling is appropriate, but the specification needs an exact recurrence, PMT definition, baseline definition, rate convention, final-payment rule, validation constraints, and one-time-payment timing before the formula can receive PASS.

Formula and scope findings

  • The formula is too abbreviated to be independently verified: it does not specify the balance recurrence, interest accrual timing, payment timing, or whether the rate is nominal or effective.
  • PMT is referenced but its formula and required inputs are not specified. A standard monthly PMT requires principal, periodic interest rate, and number of periods.
  • The comparison baseline is not explicitly defined. Interest saved and months saved must compare against the original schedule using the scheduled payment with no extra payment.
  • The treatment of the final partial payment is unspecified. A correct implementation should cap the final payment at the remaining balance after interest rather than charging the full PMT+extra.
  • One-time extra payments are listed as an input mode, but the formula only describes adding extra to every period. The timing of a one-time payment—origination, immediately before a scheduled payment, or after a scheduled payment—is unspecified.
  • The formula does not state whether extra payments reduce the term while the scheduled payment remains fixed, or whether the loan is formally re-amortized to a new scheduled payment. Those are different calculations.

Unit assumptions

  • Test vectors assume monthly payments, monthly compounding, and a nominal annual interest rate divided by 12 to obtain the monthly rate.
  • Interest is accrued first each month, then the payment is applied: new_balance = old_balance * (1 + monthly_rate) - payment.
  • The final payment is the exact remaining balance after that month's interest and is not replaced by the full scheduled-plus-extra amount.
  • Months saved means original payoff-period count minus accelerated payoff-period count; it does not account for calendar-day differences.
  • Dates assume the first payment is one month after the supplied start date and payments occur on the same day of each month.
  • For the one-time test vector only, the extra payment is assumed to occur immediately at origination before any interest accrues.

Boundary hardening

BREAK_CLAIMED · SELF_FLAGGED

A payment equal to the periodic interest on the initial principal produces a zero denominator in the closed-form payoff calculation and an invariant balance, so the loan never pays off. The instrument must reject or explicitly report this undefined/no-payoff case. Sign conventions for extra_payment can also change a valid payoff into this no-payoff case.

Errata and corrections

No applied erratum is attached to this unique-name record.

Inspectable example

4 review vectors are recorded. One source-bound sample is shown below.

{
  "inputs": {
    "principal": 1000,
    "annual_rate": 0.12,
    "term_months": null,
    "scheduled_payment": 250,
    "extra_payment": 100,
    "frequency": "monthly",
    "extra_mode": "per_period",
    "start_date": "2025-01-01"
  },
  "expected_outputs": {
    "new_payoff_date": "2025-04-01",
    "original_payoff_date": "2025-06-01",
    "interest_saved": 5.9927976,
    "months_saved": 2
  },
  "working": "Monthly rate = 0.12 / 12 = 0.01. Original schedule: B1 = 1000*1.01 - 250 = 760; B2 = 760*1.01 - 250 = 517.6; B3 = 517.6*1.01 - 250 = 272.776; B4 = 272.776*1.01 - 250 = 25.50376; B5 = 25.50376*1.01 = 25.7587976, so the final original payment is 25.7587976 and original interest = 25.7587976. Accelerated payment = 250 + 100 = 350. B1 = 1000*1.01 - 350 = 660; B2 = 660*1.01 - 350 = 316.6; B3 = 316.6*1.01 = 319.766, so the final accelerated payment is 319.766 and accelerated interest = 2*350 + 319.766 - 1000 = 19.766. Interest saved = 25.7587976 - 19.766 = 5.9927976. Months saved = 5 - 3 = 2. The third payment is on 2025-04-01."
}

Related workflows

Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

  • VERIFIED_LEDGER.json · VERIFIED_CLEAN
  • evidence-tranche3/tranche3-results.json
  • BOUNDARY_HAZARD_CATALOG.json