# Safe Substitution

> Replacing a component or expression with an equivalent one without altering program correctness.

Record: `lexicon:safe-substitution`
Kind: capability
Layer: [Structural Core](https://banes-lab.com/records/layer/structural-core.md)
Canonical: https://banes-lab.com/ontology/lexicon#lexicon-safe-substitution

Listed in [Lexicon terms](https://banes-lab.com/api/records/lexicon.md), after [Safe Refactoring](https://banes-lab.com/records/lexicon/safe-refactoring.md) and before [Saga](https://banes-lab.com/records/lexicon/saga.md).

## Category

- [Core Vocabulary](https://banes-lab.com/records/lexicon-category/core-vocabulary.md)

## Enabled by

- [Referential Transparency](https://banes-lab.com/records/architecture/referential-transparency.md)
- [Liskov Substitution Principle](https://banes-lab.com/records/architecture/liskov-substitution.md)

## Linked from

- [Correctness / Determinism / Verification](https://banes-lab.com/ontology/principles/architecture-category-correctness-determinism-verification.md)
- [SOLID / Object-Oriented Design](https://banes-lab.com/ontology/principles/architecture-category-solid-object-oriented-design.md)
