Simplified constraints to make more sense, intuitively.
Added more names for dimensions 3 & 4.