| ⊦ (addobj(r, class1, (sk × val) ', st)[r -- (sk ' + sk0 '), val0]) = (addobj(r, class1, (sk × val) ', st)[val .refval -- sk0, val0]) |
⊦ addobj(r, class1, (sk × val) ', st) = (addobj(r, class1, [], st)[r -- sk, val])
⊦ addobj(r, class1, [], st) = st[r -- _type, typeval(mkclasstype(class1))]
⊦ (st[r -- _type, typeval(mkclasstype(class1))][r -- sk, val][r -- (sk ' + sk0 '), val0]) = (st[r -- _type, typeval(mkclasstype(class1))][r -- sk, val][val .refval -- sk0, val0])
[[CONCRETESIMPRULES : ()]]