Source: https://guthlabs.ai/docs/instruments/declining-balance-double-declining-depreciation/

instrument / verified-with-binding-errata

# Declining Balance / Double-Declining Depreciation

The current ledger marks this instrument verified with errata that must be applied at binding time.

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

## Inspectable records

[01**Overview**Purpose and lifecycle](<https://guthlabs.ai/docs/instruments/declining-balance-double-declining-depreciation/>)[02**Mechanism**Method and assumptions](<https://guthlabs.ai/docs/instruments/declining-balance-double-declining-depreciation/mechanism/>)[03**Implementation**Binding and validation](<https://guthlabs.ai/docs/instruments/declining-balance-double-declining-depreciation/implementation/>)[04**Qualification**Evidence and errata](<https://guthlabs.ai/docs/instruments/declining-balance-double-declining-depreciation/qualification/>)

## Ledger state

The current ledger marks this instrument verified with errata that must be applied at binding time.

**Area**: Finance, Economics & Business (educational only — never individualized investment, tax, or legal advice)

**Tranche**: tranche-5

**Evidence ID**: t5-138

**Ledger rows**: 1

No ledger note is attached.

## Review findings

The educational-only label is appropriate, but the formula specification needs explicit period units, beginning-book-value indexing, salvage-floor handling, straight-line comparison, input constraints, and rounding rules before implementation can be verified as unambiguous.

### Formula and scope findings

- dep_t=book_value_t*rate is ambiguous: standard declining-balance depreciation uses the beginning book value of period t, not the ending book value.

- The formula omits the salvage-value floor. Depreciation must not reduce book value below salvage value, and the final period may require an adjustment.

- The straight-line switch rule is underspecified. Standard practice compares declining-balance depreciation with remaining-book-value straight-line depreciation: (beginning book value - salvage value) / remaining periods, then selects the larger amount without exceeding the depreciable base.

- The formula does not define whether t is zero-based or one-based, nor whether book_value_t means beginning or ending book value.

- No rounding policy or final-period rounding adjustment is specified.

### Unit assumptions

- Useful life and depreciation periods are assumed to use the same unit; the vectors below use annual periods unless otherwise stated.

- cost, salvage, and book values are monetary amounts in the same currency.

- The multiplier is dimensionless; rate = multiplier / useful life.

- The standard interpretation is beginning-book-value declining balance, with a switch to remaining-life straight line when straight line is greater than declining balance, subject to the salvage floor.

- A positive integer useful life is required; multiplier is assumed to be 1.5 or 2.0.

## Boundary hardening

**BREAK_CLAIMED** · SELF_FLAGGED

A useful_life input of zero causes division by zero in rate = multiplier/useful_life, producing an undefined rate and invalid schedule. The instrument should reject the input rather than emit numeric results.

## Errata and corrections

### Tranche errata

**depreciation[2:] / ending_book_value[2:]** · vector 1,2

v1 866.67×3, v2 1343.75×2

v1 1440/864/296, v2 1757.81/929.69 (greater-of rule as stated in inputs)

switched to straight-line while DB was still GREATER, violating the switch rule stated in her own inputs

## Inspectable example

4 review vectors are recorded. One source-bound sample is shown below.

````
{
  "inputs": {
    "cost": 10000,
    "salvage": 1000,
    "useful_life": 5,
    "multiplier": 2,
    "period_unit": "years",
    "switch_rule": "use the greater of declining-balance and remaining-life straight-line depreciation, capped at salvage"
  },
  "expected_outputs": {
    "rate": 0.4,
    "depreciation": [
      4000,
      2400,
      866.6666666667,
      866.6666666667,
      866.6666666666
    ],
    "ending_book_value": [
      6000,
      3600,
      2733.3333333333,
      1866.6666666666,
      1000
    ]
  },
  "working": "Rate = 2 / 5 = 0.4. Year 1: DB depreciation = 10000 x 0.4 = 4000; ending book value = 10000 - 4000 = 6000. Year 2: DB depreciation = 6000 x 0.4 = 2400; ending book value = 6000 - 2400 = 3600. At the start of Year 3, DB = 3600 x 0.4 = 1440. Remaining-life SL = (3600 - 1000) / 3 = 2600 / 3 = 866.6666666667, so switch to SL. Year 3 ending book value = 3600 - 866.6666666667 = 2733.3333333333. Year 4 depreciation = (2733.3333333333 - 1000) / 2 = 866.6666666667; ending book value = 1866.6666666666. Year 5 depreciation = (1866.6666666666 - 1000) / 1 = 866.6666666666; ending book value = 1000."
}
````

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

- `evidence-tranche5/tranche5-results.json`

- `BOUNDARY_HAZARD_CATALOG.json`
