/export/starexec/sandbox2/solver/bin/starexec_run_default /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- YES Problem 1: (VAR x y z) (RULES *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ) Problem 1: Dependency Pairs Processor: -> Pairs: *#(x,s(y)) -> *#(x,y) -#(s(x),s(y)) -> -#(x,y) F(x,s(y),z) -> *#(x,x) F(x,s(y),z) -> *#(x,z) F(x,s(y),z) -> F(*(x,x),half(s(y)),z) F(x,s(y),z) -> F(x,y,*(x,z)) F(x,s(y),z) -> HALF(s(y)) F(x,s(y),z) -> IF(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) F(x,s(y),z) -> ODD(s(y)) HALF(s(s(x))) -> HALF(x) ODD(s(s(x))) -> ODD(x) POW(x,y) -> F(x,y,s(0)) -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) Problem 1: SCC Processor: -> Pairs: *#(x,s(y)) -> *#(x,y) -#(s(x),s(y)) -> -#(x,y) F(x,s(y),z) -> *#(x,x) F(x,s(y),z) -> *#(x,z) F(x,s(y),z) -> F(*(x,x),half(s(y)),z) F(x,s(y),z) -> F(x,y,*(x,z)) F(x,s(y),z) -> HALF(s(y)) F(x,s(y),z) -> IF(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) F(x,s(y),z) -> ODD(s(y)) HALF(s(s(x))) -> HALF(x) ODD(s(s(x))) -> ODD(x) POW(x,y) -> F(x,y,s(0)) -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ODD(s(s(x))) -> ODD(x) ->->-> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->->Cycle: ->->-> Pairs: HALF(s(s(x))) -> HALF(x) ->->-> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->->Cycle: ->->-> Pairs: -#(s(x),s(y)) -> -#(x,y) ->->-> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->->Cycle: ->->-> Pairs: *#(x,s(y)) -> *#(x,y) ->->-> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->->Cycle: ->->-> Pairs: F(x,s(y),z) -> F(*(x,x),half(s(y)),z) F(x,s(y),z) -> F(x,y,*(x,z)) ->->-> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) The problem is decomposed in 5 subproblems. Problem 1.1: Subterm Processor: -> Pairs: ODD(s(s(x))) -> ODD(x) -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->Projection: pi(ODD) = 1 Problem 1.1: SCC Processor: -> Pairs: Empty -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.2: Subterm Processor: -> Pairs: HALF(s(s(x))) -> HALF(x) -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->Projection: pi(HALF) = 1 Problem 1.2: SCC Processor: -> Pairs: Empty -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.3: Subterm Processor: -> Pairs: -#(s(x),s(y)) -> -#(x,y) -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->Projection: pi(-#) = 1 Problem 1.3: SCC Processor: -> Pairs: Empty -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.4: Subterm Processor: -> Pairs: *#(x,s(y)) -> *#(x,y) -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->Projection: pi(*#) = 2 Problem 1.4: SCC Processor: -> Pairs: Empty -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.5: Reduction Pair Processor: -> Pairs: F(x,s(y),z) -> F(*(x,x),half(s(y)),z) F(x,s(y),z) -> F(x,y,*(x,z)) -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) -> Usable rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [*](X1,X2) = X2 + 1 [half](X) = X [+](X1,X2) = 2.X1 [0] = 2 [s](X) = 2.X + 2 [F](X1,X2,X3) = X2 + X3 Problem 1.5: SCC Processor: -> Pairs: F(x,s(y),z) -> F(*(x,x),half(s(y)),z) -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: F(x,s(y),z) -> F(*(x,x),half(s(y)),z) ->->-> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) Problem 1.5: Reduction Pair Processor: -> Pairs: F(x,s(y),z) -> F(*(x,x),half(s(y)),z) -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) -> Usable rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) ->Interpretation type: Linear ->Coefficients: All rationals ->Dimension: 1 ->Bound: 2 ->Interpretation: [*](X1,X2) = 0 [half](X) = 1/2.X [+](X1,X2) = 0 [0] = 0 [s](X) = 2.X + 2 [F](X1,X2,X3) = 2.X2 Problem 1.5: SCC Processor: -> Pairs: Empty -> Rules: *(x,0) -> 0 *(x,s(y)) -> +(*(x,y),x) -(s(x),s(y)) -> -(x,y) -(x,0) -> x f(x,0,z) -> z f(x,s(y),z) -> if(odd(s(y)),f(x,y,*(x,z)),f(*(x,x),half(s(y)),z)) half(0) -> 0 half(s(0)) -> 0 half(s(s(x))) -> s(half(x)) if(false,x,y) -> false if(false,x,y) -> y if(true,x,y) -> true if(true,x,y) -> x odd(0) -> false odd(s(0)) -> true odd(s(s(x))) -> odd(x) pow(x,y) -> f(x,y,s(0)) ->Strongly Connected Components: There is no strongly connected component The problem is finite.