"Derived types must be completely substitutable for their base types."
– Barbara Liskov
This principle states that when you write a class, if it is derived from another class, it should be replaceable with the base class. Otherwise, your code will be very fragile and coupled. This principle was first discovered by Barbara Liskov, so it is named after her.