| context(C0), value(v3), value(v2), value(v1), ∀ t'. v4 => t' ↔ (∃ C, t0, t2. context(C) ∧ v4 = C[t0] ∧ t0 =>top t2 ∧ t' = C[t2]), ∀ t'. C0[S _ v1 _ v2 _ v3] => t' ↔ (∃ C, t2, t1. context(C) ∧ C0[S _ v1 _ v2 _ v3] = C[t2] ∧ t2 =>top t1 ∧ t' = C[t1]) ⊦ context(C0 _ v4) ∧ C0[S _ v1 _ v2 _ v3] _ v4 = (C0 _ v4)[S _ v1 _ v2 _ v3] ∧ S _ v1 _ v2 _ v3 =>top v1 _ v3 _ (v2 _ v3) ∧ C0[v1 _ v3 _ (v2 _ v3)] _ v4 = (C0 _ v4)[v1 _ v3 _ (v2 _ v3)] |
⊦ value(v1) ∧ value(v2) ∧ value(v3) → S _ v1 _ v2 _ v3 =>top v1 _ v3 _ (v2 _ v3)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ (C _ t1)[t] = C[t] _ t1], [CSIMPSEQ : ⊦ context(C _ t) ↔ context(C)])]]