YES proof of /export/starexec/sandbox2/benchmark/theBenchmark.xml # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty Termination of the given ETRS could be proven: (0) ETRS (1) RRRPoloETRSProof [EQUIVALENT, 153 ms] (2) ETRS (3) RRRPoloETRSProof [EQUIVALENT, 42 ms] (4) ETRS (5) RRRPoloETRSProof [EQUIVALENT, 34 ms] (6) ETRS (7) RRRPoloETRSProof [EQUIVALENT, 1047 ms] (8) ETRS (9) EquationalDependencyPairsProof [EQUIVALENT, 100 ms] (10) EDP (11) EUsableRulesReductionPairsProof [EQUIVALENT, 19 ms] (12) EDP (13) ERuleRemovalProof [EQUIVALENT, 17 ms] (14) EDP (15) EDPPoloProof [EQUIVALENT, 27 ms] (16) EDP (17) PisEmptyProof [EQUIVALENT, 0 ms] (18) YES ---------------------------------------- (0) Obligation: Equational rewrite system: The TRS R consists of the following rules: 0(S) -> S plus(S, x) -> x plus(0(x), 0(y)) -> 0(plus(x, y)) plus(0(x), 1(y)) -> 1(plus(x, y)) plus(0(x), j(y)) -> j(plus(x, y)) plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) plus(1(x), j(y)) -> 0(plus(x, y)) opp(S) -> S opp(0(x)) -> 0(opp(x)) opp(1(x)) -> j(opp(x)) opp(j(x)) -> 1(opp(x)) minus(x, y) -> plus(opp(y), x) times(S, x) -> S times(0(x), y) -> 0(times(x, y)) times(1(x), y) -> plus(0(times(x, y)), y) times(j(x), y) -> minus(0(times(x, y)), y) The set E consists of the following equations: plus(x, y) == plus(y, x) times(x, y) == times(y, x) plus(plus(x, y), z) == plus(x, plus(y, z)) times(times(x, y), z) == times(x, times(y, z)) ---------------------------------------- (1) RRRPoloETRSProof (EQUIVALENT) The following E TRS is given: Equational rewrite system: The TRS R consists of the following rules: 0(S) -> S plus(S, x) -> x plus(0(x), 0(y)) -> 0(plus(x, y)) plus(0(x), 1(y)) -> 1(plus(x, y)) plus(0(x), j(y)) -> j(plus(x, y)) plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) plus(1(x), j(y)) -> 0(plus(x, y)) opp(S) -> S opp(0(x)) -> 0(opp(x)) opp(1(x)) -> j(opp(x)) opp(j(x)) -> 1(opp(x)) minus(x, y) -> plus(opp(y), x) times(S, x) -> S times(0(x), y) -> 0(times(x, y)) times(1(x), y) -> plus(0(times(x, y)), y) times(j(x), y) -> minus(0(times(x, y)), y) The set E consists of the following equations: plus(x, y) == plus(y, x) times(x, y) == times(y, x) plus(plus(x, y), z) == plus(x, plus(y, z)) times(times(x, y), z) == times(x, times(y, z)) The following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly by a polynomial ordering: plus(1(x), j(y)) -> 0(plus(x, y)) opp(1(x)) -> j(opp(x)) opp(j(x)) -> 1(opp(x)) minus(x, y) -> plus(opp(y), x) times(1(x), y) -> plus(0(times(x, y)), y) Used ordering: Polynomial interpretation [POLO]: POL(0(x_1)) = x_1 POL(1(x_1)) = 3 + x_1 POL(S) = 0 POL(j(x_1)) = 3 + x_1 POL(minus(x_1, x_2)) = 3 + x_1 + 3*x_2 POL(opp(x_1)) = 2*x_1 POL(plus(x_1, x_2)) = x_1 + x_2 POL(times(x_1, x_2)) = x_1 + 2*x_1*x_2 + x_2 ---------------------------------------- (2) Obligation: Equational rewrite system: The TRS R consists of the following rules: 0(S) -> S plus(S, x) -> x plus(0(x), 0(y)) -> 0(plus(x, y)) plus(0(x), 1(y)) -> 1(plus(x, y)) plus(0(x), j(y)) -> j(plus(x, y)) plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) opp(S) -> S opp(0(x)) -> 0(opp(x)) times(S, x) -> S times(0(x), y) -> 0(times(x, y)) times(j(x), y) -> minus(0(times(x, y)), y) The set E consists of the following equations: plus(x, y) == plus(y, x) times(x, y) == times(y, x) plus(plus(x, y), z) == plus(x, plus(y, z)) times(times(x, y), z) == times(x, times(y, z)) ---------------------------------------- (3) RRRPoloETRSProof (EQUIVALENT) The following E TRS is given: Equational rewrite system: The TRS R consists of the following rules: 0(S) -> S plus(S, x) -> x plus(0(x), 0(y)) -> 0(plus(x, y)) plus(0(x), 1(y)) -> 1(plus(x, y)) plus(0(x), j(y)) -> j(plus(x, y)) plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) opp(S) -> S opp(0(x)) -> 0(opp(x)) times(S, x) -> S times(0(x), y) -> 0(times(x, y)) times(j(x), y) -> minus(0(times(x, y)), y) The set E consists of the following equations: plus(x, y) == plus(y, x) times(x, y) == times(y, x) plus(plus(x, y), z) == plus(x, plus(y, z)) times(times(x, y), z) == times(x, times(y, z)) The following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly by a polynomial ordering: times(S, x) -> S times(j(x), y) -> minus(0(times(x, y)), y) Used ordering: Polynomial interpretation [POLO]: POL(0(x_1)) = x_1 POL(1(x_1)) = 2 + x_1 POL(S) = 0 POL(j(x_1)) = 2 + x_1 POL(minus(x_1, x_2)) = x_1 + x_2 POL(opp(x_1)) = 2*x_1 POL(plus(x_1, x_2)) = x_1 + x_2 POL(times(x_1, x_2)) = 2 + 2*x_1 + x_1*x_2 + 2*x_2 ---------------------------------------- (4) Obligation: Equational rewrite system: The TRS R consists of the following rules: 0(S) -> S plus(S, x) -> x plus(0(x), 0(y)) -> 0(plus(x, y)) plus(0(x), 1(y)) -> 1(plus(x, y)) plus(0(x), j(y)) -> j(plus(x, y)) plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) opp(S) -> S opp(0(x)) -> 0(opp(x)) times(0(x), y) -> 0(times(x, y)) The set E consists of the following equations: plus(x, y) == plus(y, x) times(x, y) == times(y, x) plus(plus(x, y), z) == plus(x, plus(y, z)) times(times(x, y), z) == times(x, times(y, z)) ---------------------------------------- (5) RRRPoloETRSProof (EQUIVALENT) The following E TRS is given: Equational rewrite system: The TRS R consists of the following rules: 0(S) -> S plus(S, x) -> x plus(0(x), 0(y)) -> 0(plus(x, y)) plus(0(x), 1(y)) -> 1(plus(x, y)) plus(0(x), j(y)) -> j(plus(x, y)) plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) opp(S) -> S opp(0(x)) -> 0(opp(x)) times(0(x), y) -> 0(times(x, y)) The set E consists of the following equations: plus(x, y) == plus(y, x) times(x, y) == times(y, x) plus(plus(x, y), z) == plus(x, plus(y, z)) times(times(x, y), z) == times(x, times(y, z)) The following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly by a polynomial ordering: 0(S) -> S plus(0(x), 0(y)) -> 0(plus(x, y)) plus(0(x), 1(y)) -> 1(plus(x, y)) plus(0(x), j(y)) -> j(plus(x, y)) opp(S) -> S Used ordering: Polynomial interpretation [POLO]: POL(0(x_1)) = 1 + 3*x_1 POL(1(x_1)) = 2*x_1 POL(S) = 0 POL(j(x_1)) = 2*x_1 POL(opp(x_1)) = 1 + 3*x_1 POL(plus(x_1, x_2)) = x_1 + x_2 POL(times(x_1, x_2)) = x_1 + 3*x_1*x_2 + x_2 ---------------------------------------- (6) Obligation: Equational rewrite system: The TRS R consists of the following rules: plus(S, x) -> x plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) opp(0(x)) -> 0(opp(x)) times(0(x), y) -> 0(times(x, y)) The set E consists of the following equations: plus(x, y) == plus(y, x) times(x, y) == times(y, x) plus(plus(x, y), z) == plus(x, plus(y, z)) times(times(x, y), z) == times(x, times(y, z)) ---------------------------------------- (7) RRRPoloETRSProof (EQUIVALENT) The following E TRS is given: Equational rewrite system: The TRS R consists of the following rules: plus(S, x) -> x plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) opp(0(x)) -> 0(opp(x)) times(0(x), y) -> 0(times(x, y)) The set E consists of the following equations: plus(x, y) == plus(y, x) times(x, y) == times(y, x) plus(plus(x, y), z) == plus(x, plus(y, z)) times(times(x, y), z) == times(x, times(y, z)) The following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly by a polynomial ordering: opp(0(x)) -> 0(opp(x)) times(0(x), y) -> 0(times(x, y)) Used ordering: Polynomial interpretation [POLO]: POL(0(x_1)) = 2 + x_1 POL(1(x_1)) = 2*x_1 POL(S) = 0 POL(j(x_1)) = 2*x_1 POL(opp(x_1)) = 2 + 2*x_1^2 POL(plus(x_1, x_2)) = x_1 + x_2 POL(times(x_1, x_2)) = 2 + 3*x_1 + 3*x_1*x_2 + 3*x_2 ---------------------------------------- (8) Obligation: Equational rewrite system: The TRS R consists of the following rules: plus(S, x) -> x plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) The set E consists of the following equations: plus(x, y) == plus(y, x) times(x, y) == times(y, x) plus(plus(x, y), z) == plus(x, plus(y, z)) times(times(x, y), z) == times(x, times(y, z)) ---------------------------------------- (9) EquationalDependencyPairsProof (EQUIVALENT) Using Dependency Pairs [AG00,DA_STEIN] we result in the following initial EDP problem: The TRS P consists of the following rules: PLUS(1(x), 1(y)) -> PLUS(1(S), plus(x, y)) PLUS(1(x), 1(y)) -> PLUS(x, y) PLUS(j(x), j(y)) -> PLUS(j(S), plus(x, y)) PLUS(j(x), j(y)) -> PLUS(x, y) PLUS(plus(1(x), 1(y)), ext) -> PLUS(j(plus(1(S), plus(x, y))), ext) PLUS(plus(1(x), 1(y)), ext) -> PLUS(1(S), plus(x, y)) PLUS(plus(1(x), 1(y)), ext) -> PLUS(x, y) PLUS(plus(j(x), j(y)), ext) -> PLUS(1(plus(j(S), plus(x, y))), ext) PLUS(plus(j(x), j(y)), ext) -> PLUS(j(S), plus(x, y)) PLUS(plus(j(x), j(y)), ext) -> PLUS(x, y) The TRS R consists of the following rules: plus(S, x) -> x plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) plus(plus(1(x), 1(y)), ext) -> plus(j(plus(1(S), plus(x, y))), ext) plus(plus(j(x), j(y)), ext) -> plus(1(plus(j(S), plus(x, y))), ext) The set E consists of the following equations: plus(x, y) == plus(y, x) times(x, y) == times(y, x) plus(plus(x, y), z) == plus(x, plus(y, z)) times(times(x, y), z) == times(x, times(y, z)) The set E# consists of the following equations: PLUS(x, y) == PLUS(y, x) PLUS(plus(x, y), z) == PLUS(x, plus(y, z)) We have to consider all minimal (P,E#,R,E)-chains ---------------------------------------- (10) Obligation: The TRS P consists of the following rules: PLUS(1(x), 1(y)) -> PLUS(1(S), plus(x, y)) PLUS(1(x), 1(y)) -> PLUS(x, y) PLUS(j(x), j(y)) -> PLUS(j(S), plus(x, y)) PLUS(j(x), j(y)) -> PLUS(x, y) PLUS(plus(1(x), 1(y)), ext) -> PLUS(j(plus(1(S), plus(x, y))), ext) PLUS(plus(1(x), 1(y)), ext) -> PLUS(1(S), plus(x, y)) PLUS(plus(1(x), 1(y)), ext) -> PLUS(x, y) PLUS(plus(j(x), j(y)), ext) -> PLUS(1(plus(j(S), plus(x, y))), ext) PLUS(plus(j(x), j(y)), ext) -> PLUS(j(S), plus(x, y)) PLUS(plus(j(x), j(y)), ext) -> PLUS(x, y) The TRS R consists of the following rules: plus(S, x) -> x plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) plus(plus(1(x), 1(y)), ext) -> plus(j(plus(1(S), plus(x, y))), ext) plus(plus(j(x), j(y)), ext) -> plus(1(plus(j(S), plus(x, y))), ext) The set E consists of the following equations: plus(x, y) == plus(y, x) times(x, y) == times(y, x) plus(plus(x, y), z) == plus(x, plus(y, z)) times(times(x, y), z) == times(x, times(y, z)) The set E# consists of the following equations: PLUS(x, y) == PLUS(y, x) PLUS(plus(x, y), z) == PLUS(x, plus(y, z)) We have to consider all minimal (P,E#,R,E)-chains ---------------------------------------- (11) EUsableRulesReductionPairsProof (EQUIVALENT) By using the usable rules and equations with reduction pair processor [DA_STEIN] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules can be oriented non-strictly, the usable equations and the esharp equations can be oriented equivalently. All non-usable rules and equations are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well. No dependency pairs are removed. No rules are removed from R. The following equations are removed from E: times(x, y) == times(y, x) times(times(x, y), z) == times(x, times(y, z)) Used ordering: POLO with Polynomial interpretation [POLO]: POL(1(x_1)) = x_1 POL(PLUS(x_1, x_2)) = x_1 + x_2 POL(S) = 0 POL(j(x_1)) = x_1 POL(plus(x_1, x_2)) = x_1 + x_2 ---------------------------------------- (12) Obligation: The TRS P consists of the following rules: PLUS(1(x), 1(y)) -> PLUS(1(S), plus(x, y)) PLUS(1(x), 1(y)) -> PLUS(x, y) PLUS(j(x), j(y)) -> PLUS(j(S), plus(x, y)) PLUS(j(x), j(y)) -> PLUS(x, y) PLUS(plus(1(x), 1(y)), ext) -> PLUS(j(plus(1(S), plus(x, y))), ext) PLUS(plus(1(x), 1(y)), ext) -> PLUS(1(S), plus(x, y)) PLUS(plus(1(x), 1(y)), ext) -> PLUS(x, y) PLUS(plus(j(x), j(y)), ext) -> PLUS(1(plus(j(S), plus(x, y))), ext) PLUS(plus(j(x), j(y)), ext) -> PLUS(j(S), plus(x, y)) PLUS(plus(j(x), j(y)), ext) -> PLUS(x, y) The TRS R consists of the following rules: plus(S, x) -> x plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) plus(plus(1(x), 1(y)), ext) -> plus(j(plus(1(S), plus(x, y))), ext) plus(plus(j(x), j(y)), ext) -> plus(1(plus(j(S), plus(x, y))), ext) The set E consists of the following equations: plus(plus(x, y), z) == plus(x, plus(y, z)) plus(x, y) == plus(y, x) The set E# consists of the following equations: PLUS(x, y) == PLUS(y, x) PLUS(plus(x, y), z) == PLUS(x, plus(y, z)) We have to consider all minimal (P,E#,R,E)-chains ---------------------------------------- (13) ERuleRemovalProof (EQUIVALENT) By using the rule removal processor [DA_STEIN] with the following polynomial ordering [POLO], at least one Dependency Pair or term rewrite system rule of this EDP problem can be strictly oriented. Strictly oriented dependency pairs: PLUS(1(x), 1(y)) -> PLUS(1(S), plus(x, y)) PLUS(1(x), 1(y)) -> PLUS(x, y) PLUS(j(x), j(y)) -> PLUS(j(S), plus(x, y)) PLUS(j(x), j(y)) -> PLUS(x, y) PLUS(plus(1(x), 1(y)), ext) -> PLUS(1(S), plus(x, y)) PLUS(plus(1(x), 1(y)), ext) -> PLUS(x, y) PLUS(plus(j(x), j(y)), ext) -> PLUS(j(S), plus(x, y)) PLUS(plus(j(x), j(y)), ext) -> PLUS(x, y) Used ordering: POLO with Polynomial interpretation [POLO]: POL(1(x_1)) = 3 + x_1 POL(PLUS(x_1, x_2)) = x_1 + x_2 POL(S) = 0 POL(j(x_1)) = 3 + x_1 POL(plus(x_1, x_2)) = x_1 + x_2 ---------------------------------------- (14) Obligation: The TRS P consists of the following rules: PLUS(plus(1(x), 1(y)), ext) -> PLUS(j(plus(1(S), plus(x, y))), ext) PLUS(plus(j(x), j(y)), ext) -> PLUS(1(plus(j(S), plus(x, y))), ext) The TRS R consists of the following rules: plus(S, x) -> x plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) plus(plus(1(x), 1(y)), ext) -> plus(j(plus(1(S), plus(x, y))), ext) plus(plus(j(x), j(y)), ext) -> plus(1(plus(j(S), plus(x, y))), ext) The set E consists of the following equations: plus(plus(x, y), z) == plus(x, plus(y, z)) plus(x, y) == plus(y, x) The set E# consists of the following equations: PLUS(x, y) == PLUS(y, x) PLUS(plus(x, y), z) == PLUS(x, plus(y, z)) We have to consider all minimal (P,E#,R,E)-chains ---------------------------------------- (15) EDPPoloProof (EQUIVALENT) We use the reduction pair processor [DA_STEIN] with a polynomial ordering [POLO]. All Dependency Pairs of this DP problem can be strictly oriented. PLUS(plus(1(x), 1(y)), ext) -> PLUS(j(plus(1(S), plus(x, y))), ext) PLUS(plus(j(x), j(y)), ext) -> PLUS(1(plus(j(S), plus(x, y))), ext) With the implicit AFS we had to orient the following set of usable rules of R non-strictly. plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) plus(plus(1(x), 1(y)), ext) -> plus(j(plus(1(S), plus(x, y))), ext) plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(plus(j(x), j(y)), ext) -> plus(1(plus(j(S), plus(x, y))), ext) plus(S, x) -> x We had to orient the following equations of E# equivalently. PLUS(x, y) == PLUS(y, x) PLUS(plus(x, y), z) == PLUS(x, plus(y, z)) With the implicit AFS we had to orient the following usable equations of E equivalently. plus(plus(x, y), z) == plus(x, plus(y, z)) plus(x, y) == plus(y, x) Used ordering: POLO with Polynomial interpretation [POLO]: POL(1(x_1)) = 3 POL(PLUS(x_1, x_2)) = 2*x_1 + 2*x_2 POL(S) = 0 POL(j(x_1)) = 2 POL(plus(x_1, x_2)) = 2 + x_1 + x_2 ---------------------------------------- (16) Obligation: P is empty. The TRS R consists of the following rules: plus(S, x) -> x plus(1(x), 1(y)) -> j(plus(1(S), plus(x, y))) plus(j(x), j(y)) -> 1(plus(j(S), plus(x, y))) plus(plus(1(x), 1(y)), ext) -> plus(j(plus(1(S), plus(x, y))), ext) plus(plus(j(x), j(y)), ext) -> plus(1(plus(j(S), plus(x, y))), ext) The set E consists of the following equations: plus(plus(x, y), z) == plus(x, plus(y, z)) plus(x, y) == plus(y, x) The set E# consists of the following equations: PLUS(x, y) == PLUS(y, x) PLUS(plus(x, y), z) == PLUS(x, plus(y, z)) We have to consider all minimal (P,E#,R,E)-chains ---------------------------------------- (17) PisEmptyProof (EQUIVALENT) The TRS P is empty. Hence, there is no (P,E#,R,E) chain. ---------------------------------------- (18) YES