| σ1 = ⌜x1⌝ , ⌜x⌝ = ⌜x0⌝ + σ1, # x0 ≤ # x ⊦ x0 = x to # x0 ∧ σ1 = ⌜x from # x0⌝ |
Used simplifier rules: eq-stream-to-list-2-1: ⊦ ⌜x⌝ + ⌜y⌝ = ⌜z⌝ ↔ x + y = z;%append-assoc: ⊦ (σ + σ1) + σ2 = σ + σ1 + σ2;%append-to-size: ⊦ x + y to # x = x;%append-from-size: ⊦ x + y from # x = y;%c: ⊦ m + n = n + m; from specification nat-basic%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic% ⊦ m ≤ m + n; (s)%a: ⊦ (x + y) + z = x + y + z; from specification list% ⊦ #(x + y) = # x + # y; (s)% ⊦ ⌜x⌝ = ⌜x0⌝ ↔ x = x0; (s)