Source: https://guthlabs.ai/docs/instruments/matrix-transformation-visualizer-2d/mechanism/

instrument mechanism / verified-clean

# Matrix Transformation Visualizer (2D) mechanism

The inspectable method record for Matrix Transformation Visualizer (2D), kept separate from implementation and qualification.

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

## Model scope

The core formulas are mathematically correct. NEEDS_REVIEW is required because the shape input format and area/orientation applicability constraints are unspecified, and honest_label is empty. Test vector 3 uses cm coordinates; its correct area is 8 cm^2 before and after reflection.

- The transformation formula M[x y]^T is standard and correct for column vectors, but the specification should explicitly state that matrix entries and coordinates use this column-vector convention.

- area scale = |det(M)| is correct for the multiplier of any 2D area under a linear map. It should state that the input is a 2D region with a well-defined area; when det(M)=0, the image is degenerate and an area ratio may be undefined even though the multiplier is zero.

- The specification says sample shape but does not define its representation, such as ordered polygon vertices, closure, or whether curves are supported.

## Units and conventions

- Coordinates are Cartesian x,y values in a single consistent unit; matrix entries are dimensionless scale/shear/rotation coefficients unless explicitly documented otherwise.

- Transformed coordinates retain the coordinate unit of the input. Areas use the squared coordinate unit, such as cm² or in².

- The matrix acts on column vectors: x' = a*x + b*y and y' = c*x + d*y for M = [[a,b],[c,d]].

- The determinant is signed: det(M) < 0 reverses orientation, while the area multiplier is |det(M)|.

## Inspectable vector

One of 4 source-bound review vectors:

````
{
  "inputs": {
    "matrix": [
      [
        0,
        -1
      ],
      [
        1,
        0
      ]
    ],
    "shape_vertices": [
      [
        1,
        0
      ],
      [
        0,
        1
      ],
      [
        0,
        0
      ]
    ],
    "coordinate_unit": "unit"
  },
  "expected_outputs": {
    "transformed_vertices": [
      [
        0,
        1
      ],
      [
        -1,
        0
      ],
      [
        0,
        0
      ]
    ],
    "determinant": 1,
    "area_scale": 1,
    "input_area": 0.5,
    "output_area": 0.5,
    "key_features": {
      "orientation": "preserved",
      "fixed_points": [
        [
          0,
          0
        ]
      ],
      "image_shape": "right triangle with vertices (0,1), (-1,0), (0,0)"
    }
  },
  "working": "For (1,0): x' = 0*1 + (-1)*0 = 0; y' = 1*1 + 0*0 = 1, so (1,0) -> (0,1). For (0,1): x' = 0*0 + (-1)*1 = -1; y' = 1*0 + 0*1 = 0, so (0,1) -> (-1,0). For (0,0): x' = 0 and y' = 0. det(M) = 0*0 - (-1)*1 = 1. area scale = |1| = 1. Input triangle area = |1*(1-0) + 0*(0-0) + 0*(0-1)|/2 = 1/2 = 0.5. Output area = 0.5*1 = 0.5."
}
````

## Failure boundary

**BREAK_CLAIMED** · SELF_FLAGGED

The extreme-magnitude vector causes IEEE-754 overflow and non-finite transformed coordinates and determinant. The convention probe also exposes a plausible row-versus-column implementation mismatch that changes the displayed geometry.

## Other records

[01**Overview**](<https://guthlabs.ai/docs/instruments/matrix-transformation-visualizer-2d/>)[03**Implementation**](<https://guthlabs.ai/docs/instruments/matrix-transformation-visualizer-2d/implementation/>)[04**Qualification**](<https://guthlabs.ai/docs/instruments/matrix-transformation-visualizer-2d/qualification/>)

## Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

- `VERIFIED_LEDGER.json`

- `evidence-tranche6/tranche6-results.json`

- `BOUNDARY_HAZARD_CATALOG.json`
