YES Problem 1: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR vNonEmpty x y) (REPLACEMENT-MAP (+ 1, 2) (- 1, 2) (p 1) (s 1) (0) (fSNonEmpty) ) (RULES +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x ) ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Problem 1: Problem 1: Not CS-TRS Procedure: R is not a CS-TRS Problem 1: CSR Converter From Canonical u-Replacement Map Procedure [CSUR20]: Original Replacement Map: (+ 1 2) (- 1 2) (p 1) (s 1) (0) (fSNonEmpty) New Replacement Map: (+ 2) (- 1 2) (p 1) (s 1) (0) (fSNonEmpty) New problem: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR vNonEmpty x y) (REPLACEMENT-MAP (+ 2) (- 1, 2) (p 1) (s 1) (0) (fSNonEmpty) ) (RULES +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x ) ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Problem 1: Termination Procedure: Terminating? YES Problem 1: (VAR vu95NonEmpty vNonEmpty x y) (STRATEGY CONTEXTSENSITIVE (u43 2) (u45 1 2) (p 1) (s 1) (num0) (fSNonEmpty) ) (RULES u43(x,p(y)) -> p(u43(x,y)) u43(x,s(y)) -> s(u43(x,y)) u43(x,num0) -> x u45(p(x),y) -> p(u45(x,y)) u45(s(x),y) -> s(u45(x,y)) u45(num0,num0) -> num0 u45(x,p(y)) -> s(u45(x,y)) u45(x,s(y)) -> p(u45(x,y)) p(s(x)) -> x s(p(x)) -> x ) Problem 1: Dependency Pairs Processor: -> Pairs: U43(x,p(y)) -> U43(x,y) U43(x,p(y)) -> P(u43(x,y)) U43(x,s(y)) -> U43(x,y) U43(x,s(y)) -> S(u43(x,y)) U43(x,num0) -> x U45(p(x),y) -> U45(x,y) U45(p(x),y) -> P(u45(x,y)) U45(s(x),y) -> U45(x,y) U45(s(x),y) -> S(u45(x,y)) U45(x,p(y)) -> U45(x,y) U45(x,p(y)) -> S(u45(x,y)) U45(x,s(y)) -> U45(x,y) U45(x,s(y)) -> P(u45(x,y)) -> Rules: u43(x,p(y)) -> p(u43(x,y)) u43(x,s(y)) -> s(u43(x,y)) u43(x,num0) -> x u45(p(x),y) -> p(u45(x,y)) u45(s(x),y) -> s(u45(x,y)) u45(num0,num0) -> num0 u45(x,p(y)) -> s(u45(x,y)) u45(x,s(y)) -> p(u45(x,y)) p(s(x)) -> x s(p(x)) -> x -> Unhiding Rules: Empty Problem 1: SCC Processor: -> Pairs: U43(x,p(y)) -> U43(x,y) U43(x,p(y)) -> P(u43(x,y)) U43(x,s(y)) -> U43(x,y) U43(x,s(y)) -> S(u43(x,y)) U43(x,num0) -> x U45(p(x),y) -> U45(x,y) U45(p(x),y) -> P(u45(x,y)) U45(s(x),y) -> U45(x,y) U45(s(x),y) -> S(u45(x,y)) U45(x,p(y)) -> U45(x,y) U45(x,p(y)) -> S(u45(x,y)) U45(x,s(y)) -> U45(x,y) U45(x,s(y)) -> P(u45(x,y)) -> Rules: u43(x,p(y)) -> p(u43(x,y)) u43(x,s(y)) -> s(u43(x,y)) u43(x,num0) -> x u45(p(x),y) -> p(u45(x,y)) u45(s(x),y) -> s(u45(x,y)) u45(num0,num0) -> num0 u45(x,p(y)) -> s(u45(x,y)) u45(x,s(y)) -> p(u45(x,y)) p(s(x)) -> x s(p(x)) -> x -> Unhiding rules: Empty ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U45(p(x),y) -> U45(x,y) U45(s(x),y) -> U45(x,y) U45(x,p(y)) -> U45(x,y) U45(x,s(y)) -> U45(x,y) ->->-> Rules: u43(x,p(y)) -> p(u43(x,y)) u43(x,s(y)) -> s(u43(x,y)) u43(x,num0) -> x u45(p(x),y) -> p(u45(x,y)) u45(s(x),y) -> s(u45(x,y)) u45(num0,num0) -> num0 u45(x,p(y)) -> s(u45(x,y)) u45(x,s(y)) -> p(u45(x,y)) p(s(x)) -> x s(p(x)) -> x ->->-> Unhiding rules: Empty ->->Cycle: ->->-> Pairs: U43(x,p(y)) -> U43(x,y) U43(x,s(y)) -> U43(x,y) ->->-> Rules: u43(x,p(y)) -> p(u43(x,y)) u43(x,s(y)) -> s(u43(x,y)) u43(x,num0) -> x u45(p(x),y) -> p(u45(x,y)) u45(s(x),y) -> s(u45(x,y)) u45(num0,num0) -> num0 u45(x,p(y)) -> s(u45(x,y)) u45(x,s(y)) -> p(u45(x,y)) p(s(x)) -> x s(p(x)) -> x ->->-> Unhiding rules: Empty The problem is decomposed in 2 subproblems. Problem 1.1: SubNColl Processor: -> Pairs: U45(p(x),y) -> U45(x,y) U45(s(x),y) -> U45(x,y) U45(x,p(y)) -> U45(x,y) U45(x,s(y)) -> U45(x,y) -> Rules: u43(x,p(y)) -> p(u43(x,y)) u43(x,s(y)) -> s(u43(x,y)) u43(x,num0) -> x u45(p(x),y) -> p(u45(x,y)) u45(s(x),y) -> s(u45(x,y)) u45(num0,num0) -> num0 u45(x,p(y)) -> s(u45(x,y)) u45(x,s(y)) -> p(u45(x,y)) p(s(x)) -> x s(p(x)) -> x -> Unhiding rules: Empty ->Projection: pi(U45) = 1 Problem 1.1: SCC Processor: -> Pairs: U45(x,p(y)) -> U45(x,y) U45(x,s(y)) -> U45(x,y) -> Rules: u43(x,p(y)) -> p(u43(x,y)) u43(x,s(y)) -> s(u43(x,y)) u43(x,num0) -> x u45(p(x),y) -> p(u45(x,y)) u45(s(x),y) -> s(u45(x,y)) u45(num0,num0) -> num0 u45(x,p(y)) -> s(u45(x,y)) u45(x,s(y)) -> p(u45(x,y)) p(s(x)) -> x s(p(x)) -> x -> Unhiding rules: Empty ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: U45(x,p(y)) -> U45(x,y) U45(x,s(y)) -> U45(x,y) ->->-> Rules: u43(x,p(y)) -> p(u43(x,y)) u43(x,s(y)) -> s(u43(x,y)) u43(x,num0) -> x u45(p(x),y) -> p(u45(x,y)) u45(s(x),y) -> s(u45(x,y)) u45(num0,num0) -> num0 u45(x,p(y)) -> s(u45(x,y)) u45(x,s(y)) -> p(u45(x,y)) p(s(x)) -> x s(p(x)) -> x ->->-> Unhiding rules: Empty Problem 1.1: SubNColl Processor: -> Pairs: U45(x,p(y)) -> U45(x,y) U45(x,s(y)) -> U45(x,y) -> Rules: u43(x,p(y)) -> p(u43(x,y)) u43(x,s(y)) -> s(u43(x,y)) u43(x,num0) -> x u45(p(x),y) -> p(u45(x,y)) u45(s(x),y) -> s(u45(x,y)) u45(num0,num0) -> num0 u45(x,p(y)) -> s(u45(x,y)) u45(x,s(y)) -> p(u45(x,y)) p(s(x)) -> x s(p(x)) -> x -> Unhiding rules: Empty ->Projection: pi(U45) = 2 Problem 1.1: Basic Processor: -> Pairs: Empty -> Rules: u43(x,p(y)) -> p(u43(x,y)) u43(x,s(y)) -> s(u43(x,y)) u43(x,num0) -> x u45(p(x),y) -> p(u45(x,y)) u45(s(x),y) -> s(u45(x,y)) u45(num0,num0) -> num0 u45(x,p(y)) -> s(u45(x,y)) u45(x,s(y)) -> p(u45(x,y)) p(s(x)) -> x s(p(x)) -> x -> Unhiding rules: Empty -> Result: Set P is empty The problem is finite. Problem 1.2: SubNColl Processor: -> Pairs: U43(x,p(y)) -> U43(x,y) U43(x,s(y)) -> U43(x,y) -> Rules: u43(x,p(y)) -> p(u43(x,y)) u43(x,s(y)) -> s(u43(x,y)) u43(x,num0) -> x u45(p(x),y) -> p(u45(x,y)) u45(s(x),y) -> s(u45(x,y)) u45(num0,num0) -> num0 u45(x,p(y)) -> s(u45(x,y)) u45(x,s(y)) -> p(u45(x,y)) p(s(x)) -> x s(p(x)) -> x -> Unhiding rules: Empty ->Projection: pi(U43) = 2 Problem 1.2: Basic Processor: -> Pairs: Empty -> Rules: u43(x,p(y)) -> p(u43(x,y)) u43(x,s(y)) -> s(u43(x,y)) u43(x,num0) -> x u45(p(x),y) -> p(u45(x,y)) u45(s(x),y) -> s(u45(x,y)) u45(num0,num0) -> num0 u45(x,p(y)) -> s(u45(x,y)) u45(x,s(y)) -> p(u45(x,y)) p(s(x)) -> x s(p(x)) -> x -> Unhiding rules: Empty -> Result: Set P is empty The problem is finite. Problem 1: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR vNonEmpty x y) (REPLACEMENT-MAP (+ 2) (- 1, 2) (p 1) (s 1) (0) (fSNonEmpty) ) (RULES +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x ) Terminating:"YES" ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Huet Levy NW Procedure: -> Rules: +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x -> Vars: x, y, x, y, x, x, y, x, y, x, y, x, y, x, x -> UVars: (UV-RuleId: 1, UV-LActive: [x, y], UV-RActive: [x, y], UV-LFrozen: [], UV-RFrozen: []) (UV-RuleId: 2, UV-LActive: [x, y], UV-RActive: [x, y], UV-LFrozen: [], UV-RFrozen: []) (UV-RuleId: 3, UV-LActive: [x], UV-RActive: [x], UV-LFrozen: [], UV-RFrozen: []) (UV-RuleId: 4, UV-LActive: [x, y], UV-RActive: [x, y], UV-LFrozen: [], UV-RFrozen: []) (UV-RuleId: 5, UV-LActive: [x, y], UV-RActive: [x, y], UV-LFrozen: [], UV-RFrozen: []) (UV-RuleId: 6, UV-LActive: [], UV-RActive: [], UV-LFrozen: [], UV-RFrozen: []) (UV-RuleId: 7, UV-LActive: [x, y], UV-RActive: [x, y], UV-LFrozen: [], UV-RFrozen: []) (UV-RuleId: 8, UV-LActive: [x, y], UV-RActive: [x, y], UV-LFrozen: [], UV-RFrozen: []) (UV-RuleId: 9, UV-LActive: [x], UV-RActive: [x], UV-LFrozen: [], UV-RFrozen: []) (UV-RuleId: 10, UV-LActive: [x], UV-RActive: [x], UV-LFrozen: [], UV-RFrozen: []) -> Rlps: (rule: +(x,p(y)) -> p(+(x,y)), id: 1, possubterms: +(x,p(y))->[], p(y)->[2]) (rule: +(x,s(y)) -> s(+(x,y)), id: 2, possubterms: +(x,s(y))->[], s(y)->[2]) (rule: +(x,0) -> x, id: 3, possubterms: +(x,0)->[], 0->[2]) (rule: -(p(x),y) -> p(-(x,y)), id: 4, possubterms: -(p(x),y)->[], p(x)->[1]) (rule: -(s(x),y) -> s(-(x,y)), id: 5, possubterms: -(s(x),y)->[], s(x)->[1]) (rule: -(0,0) -> 0, id: 6, possubterms: -(0,0)->[], 0->[1], 0->[2]) (rule: -(x,p(y)) -> s(-(x,y)), id: 7, possubterms: -(x,p(y))->[], p(y)->[2]) (rule: -(x,s(y)) -> p(-(x,y)), id: 8, possubterms: -(x,s(y))->[], s(y)->[2]) (rule: p(s(x)) -> x, id: 9, possubterms: p(s(x))->[], s(x)->[1]) (rule: s(p(x)) -> x, id: 10, possubterms: s(p(x))->[], p(x)->[1]) -> Unifications: (R1 unifies with R9 at p: [2], l: +(x,p(y)), lp: p(y), sig: {y -> s(x')}, l': p(s(x')), r: p(+(x,y)), r': x') (R2 unifies with R10 at p: [2], l: +(x,s(y)), lp: s(y), sig: {y -> p(x')}, l': s(p(x')), r: s(+(x,y)), r': x') (R4 unifies with R9 at p: [1], l: -(p(x),y), lp: p(x), sig: {x -> s(x')}, l': p(s(x')), r: p(-(x,y)), r': x') (R5 unifies with R10 at p: [1], l: -(s(x),y), lp: s(x), sig: {x -> p(x')}, l': s(p(x')), r: s(-(x,y)), r': x') (R7 unifies with R4 at p: [], l: -(x,p(y)), lp: -(x,p(y)), sig: {x -> p(x'),y' -> p(y)}, l': -(p(x'),y'), r: s(-(x,y)), r': p(-(x',y'))) (R7 unifies with R5 at p: [], l: -(x,p(y)), lp: -(x,p(y)), sig: {x -> s(x'),y' -> p(y)}, l': -(s(x'),y'), r: s(-(x,y)), r': s(-(x',y'))) (R7 unifies with R9 at p: [2], l: -(x,p(y)), lp: p(y), sig: {y -> s(x')}, l': p(s(x')), r: s(-(x,y)), r': x') (R8 unifies with R4 at p: [], l: -(x,s(y)), lp: -(x,s(y)), sig: {x -> p(x'),y' -> s(y)}, l': -(p(x'),y'), r: p(-(x,y)), r': p(-(x',y'))) (R8 unifies with R5 at p: [], l: -(x,s(y)), lp: -(x,s(y)), sig: {x -> s(x'),y' -> s(y)}, l': -(s(x'),y'), r: p(-(x,y)), r': s(-(x',y'))) (R8 unifies with R10 at p: [2], l: -(x,s(y)), lp: s(y), sig: {y -> p(x')}, l': s(p(x')), r: p(-(x,y)), r': x') (R9 unifies with R10 at p: [1], l: p(s(x)), lp: s(x), sig: {x -> p(x')}, l': s(p(x')), r: x, r': x') (R10 unifies with R9 at p: [1], l: s(p(x)), lp: p(x), sig: {x -> s(x')}, l': p(s(x')), r: x, r': x') -> Critical pairs info: <+(x,x'),p(+(x,s(x')))> => Not trivial, Not overlay, Proper, NW0, N1 => Not trivial, Overlay, Proper, NW0, N2 <-(x,x'),s(-(x,s(x')))> => Not trivial, Not overlay, Proper, NW0, N3 => Not trivial, Overlay, Proper, NW0, N4 <-(x',y),s(-(p(x'),y))> => Not trivial, Not overlay, Proper, NW0, N5 <+(x,x'),s(+(x,p(x')))> => Not trivial, Not overlay, Proper, NW0, N6 <-(x,x'),p(-(x,p(x')))> => Not trivial, Not overlay, Proper, NW0, N7 <-(x',y),p(-(s(x'),y))> => Not trivial, Not overlay, Proper, NW0, N8 => Not trivial, Overlay, Proper, NW0, N9 => Trivial, Not overlay, Proper, NW0, N10 => Trivial, Not overlay, Proper, NW0, N11 => Not trivial, Overlay, Proper, NW0, N12 -> 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 CS-TRS, Left-homogeneous u-replacing variables The problem is decomposed in 10 subproblems. Problem 1.1: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x') (REPLACEMENT-MAP (+ 2) (- 1, 2) (p 1) (s 1) (0) (fSNonEmpty) ) (RULES +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x ) Critical Pairs: <+(x,x'),p(+(x,s(x')))> => Not trivial, Not overlay, Proper, NW0, N1 Terminating:"YES" ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Huet Brute Force Joinability Procedure: -> Rewritings: s: +(x,x') Nodes: [0] Edges: [] ID: 0 => ('+(x,x')', D0) t: p(+(x,s(x'))) Nodes: [0,1,2] Edges: [(0,1),(1,2)] ID: 0 => ('p(+(x,s(x')))', D0) ID: 1 => ('p(s(+(x,x')))', D1, R2, P[1], S{x7 -> x, x8 -> x'}), NR: 's(+(x,x'))' ID: 2 => ('+(x,x')', D2, R9, P[], S{x18 -> +(x,x')}), NR: '+(x,x')' SNodesPath: +(x,x') TNodesPath: p(+(x,s(x'))) -> p(s(+(x,x'))) -> +(x,x') +(x,x') ->* +(x,x') *<- p(+(x,s(x'))) "Joinable" The problem is confluent. Problem 1.2: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x') (REPLACEMENT-MAP (+ 2) (- 1, 2) (p 1) (s 1) (0) (fSNonEmpty) ) (RULES +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x ) Critical Pairs: => Not trivial, Overlay, Proper, NW0, N2 Terminating:"YES" ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Huet Brute Force Joinability Procedure: -> Rewritings: s: s(-(x',p(y))) Nodes: [0,1] Edges: [(0,1)] ID: 0 => ('s(-(x',p(y)))', D0) ID: 1 => ('s(s(-(x',y)))', D1, R7, P[1], S{x14 -> x', x15 -> y}), NR: 's(-(x',y))' t: s(-(s(x'),y)) Nodes: [0,1] Edges: [(0,1)] ID: 0 => ('s(-(s(x'),y))', D0) ID: 1 => ('s(s(-(x',y)))', D1, R5, P[1], S{x12 -> x', x13 -> y}), NR: 's(-(x',y))' SNodesPath: s(-(x',p(y))) -> s(s(-(x',y))) TNodesPath: s(-(s(x'),y)) -> s(s(-(x',y))) s(-(x',p(y))) ->* s(s(-(x',y))) *<- s(-(s(x'),y)) "Joinable" The problem is confluent. Problem 1.3: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x') (REPLACEMENT-MAP (+ 2) (- 1, 2) (p 1) (s 1) (0) (fSNonEmpty) ) (RULES +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x ) Critical Pairs: <-(x,x'),s(-(x,s(x')))> => Not trivial, Not overlay, Proper, NW0, N3 Terminating:"YES" ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Huet Brute Force Joinability Procedure: -> Rewritings: s: -(x,x') Nodes: [0] Edges: [] ID: 0 => ('-(x,x')', D0) t: s(-(x,s(x'))) Nodes: [0,1,2] Edges: [(0,1),(1,2)] ID: 0 => ('s(-(x,s(x')))', D0) ID: 1 => ('s(p(-(x,x')))', D1, R8, P[1], S{x16 -> x, x17 -> x'}), NR: 'p(-(x,x'))' ID: 2 => ('-(x,x')', D2, R10, P[], S{x19 -> -(x,x')}), NR: '-(x,x')' SNodesPath: -(x,x') TNodesPath: s(-(x,s(x'))) -> s(p(-(x,x'))) -> -(x,x') -(x,x') ->* -(x,x') *<- s(-(x,s(x'))) "Joinable" The problem is confluent. Problem 1.4: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x') (REPLACEMENT-MAP (+ 2) (- 1, 2) (p 1) (s 1) (0) (fSNonEmpty) ) (RULES +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x ) Critical Pairs: => Not trivial, Overlay, Proper, NW0, N4 Terminating:"YES" ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Huet Brute Force Joinability Procedure: -> Rewritings: s: p(-(x',p(y))) Nodes: [0,1,2] Edges: [(0,1),(1,2)] ID: 0 => ('p(-(x',p(y)))', D0) ID: 1 => ('p(s(-(x',y)))', D1, R7, P[1], S{x14 -> x', x15 -> y}), NR: 's(-(x',y))' ID: 2 => ('-(x',y)', D2, R9, P[], S{x18 -> -(x',y)}), NR: '-(x',y)' t: s(-(p(x'),y)) Nodes: [0,1,2] Edges: [(0,1),(1,2)] ID: 0 => ('s(-(p(x'),y))', D0) ID: 1 => ('s(p(-(x',y)))', D1, R4, P[1], S{x10 -> x', x11 -> y}), NR: 'p(-(x',y))' ID: 2 => ('-(x',y)', D2, R10, P[], S{x19 -> -(x',y)}), NR: '-(x',y)' SNodesPath: p(-(x',p(y))) -> p(s(-(x',y))) -> -(x',y) TNodesPath: s(-(p(x'),y)) -> s(p(-(x',y))) -> -(x',y) p(-(x',p(y))) ->* -(x',y) *<- s(-(p(x'),y)) "Joinable" The problem is confluent. Problem 1.5: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x') (REPLACEMENT-MAP (+ 2) (- 1, 2) (p 1) (s 1) (0) (fSNonEmpty) ) (RULES +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x ) Critical Pairs: <-(x',y),s(-(p(x'),y))> => Not trivial, Not overlay, Proper, NW0, N5 Terminating:"YES" ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Huet Brute Force Joinability Procedure: -> Rewritings: s: -(x',y) Nodes: [0] Edges: [] ID: 0 => ('-(x',y)', D0) t: s(-(p(x'),y)) Nodes: [0,1,2] Edges: [(0,1),(1,2)] ID: 0 => ('s(-(p(x'),y))', D0) ID: 1 => ('s(p(-(x',y)))', D1, R4, P[1], S{x10 -> x', x11 -> y}), NR: 'p(-(x',y))' ID: 2 => ('-(x',y)', D2, R10, P[], S{x19 -> -(x',y)}), NR: '-(x',y)' SNodesPath: -(x',y) TNodesPath: s(-(p(x'),y)) -> s(p(-(x',y))) -> -(x',y) -(x',y) ->* -(x',y) *<- s(-(p(x'),y)) "Joinable" The problem is confluent. Problem 1.6: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x') (REPLACEMENT-MAP (+ 2) (- 1, 2) (p 1) (s 1) (0) (fSNonEmpty) ) (RULES +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x ) Critical Pairs: <+(x,x'),s(+(x,p(x')))> => Not trivial, Not overlay, Proper, NW0, N6 Terminating:"YES" ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Huet Brute Force Joinability Procedure: -> Rewritings: s: +(x,x') Nodes: [0] Edges: [] ID: 0 => ('+(x,x')', D0) t: s(+(x,p(x'))) Nodes: [0,1,2] Edges: [(0,1),(1,2)] ID: 0 => ('s(+(x,p(x')))', D0) ID: 1 => ('s(p(+(x,x')))', D1, R1, P[1], S{x5 -> x, x6 -> x'}), NR: 'p(+(x,x'))' ID: 2 => ('+(x,x')', D2, R10, P[], S{x19 -> +(x,x')}), NR: '+(x,x')' SNodesPath: +(x,x') TNodesPath: s(+(x,p(x'))) -> s(p(+(x,x'))) -> +(x,x') +(x,x') ->* +(x,x') *<- s(+(x,p(x'))) "Joinable" The problem is confluent. Problem 1.7: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x') (REPLACEMENT-MAP (+ 2) (- 1, 2) (p 1) (s 1) (0) (fSNonEmpty) ) (RULES +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x ) Critical Pairs: <-(x,x'),p(-(x,p(x')))> => Not trivial, Not overlay, Proper, NW0, N7 Terminating:"YES" ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Huet Brute Force Joinability Procedure: -> Rewritings: s: -(x,x') Nodes: [0] Edges: [] ID: 0 => ('-(x,x')', D0) t: p(-(x,p(x'))) Nodes: [0,1,2] Edges: [(0,1),(1,2)] ID: 0 => ('p(-(x,p(x')))', D0) ID: 1 => ('p(s(-(x,x')))', D1, R7, P[1], S{x14 -> x, x15 -> x'}), NR: 's(-(x,x'))' ID: 2 => ('-(x,x')', D2, R9, P[], S{x18 -> -(x,x')}), NR: '-(x,x')' SNodesPath: -(x,x') TNodesPath: p(-(x,p(x'))) -> p(s(-(x,x'))) -> -(x,x') -(x,x') ->* -(x,x') *<- p(-(x,p(x'))) "Joinable" The problem is confluent. Problem 1.8: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x') (REPLACEMENT-MAP (+ 2) (- 1, 2) (p 1) (s 1) (0) (fSNonEmpty) ) (RULES +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x ) Critical Pairs: <-(x',y),p(-(s(x'),y))> => Not trivial, Not overlay, Proper, NW0, N8 Terminating:"YES" ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Huet Brute Force Joinability Procedure: -> Rewritings: s: -(x',y) Nodes: [0] Edges: [] ID: 0 => ('-(x',y)', D0) t: p(-(s(x'),y)) Nodes: [0,1,2] Edges: [(0,1),(1,2)] ID: 0 => ('p(-(s(x'),y))', D0) ID: 1 => ('p(s(-(x',y)))', D1, R5, P[1], S{x12 -> x', x13 -> y}), NR: 's(-(x',y))' ID: 2 => ('-(x',y)', D2, R9, P[], S{x18 -> -(x',y)}), NR: '-(x',y)' SNodesPath: -(x',y) TNodesPath: p(-(s(x'),y)) -> p(s(-(x',y))) -> -(x',y) -(x',y) ->* -(x',y) *<- p(-(s(x'),y)) "Joinable" The problem is confluent. Problem 1.9: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x') (REPLACEMENT-MAP (+ 2) (- 1, 2) (p 1) (s 1) (0) (fSNonEmpty) ) (RULES +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x ) Critical Pairs: => Not trivial, Overlay, Proper, NW0, N9 Terminating:"YES" ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Huet Brute Force Joinability Procedure: -> Rewritings: s: p(-(x',s(y))) Nodes: [0,1] Edges: [(0,1)] ID: 0 => ('p(-(x',s(y)))', D0) ID: 1 => ('p(p(-(x',y)))', D1, R8, P[1], S{x16 -> x', x17 -> y}), NR: 'p(-(x',y))' t: p(-(p(x'),y)) Nodes: [0,1] Edges: [(0,1)] ID: 0 => ('p(-(p(x'),y))', D0) ID: 1 => ('p(p(-(x',y)))', D1, R4, P[1], S{x10 -> x', x11 -> y}), NR: 'p(-(x',y))' SNodesPath: p(-(x',s(y))) -> p(p(-(x',y))) TNodesPath: p(-(p(x'),y)) -> p(p(-(x',y))) p(-(x',s(y))) ->* p(p(-(x',y))) *<- p(-(p(x'),y)) "Joinable" The problem is confluent. Problem 1.10: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y x') (REPLACEMENT-MAP (+ 2) (- 1, 2) (p 1) (s 1) (0) (fSNonEmpty) ) (RULES +(x,p(y)) -> p(+(x,y)) +(x,s(y)) -> s(+(x,y)) +(x,0) -> x -(p(x),y) -> p(-(x,y)) -(s(x),y) -> s(-(x,y)) -(0,0) -> 0 -(x,p(y)) -> s(-(x,y)) -(x,s(y)) -> p(-(x,y)) p(s(x)) -> x s(p(x)) -> x ) Critical Pairs: => Not trivial, Overlay, Proper, NW0, N12 Terminating:"YES" ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Huet Brute Force Joinability Procedure: -> Rewritings: s: s(-(x',s(y))) Nodes: [0,1,2] Edges: [(0,1),(1,2)] ID: 0 => ('s(-(x',s(y)))', D0) ID: 1 => ('s(p(-(x',y)))', D1, R8, P[1], S{x16 -> x', x17 -> y}), NR: 'p(-(x',y))' ID: 2 => ('-(x',y)', D2, R10, P[], S{x19 -> -(x',y)}), NR: '-(x',y)' t: p(-(s(x'),y)) Nodes: [0,1,2] Edges: [(0,1),(1,2)] ID: 0 => ('p(-(s(x'),y))', D0) ID: 1 => ('p(s(-(x',y)))', D1, R5, P[1], S{x12 -> x', x13 -> y}), NR: 's(-(x',y))' ID: 2 => ('-(x',y)', D2, R9, P[], S{x18 -> -(x',y)}), NR: '-(x',y)' SNodesPath: s(-(x',s(y))) -> s(p(-(x',y))) -> -(x',y) TNodesPath: p(-(s(x'),y)) -> p(s(-(x',y))) -> -(x',y) s(-(x',s(y))) ->* -(x',y) *<- p(-(s(x'),y)) "Joinable" The problem is confluent.