Source: https://guthlabs.ai/docs/instruments/schmitt-trigger-threshold-calculator/mechanism/

instrument mechanism / verified-with-binding-errata

# Schmitt Trigger Threshold Calculator mechanism

The inspectable method record for Schmitt Trigger Threshold Calculator, kept separate from implementation and qualification.

Status: **VERIFIED_WITH_ERRATA**Lifecycle: **verified-with-binding-errata**

## Model scope

The instrument cannot honestly claim to compute general op-amp Schmitt-trigger upper and lower trip points until the topology, resistor placement, reference voltage, and positive/negative saturation definitions are specified. The provided vectors use the additional symmetric zero-reference assumption. The original second-vector value was corrected in the working and expected outputs to maintain arithmetic accuracy.

- VTH=Vsat×R1/(R1+R2) is valid only for a specific zero-reference Schmitt-trigger topology and resistor placement; it is not a universal op-amp Schmitt-trigger threshold formula.

- The specification does not define the reference configuration, so VTH+ and VTH− cannot be uniquely determined. A nonzero reference voltage changes both thresholds.

- Only one Vsat is provided, but real circuits may have unequal positive and negative saturation levels. The formula must specify whether Vsat is a positive magnitude, a signed rail, or separate Vsat+ and Vsat− values.

- hysteresis=VTH_high−VTH_low is standard, but VTH_high and VTH_low are not independently defined by the supplied formula. For a symmetric zero-reference circuit, the result would be 2×Vsat×R1/(R1+R2).

## Units and conventions

- Vsat is treated as a positive voltage magnitude in volts.

- R1 and R2 must use the same resistance unit; only their ratio matters.

- The test-vector calculations assume a zero-reference, symmetric Schmitt-trigger configuration in which VTH+=+Vsat×R1/(R1+R2) and VTH−=−Vsat×R1/(R1+R2).

- Positive resistance values are assumed unless explicitly testing a boundary case.

## Inspectable vector

One of 4 source-bound review vectors:

````
{
  "inputs": {
    "Vsat": 5,
    "R1": 10000,
    "R2": 20000,
    "reference_config": "zero reference; symmetric rails; R1 and R2 in ohms"
  },
  "expected_outputs": {
    "VTH_plus": 1.6666666667,
    "VTH_minus": -1.6666666667,
    "hysteresis": 3.3333333333
  },
  "working": "R1+R2=10000+20000=30000 ohms. VTH magnitude=5×10000/30000=50000/30000=1.6666666667 V. VTH+=+1.6666666667 V. VTH−=−1.6666666667 V. Hysteresis=VTH+−VTH−=1.6666666667−(−1.6666666667)=3.3333333333 V."
}
````

## Failure boundary

**BREAK_CLAIMED** · SELF_FLAGGED

The denominator can be forced to zero with R1+R2=0, producing an undefined threshold that must be rejected. In addition, the specification provides only one threshold formula and does not explicitly define how VTH_plus and VTH_minus, reference polarity, or signed hysteresis are derived.

## Other records

[01**Overview**](<https://guthlabs.ai/docs/instruments/schmitt-trigger-threshold-calculator/>)[03**Implementation**](<https://guthlabs.ai/docs/instruments/schmitt-trigger-threshold-calculator/implementation/>)[04**Qualification**](<https://guthlabs.ai/docs/instruments/schmitt-trigger-threshold-calculator/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-tranche5/tranche5-results.json`

- `BOUNDARY_HAZARD_CATALOG.json`
