| P = pe(0, 2, 0) ' + pe(3, 5, 0) ', D = (∅)[100, 2][11, 5][22, 0][33, 1][44, 4][55, 3], A = mkarray(6)[0, 22][1, 33][2, 100][3, 55][4, 44][5, 11], P1 = P ∧ D1 = D ∧ A1 = A ∧ F0 = (∅)[0, 0][1, 0][2, 0][3, 1][4, 1][5, 1] ∧ X0 = 11 ' + 22 ' + 44 ' ⊦ ⟨while X0 ≠ [] do {REFINEONE(X0.head, F0; A1, D1, P1); X0 := X0.tail}⟩ ( A1 = mkarray(6)[0, 22][1, 33][2, 100][3, 11][4, 44][5, 55] ∧ D1 = (∅)[100, 2][11, 3][22, 0][33, 1][44, 4][55, 5] ∧ P1 = pe(0, 2, 1) ' + pe(3, 5, 2) ') |
P1 = pe(0, 2, 0) ' + pe(3, 5, 0) ', X0 = 11 ' + 22 ' + 44 ', F0 = (∅)[0, 0][1, 0][2, 0][3, 1][4, 1][5, 1], A1 = mkarray(6)[0, 22][1, 33][2, 100][3, 55][4, 44][5, 11], D1 = (∅)[100, 2][11, 5][22, 0][33, 1][44, 4][55, 3] ⊦ ⟨while X0 ≠ [] do {REFINEONE(X0.head, F0; A1, D1, P1); X0 := X0.tail}⟩ ( A1 = mkarray(6)[0, 22][1, 33][2, 100][3, 11][4, 44][5, 55] ∧ D1 = (∅)[100, 2][11, 3][22, 0][33, 1][44, 4][55, 5] ∧ P1 = pe(0, 2, 1) ' + pe(3, 5, 2) ')
[Concretesimprules((Csimpnamedseq(list,partition,in-17, ⊦ p ∈ p0 ' ↔ p = p0) Csimpnamedseq(list,partition,in-append, ⊦ p ∈ P + P0 ↔ ¬ ¬(p ∈ P ∨ p ∈ P0)) Csimpnamedseq(list,list_of_nat,in-17, ⊦ n ∈ n0 ' ↔ n = n0) Csimpnamedseq(list,list_of_nat,in-append, ⊦ n ∈ X + X0 ↔ ¬ ¬(n ∈ X ∨ n ∈ X0)) Csimpnamedforward(list,partition,in-14, ⊦ p ' + P = P0 → p ∈ P0) Csimpnamedseq(list,partition,a, ⊦ (P + P0) + P1 = P + P0 + P1) Csimpnamedforward(list,partition,in-15, ⊦ P + p ' = P0 → p ∈ P0) Csimpnamedforward(list,list_of_nat,in-14, ⊦ n ' + X = X0 → n ∈ X0) Csimpnamedseq(list,list_of_nat,a, ⊦ (X + X0) + X1 = X + X0 + X1) Csimpnamedforward(list,list_of_nat,in-15, ⊦ X + n ' = X0 → n ∈ X0)))]