0.001/0.001 YES 0.001/0.001 0.001/0.001 Problem 1: 0.001/0.001 0.001/0.001 0.001/0.001 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 0.001/0.001 Confluence Problem: 0.001/0.001 (VAR vNonEmpty:S v_NonEmpty:S:S X:S:S Y:S:S) 0.001/0.001 (STRATEGY CONTEXTSENSITIVE 0.001/0.001 (add 1) 0.001/0.001 (fact) 0.001/0.001 (if 1) 0.001/0.001 (p 1) 0.001/0.001 (prod 1) 0.001/0.001 (zero 1) 0.001/0.001 (fSNonEmpty) 0.001/0.001 (ffalse) 0.001/0.001 (ftrue) 0.001/0.001 (num0) 0.001/0.001 (s) 0.001/0.001 ) 0.001/0.001 (RULES 0.001/0.001 add(num0,X:S:S) -> X:S:S 0.001/0.001 add(s(X:S:S),Y:S:S) -> s(add(X:S:S,Y:S:S)) 0.001/0.001 fact(X:S:S) -> if(zero(X:S:S),s(num0),prod(X:S:S,fact(p(X:S:S)))) 0.001/0.001 if(ffalse,X:S:S,Y:S:S) -> Y:S:S 0.001/0.001 if(ftrue,X:S:S,Y:S:S) -> X:S:S 0.001/0.001 p(s(X:S:S)) -> X:S:S 0.001/0.001 prod(num0,X:S:S) -> num0 0.001/0.001 prod(s(X:S:S),Y:S:S) -> add(Y:S:S,prod(X:S:S,Y:S:S)) 0.001/0.001 zero(num0) -> ftrue 0.001/0.001 zero(s(X:S:S)) -> ffalse 0.001/0.001 ) 0.001/0.001 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 0.001/0.001 0.001/0.001 0.001/0.001 Problem 1: 0.001/0.001 0.001/0.001 CleanTRS Processor: 0.001/0.001 0.001/0.001 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 0.001/0.001 Confluence Problem: 0.001/0.001 (VAR vNonEmpty:S v_NonEmpty:S:S X:S:S Y:S:S) 0.001/0.001 (STRATEGY CONTEXTSENSITIVE 0.001/0.001 (add 1) 0.001/0.001 (fact) 0.001/0.001 (if 1) 0.001/0.001 (p 1) 0.001/0.001 (prod 1) 0.001/0.001 (zero 1) 0.001/0.001 (fSNonEmpty) 0.001/0.001 (ffalse) 0.001/0.001 (ftrue) 0.001/0.001 (num0) 0.001/0.001 (s) 0.001/0.001 ) 0.001/0.001 (RULES 0.001/0.001 add(num0,X:S:S) -> X:S:S 0.001/0.001 add(s(X:S:S),Y:S:S) -> s(add(X:S:S,Y:S:S)) 0.001/0.001 fact(X:S:S) -> if(zero(X:S:S),s(num0),prod(X:S:S,fact(p(X:S:S)))) 0.001/0.001 if(ffalse,X:S:S,Y:S:S) -> Y:S:S 0.001/0.001 if(ftrue,X:S:S,Y:S:S) -> X:S:S 0.001/0.001 p(s(X:S:S)) -> X:S:S 0.001/0.001 prod(num0,X:S:S) -> num0 0.001/0.001 prod(s(X:S:S),Y:S:S) -> add(Y:S:S,prod(X:S:S,Y:S:S)) 0.001/0.001 zero(num0) -> ftrue 0.001/0.001 zero(s(X:S:S)) -> ffalse 0.001/0.001 ) 0.001/0.001 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 0.001/0.001 0.001/0.001 0.001/0.001 Problem 1: 0.001/0.001 0.001/0.001 Modular Confluence Combinations Decomposition Processor: 0.001/0.001 It is a CTRS -> No modular confluence 0.001/0.001 0.001/0.001 Problem 1: 0.001/0.001 Left-Homogeneous u-Replacing Variables Processor: 0.001/0.001 R satisfies LHRV condition 0.001/0.001 0.001/0.001 Problem 1: 0.001/0.001 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 0.001/0.001 Confluence Problem: 0.001/0.001 (VAR vNonEmpty:S v_NonEmpty:S:S X:S:S Y:S:S) 0.001/0.001 (STRATEGY CONTEXTSENSITIVE 0.001/0.001 (add 1) 0.001/0.001 (fact) 0.001/0.001 (if 1) 0.001/0.001 (p 1) 0.001/0.001 (prod 1) 0.001/0.001 (zero 1) 0.001/0.001 (fSNonEmpty) 0.001/0.001 (ffalse) 0.001/0.001 (ftrue) 0.001/0.001 (num0) 0.001/0.001 (s) 0.001/0.001 ) 0.001/0.001 (RULES 0.001/0.001 add(num0,X:S:S) -> X:S:S 0.001/0.001 add(s(X:S:S),Y:S:S) -> s(add(X:S:S,Y:S:S)) 0.001/0.001 fact(X:S:S) -> if(zero(X:S:S),s(num0),prod(X:S:S,fact(p(X:S:S)))) 0.001/0.001 if(ffalse,X:S:S,Y:S:S) -> Y:S:S 0.001/0.001 if(ftrue,X:S:S,Y:S:S) -> X:S:S 0.001/0.001 p(s(X:S:S)) -> X:S:S 0.001/0.001 prod(num0,X:S:S) -> num0 0.001/0.001 prod(s(X:S:S),Y:S:S) -> add(Y:S:S,prod(X:S:S,Y:S:S)) 0.001/0.001 zero(num0) -> ftrue 0.001/0.001 zero(s(X:S:S)) -> ffalse 0.001/0.001 ) 0.001/0.001 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 0.001/0.001 0.001/0.001 Huet Levy Processor: 0.001/0.001 -> Rules: 0.001/0.001 add(num0,X:S:S) -> X:S:S 0.001/0.001 add(s(X:S:S),Y:S:S) -> s(add(X:S:S,Y:S:S)) 0.001/0.001 fact(X:S:S) -> if(zero(X:S:S),s(num0),prod(X:S:S,fact(p(X:S:S)))) 0.001/0.001 if(ffalse,X:S:S,Y:S:S) -> Y:S:S 0.001/0.001 if(ftrue,X:S:S,Y:S:S) -> X:S:S 0.001/0.001 p(s(X:S:S)) -> X:S:S 0.001/0.001 prod(num0,X:S:S) -> num0 0.001/0.001 prod(s(X:S:S),Y:S:S) -> add(Y:S:S,prod(X:S:S,Y:S:S)) 0.001/0.001 zero(num0) -> ftrue 0.001/0.001 zero(s(X:S:S)) -> ffalse 0.001/0.001 -> Vars: 0.001/0.001 X:S, X:S, Y:S, X:S, X:S, Y:S, X:S, Y:S, X:S, X:S, X:S, Y:S, X:S 0.001/0.001 -> UVars: 0.001/0.001 (UV-RuleId: 1, UV-LActive: [], UV-RActive: [X:S], UV-LFrozen: [X:S], UV-RFrozen: []) 0.001/0.001 (UV-RuleId: 2, UV-LActive: [], UV-RActive: [], UV-LFrozen: [X:S, Y:S], UV-RFrozen: [X:S, Y:S]) 0.001/0.001 (UV-RuleId: 3, UV-LActive: [], UV-RActive: [X:S], UV-LFrozen: [X:S], UV-RFrozen: [X:S]) 0.001/0.001 (UV-RuleId: 4, UV-LActive: [], UV-RActive: [Y:S], UV-LFrozen: [X:S, Y:S], UV-RFrozen: []) 0.001/0.001 (UV-RuleId: 5, UV-LActive: [], UV-RActive: [X:S], UV-LFrozen: [X:S, Y:S], UV-RFrozen: []) 0.001/0.001 (UV-RuleId: 6, UV-LActive: [], UV-RActive: [X:S], UV-LFrozen: [X:S], UV-RFrozen: []) 0.001/0.001 (UV-RuleId: 7, UV-LActive: [], UV-RActive: [], UV-LFrozen: [X:S], UV-RFrozen: []) 0.001/0.001 (UV-RuleId: 8, UV-LActive: [], UV-RActive: [Y:S], UV-LFrozen: [X:S, Y:S], UV-RFrozen: [X:S, Y:S]) 0.001/0.001 (UV-RuleId: 9, UV-LActive: [], UV-RActive: [], UV-LFrozen: [], UV-RFrozen: []) 0.001/0.001 (UV-RuleId: 10, UV-LActive: [], UV-RActive: [], UV-LFrozen: [X:S], UV-RFrozen: []) 0.001/0.001 -> FVars: 0.001/0.001 x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16 0.001/0.001 -> PVars: 0.001/0.001 X:S: [x4, x5, x7, x8, x10, x12, x13, x14, x16], Y:S: [x6, x9, x11, x15] 0.001/0.001 0.001/0.001 -> Rlps: 0.001/0.001 (rule: add(num0,x4:S) -> x4:S, id: 1, possubterms: add(num0,x4:S)->[], num0->[1]) 0.001/0.001 (rule: add(s(x5:S),x6:S) -> s(add(x5:S,x6:S)), id: 2, possubterms: add(s(x5:S),x6:S)->[], s(x5:S)->[1]) 0.001/0.001 (rule: fact(x7:S) -> if(zero(x7:S),s(num0),prod(x7:S,fact(p(x7:S)))), id: 3, possubterms: fact(x7:S)->[]) 0.001/0.001 (rule: if(ffalse,x8:S,x9:S) -> x9:S, id: 4, possubterms: if(ffalse,x8:S,x9:S)->[], ffalse->[1]) 0.001/0.001 (rule: if(ftrue,x10:S,x11:S) -> x10:S, id: 5, possubterms: if(ftrue,x10:S,x11:S)->[], ftrue->[1]) 0.001/0.001 (rule: p(s(x12:S)) -> x12:S, id: 6, possubterms: p(s(x12:S))->[], s(x12:S)->[1]) 0.001/0.001 (rule: prod(num0,x13:S) -> num0, id: 7, possubterms: prod(num0,x13:S)->[], num0->[1]) 0.001/0.001 (rule: prod(s(x14:S),x15:S) -> add(x15:S,prod(x14:S,x15:S)), id: 8, possubterms: prod(s(x14:S),x15:S)->[], s(x14:S)->[1]) 0.001/0.001 (rule: zero(num0) -> ftrue, id: 9, possubterms: zero(num0)->[], num0->[1]) 0.001/0.001 (rule: zero(s(x16:S)) -> ffalse, id: 10, possubterms: zero(s(x16:S))->[], s(x16:S)->[1]) 0.001/0.001 0.001/0.001 -> Unifications: 0.001/0.001 0.001/0.001 0.001/0.001 -> Critical pairs info: 0.001/0.001 0.001/0.001 0.001/0.001 -> Problem conclusions: 0.001/0.001 Left linear, Not right linear, Not linear 0.001/0.001 Weakly orthogonal, Almost orthogonal, Orthogonal 0.001/0.001 Huet-Levy confluent, Not Newman confluent 0.001/0.001 R is a CS-TRS, Left-homogeneous u-replacing variables 0.001/0.001 0.001/0.001 0.001/0.001 The problem is joinable. 0.001/0.001 0.00user 0.00system 0:00.01elapsed 36%CPU (0avgtext+0avgdata 8548maxresident)k 0.001/0.001 8inputs+0outputs (0major+686minor)pagefaults 0swaps