Yes, this is because the value is constantadded to the second element to determine the value of the first element.
So, if you have label2.leading = label1.trailing + 45, you will get something like:

But if you have label1.trailing = label2.leading + 45, you get:

label1 45 label2, , label2 label1
label1.trailing = label2.leading + -45, , : 
.
" Interface Builder", . , .