| 〈x1 := x〉 〈build_rec#(0; x, to)〉 (to ≠ fail → x1 = depths(to .t, 0) + x), x2 = x, x ≠ [], 0 ≤ max(x) ⊦ 〈build_rec#(0; x, to)〉 〈to0 := to, x0 := x ; if x0 ≠ [] then to0 := fail〉 (to0 = fail → (∀ t. x2 ≠ depths(t, 0))) |
〈build_rec#(0; x, to)〉 (to ≠ fail → x0 = depths(to .t, 0) + x), x2 = x, x ≠ [], 0 ≤ max(x), x0 = x ⊦ 〈build_rec#(0; x, to)〉 〈to0 := to, x0 := x ; if x0 ≠ [] then to0 := fail〉 (to0 = fail → (∀ t. x2 ≠ depths(t, 0)))
[[CONCRETESIMPRULES : ()]]