0.00/0.18 NO 0.00/0.18 Input TRS: 0.00/0.18 AC symbols: _or_ _xor_ _and_ 0.00/0.18 1: U11(tt(),U',U) -> U12(equal(_isNotEqualTo_(U,U'),true())) 0.00/0.18 2: U12(tt()) -> false() 0.00/0.18 3: U21(tt(),B,U') -> U22(equal(_isNotEqualTo_(B,true()),true()),U') 0.00/0.18 4: U22(tt(),U') -> U' 0.00/0.18 5: _and_(A,A) -> A 0.00/0.18 6: _and_(A,_xor_(B,C)) -> _xor_(_and_(A,B),_and_(A,C)) 0.00/0.18 7: _and_(false(),A) -> false() 0.00/0.18 8: _and_(true(),A) -> A 0.00/0.18 9: _implies_(A,B) -> not_(_xor_(A,_and_(A,B))) 0.00/0.18 10: _isEqualTo_(U,U') -> U11(tt(),U',U) 0.00/0.18 11: _isEqualTo_(U,U) -> true() 0.00/0.18 12: _isNotEqualTo_(U,U') -> if_then_else_fi(_isEqualTo_(U,U'),false(),true()) 0.00/0.18 13: _isNotEqualTo_(U,U) -> false() 0.00/0.18 14: _or_(A,B) -> _xor_(_and_(A,B),_xor_(A,B)) 0.00/0.18 15: _xor_(A,A) -> false() 0.00/0.18 16: _xor_(false(),A) -> A 0.00/0.18 17: and(tt(),X) -> X 0.00/0.18 18: equal(X,X) -> tt() 0.00/0.18 19: if_then_else_fi(B,U,U') -> U21(tt(),B,U') 0.00/0.18 20: if_then_else_fi(true(),U,U') -> U 0.00/0.18 21: not_(A) -> _xor_(A,true()) 0.00/0.18 22: not_(false()) -> true() 0.00/0.18 23: not_(true()) -> false() 0.00/0.18 Number of strict rules: 23 0.00/0.18 Direct POLO(bPol) ... failed. 0.00/0.18 Uncurrying U11 U21 0.00/0.18 AC symbols: _or_ _xor_ _and_ 0.00/0.18 1: U11^1_tt(U',U) -> U12(equal(_isNotEqualTo_(U,U'),true())) 0.00/0.18 2: U12(tt()) -> false() 0.00/0.18 3: U21^1_tt(B,U') -> U22(equal(_isNotEqualTo_(B,true()),true()),U') 0.00/0.18 4: U22(tt(),U') -> U' 0.00/0.18 5: _and_(A,A) -> A 0.00/0.18 6: _and_(A,_xor_(B,C)) -> _xor_(_and_(A,B),_and_(A,C)) 0.00/0.18 7: _and_(false(),A) -> false() 0.00/0.18 8: _and_(true(),A) -> A 0.00/0.18 9: _implies_(A,B) -> not_(_xor_(A,_and_(A,B))) 0.00/0.18 10: _isEqualTo_(U,U') -> U11^1_tt(U',U) 0.00/0.18 11: _isEqualTo_(U,U) -> true() 0.00/0.18 12: _isNotEqualTo_(U,U') -> if_then_else_fi(_isEqualTo_(U,U'),false(),true()) 0.00/0.18 13: _isNotEqualTo_(U,U) -> false() 0.00/0.18 14: _or_(A,B) -> _xor_(_and_(A,B),_xor_(A,B)) 0.00/0.18 15: _xor_(A,A) -> false() 0.00/0.18 16: _xor_(false(),A) -> A 0.00/0.18 17: and(tt(),X) -> X 0.00/0.18 18: equal(X,X) -> tt() 0.00/0.18 19: if_then_else_fi(B,U,U') -> U21^1_tt(B,U') 0.00/0.18 20: if_then_else_fi(true(),U,U') -> U 0.00/0.18 21: not_(A) -> _xor_(A,true()) 0.00/0.18 22: not_(false()) -> true() 0.00/0.18 23: not_(true()) -> false() 0.00/0.18 24: U21(tt(),_2,_3) ->= U21^1_tt(_2,_3) 0.00/0.18 25: U11(tt(),_2,_3) ->= U11^1_tt(_2,_3) 0.00/0.18 Number of strict rules: 23 0.00/0.18 Direct POLO(bPol) ... failed. 0.00/0.18 Dependency Pairs: 0.00/0.18 #1: #_and_(A,_xor_(B,C)) -> #_xor_(_and_(A,B),_and_(A,C)) 0.00/0.18 #2: #_and_(A,_xor_(B,C)) -> #_and_(A,B) 0.00/0.18 #3: #_and_(A,_xor_(B,C)) -> #_and_(A,C) 0.00/0.18 #4: #_implies_(A,B) -> #not_(_xor_(A,_and_(A,B))) 0.00/0.18 #5: #_implies_(A,B) -> #_xor_(A,_and_(A,B)) 0.00/0.18 #6: #_implies_(A,B) -> #_and_(A,B) 0.00/0.18 #7: #U21(tt(),_2,_3) ->? #U21^1_tt(_2,_3) 0.00/0.18 #8: #_isNotEqualTo_(U,U') -> #if_then_else_fi(_isEqualTo_(U,U'),false(),true()) 0.00/0.18 #9: #_isNotEqualTo_(U,U') -> #_isEqualTo_(U,U') 0.00/0.18 #10: #_or_(A,B) -> #_xor_(_and_(A,B),_xor_(A,B)) 0.00/0.18 #11: #_or_(A,B) -> #_and_(A,B) 0.00/0.18 #12: #_or_(A,B) -> #_xor_(A,B) 0.00/0.18 #13: #U11(tt(),_2,_3) ->? #U11^1_tt(_2,_3) 0.00/0.18 #14: #_isEqualTo_(U,U') -> #U11^1_tt(U',U) 0.00/0.18 #15: #_and_(x,_and_(y,z)) ->= #_and_(_and_(x,y),z) 0.00/0.18 #16: #_and_(x,_and_(y,z)) ->= #_and_(x,y) 0.00/0.18 #17: #_xor_(x,_xor_(y,z)) ->= #_xor_(_xor_(x,y),z) 0.00/0.18 #18: #_xor_(x,_xor_(y,z)) ->= #_xor_(x,y) 0.00/0.18 #19: #if_then_else_fi(B,U,U') -> #U21^1_tt(B,U') 0.00/0.18 #20: #_or_(x,_or_(y,z)) ->= #_or_(_or_(x,y),z) 0.00/0.18 #21: #_or_(x,_or_(y,z)) ->= #_or_(x,y) 0.00/0.18 #22: #not_(A) -> #_xor_(A,true()) 0.00/0.18 #23: #U21^1_tt(B,U') -> #U22(equal(_isNotEqualTo_(B,true()),true()),U') 0.00/0.18 #24: #U21^1_tt(B,U') -> #equal(_isNotEqualTo_(B,true()),true()) 0.00/0.18 #25: #U21^1_tt(B,U') -> #_isNotEqualTo_(B,true()) 0.00/0.18 #26: #U11^1_tt(U',U) -> #U12(equal(_isNotEqualTo_(U,U'),true())) 0.00/0.18 #27: #U11^1_tt(U',U) -> #equal(_isNotEqualTo_(U,U'),true()) 0.00/0.18 #28: #U11^1_tt(U',U) -> #_isNotEqualTo_(U,U') 0.00/0.18 Number of SCCs: 4, DPs: 14 0.00/0.18 SCC { #20 #21 } 0.00/0.18 only weak rules. 0.00/0.18 Number of SCCs: 3, DPs: 12 0.00/0.18 SCC { #17 #18 } 0.00/0.18 only weak rules. 0.00/0.18 Number of SCCs: 2, DPs: 10 0.00/0.18 SCC { #2 #3 #15 #16 } 0.00/0.18 POLO(Sum)... POLO(max)... QLPOS... succeeded. 0.00/0.18 U21 s: [] p: 0 0.00/0.18 _and_ s: {1,2} p: 2 0.00/0.18 U11 s: [] p: 0 0.00/0.18 #_isNotEqualTo_ s: [] p: 0 0.00/0.18 not_ s: [] p: 0 0.00/0.18 #_and_ s: {1,2} p: 2 0.00/0.18 #equal s: [] p: 0 0.00/0.18 and s: [] p: 0 0.00/0.18 _or_ s: {} p: 0 0.00/0.18 false s: [] p: 0 0.00/0.18 U12 s: [] p: 0 0.00/0.18 true s: [] p: 0 0.00/0.18 _implies_ s: [] p: 0 0.00/0.18 #_implies_ s: [] p: 0 0.00/0.18 #U12 s: [] p: 0 0.00/0.18 _isNotEqualTo_ s: [] p: 0 0.00/0.18 #_xor_ s: {} p: 1 0.00/0.18 _xor_ s: {1,2} p: 1 0.00/0.18 U21^1_tt s: [] p: 0 0.00/0.18 #U21^1_tt s: [] p: 0 0.00/0.18 U11^1_tt s: [] p: 0 0.00/0.18 #if_then_else_fi s: [] p: 0 0.00/0.18 #not_ s: [] p: 0 0.00/0.18 #U11 s: [] p: 0 0.00/0.18 #_isEqualTo_ s: [] p: 0 0.00/0.18 equal s: [] p: 0 0.00/0.18 #U21 s: [] p: 0 0.00/0.18 #U22 s: [] p: 0 0.00/0.18 tt s: [] p: 0 0.00/0.18 #_or_ s: {} p: 0 0.00/0.18 U22 s: [] p: 0 0.00/0.18 _isEqualTo_ s: [] p: 0 0.00/0.18 #and s: [] p: 0 0.00/0.18 if_then_else_fi s: [] p: 0 0.00/0.18 #U11^1_tt s: [] p: 0 0.00/0.18 USABLE RULES: { 5..8 15 16 27 28 } 0.00/0.18 Removed DPs: #2 #3 #16 0.00/0.18 Number of SCCs: 2, DPs: 7 0.00/0.18 SCC { #15 } 0.00/0.18 only weak rules. 0.00/0.18 Number of SCCs: 1, DPs: 6 0.00/0.18 SCC { #8 #9 #14 #19 #25 #28 } 0.00/0.18 POLO(Sum)... POLO(max)... QLPOS... POLO(mSum)... QWPOpS(mSum)... Mat2b... failed. 0.00/0.18 Finding a loop... found. 0.00/0.18 #U21^1_tt(U_{1},U') -#25-> 0.00/0.18 #_isNotEqualTo_(U_{1},true()) --->* 0.00/0.18 #_isNotEqualTo_(U_{1},true()) -#8-> 0.00/0.18 #if_then_else_fi(_isEqualTo_(U_{1},true()),false(),true()) --->* 0.00/0.18 #if_then_else_fi(_isEqualTo_(U_{1},true()),false(),true()) -#19-> 0.00/0.18 #U21^1_tt(_isEqualTo_(U_{1},true()),true()) --->* 0.00/0.18 #U21^1_tt(_isEqualTo_(U_{1},true()),true()) 0.00/0.18 Looping with: [ U_{1} := _isEqualTo_(U_{1},true()); U' := true(); ] 0.00/0.18 EOF