Source: https://guthlabs.ai/docs/instruments/function-transformation-visualizer/

instrument / verified-clean

# Function Transformation Visualizer

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/function-transformation-visualizer/>)[02**Mechanism**Method and assumptions](<https://guthlabs.ai/docs/instruments/function-transformation-visualizer/mechanism/>)[03**Implementation**Binding and validation](<https://guthlabs.ai/docs/instruments/function-transformation-visualizer/implementation/>)[04**Qualification**Evidence and errata](<https://guthlabs.ai/docs/instruments/function-transformation-visualizer/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-031

**Ledger rows**: 1

No ledger note is attached.

## Review findings

The core formula is correct and the four deterministic vectors verify shifts, vertical and horizontal scaling, reflections, and a domain boundary. Verdict is NEEDS_REVIEW because the specification does not define the required b=0 constraint, parent-domain behavior, angle units, slider ranges, or an honest user-facing limitation label.

### Formula and scope findings

- The parameterization g(x)=a·f(b(x-h))+k is the standard transformation formula, with h shifting horizontally by h, k shifting vertically by k, a applying vertical scale/reflection, and b applying horizontal scale/reflection.

- The transformation semantics require b≠0. At b=0, the expression is mathematically evaluable as a constant a·f(0)+k when f(0) exists, but it is not an invertible horizontal stretch/reflection and the usual point mapping divides by b.

- The implementation must preserve the real domain of f(b(x-h)); it must not plot values outside the parent function domain or connect across discontinuities.

- Slider ranges, behavior at a=0, b=0, undefined parent-function values, and numerical singularities are unspecified.

- The empty honest_label omits important limitations: the visualizer should state that b=0 is invalid or degenerate for transformation mode and that parent domains/discontinuities are preserved.

### Unit assumptions

- x and h use the same coordinate units; k uses the same vertical units as f(x).

- a and b are dimensionless scale factors in ordinary mathematical graphing. If physical units are supported, b has reciprocal x-unit dimensions so that b(x-h) is dimensionless relative to the parent input.

- For trigonometric parent functions, angles are assumed to be in radians unless the instrument explicitly provides a degree-mode setting.

- No physical measurement-unit conversion is implied by the formula.

## Boundary hardening

**BREAK_CLAIMED** · SELF_FLAGGED

Setting b=0 with the parent function f(u)=1/u makes the transformed argument identically zero and causes division by zero for every x. The visualizer should reject the input or display an undefined-function state rather than attempting a finite plot.

## 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": {
    "parent_function": "f(x)=x^2",
    "a": "2",
    "b": "3",
    "h": "1",
    "k": "-4",
    "sample_x": [
      "0.0000000",
      "1.0000000",
      "1.3333333333333333"
    ]
  },
  "expected_outputs": {
    "exact_transformed_function": "g(x)=2[3(x-1)]^2-4=18(x-1)^2-4",
    "sample_values": [
      {
        "x": 0,
        "g_x": 14
      },
      {
        "x": 1,
        "g_x": -4
      },
      {
        "x": 1.3333333333333333,
        "g_x": -2
      }
    ],
    "spot_checks": [
      {
        "at": "0",
        "input_side": 14,
        "answer_side": 14
      },
      {
        "at": "1",
        "input_side": -4,
        "answer_side": -4
      },
      {
        "at": "4/3",
        "input_side": -2,
        "answer_side": -2
      }
    ]
  },
  "reference_data": {
    "parent_vertex": [
      0,
      0
    ],
    "transformed_vertex": [
      1,
      -4
    ],
    "point_mapping": "(u,f(u)) maps to (h+u/b,a·f(u)+k)"
  },
  "working": "At x=0: b(x-h)=3(0-1)=-3; f(-3)=(-3)^2=9; g(0)=2·9-4=18-4=14. At x=1: b(x-h)=3(1-1)=0; f(0)=0; g(1)=2·0-4=-4. At x=4/3: b(x-h)=3(4/3-1)=3·(1/3)=1; f(1)=1; g(4/3)=2·1-4=-2. Algebraically, 2[3(x-1)]^2-4=2·9(x-1)^2-4=18(x-1)^2-4."
}
````

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