| ⊦ ⌜λ n. (n < #(x + x0) ⊃ (x + x0)[n];nf(n - #(x + x0)))⌝ = ⌜λ n. (n < # x ⊃ x[n];(n < # x0 + # x ⊃ x0[n - # x];nf(n - # x - # x0)))⌝ |
⊦ (n < # x + # x0 ⊃ (x + x0)[n];nf(n - # x + # x0)) = (n < # x ⊃ x[n];(n < # x0 + # x ⊃ x0[n - # x];nf(n - # x - # x0)))
Used simplifier rules: inj-01: ⊦ ⌜nf⌝ = ⌜nf0⌝ ↔ nf = nf0; from specification stream-basic%a: ⊦ (x + y) + z = x + y + z; from specification list%len: ⊦ #(x + y) = # x + # y; from specification list