4.21/1.92 YES 4.39/1.92 proof of /export/starexec/sandbox/benchmark/theBenchmark.xml 4.39/1.92 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 4.39/1.92 4.39/1.92 4.39/1.92 Termination w.r.t. Q of the given QTRS could be proven: 4.39/1.92 4.39/1.92 (0) QTRS 4.39/1.92 (1) QTRSRRRProof [EQUIVALENT, 65 ms] 4.39/1.92 (2) QTRS 4.39/1.92 (3) QTRSRRRProof [EQUIVALENT, 16 ms] 4.39/1.92 (4) QTRS 4.39/1.92 (5) QTRSRRRProof [EQUIVALENT, 0 ms] 4.39/1.92 (6) QTRS 4.39/1.92 (7) QTRSRRRProof [EQUIVALENT, 8 ms] 4.39/1.92 (8) QTRS 4.39/1.92 (9) QTRSRRRProof [EQUIVALENT, 0 ms] 4.39/1.92 (10) QTRS 4.39/1.92 (11) DependencyPairsProof [EQUIVALENT, 12 ms] 4.39/1.92 (12) QDP 4.39/1.92 (13) DependencyGraphProof [EQUIVALENT, 0 ms] 4.39/1.92 (14) QDP 4.39/1.92 (15) UsableRulesProof [EQUIVALENT, 0 ms] 4.39/1.92 (16) QDP 4.39/1.92 (17) QReductionProof [EQUIVALENT, 0 ms] 4.39/1.92 (18) QDP 4.39/1.92 (19) QDPSizeChangeProof [EQUIVALENT, 0 ms] 4.39/1.92 (20) YES 4.39/1.92 4.39/1.92 4.39/1.92 ---------------------------------------- 4.39/1.92 4.39/1.92 (0) 4.39/1.92 Obligation: 4.39/1.92 Q restricted rewrite system: 4.39/1.92 The TRS R consists of the following rules: 4.39/1.92 4.39/1.92 a__f(0) -> cons(0, f(s(0))) 4.39/1.92 a__f(s(0)) -> a__f(a__p(s(0))) 4.39/1.92 a__p(s(0)) -> 0 4.39/1.92 mark(f(X)) -> a__f(mark(X)) 4.39/1.92 mark(p(X)) -> a__p(mark(X)) 4.39/1.92 mark(0) -> 0 4.39/1.92 mark(cons(X1, X2)) -> cons(mark(X1), X2) 4.39/1.93 mark(s(X)) -> s(mark(X)) 4.39/1.93 a__f(X) -> f(X) 4.39/1.93 a__p(X) -> p(X) 4.39/1.93 4.39/1.93 The set Q consists of the following terms: 4.39/1.93 4.39/1.93 mark(f(x0)) 4.39/1.93 mark(p(x0)) 4.39/1.93 mark(0) 4.39/1.93 mark(cons(x0, x1)) 4.39/1.93 mark(s(x0)) 4.39/1.93 a__f(x0) 4.39/1.93 a__p(x0) 4.39/1.93 4.39/1.93 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (1) QTRSRRRProof (EQUIVALENT) 4.39/1.93 Used ordering: 4.39/1.93 Polynomial interpretation [POLO]: 4.39/1.93 4.39/1.93 POL(0) = 0 4.39/1.93 POL(a__f(x_1)) = 2 + 2*x_1 4.39/1.93 POL(a__p(x_1)) = 2*x_1 4.39/1.93 POL(cons(x_1, x_2)) = x_1 + x_2 4.39/1.93 POL(f(x_1)) = 1 + 2*x_1 4.39/1.93 POL(mark(x_1)) = 2*x_1 4.39/1.93 POL(p(x_1)) = 2*x_1 4.39/1.93 POL(s(x_1)) = 2*x_1 4.39/1.93 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 4.39/1.93 4.39/1.93 a__f(0) -> cons(0, f(s(0))) 4.39/1.93 a__f(X) -> f(X) 4.39/1.93 4.39/1.93 4.39/1.93 4.39/1.93 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (2) 4.39/1.93 Obligation: 4.39/1.93 Q restricted rewrite system: 4.39/1.93 The TRS R consists of the following rules: 4.39/1.93 4.39/1.93 a__f(s(0)) -> a__f(a__p(s(0))) 4.39/1.93 a__p(s(0)) -> 0 4.39/1.93 mark(f(X)) -> a__f(mark(X)) 4.39/1.93 mark(p(X)) -> a__p(mark(X)) 4.39/1.93 mark(0) -> 0 4.39/1.93 mark(cons(X1, X2)) -> cons(mark(X1), X2) 4.39/1.93 mark(s(X)) -> s(mark(X)) 4.39/1.93 a__p(X) -> p(X) 4.39/1.93 4.39/1.93 The set Q consists of the following terms: 4.39/1.93 4.39/1.93 mark(f(x0)) 4.39/1.93 mark(p(x0)) 4.39/1.93 mark(0) 4.39/1.93 mark(cons(x0, x1)) 4.39/1.93 mark(s(x0)) 4.39/1.93 a__f(x0) 4.39/1.93 a__p(x0) 4.39/1.93 4.39/1.93 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (3) QTRSRRRProof (EQUIVALENT) 4.39/1.93 Used ordering: 4.39/1.93 Polynomial interpretation [POLO]: 4.39/1.93 4.39/1.93 POL(0) = 0 4.39/1.93 POL(a__f(x_1)) = 1 + x_1 4.39/1.93 POL(a__p(x_1)) = 2*x_1 4.39/1.93 POL(cons(x_1, x_2)) = 1 + x_1 + x_2 4.39/1.93 POL(f(x_1)) = 1 + 2*x_1 4.39/1.93 POL(mark(x_1)) = 2*x_1 4.39/1.93 POL(p(x_1)) = 2*x_1 4.39/1.93 POL(s(x_1)) = 2*x_1 4.39/1.93 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 4.39/1.93 4.39/1.93 mark(f(X)) -> a__f(mark(X)) 4.39/1.93 mark(cons(X1, X2)) -> cons(mark(X1), X2) 4.39/1.93 4.39/1.93 4.39/1.93 4.39/1.93 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (4) 4.39/1.93 Obligation: 4.39/1.93 Q restricted rewrite system: 4.39/1.93 The TRS R consists of the following rules: 4.39/1.93 4.39/1.93 a__f(s(0)) -> a__f(a__p(s(0))) 4.39/1.93 a__p(s(0)) -> 0 4.39/1.93 mark(p(X)) -> a__p(mark(X)) 4.39/1.93 mark(0) -> 0 4.39/1.93 mark(s(X)) -> s(mark(X)) 4.39/1.93 a__p(X) -> p(X) 4.39/1.93 4.39/1.93 The set Q consists of the following terms: 4.39/1.93 4.39/1.93 mark(f(x0)) 4.39/1.93 mark(p(x0)) 4.39/1.93 mark(0) 4.39/1.93 mark(cons(x0, x1)) 4.39/1.93 mark(s(x0)) 4.39/1.93 a__f(x0) 4.39/1.93 a__p(x0) 4.39/1.93 4.39/1.93 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (5) QTRSRRRProof (EQUIVALENT) 4.39/1.93 Used ordering: 4.39/1.93 Polynomial interpretation [POLO]: 4.39/1.93 4.39/1.93 POL(0) = 0 4.39/1.93 POL(a__f(x_1)) = 2*x_1 4.39/1.93 POL(a__p(x_1)) = x_1 4.39/1.93 POL(mark(x_1)) = 2 + 2*x_1 4.39/1.93 POL(p(x_1)) = x_1 4.39/1.93 POL(s(x_1)) = x_1 4.39/1.93 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 4.39/1.93 4.39/1.93 mark(0) -> 0 4.39/1.93 4.39/1.93 4.39/1.93 4.39/1.93 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (6) 4.39/1.93 Obligation: 4.39/1.93 Q restricted rewrite system: 4.39/1.93 The TRS R consists of the following rules: 4.39/1.93 4.39/1.93 a__f(s(0)) -> a__f(a__p(s(0))) 4.39/1.93 a__p(s(0)) -> 0 4.39/1.93 mark(p(X)) -> a__p(mark(X)) 4.39/1.93 mark(s(X)) -> s(mark(X)) 4.39/1.93 a__p(X) -> p(X) 4.39/1.93 4.39/1.93 The set Q consists of the following terms: 4.39/1.93 4.39/1.93 mark(f(x0)) 4.39/1.93 mark(p(x0)) 4.39/1.93 mark(0) 4.39/1.93 mark(cons(x0, x1)) 4.39/1.93 mark(s(x0)) 4.39/1.93 a__f(x0) 4.39/1.93 a__p(x0) 4.39/1.93 4.39/1.93 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (7) QTRSRRRProof (EQUIVALENT) 4.39/1.93 Used ordering: 4.39/1.93 Polynomial interpretation [POLO]: 4.39/1.93 4.39/1.93 POL(0) = 2 4.39/1.93 POL(a__f(x_1)) = 2*x_1 4.39/1.93 POL(a__p(x_1)) = x_1 4.39/1.93 POL(mark(x_1)) = 2*x_1 4.39/1.93 POL(p(x_1)) = x_1 4.39/1.93 POL(s(x_1)) = 2*x_1 4.39/1.93 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 4.39/1.93 4.39/1.93 a__p(s(0)) -> 0 4.39/1.93 4.39/1.93 4.39/1.93 4.39/1.93 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (8) 4.39/1.93 Obligation: 4.39/1.93 Q restricted rewrite system: 4.39/1.93 The TRS R consists of the following rules: 4.39/1.93 4.39/1.93 a__f(s(0)) -> a__f(a__p(s(0))) 4.39/1.93 mark(p(X)) -> a__p(mark(X)) 4.39/1.93 mark(s(X)) -> s(mark(X)) 4.39/1.93 a__p(X) -> p(X) 4.39/1.93 4.39/1.93 The set Q consists of the following terms: 4.39/1.93 4.39/1.93 mark(f(x0)) 4.39/1.93 mark(p(x0)) 4.39/1.93 mark(0) 4.39/1.93 mark(cons(x0, x1)) 4.39/1.93 mark(s(x0)) 4.39/1.93 a__f(x0) 4.39/1.93 a__p(x0) 4.39/1.93 4.39/1.93 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (9) QTRSRRRProof (EQUIVALENT) 4.39/1.93 Used ordering: 4.39/1.93 Polynomial interpretation [POLO]: 4.39/1.93 4.39/1.93 POL(0) = 0 4.39/1.93 POL(a__f(x_1)) = x_1 4.39/1.93 POL(a__p(x_1)) = x_1 4.39/1.93 POL(mark(x_1)) = 2 + 2*x_1 4.39/1.93 POL(p(x_1)) = x_1 4.39/1.93 POL(s(x_1)) = 1 + x_1 4.39/1.93 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 4.39/1.93 4.39/1.93 mark(s(X)) -> s(mark(X)) 4.39/1.93 4.39/1.93 4.39/1.93 4.39/1.93 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (10) 4.39/1.93 Obligation: 4.39/1.93 Q restricted rewrite system: 4.39/1.93 The TRS R consists of the following rules: 4.39/1.93 4.39/1.93 a__f(s(0)) -> a__f(a__p(s(0))) 4.39/1.93 mark(p(X)) -> a__p(mark(X)) 4.39/1.93 a__p(X) -> p(X) 4.39/1.93 4.39/1.93 The set Q consists of the following terms: 4.39/1.93 4.39/1.93 mark(f(x0)) 4.39/1.93 mark(p(x0)) 4.39/1.93 mark(0) 4.39/1.93 mark(cons(x0, x1)) 4.39/1.93 mark(s(x0)) 4.39/1.93 a__f(x0) 4.39/1.93 a__p(x0) 4.39/1.93 4.39/1.93 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (11) DependencyPairsProof (EQUIVALENT) 4.39/1.93 Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (12) 4.39/1.93 Obligation: 4.39/1.93 Q DP problem: 4.39/1.93 The TRS P consists of the following rules: 4.39/1.93 4.39/1.93 A__F(s(0)) -> A__F(a__p(s(0))) 4.39/1.93 A__F(s(0)) -> A__P(s(0)) 4.39/1.93 MARK(p(X)) -> A__P(mark(X)) 4.39/1.93 MARK(p(X)) -> MARK(X) 4.39/1.93 4.39/1.93 The TRS R consists of the following rules: 4.39/1.93 4.39/1.93 a__f(s(0)) -> a__f(a__p(s(0))) 4.39/1.93 mark(p(X)) -> a__p(mark(X)) 4.39/1.93 a__p(X) -> p(X) 4.39/1.93 4.39/1.93 The set Q consists of the following terms: 4.39/1.93 4.39/1.93 mark(f(x0)) 4.39/1.93 mark(p(x0)) 4.39/1.93 mark(0) 4.39/1.93 mark(cons(x0, x1)) 4.39/1.93 mark(s(x0)) 4.39/1.93 a__f(x0) 4.39/1.93 a__p(x0) 4.39/1.93 4.39/1.93 We have to consider all minimal (P,Q,R)-chains. 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (13) DependencyGraphProof (EQUIVALENT) 4.39/1.93 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 3 less nodes. 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (14) 4.39/1.93 Obligation: 4.39/1.93 Q DP problem: 4.39/1.93 The TRS P consists of the following rules: 4.39/1.93 4.39/1.93 MARK(p(X)) -> MARK(X) 4.39/1.93 4.39/1.93 The TRS R consists of the following rules: 4.39/1.93 4.39/1.93 a__f(s(0)) -> a__f(a__p(s(0))) 4.39/1.93 mark(p(X)) -> a__p(mark(X)) 4.39/1.93 a__p(X) -> p(X) 4.39/1.93 4.39/1.93 The set Q consists of the following terms: 4.39/1.93 4.39/1.93 mark(f(x0)) 4.39/1.93 mark(p(x0)) 4.39/1.93 mark(0) 4.39/1.93 mark(cons(x0, x1)) 4.39/1.93 mark(s(x0)) 4.39/1.93 a__f(x0) 4.39/1.93 a__p(x0) 4.39/1.93 4.39/1.93 We have to consider all minimal (P,Q,R)-chains. 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (15) UsableRulesProof (EQUIVALENT) 4.39/1.93 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (16) 4.39/1.93 Obligation: 4.39/1.93 Q DP problem: 4.39/1.93 The TRS P consists of the following rules: 4.39/1.93 4.39/1.93 MARK(p(X)) -> MARK(X) 4.39/1.93 4.39/1.93 R is empty. 4.39/1.93 The set Q consists of the following terms: 4.39/1.93 4.39/1.93 mark(f(x0)) 4.39/1.93 mark(p(x0)) 4.39/1.93 mark(0) 4.39/1.93 mark(cons(x0, x1)) 4.39/1.93 mark(s(x0)) 4.39/1.93 a__f(x0) 4.39/1.93 a__p(x0) 4.39/1.93 4.39/1.93 We have to consider all minimal (P,Q,R)-chains. 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (17) QReductionProof (EQUIVALENT) 4.39/1.93 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 4.39/1.93 4.39/1.93 mark(f(x0)) 4.39/1.93 mark(p(x0)) 4.39/1.93 mark(0) 4.39/1.93 mark(cons(x0, x1)) 4.39/1.93 mark(s(x0)) 4.39/1.93 a__f(x0) 4.39/1.93 a__p(x0) 4.39/1.93 4.39/1.93 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (18) 4.39/1.93 Obligation: 4.39/1.93 Q DP problem: 4.39/1.93 The TRS P consists of the following rules: 4.39/1.93 4.39/1.93 MARK(p(X)) -> MARK(X) 4.39/1.93 4.39/1.93 R is empty. 4.39/1.93 Q is empty. 4.39/1.93 We have to consider all minimal (P,Q,R)-chains. 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (19) QDPSizeChangeProof (EQUIVALENT) 4.39/1.93 By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. 4.39/1.93 4.39/1.93 From the DPs we obtained the following set of size-change graphs: 4.39/1.93 *MARK(p(X)) -> MARK(X) 4.39/1.93 The graph contains the following edges 1 > 1 4.39/1.93 4.39/1.93 4.39/1.93 ---------------------------------------- 4.39/1.93 4.39/1.93 (20) 4.39/1.93 YES 4.39/1.94 EOF