YES TPA v.1.0 Result: TRS is terminating Default interpretations for symbols are not printed. For polynomial interpretations and semantic labelling over N\{0,1} defaults are 2 for constants, identity for unary symbols and x+y-2 for binary symbols. For semantic labelling over {0,1} (booleans) defaults are 0 for constants, identity for unary symbols and disjunction for binary symbols. [1] TRS loaded from input file: (1) -(x,0) -> x (2) -(0,s(y)) -> 0 (3) -(s(x),s(y)) -> -(x,y) (4) lt(x,0) -> false (5) lt(0,s(y)) -> true (6) lt(s(x),s(y)) -> lt(x,y) (7) if`1(true,if`2(x,y)) -> x (8) if`1(false,if`2(x,y)) -> y (9) div(x,0) -> 0 (10) div(0,y) -> 0 (11) div(s(x),s(y)) -> if`1(lt(x,y),if`2(0,s(div(-(x,y),s(y))))) [2] Apply the Dependency Pair transformation resulting in the following dependency pairs: <-~(s(x),s(y)), -~(x,y)> and 3 SCCs in the dependency graph. Proofs for those SCCs follow. [2a-1] Consider the following SCC obtained from analysis of dependency graph: (1) -(x,0) ->= x (2) -(0,s(y)) ->= 0 (3) -(s(x),s(y)) ->= -(x,y) (4) lt(x,0) ->= false (5) lt(0,s(y)) ->= true (6) lt(s(x),s(y)) ->= lt(x,y) (7) if`1(true,if`2(x,y)) ->= x (8) if`1(false,if`2(x,y)) ->= y (9) div(x,0) ->= 0 (10) div(0,y) ->= 0 (11) div(s(x),s(y)) ->= if`1(lt(x,y),if`2(0,s(div(-(x,y),s(y))))) (DP5) Div(s(x),s(y)) -> Div(-(x,y),s(y)) [2a-2] Use following polynomial interpretation: [-(x,y)] = x [s(x)] = x + 1 [if`1(x,y)] = y rest default Remove rules with left hand side strictly bigger than right hand side: (3), (5)-(6), (DP5) [2a-3] Since there are no remaining strict rules, relative termination is proved! [2b-1] Consider the following SCC obtained from analysis of dependency graph: (1) -(x,0) ->= x (2) -(0,s(y)) ->= 0 (3) -(s(x),s(y)) ->= -(x,y) (4) lt(x,0) ->= false (5) lt(0,s(y)) ->= true (6) lt(s(x),s(y)) ->= lt(x,y) (7) if`1(true,if`2(x,y)) ->= x (8) if`1(false,if`2(x,y)) ->= y (9) div(x,0) ->= 0 (10) div(0,y) ->= 0 (11) div(s(x),s(y)) ->= if`1(lt(x,y),if`2(0,s(div(-(x,y),s(y))))) (DP2) Lt(s(x),s(y)) -> Lt(x,y) [2b-2] Use following polynomial interpretation: [-(x,y)] = x [s(x)] = x + 1 [if`1(x,y)] = y rest default Remove rules with left hand side strictly bigger than right hand side: (3), (5)-(6), (DP2) [2b-3] Since there are no remaining strict rules, relative termination is proved! [2c-1] Consider the following SCC obtained from analysis of dependency graph: (1) -(x,0) ->= x (2) -(0,s(y)) ->= 0 (3) -(s(x),s(y)) ->= -(x,y) (4) lt(x,0) ->= false (5) lt(0,s(y)) ->= true (6) lt(s(x),s(y)) ->= lt(x,y) (7) if`1(true,if`2(x,y)) ->= x (8) if`1(false,if`2(x,y)) ->= y (9) div(x,0) ->= 0 (10) div(0,y) ->= 0 (11) div(s(x),s(y)) ->= if`1(lt(x,y),if`2(0,s(div(-(x,y),s(y))))) (DP1) -~(s(x),s(y)) -> -~(x,y) [2c-2] Use following polynomial interpretation: [-(x,y)] = x [s(x)] = x + 1 [if`1(x,y)] = y rest default Remove rules with left hand side strictly bigger than right hand side: (3), (5)-(6), (DP1) [2c-3] Since there are no remaining strict rules, relative termination is proved! ../tpdb/TRS/HM/t014.trs, 0.02, Y Couldn't open file <60>: 60: No such file or directory