YES Problem 1: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR vNonEmpty x y) (REPLACEMENT-MAP (or 1, 2) (fSNonEmpty) (true) ) (RULES or(true,true) -> true or(x,y) -> or(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 (or 1, 2) (fSNonEmpty) (true) ) (RULES or(true,true) -> true or(x,y) -> or(y,x) ) Linear:YES ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Huet Levy Procedure: -> Rules: or(true,true) -> true or(x,y) -> or(y,x) -> Vars: x, y -> Rlps: (rule: or(true,true) -> true, id: 1, possubterms: or(true,true)->[], true->[1], true->[2]) (rule: or(x,y) -> or(y,x), id: 2, possubterms: or(x,y)->[]) -> Unifications: (R2 unifies with R1 at p: [], l: or(x,y), lp: or(x,y), sig: {x -> true,y -> true}, l': or(true,true), r: or(y,x), r': true) -> Critical pairs info: => Not trivial, Overlay, Proper, NW0, N1 -> 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 Problem 1.1: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Confluence Problem: (VAR x y) (REPLACEMENT-MAP (or 1, 2) (fSNonEmpty) (true) ) (RULES or(true,true) -> true or(x,y) -> or(y,x) ) Critical Pairs: => Not trivial, Overlay, Proper, NW0, N1 Linear:YES ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Strong Confluence Procedure: -> Rewritings: s: true Nodes: [0] Edges: [] ID: 0 => ('true', D0) t: or(true,true) Nodes: [0,1] Edges: [(0,0),(0,1)] ID: 0 => ('or(true,true)', D0) ID: 1 => ('true', D1, R1, P[], S{}), NR: 'true' SNodesPath1: true TNodesPath1: or(true,true) -> true SNodesPath2: true TNodesPath2: or(true,true) -> true true ->= true *<- or(true,true) or(true,true) ->= true *<- true "Strongly closed critical pair" The problem is confluent.