Why is `NSLayoutConstraint.multiplier` read-only?

What is the rationale behind this decision, why have they done that?

How comes constant is read-and-write while, while multiplier isn't?

Original SO question: https://stackoverflow.com/questions/63111894/why-is-nslayoutconstraint-multiplier-read-only

Replies

Updating the constant of a constraint can be done very efficiently and fast. Changing its multiplier on the other hand is much more complicated on the inside and basically produces the same amount of work than removing and adding a constraint.

The API reflects this complexity so that developers are aware that this is a more expensive operation.