Source: https://guthlabs.ai/docs/instruments/one-rep-max-calculator-epley-brzycki/

instrument / verified-clean

# One-Rep Max Calculator (Epley/Brzycki)

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/one-rep-max-calculator-epley-brzycki/>)[02**Mechanism**Method and assumptions](<https://guthlabs.ai/docs/instruments/one-rep-max-calculator-epley-brzycki/mechanism/>)[03**Implementation**Binding and validation](<https://guthlabs.ai/docs/instruments/one-rep-max-calculator-epley-brzycki/implementation/>)[04**Qualification**Evidence and errata](<https://guthlabs.ai/docs/instruments/one-rep-max-calculator-epley-brzycki/qualification/>)

## Ledger state

The current ledger marks this instrument verified clean within the source-bound verification corpus.

**Area**: Everyday & Life

**Tranche**: tranche-4

**Evidence ID**: t4-235

**Ledger rows**: 1

No ledger note is attached.

## Review findings

The two named 1RM formulas are correct under their normal assumptions. Verdict is NEEDS_REVIEW because the exact table computation is underspecified: the spec must name the selected 1RM basis, define whether output is per-set load or total volume, and specify rounding. The honest-label text is appropriate but should be surfaced prominently, especially for Brzycki estimates above roughly 10–12 repetitions.

### Formula and scope findings

- The Epley formula, 1RM = weight × (1 + reps/30), is standard for sub-maximal rep estimates when weight and reps are valid.

- The Brzycki formula, 1RM = weight × 36/(37 − reps), is standard, but its usable rep range must be explicitly constrained; it is undefined at 37 reps and unsuitable for high-repetition estimates.

- The %1RM training-table calculation is not explicitly specified. The standard implied calculation is training load = estimated 1RM × percentage, but the spec does not state which selected 1RM estimate, percentage representation, or rounding policy is used.

- The meaning of an entry such as 5×5 at 80% is ambiguous: it should specify whether the output is the per-set load, the total session volume, or both.

### Unit assumptions

- Weight is a mass value in one consistent unit; the estimated 1RM and training loads use that same unit.

- Reps are a nonnegative integer count of completed repetitions.

- Percentages are interpreted as fractions for arithmetic: 80% = 0.80, 75% = 0.75, and 90% = 0.90.

- Test-vector table loads assume training load = selected estimated 1RM × percentage, with no rounding unless stated.

- A 5×5 notation is interpreted as 5 sets of 5 repetitions; the calculated load is the per-set load, not total volume.

- Kilograms and pounds must not be mixed without explicit conversion.

## Boundary hardening

**BREAK_CLAIMED** · SELF_FLAGGED

The Brzycki formula has an unhandled division-by-zero input at exactly 37 reps. The calculator must reject reps = 37 rather than emit Infinity, NaN, or an invalid training table. Negative-weight interpretation is also ambiguous unless input validation or an absolute-magnitude convention is specified.

## 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": {
    "weight": 100,
    "weight_unit": "kg",
    "reps": 5,
    "formula_choice": "Epley",
    "table_percentage": 0.8,
    "sets": 5,
    "reps_per_set": 5
  },
  "expected_outputs": {
    "estimated_1RM": 116.6666667,
    "estimated_1RM_unit": "kg",
    "table": {
      "scheme": "5x5",
      "percentage": 0.8,
      "load_per_set": 93.3333333,
      "load_unit": "kg"
    }
  },
  "working": "1RM = 100 × (1 + 5/30) = 100 × (1 + 0.1666667) = 100 × 1.1666667 = 116.6666667 kg. Training load = 116.6666667 × 0.80 = 93.3333333 kg per set."
}
````

## 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-tranche4/tranche4-results.json`

- `BOUNDARY_HAZARD_CATALOG.json`
