Source: https://guthlabs.ai/docs/instruments/sample-rate-nyquist-frequency-checker/mechanism/

instrument mechanism / verified-clean

# Sample Rate / Nyquist Frequency Checker mechanism

The inspectable method record for Sample Rate / Nyquist Frequency Checker, kept separate from implementation and qualification.

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

## Model scope

The core arithmetic formula is correct under consistent frequency units. The instrument should be revised to define sample-rate units, reject nonpositive rates, clarify the Nyquist-boundary wording, and either remove the aliasing-check claim or add a signal-frequency input and explicit aliasing rule.

- fmax=fs/2 is the standard Nyquist-frequency formula, but the wording "maximum representable frequency" is potentially misleading: frequencies at or above fs/2 are not safely representable without qualification, and exactly fs/2 is a boundary case.

- The claimed aliasing check is not implemented by fmax=fs/2 alone. An aliasing check requires a signal/input frequency and a defined rule, such as flagging frequencies at or above fs/2.

- The common-rate table output is not explicitly defined as a formula or output schema, although its values can be generated by applying fmax=fs/2 to each listed rate.

## Units and conventions

- The sample rate and resulting Nyquist frequency must use the same frequency unit.

- If sample rate is supplied in Hz, the output is in Hz; if supplied in kHz, the output is in kHz.

- The listed common rates mean 44.1 kHz, 48 kHz, 96 kHz, and 192 kHz, equivalent to 44100 Hz, 48000 Hz, 96000 Hz, and 192000 Hz.

- A clearly labeled unit field or a fixed input convention is required; the current spec only says "sample rate".

## Inspectable vector

One of 4 source-bound review vectors:

````
{
  "inputs": {
    "sample_rate": 44100,
    "sample_rate_unit": "Hz"
  },
  "expected_outputs": {
    "nyquist_frequency": 22050,
    "nyquist_frequency_unit": "Hz"
  },
  "working": "fmax = fs / 2 = 44100 Hz / 2 = 22050 Hz."
}
````

## Failure boundary

- A zero or negative sample rate is invalid and must be rejected; zero yields a mathematically defined result but no usable sampling capability.

- The implementation must avoid implying that a frequency exactly equal to fs/2 is generally safe to represent; use a boundary-aware label such as Nyquist limit or require frequency < fs/2.

- The aliasing claim is incomplete without a signal-frequency input and a comparison rule.

- Unit omission can cause a 1000-fold error, such as interpreting 44.1 kHz as 44.1 Hz.

- The common-rate table should explicitly state units and whether values are displayed in Hz or kHz.

## Other records

[01**Overview**](<https://guthlabs.ai/docs/instruments/sample-rate-nyquist-frequency-checker/>)[03**Implementation**](<https://guthlabs.ai/docs/instruments/sample-rate-nyquist-frequency-checker/implementation/>)[04**Qualification**](<https://guthlabs.ai/docs/instruments/sample-rate-nyquist-frequency-checker/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-tranche4/tranche4-results.json`
