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

instrument mechanism / verified-clean

Partial Fraction Decomposition mechanism

The inspectable method record for Partial Fraction Decomposition, kept separate from implementation and qualification.

Status: VERIFIED_CLEANLifecycle: verified-clean

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