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