YES Problem 1: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR vNonEmpty x y) (REPLACEMENT-MAP (+ 1, 2) (0) (fSNonEmpty) (s 1) ) (RULES +(0,y) -> y +(s(x),y) -> s(+(x,y)) +(x,0) -> x +(x,s(y)) -> s(+(x,y)) +(x,y) -> +(y,x) ) ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Problem 1: Problem 1: Not CS-TRS Procedure: R is not a CS-TRS Problem 1: Linearity Procedure: Linear? YES Problem 1: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR vNonEmpty x y) (REPLACEMENT-MAP (+ 1, 2) (0) (fSNonEmpty) (s 1) ) (RULES +(0,y) -> y +(s(x),y) -> s(+(x,y)) +(x,0) -> x +(x,s(y)) -> s(+(x,y)) +(x,y) -> +(y,x) ) Linear:YES ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Huet Levy Procedure: -> Rules: +(0,y) -> y +(s(x),y) -> s(+(x,y)) +(x,0) -> x +(x,s(y)) -> s(+(x,y)) +(x,y) -> +(y,x) -> Vars: y, x, y, x, x, y, x, y -> Rlps: (rule: +(0,y) -> y, id: 1, possubterms: +(0,y)->[], 0->[1]) (rule: +(s(x),y) -> s(+(x,y)), id: 2, possubterms: +(s(x),y)->[], s(x)->[1]) (rule: +(x,0) -> x, id: 3, possubterms: +(x,0)->[], 0->[2]) (rule: +(x,s(y)) -> s(+(x,y)), id: 4, possubterms: +(x,s(y))->[], s(y)->[2]) (rule: +(x,y) -> +(y,x), id: 5, possubterms: +(x,y)->[]) -> Unifications: (R3 unifies with R1 at p: [], l: +(x,0), lp: +(x,0), sig: {x -> 0,y -> 0}, l': +(0,y), r: x, r': y) (R3 unifies with R2 at p: [], l: +(x,0), lp: +(x,0), sig: {x -> s(x'),y -> 0}, l': +(s(x'),y), r: x, r': s(+(x',y))) (R4 unifies with R1 at p: [], l: +(x,s(y)), lp: +(x,s(y)), sig: {x -> 0,y' -> s(y)}, l': +(0,y'), r: s(+(x,y)), r': y') (R4 unifies with R2 at p: [], l: +(x,s(y)), lp: +(x,s(y)), sig: {x -> s(x'),y' -> s(y)}, l': +(s(x'),y'), r: s(+(x,y)), r': s(+(x',y'))) (R5 unifies with R1 at p: [], l: +(x,y), lp: +(x,y), sig: {x -> 0,y -> y'}, l': +(0,y'), r: +(y,x), r': y') (R5 unifies with R2 at p: [], l: +(x,y), lp: +(x,y), sig: {x -> s(x'),y -> y'}, l': +(s(x'),y'), r: +(y,x), r': s(+(x',y'))) (R5 unifies with R3 at p: [], l: +(x,y), lp: +(x,y), sig: {x -> x',y -> 0}, l': +(x',0), r: +(y,x), r': x') (R5 unifies with R4 at p: [], l: +(x,y), lp: +(x,y), sig: {x -> x',y -> s(y')}, l': +(x',s(y')), r: +(y,x), r': s(+(x',y'))) -> Critical pairs info: <0,0> => Trivial, Overlay, Proper, NW0, N1 => Not trivial, Overlay, Proper, NW0, N2 => Not trivial, Overlay, Proper, NW0, N3 => Not trivial, Overlay, Proper, NW0, N4 => Not trivial, Overlay, Proper, NW0, N5 => Not trivial, Overlay, Proper, NW0, N6 => Not trivial, Overlay, Proper, NW0, N7 => Not trivial, Overlay, Proper, NW0, N8 -> Problem conclusions: Left linear, Right linear, Linear Not weakly orthogonal, Not almost orthogonal, Not orthogonal Not Huet-Levy confluent, Not Newman confluent R is a TRS The problem is decomposed in 7 subproblems. Problem 1.1: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x' y') (REPLACEMENT-MAP (+ 1, 2) (0) (fSNonEmpty) (s 1) ) (RULES +(0,y) -> y +(s(x),y) -> s(+(x,y)) +(x,0) -> x +(x,s(y)) -> s(+(x,y)) +(x,y) -> +(y,x) ) Critical Pairs: => Not trivial, Overlay, Proper, NW0, N2 Linear:YES ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Strong Confluence Procedure: -> Rewritings: s: y' Nodes: [0] Edges: [] ID: 0 => ('y'', D0) t: +(y',0) Nodes: [0,1,2] Edges: [(0,1),(0,2),(2,0),(2,1)] ID: 0 => ('+(y',0)', D0) ID: 1 => ('y'', D1, R3, P[], S{x9 -> y'}), NR: 'y'' ID: 2 => ('+(0,y')', D1, R5, P[], S{x12 -> y', x13 -> 0}), NR: '+(0,y')' SNodesPath1: y' TNodesPath1: +(y',0) -> y' SNodesPath2: y' TNodesPath2: +(y',0) -> y' y' ->= y' *<- +(y',0) +(y',0) ->= y' *<- y' "Strongly closed critical pair" The problem is confluent. Problem 1.2: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x' y') (REPLACEMENT-MAP (+ 1, 2) (0) (fSNonEmpty) (s 1) ) (RULES +(0,y) -> y +(s(x),y) -> s(+(x,y)) +(x,0) -> x +(x,s(y)) -> s(+(x,y)) +(x,y) -> +(y,x) ) Critical Pairs: => Not trivial, Overlay, Proper, NW0, N3 Linear:YES ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Strong Confluence Procedure: -> Rewritings: s: s(+(x',y')) Nodes: [0,1] Edges: [(0,1),(1,0)] ID: 0 => ('s(+(x',y'))', D0) ID: 1 => ('s(+(y',x'))', D1, R5, P[1], S{x12 -> x', x13 -> y'}), NR: '+(y',x')' t: +(y',s(x')) Nodes: [0,1,2,3] Edges: [(0,1),(0,2),(1,3),(2,0),(2,3),(3,1)] ID: 0 => ('+(y',s(x'))', D0) ID: 1 => ('s(+(y',x'))', D1, R4, P[], S{x10 -> y', x11 -> x'}), NR: 's(+(y',x'))' ID: 2 => ('+(s(x'),y')', D1, R5, P[], S{x12 -> y', x13 -> s(x')}), NR: '+(s(x'),y')' ID: 3 => ('s(+(x',y'))', D2, R5, P[1], S{x12 -> y', x13 -> x'}), NR: '+(x',y')' SNodesPath1: s(+(x',y')) TNodesPath1: +(y',s(x')) -> s(+(y',x')) -> s(+(x',y')) SNodesPath2: s(+(x',y')) -> s(+(y',x')) TNodesPath2: +(y',s(x')) -> s(+(y',x')) s(+(x',y')) ->= s(+(x',y')) *<- +(y',s(x')) +(y',s(x')) ->= s(+(y',x')) *<- s(+(x',y')) "Strongly closed critical pair" The problem is confluent. Problem 1.3: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x' y') (REPLACEMENT-MAP (+ 1, 2) (0) (fSNonEmpty) (s 1) ) (RULES +(0,y) -> y +(s(x),y) -> s(+(x,y)) +(x,0) -> x +(x,s(y)) -> s(+(x,y)) +(x,y) -> +(y,x) ) Critical Pairs: => Not trivial, Overlay, Proper, NW0, N4 Linear:YES ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Strong Confluence Procedure: -> Rewritings: s: x' Nodes: [0] Edges: [] ID: 0 => ('x'', D0) t: +(0,x') Nodes: [0,1,2] Edges: [(0,1),(0,2),(2,0),(2,1)] ID: 0 => ('+(0,x')', D0) ID: 1 => ('x'', D1, R1, P[], S{x6 -> x'}), NR: 'x'' ID: 2 => ('+(x',0)', D1, R5, P[], S{x12 -> 0, x13 -> x'}), NR: '+(x',0)' SNodesPath1: x' TNodesPath1: +(0,x') -> x' SNodesPath2: x' TNodesPath2: +(0,x') -> x' x' ->= x' *<- +(0,x') +(0,x') ->= x' *<- x' "Strongly closed critical pair" The problem is confluent. Problem 1.4: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x' y') (REPLACEMENT-MAP (+ 1, 2) (0) (fSNonEmpty) (s 1) ) (RULES +(0,y) -> y +(s(x),y) -> s(+(x,y)) +(x,0) -> x +(x,s(y)) -> s(+(x,y)) +(x,y) -> +(y,x) ) Critical Pairs: => Not trivial, Overlay, Proper, NW0, N5 Linear:YES ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Strong Confluence Procedure: -> Rewritings: s: s(+(x',0)) Nodes: [0,1,2] Edges: [(0,1),(0,2),(2,0),(2,1)] ID: 0 => ('s(+(x',0))', D0) ID: 1 => ('s(x')', D1, R3, P[1], S{x9 -> x'}), NR: 'x'' ID: 2 => ('s(+(0,x'))', D1, R5, P[1], S{x12 -> x', x13 -> 0}), NR: '+(0,x')' t: s(x') Nodes: [0] Edges: [] ID: 0 => ('s(x')', D0) SNodesPath1: s(+(x',0)) -> s(x') TNodesPath1: s(x') SNodesPath2: s(+(x',0)) -> s(x') TNodesPath2: s(x') s(+(x',0)) ->= s(x') *<- s(x') s(x') ->= s(x') *<- s(+(x',0)) "Strongly closed critical pair" The problem is confluent. Problem 1.5: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x' y') (REPLACEMENT-MAP (+ 1, 2) (0) (fSNonEmpty) (s 1) ) (RULES +(0,y) -> y +(s(x),y) -> s(+(x,y)) +(x,0) -> x +(x,s(y)) -> s(+(x,y)) +(x,y) -> +(y,x) ) Critical Pairs: => Not trivial, Overlay, Proper, NW0, N6 Linear:YES ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Strong Confluence Procedure: -> Rewritings: s: s(y) Nodes: [0] Edges: [] ID: 0 => ('s(y)', D0) t: s(+(0,y)) Nodes: [0,1,2] Edges: [(0,1),(0,2),(2,0),(2,1)] ID: 0 => ('s(+(0,y))', D0) ID: 1 => ('s(y)', D1, R1, P[1], S{x6 -> y}), NR: 'y' ID: 2 => ('s(+(y,0))', D1, R5, P[1], S{x12 -> 0, x13 -> y}), NR: '+(y,0)' SNodesPath1: s(y) TNodesPath1: s(+(0,y)) -> s(y) SNodesPath2: s(y) TNodesPath2: s(+(0,y)) -> s(y) s(y) ->= s(y) *<- s(+(0,y)) s(+(0,y)) ->= s(y) *<- s(y) "Strongly closed critical pair" The problem is confluent. Problem 1.6: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x' y') (REPLACEMENT-MAP (+ 1, 2) (0) (fSNonEmpty) (s 1) ) (RULES +(0,y) -> y +(s(x),y) -> s(+(x,y)) +(x,0) -> x +(x,s(y)) -> s(+(x,y)) +(x,y) -> +(y,x) ) Critical Pairs: => Not trivial, Overlay, Proper, NW0, N7 Linear:YES ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Strong Confluence Procedure: -> Rewritings: s: s(+(x',s(y))) Nodes: [0,1,2,3] Edges: [(0,1),(0,2),(1,3),(2,0),(2,3),(3,1)] ID: 0 => ('s(+(x',s(y)))', D0) ID: 1 => ('s(s(+(x',y)))', D1, R4, P[1], S{x10 -> x', x11 -> y}), NR: 's(+(x',y))' ID: 2 => ('s(+(s(y),x'))', D1, R5, P[1], S{x12 -> x', x13 -> s(y)}), NR: '+(s(y),x')' ID: 3 => ('s(s(+(y,x')))', D2, R5, P[1, 1], S{x12 -> x', x13 -> y}), NR: '+(y,x')' t: s(+(s(x'),y)) Nodes: [0,1,2,3] Edges: [(0,1),(0,2),(1,3),(2,0),(2,3),(3,1)] ID: 0 => ('s(+(s(x'),y))', D0) ID: 1 => ('s(s(+(x',y)))', D1, R2, P[1], S{x7 -> x', x8 -> y}), NR: 's(+(x',y))' ID: 2 => ('s(+(y,s(x')))', D1, R5, P[1], S{x12 -> s(x'), x13 -> y}), NR: '+(y,s(x'))' ID: 3 => ('s(s(+(y,x')))', D2, R5, P[1, 1], S{x12 -> x', x13 -> y}), NR: '+(y,x')' SNodesPath1: s(+(x',s(y))) -> s(s(+(x',y))) TNodesPath1: s(+(s(x'),y)) -> s(s(+(x',y))) SNodesPath2: s(+(x',s(y))) -> s(s(+(x',y))) TNodesPath2: s(+(s(x'),y)) -> s(s(+(x',y))) s(+(x',s(y))) ->= s(s(+(x',y))) *<- s(+(s(x'),y)) s(+(s(x'),y)) ->= s(s(+(x',y))) *<- s(+(x',s(y))) "Strongly closed critical pair" The problem is confluent. Problem 1.7: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x' y') (REPLACEMENT-MAP (+ 1, 2) (0) (fSNonEmpty) (s 1) ) (RULES +(0,y) -> y +(s(x),y) -> s(+(x,y)) +(x,0) -> x +(x,s(y)) -> s(+(x,y)) +(x,y) -> +(y,x) ) Critical Pairs: => Not trivial, Overlay, Proper, NW0, N8 Linear:YES ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Strong Confluence Procedure: -> Rewritings: s: s(+(x',y')) Nodes: [0,1] Edges: [(0,1),(1,0)] ID: 0 => ('s(+(x',y'))', D0) ID: 1 => ('s(+(y',x'))', D1, R5, P[1], S{x12 -> x', x13 -> y'}), NR: '+(y',x')' t: +(s(y'),x') Nodes: [0,1,2,3] Edges: [(0,1),(0,2),(1,3),(2,0),(2,3),(3,1)] ID: 0 => ('+(s(y'),x')', D0) ID: 1 => ('s(+(y',x'))', D1, R2, P[], S{x7 -> y', x8 -> x'}), NR: 's(+(y',x'))' ID: 2 => ('+(x',s(y'))', D1, R5, P[], S{x12 -> s(y'), x13 -> x'}), NR: '+(x',s(y'))' ID: 3 => ('s(+(x',y'))', D2, R5, P[1], S{x12 -> y', x13 -> x'}), NR: '+(x',y')' SNodesPath1: s(+(x',y')) TNodesPath1: +(s(y'),x') -> s(+(y',x')) -> s(+(x',y')) SNodesPath2: s(+(x',y')) -> s(+(y',x')) TNodesPath2: +(s(y'),x') -> s(+(y',x')) s(+(x',y')) ->= s(+(x',y')) *<- +(s(y'),x') +(s(y'),x') ->= s(+(y',x')) *<- s(+(x',y')) "Strongly closed critical pair" The problem is confluent.