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

instrument mechanism / verified-clean

APR vs APY Converter mechanism

The inspectable method record for APR vs APY Converter, kept separate from implementation and qualification.

Status: VERIFIED_CLEANLifecycle: verified-clean

Model scope

The forward formula is mathematically correct under the stated nominal-rate assumptions, but the specification needs the inverse formula, valid-domain constraints, decimal-rate convention, and an explicit definition of difference before release. The honest label should say 'Educational compounding-only estimate; excludes fees and regulatory APR calculations' rather than implying it reproduces every loan APR.

  • APY=(1+APR/n)^n-1 is correct only for converting a decimal nominal annual rate (APR) to an effective annual rate (APY) with n equal compounding periods per year.
  • The claimed reverse direction, APY to APR, is not specified. The standard inverse is APR=n*((1+APY)^(1/n)-1).
  • The output 'difference' is undefined: its sign and whether it means APY-APR, APR-APY, or absolute difference must be specified.
  • The formula does not represent all real-world loan APR definitions when APR includes fees, points, mandatory charges, irregular payment timing, or regulatory calculation conventions.

Units and conventions

  • APR and APY are entered and returned as decimal rates: 0.12 means 12%, not 12.
  • n is the positive number of equal compounding periods per year; standard use is a positive integer such as 1, 2, 4, 12, or 365.
  • The test-vector difference is assumed to mean APY-APR, in decimal-rate units.
  • The formula assumes nominal APR with periodic rate APR/n and no fees, taxes, cash-flow irregularities, or intra-period effects.

Inspectable vector

One of 4 source-bound review vectors:

{
  "inputs": {
    "direction": "APR_to_APY",
    "APR": 0.12,
    "n": 12
  },
  "expected_outputs": {
    "APY": 0.12682503013196977,
    "difference_APY_minus_APR": 0.00682503013196977
  },
  "working": "APR/n = 0.12/12 = 0.01. APY = (1+0.01)^12 - 1 = 1.01^12 - 1 = 1.1268250301319698 - 1 = 0.12682503013196977. Difference = APY - APR = 0.12682503013196977 - 0.12 = 0.00682503013196977."
}

Failure boundary

BREAK_CLAIMED · SELF_FLAGGED

The n=0 input creates division by zero and an undefined exponentiation, so the converter must reject it rather than return a numeric APY. The unit-ambiguity vector also shows that accepting an unlabeled APR value can produce materially different results.

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-tranche4/tranche4-results.json
  • BOUNDARY_HAZARD_CATALOG.json