| (a = A[m + 2] ⊃ mkbag(A, # A) -- A[m + 1];(mkbag(A, # A) -- A[m + 1] -- A[m + 2]) ++ a) ++ b = mkbag(A0, # A0), m + 2 < # A, m + 1 < # A ⊦ (b = A[m + 2] ⊃ mkbag(A[m, a], # A) -- A[m + 1];(mkbag(A[m, a], # A) -- A[m + 1] -- A[m + 2]) ++ b) ++ A[m] = (a = A[m + 2] ⊃ mkbag(A, # A) -- A[m + 1];(mkbag(A, # A) -- A[m + 1] -- A[m + 2]) ++ a) ++ b |
(a = A[m + 2] ⊃ mkbag(A, # A) -- A[m + 1];(mkbag(A, # A) -- A[m + 1] -- A[m + 2]) ++ a) ++ b = mkbag(A0, # A0), m + 1 < # A, m + 2 < # A, m < # A ⊦ (b = A[m + 2] ⊃ mkbag(A[m, a], # A) -- A[m + 1];(mkbag(A[m, a], # A) -- A[m + 1] -- A[m + 2]) ++ b) ++ A[m] = (a = A[m + 2] ⊃ mkbag(A, # A) -- A[m + 1];(mkbag(A, # A) -- A[m + 1] -- A[m + 2]) ++ a) ++ b
Used simplifier rules: ⊦ ¬ m < n → ¬ m + m0 < n; (s)%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic%c: ⊦ m + n = n + m; from specification nat-basic Used formulas: m < # A