| ∃ σ. σ1 + σ = σ2 ⊦ σ1 = σ2, ∃ n. ⌜n⌝ < # σ2 ∧ σ2 to n = σ1 |
⊦ σ = [], ∃ n. ⌜n⌝ < ⌜# x⌝ + # σ ∧ ⌜x⌝ + σ to n = ⌜x⌝
Used simplifier rules: append-cancel-l-02: ⊦ σ0 + σ = σ0 ↔ ¬ ¬(σ = [] ∨ ¬ finp(σ0));%append-assoc: ⊦ (σ + σ1) + σ2 = σ + σ1 + σ2;%size-append: ⊦ #(σ + σ1) = # σ + # σ1;%size-fin: ⊦ # ⌜x⌝ = ⌜# x⌝ ;%test-02: ⊦ finp(⌜x⌝ ); from specification stream-basic%stream-fin-forward: ⊦ finp(σ) → (∃ x. ⌜x⌝ = σ); (forward) from specification stream-basic