See pg 109.
value-of returns a value of type ExpVal in the first position. So, l must be a (ref-val r). Hence, the return value of deref-exp must be σ_1((expval->ref l)).
Similarly for setref-exp. The new state of the store should be [(expval->ref l)=val]σ_2.
Figure 4.3 on pg 113 is in agreement with these changes to the specification.