2.81/1.41 YES 2.81/1.42 proof of /export/starexec/sandbox/benchmark/theBenchmark.xml 2.81/1.42 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 2.81/1.42 2.81/1.42 2.81/1.42 Termination of the given CSR could be proven: 2.81/1.42 2.81/1.42 (0) CSR 2.81/1.42 (1) CSRRRRProof [EQUIVALENT, 43 ms] 2.81/1.42 (2) CSR 2.81/1.42 (3) CSRRRRProof [EQUIVALENT, 0 ms] 2.81/1.42 (4) CSR 2.81/1.42 (5) CSRRRRProof [EQUIVALENT, 3 ms] 2.81/1.42 (6) CSR 2.81/1.42 (7) RisEmptyProof [EQUIVALENT, 0 ms] 2.81/1.42 (8) YES 2.81/1.42 2.81/1.42 2.81/1.42 ---------------------------------------- 2.81/1.42 2.81/1.42 (0) 2.81/1.42 Obligation: 2.81/1.42 Context-sensitive rewrite system: 2.81/1.42 The TRS R consists of the following rules: 2.81/1.42 2.81/1.42 f(X) -> if(X, c, f(true)) 2.81/1.42 if(true, X, Y) -> X 2.81/1.42 if(false, X, Y) -> Y 2.81/1.42 2.81/1.42 The replacement map contains the following entries: 2.81/1.42 2.81/1.42 f: {1} 2.81/1.42 if: {1, 2} 2.81/1.42 c: empty set 2.81/1.42 true: empty set 2.81/1.42 false: empty set 2.81/1.42 2.81/1.42 ---------------------------------------- 2.81/1.42 2.81/1.42 (1) CSRRRRProof (EQUIVALENT) 2.81/1.42 The following CSR is given: Context-sensitive rewrite system: 2.81/1.42 The TRS R consists of the following rules: 2.81/1.42 2.81/1.42 f(X) -> if(X, c, f(true)) 2.81/1.42 if(true, X, Y) -> X 2.81/1.42 if(false, X, Y) -> Y 2.81/1.42 2.81/1.42 The replacement map contains the following entries: 2.81/1.42 2.81/1.42 f: {1} 2.81/1.42 if: {1, 2} 2.81/1.42 c: empty set 2.81/1.42 true: empty set 2.81/1.42 false: empty set 2.81/1.42 Used ordering: 2.81/1.42 Polynomial interpretation [POLO]: 2.81/1.42 2.81/1.42 POL(c) = 0 2.81/1.42 POL(f(x_1)) = x_1 2.81/1.42 POL(false) = 1 2.81/1.42 POL(if(x_1, x_2, x_3)) = x_1 + x_2 + x_3 2.81/1.42 POL(true) = 0 2.81/1.42 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 2.81/1.42 2.81/1.42 if(false, X, Y) -> Y 2.81/1.42 2.81/1.42 2.81/1.42 2.81/1.42 2.81/1.42 ---------------------------------------- 2.81/1.42 2.81/1.42 (2) 2.81/1.42 Obligation: 2.81/1.42 Context-sensitive rewrite system: 2.81/1.42 The TRS R consists of the following rules: 2.81/1.42 2.81/1.42 f(X) -> if(X, c, f(true)) 2.81/1.42 if(true, X, Y) -> X 2.81/1.42 2.81/1.42 The replacement map contains the following entries: 2.81/1.42 2.81/1.42 f: {1} 2.81/1.42 if: {1, 2} 2.81/1.42 c: empty set 2.81/1.42 true: empty set 2.81/1.42 2.81/1.42 ---------------------------------------- 2.81/1.42 2.81/1.42 (3) CSRRRRProof (EQUIVALENT) 2.81/1.42 The following CSR is given: Context-sensitive rewrite system: 2.81/1.42 The TRS R consists of the following rules: 2.81/1.42 2.81/1.42 f(X) -> if(X, c, f(true)) 2.81/1.42 if(true, X, Y) -> X 2.81/1.42 2.81/1.42 The replacement map contains the following entries: 2.81/1.42 2.81/1.42 f: {1} 2.81/1.42 if: {1, 2} 2.81/1.42 c: empty set 2.81/1.42 true: empty set 2.81/1.42 Used ordering: 2.81/1.42 Polynomial interpretation [POLO]: 2.81/1.42 2.81/1.42 POL(c) = 0 2.81/1.42 POL(f(x_1)) = 1 + 2*x_1 2.81/1.42 POL(if(x_1, x_2, x_3)) = x_1 + 2*x_2 2.81/1.42 POL(true) = 0 2.81/1.42 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 2.81/1.42 2.81/1.42 f(X) -> if(X, c, f(true)) 2.81/1.42 2.81/1.42 2.81/1.42 2.81/1.42 2.81/1.42 ---------------------------------------- 2.81/1.42 2.81/1.42 (4) 2.81/1.42 Obligation: 2.81/1.42 Context-sensitive rewrite system: 2.81/1.42 The TRS R consists of the following rules: 2.81/1.42 2.81/1.42 if(true, X, Y) -> X 2.81/1.42 2.81/1.42 The replacement map contains the following entries: 2.81/1.42 2.81/1.42 if: {1, 2} 2.81/1.42 true: empty set 2.81/1.42 2.81/1.42 ---------------------------------------- 2.81/1.42 2.81/1.42 (5) CSRRRRProof (EQUIVALENT) 2.81/1.42 The following CSR is given: Context-sensitive rewrite system: 2.81/1.42 The TRS R consists of the following rules: 2.81/1.42 2.81/1.42 if(true, X, Y) -> X 2.81/1.42 2.81/1.42 The replacement map contains the following entries: 2.81/1.42 2.81/1.42 if: {1, 2} 2.81/1.42 true: empty set 2.81/1.42 Used ordering: 2.81/1.42 Polynomial interpretation [POLO]: 2.81/1.42 2.81/1.42 POL(if(x_1, x_2, x_3)) = x_1 + x_2 2.81/1.42 POL(true) = 1 2.81/1.42 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 2.81/1.42 2.81/1.42 if(true, X, Y) -> X 2.81/1.42 2.81/1.42 2.81/1.42 2.81/1.42 2.81/1.42 ---------------------------------------- 2.81/1.42 2.81/1.42 (6) 2.81/1.42 Obligation: 2.81/1.42 Context-sensitive rewrite system: 2.81/1.42 R is empty. 2.81/1.42 2.81/1.42 ---------------------------------------- 2.81/1.42 2.81/1.42 (7) RisEmptyProof (EQUIVALENT) 2.81/1.42 The CSR R is empty. Hence, termination is trivially proven. 2.81/1.42 ---------------------------------------- 2.81/1.42 2.81/1.42 (8) 2.81/1.42 YES 2.92/1.46 EOF