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

instrument mechanism / verified-clean

Perpetuity Value mechanism

The inspectable method record for Perpetuity Value, kept separate from implementation and qualification.

Status: VERIFIED_CLEANLifecycle: verified-clean

Model scope

The existing honest label correctly warns that the growing model breaks when g≥r, but it should also disclose the PMT timing convention, the end-of-period assumption for level payments, and the requirement that rate and growth use matching periodic decimal units.

  • The level perpetuity formula PV=PMT/r is standard only for equal payments made at the end of each period, with PMT representing each periodic payment and r>0.
  • The growing perpetuity formula PV=PMT/(r-g) is standard when PMT is the first payment one period from valuation (PMT1). If PMT is the current payment (PMT0), the formula must be PV=PMT*(1+g)/(r-g). The spec does not define which meaning applies.
  • Both rate and growth inputs must use the same compounding period and consistent units.

Units and conventions

  • PMT is a cash payment per period, expressed in currency units.
  • rate and g are decimal periodic rates, so 5% is entered as 0.05, not 5.
  • For these test vectors, level payments occur at the end of each period and growing PMT is the first payment one period from valuation.
  • The rate and growth rate are nominally comparable only when they use the same period and compounding convention.

Inspectable vector

One of 4 source-bound review vectors:

{
  "inputs": {
    "mode": "level",
    "PMT": 1000,
    "rate": 0.05
  },
  "expected_outputs": {
    "PV": 20000
  },
  "working": "PV=PMT/r=1000/0.05=1000/(5/100)=1000*20=20000."
}

Failure boundary

BREAK_CLAIMED · SELF_FLAGGED

The instrument has an undefined-result failure when g equals r: the growing-perpetuity denominator r-g becomes zero. It also must reject the broader invalid region g > r, where the infinite stream does not converge. Ambiguous rate units and cash-flow signs can produce materially different outputs if conventions are not specified.

Other records

Sources and evidence

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

  • VERIFIED_LEDGER.json
  • evidence-tranche2/tranche2-results.json
  • BOUNDARY_HAZARD_CATALOG.json