Source: https://guthlabs.ai/docs/instruments/rent-vs-buy-home-comparator/mechanism/

instrument mechanism / verified-clean

# Rent vs Buy (Home) Comparator mechanism

The inspectable method record for Rent vs Buy (Home) Comparator, kept separate from implementation and qualification.

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

## Model scope

The honest educational-estimate label is appropriate, but implementation should not ship until the model defines mortgage amortization, cash-flow timing, discounting for both paths, appreciation and sale proceeds, transaction costs, percentage bases, and a precise breakeven rule. Under the current specification, the test vectors use explicit annual dollar schedules solely to demonstrate the literal arithmetic; they do not validate the economic model.

- The mortgage rate alone cannot determine mortgage payments or principal_paid; loan term, compounding frequency, payment frequency, and amortization method are missing.

- buy_cost does not discount its annual cash flows, while rent_cost is discounted; this makes the comparison internally inconsistent unless all buy terms are explicitly defined as present values.

- Subtracting principal_paid from mortgage produces an interest-like cost only when mortgage is the total payment; this is not stated and can double-count or omit cash flows.

- appreciation_PV is undefined. Home appreciation is normally modeled as a future sale value or equity offset, including sale timing and transaction costs, not as an unexplained annual subtraction.

- Property tax, insurance, and maintenance percentages lack a defined base, such as original price, current home value, or remaining balance.

- The rent formula does not specify whether t starts at 0 or 1 and whether rent is paid at the beginning or end of each period.

## Units and conventions

- For the test calculations, all periods are annual and t runs from 1 through the stated horizon.

- down is a dollar amount equal to home price multiplied by down percentage.

- mortgage is an annual total mortgage payment; principal_paid is an annual dollar amount included within that payment.

- tax, insurance, and maintenance are annual dollar amounts, not percentages, because the specification does not define their percentage bases.

- appreciation_PV is treated literally as an already-present-valued annual dollar offset supplied for each year; this is only a test convention, not a validated real-estate model.

- Rent is paid at the end of each year, with year-1 rent equal to rent multiplied by (1+growth).

## Inspectable vector

One of 4 source-bound review vectors:

````
{
  "inputs": {
    "home_price": 300000,
    "down": 60000,
    "horizon_years": 3,
    "annual_mortgage_payment": 16000,
    "annual_tax": 3600,
    "annual_insurance": 1200,
    "annual_maintenance": 3000,
    "principal_paid_by_year": [
      6000,
      6200,
      6400
    ],
    "appreciation_PV_by_year": [
      3000,
      2890,
      2780
    ],
    "annual_rent": 24000,
    "rent_growth": 0.02,
    "discount_rate": 0.04
  },
  "expected_outputs": {
    "buy_cost": 104130,
    "rent_cost": 69266.1,
    "breakeven_year": null
  },
  "working": "Buy year 1 = 16000 + 3600 + 1200 + 3000 - 6000 - 3000 = 14800. Buy year 2 = 16000 + 3600 + 1200 + 3000 - 6200 - 2890 = 14710. Buy year 3 = 16000 + 3600 + 1200 + 3000 - 6400 - 2780 = 14620. Buy total = 60000 + 14800 + 14710 + 14620 = 104130. Rent year 1 PV = 24000 x 1.02 / 1.04 = 23538.46. Rent year 2 PV = 24000 x 1.02^2 / 1.04^2 = 23085.80. Rent year 3 PV = 24000 x 1.02^3 / 1.04^3 = 22641.84. Rent total = 23538.46 + 23085.80 + 22641.84 = 69266.10. Breakeven is null because the specification does not define its comparison rule or sale treatment."
}
````

## Failure boundary

**BREAK_CLAIMED** · SELF_FLAGGED

The zero mortgage-rate case produces 0/0 under the ordinary mortgage-payment formula, and the zero-ratio rent case requires a separate geometric-series branch. The specification also leaves mortgage term, time indexing, and appreciation sign conventions insufficiently defined.

## Other records

[01**Overview**](<https://guthlabs.ai/docs/instruments/rent-vs-buy-home-comparator/>)[03**Implementation**](<https://guthlabs.ai/docs/instruments/rent-vs-buy-home-comparator/implementation/>)[04**Qualification**](<https://guthlabs.ai/docs/instruments/rent-vs-buy-home-comparator/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`
