Page actions
instrument mechanism / verified-clean
Partial Fraction Decomposition mechanism
The inspectable method record for Partial Fraction Decomposition, kept separate from implementation and qualification.
Model scope
The underlying linear-system method is standard for the stated real distinct/repeated linear and distinct quadratic cases, but the scope and coefficient-domain meaning of 'simple quadratic' need clarification. The four deterministic vectors include distinct linear, repeated linear, irreducible quadratic, and zero-numerator edge cases; every spot check avoids denominator roots.
- The cover-up method is valid directly only for distinct linear factors; repeated linear factors and quadratic factors require a full coefficient-matching linear system.
- The specification does not state that the rational function must be proper. Improper inputs require polynomial long division before partial-fraction decomposition.
- The output description says 'sum of simple fractions', but repeated factors require terms such as A/(x-a)^k, not only first-power simple fractions.
- The honest label 'simple quadratic factors' is ambiguous: it should explicitly state whether this means distinct irreducible quadratics over the real numbers, and whether repeated quadratic factors are unsupported.
- The denominator must be nonzero at evaluation points and must be a nonzero polynomial; these input constraints are not stated.
Units and conventions
- All coefficients and variables are dimensionless real numbers unless the caller explicitly supplies another coefficient domain.
- The tested quadratic factor x^2+4 is interpreted as an irreducible real quadratic factor.
- The decomposition is assumed to be over the real numbers and for rational functions with a nonzero denominator.
Inspectable vector
One of 4 source-bound review vectors:
{
"inputs": {
"numerator": "2x + 3",
"denominator": "(x - 1)(x + 2)"
},
"expected_outputs": {
"canonical_exact": "5/(3(x - 1)) + 1/(3(x + 2))",
"spot_checks": [
{
"at": "x = 0.00000000",
"input_side": -1.5,
"answer_side": -1.5
},
{
"at": "x = 3.0000000",
"input_side": 0.9,
"answer_side": 0.9
}
]
},
"reference_data": {
"method": "Distinct-linear-factor coefficient matching",
"domain": "real numbers",
"excluded_points": [
"x = 1",
"x = -2"
]
},
"working": "Assume (2x+3)/((x-1)(x+2)) = A/(x-1) + B/(x+2). Multiply by (x-1)(x+2): 2x+3 = A(x+2)+B(x-1) = (A+B)x + (2A-B). Thus A+B=2 and 2A-B=3. Adding the equations gives 3A=5, so A=5/3. Then B=2-5/3=1/3. At x=0: original = 3/((-1)(2)) = -3/2 = -1.5000000; answer = (5/3)/(-1)+(1/3)/2 = -5/3+1/6 = -3/2 = -1.5000000. At x=3: original = 9/((2)(5)) = 9/10 = 0.90000000; answer = (5/3)/2+(1/3)/5 = 5/6+1/15 = 9/10 = 0.90000000."
}Failure boundary
BREAK_CLAIMED · SELF_FLAGGED
The zero-denominator vector is an unavoidable undefined-result trap: the instrument must reject an identically zero denominator. The convention probe also exposes a correctness hazard unless polynomial coefficient order is explicitly fixed.
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-tranche8/tranche8-results.jsonBOUNDARY_HAZARD_CATALOG.json