Source: https://guthlabs.ai/docs/instruments/3d-surface-plotter/

instrument / verified-clean

# 3D Surface Plotter

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

**Ledger rows**: 1

No ledger note is attached.

## Review findings

The stated grid-sampling approach is mathematically appropriate for approximate surface visualization. Verdict is NEEDS_REVIEW because sampling resolution, contour extraction, gradient-shading behavior, coordinate/trigonometric units, singularity handling, and the required honest approximation label are unspecified.

### Formula and scope findings

- Grid sampling of f(x,y) is a standard numerical plotting method, but the specification does not define grid resolution, spacing, interpolation, or adaptive refinement; undersampling can miss narrow features, discontinuities, and extrema.

- Contour projection is claimed but no contour-extraction method, interpolation rule, or contour-level input is specified. A standard implementation would use marching squares or an equivalent method on sampled cells.

- Optional gradient shading is underspecified. For z=f(x,y), the standard upward surface normal is n=(-f_x,-f_y,1), normalized as n/||n||; numerical gradients require a finite-difference scheme and boundary handling.

- The empty honest_label is inadequate for a numerically sampled plotter: it should disclose that surfaces and contours are approximate and may be unreliable near discontinuities, singularities, or undersampled features.

### Unit assumptions

- x and y are numerical coordinate values with user-defined units; no physical unit metadata is specified.

- z inherits the units implied by f(x,y). For mixed or dimensional expressions, the expression parser must enforce dimensionally valid operations.

- Trigonometric arguments are assumed to be in radians unless the instrument explicitly documents degree input.

- The contour level z=c must use the same z units as the function output.

## Boundary hardening

**BREAK_CLAIMED** · SELF_FLAGGED

The specification does not define handling for singular expression samples. For f(x,y)=1/(x-y), a normal grid containing x=y produces 1/0. If the plotter forwards Infinity or NaN to the rendering pipeline instead of rejecting the sample and splitting the surface, mesh generation, contouring, shading, or camera bounds can fail.

## 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": {
    "expression": "f(x,y)=x^2+y^2",
    "x_domain": [
      -1,
      1
    ],
    "y_domain": [
      -1,
      1
    ],
    "sample_x": [
      -1,
      0,
      1
    ],
    "sample_y": [
      -1,
      0,
      1
    ],
    "contour_level": 1
  },
  "expected_outputs": {
    "sampled_z_rows_by_y": [
      [
        2,
        1,
        2
      ],
      [
        1,
        0,
        1
      ],
      [
        2,
        1,
        2
      ]
    ],
    "contour_level_1_reference_points": [
      [
        -1,
        0
      ],
      [
        0,
        -1
      ],
      [
        0,
        1
      ],
      [
        1,
        0
      ]
    ],
    "gradient_at": {
      "x": 1,
      "y": 0,
      "gradient": [
        2,
        0
      ],
      "upward_unit_normal": [
        "-2/sqrt(5)",
        "0",
        "1/sqrt(5)"
      ]
    }
  },
  "reference_data": {
    "surface": "Paraboloid z=x^2+y^2",
    "contour_equation": "x^2+y^2=1",
    "gradient_formula": "(f_x,f_y)=(2x,2y)",
    "normal_formula": "n=(-f_x,-f_y,1)/sqrt(f_x^2+f_y^2+1)"
  },
  "working": "Evaluate each grid point: f(-1,-1)=(-1)^2+(-1)^2=1+1=2; f(0,-1)=0^2+(-1)^2=0+1=1; f(1,-1)=1+1=2. For y=0: f(-1,0)=1+0=1; f(0,0)=0+0=0; f(1,0)=1+0=1. For y=1 the row is again [2,1,2]. The level-1 contour satisfies x^2+y^2=1, whose axis intersections are (-1,0),(0,-1),(0,1),(1,0). At (1,0), (f_x,f_y)=(2,0), so n=(-2,0,1), ||n||=sqrt(4+1)=sqrt(5), giving the stated unit normal."
}
````

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