Source: https://guthlabs.ai/docs/instruments/partial-fraction-decomposition/

instrument / verified-clean

# Partial Fraction Decomposition

The current ledger marks this instrument verified clean within the source-bound verification corpus.

Status: **VERIFIED_CLEAN**Lifecycle: **verified-clean**

## Inspectable records

[01**Overview**Purpose and lifecycle](<https://guthlabs.ai/docs/instruments/partial-fraction-decomposition/>)[02**Mechanism**Method and assumptions](<https://guthlabs.ai/docs/instruments/partial-fraction-decomposition/mechanism/>)[03**Implementation**Binding and validation](<https://guthlabs.ai/docs/instruments/partial-fraction-decomposition/implementation/>)[04**Qualification**Evidence and errata](<https://guthlabs.ai/docs/instruments/partial-fraction-decomposition/qualification/>)

## Ledger state

The current ledger marks this instrument verified clean within the source-bound verification corpus.

**Area**: Mathematics — arithmetic through advanced (algebra, matrices, calculus, sequences/series, number theory, combinatorics, graphing, complex numbers, geometry, logic, sets)

**Tranche**: tranche-8

**Evidence ID**: t8-017

**Ledger rows**: 1

No ledger note is attached.

## Review findings

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.

### Formula and scope findings

- 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.

### Unit assumptions

- 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.

## Boundary hardening

**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.

## 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": {
    "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."
}
````

## 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_CLEAN`

- `evidence-tranche8/tranche8-results.json`

- `BOUNDARY_HAZARD_CATALOG.json`
