Page actions
instrument mechanism / verified-clean
APR vs APY Converter mechanism
The inspectable method record for APR vs APY Converter, kept separate from implementation and qualification.
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.jsonevidence-tranche4/tranche4-results.jsonBOUNDARY_HAZARD_CATALOG.json