Page actions
instrument / verified-clean
IRR Solver
The current ledger marks this instrument verified clean within the source-bound verification corpus.
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-6
- Evidence ID
- t6-021
- Ledger rows
- 1
No ledger note is attached.
Review findings
The NPV formula is standard for equally spaced cash flows, but the missing period convention, solver controls, root-selection policy, and MIRR definitions prevent an unconditional PASS. Return decimal IRR internally, display percentage separately, and explicitly report no-root and multiple-root cases.
Formula and scope findings
- The core IRR equation is standard, but the specification does not define the time-period convention: each cash-flow-list index must represent an equal period, with CF_0 at t=0.
- The Newton-Raphson/bisection choice is underspecified: no initial guess, bracketing rule, stopping tolerance, maximum iterations, or fallback behavior is given.
- IRR is not necessarily unique for non-conventional cash flows; the implementation must report all discovered roots or clearly state its root-selection policy.
- The domain constraint r > -1 is required for ordinary real-valued discounting. Rates at or below -100% cause undefined or non-real powers for general integer t.
- MIRR is labeled optional but has no finance convention specified for the finance rate, reinvestment rate, treatment of negative cash flows, or period units.
- The output label 'IRR %' is ambiguous unless the returned decimal rate and percentage display convention are explicitly distinguished.
Unit assumptions
- Cash flows use one consistent currency unit; the currency itself does not affect IRR.
- The list element at index t is CF_t and represents an equal time interval; CF_0 occurs at time zero.
- The computed rate is per cash-flow-list period. If periods are monthly, annualization is (1+r_monthly)^12-1; if annual, no annualization is applied.
- Newton-Raphson calculations below use a deterministic initial guess and tolerance of 1e-10 on the rate or NPV residual; displayed percentages multiply the decimal rate by 100.
- The valid ordinary real-rate domain is r > -1.
Boundary hardening
BREAK_CLAIMED · SELF_FLAGGED
The specification exposes undefined evaluations at r=-1, no-real-solution cash flows, and multiple IRRs; a solver that assumes one finite root or does not guard the 1+r denominator can fail or return a misleading result.
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": {
"cash_flows": [
-1000,
1100
],
"method": "Newton-Raphson",
"initial_guess": 0,
"tolerance": 1e-10,
"period": "annual"
},
"expected_outputs": {
"irr_decimal": "0.100000000000000",
"irr_percent": "10.0000000000000%",
"convergence": "converged"
},
"working": "NPV(r) = -1000 + 1100/(1+r). NPV'(r) = -1100/(1+r)^2. Iteration 0: r0=0, NPV=100, NPV'=-1100, so r1=0-100/(-1100)=0.0909090909. Iteration 1: NPV(r1)=-1000+1100/(12/11)=-1000+1008.333333=8.333333; NPV'(r1)=-1100(11/12)^2=-924.305556; r2=0.0909090909-8.333333/(-924.305556)=0.0999248685. Iteration 2 gives r3 approximately 0.0999999949, and the next iteration gives 0.100000000000000. Therefore IRR=10.0000000000000%."
}Related workflows
No source-defined multi-instrument workflow membership is recorded.
Sources and evidence
These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.
VERIFIED_LEDGER.json · VERIFIED_CLEANevidence-tranche6/tranche6-results.jsonBOUNDARY_HAZARD_CATALOG.json