-\Rightarrow (let TMP_12 \def (weight_map f u) in (let TMP_13 \def (weight_map
-f u) in (let TMP_14 \def (S TMP_13) in (let TMP_15 \def (wadd f TMP_14) in
-(let TMP_16 \def (weight_map TMP_15 t0) in (let TMP_17 \def (plus TMP_12
-TMP_16) in (S TMP_17))))))) | Abst \Rightarrow (let TMP_8 \def (weight_map f
-u) in (let TMP_9 \def (wadd f O) in (let TMP_10 \def (weight_map TMP_9 t0) in
-(let TMP_11 \def (plus TMP_8 TMP_10) in (S TMP_11))))) | Void \Rightarrow
-(let TMP_4 \def (weight_map f u) in (let TMP_5 \def (wadd f O) in (let TMP_6
-\def (weight_map TMP_5 t0) in (let TMP_7 \def (plus TMP_4 TMP_6) in (S
-TMP_7)))))]) | (Flat _) \Rightarrow (let TMP_1 \def (weight_map f u) in (let
-TMP_2 \def (weight_map f t0) in (let TMP_3 \def (plus TMP_1 TMP_2) in (S
-TMP_3))))])].
+\Rightarrow (S (plus (weight_map f u) (weight_map (wadd f (S (weight_map f
+u))) t0))) | Abst \Rightarrow (S (plus (weight_map f u) (weight_map (wadd f
+O) t0))) | Void \Rightarrow (S (plus (weight_map f u) (weight_map (wadd f O)
+t0)))]) | (Flat _) \Rightarrow (S (plus (weight_map f u) (weight_map f
+t0)))])].