| x2 = x, x ≠ [], max(x) < 0, d ≤ max(x), d < 0, x = d + y ⊦ 〈build_rec#(0; x, to)〉 〈to0 := to, x0 := x ; if x0 ≠ [] then to0 := fail〉 (to0 = fail → (∀ t. x2 ≠ depths(t, 0))) |
x = d ' + y, d < 0, max(d ' + y) < 0, d ≤ max(d ' + y) ⊦ 〈build_rec#(0; x, to)〉 〈to0 := to, x0 := x ; if x0 ≠ [] then to0 := fail〉 (to0 = fail → (∀ t. d ' + y ≠ depths(t, 0)))
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ d ∈ d0 ' ↔ d = d0], [CSIMPSEQ : ⊦ d ∈ x + y ↔ ¬ ¬ (d ∈ x ∨ d ∈ y)], [CSIMPFORWARD : ⊦ j < i ∧ i ≤ 0 → j < 0], [CSIMPFORWARD : ⊦ i ≤ j ∧ j < j0 → i < j0], [CSIMPFORWARD : ⊦ d ' + x = y → d ∈ y], [CSIMPSEQ : ⊦ (x + y) + z = x + y + z], [CSIMPSEQ : ⊦ d ' + x ≠ []], [CSIMPSEQ : ⊦ d + x = d ' + x])]]