MAYBE Time: 9.105 Problem: Equations: _xor_AC(_xor_AC(x8,x9),x10) -> _xor_AC(x8,_xor_AC(x9,x10)) _xor_AC(x8,x9) -> _xor_AC(x9,x8) _and_AC(_and_AC(x8,x9),x10) -> _and_AC(x8,_and_AC(x9,x10)) _and_AC(x8,x9) -> _and_AC(x9,x8) _or_AC(_or_AC(x8,x9),x10) -> _or_AC(x8,_or_AC(x9,x10)) _or_AC(x8,x9) -> _or_AC(x9,x8) _xor_AC(x8,_xor_AC(x9,x10)) -> _xor_AC(_xor_AC(x8,x9),x10) _xor_AC(x9,x8) -> _xor_AC(x8,x9) _and_AC(x8,_and_AC(x9,x10)) -> _and_AC(_and_AC(x8,x9),x10) _and_AC(x9,x8) -> _and_AC(x8,x9) _or_AC(x8,_or_AC(x9,x10)) -> _or_AC(_or_AC(x8,x9),x10) _or_AC(x9,x8) -> _or_AC(x8,x9) TRS: U101(tt(),A,B) -> U102(isBool(B),A,B) U102(tt(),A,B) -> _xor_AC(_and_AC(A,B),_xor_AC(A,B)) U11(tt(),A) -> A U111(tt()) -> false() U121(tt(),A) -> A U131(tt(),B,U',U) -> U132(isS(U'),B,U',U) U132(tt(),B,U',U) -> U133(isS(U),B,U') U133(tt(),B,U') -> U134(equal(_isNotEqualTo_(B,true()),true()),U') U134(tt(),U') -> U' U141(tt(),U) -> U142(isS(U),U) U142(tt(),U) -> U U151(tt(),V2) -> U152(isBool(V2)) U152(tt()) -> tt() U161(tt(),V2) -> U162(isBool(V2)) U162(tt()) -> tt() U171(tt(),V2) -> U172(isUniversal(V2)) U172(tt()) -> tt() U181(tt(),V2) -> U182(isUniversal(V2)) U182(tt()) -> tt() U191(tt(),V2) -> U192(isBool(V2)) U192(tt()) -> tt() U201(tt(),V2) -> U202(isBool(V2)) U202(tt()) -> tt() U21(tt(),A,B,C) -> U22(isBool(B),A,B,C) U211(tt()) -> tt() U22(tt(),A,B,C) -> U23(isBool(C),A,B,C) U221(tt(),A) -> _xor_AC(A,true()) U23(tt(),A,B,C) -> _xor_AC(_and_AC(A,B),_and_AC(A,C)) U31(tt()) -> false() U41(tt(),A) -> A U51(tt(),A,B) -> U52(isBool(B),A,B) U52(tt(),A,B) -> not_(_xor_AC(A,_and_AC(A,B))) U61(tt(),U',U) -> U62(isS(U),U',U) U62(tt(),U',U) -> U63(equal(_isNotEqualTo_(U,U'),true())) U63(tt()) -> false() U71(tt()) -> true() U81(tt(),U',U) -> U82(isS(U),U',U) U82(tt(),U',U) -> if_then_else_fi(_isEqualTo_(U,U'),false(),true()) U91(tt()) -> false() _and_AC(A,A) -> U11(isBool(A),A) _and_AC(A,_xor_AC(B,C)) -> U21(isBool(A),A,B,C) _and_AC(false(),A) -> U31(isBool(A)) _and_AC(true(),A) -> U41(isBool(A),A) _implies_(A,B) -> U51(isBool(A),A,B) _isEqualTo_(U,U') -> U61(isS(U'),U',U) _isEqualTo_(U,U) -> U71(isS(U)) _isNotEqualTo_(U,U') -> U81(isS(U'),U',U) _isNotEqualTo_(U,U) -> U91(isS(U)) _or_AC(A,B) -> U101(isBool(A),A,B) _xor_AC(A,A) -> U111(isBool(A)) _xor_AC(false(),A) -> U121(isBool(A),A) equal(X,X) -> tt() if_then_else_fi(B,U,U') -> U131(isBool(B),B,U',U) if_then_else_fi(true(),U,U') -> U141(isS(U'),U) isBool(false()) -> tt() isBool(true()) -> tt() isBool(_and_AC(V1,V2)) -> U151(isBool(V1),V2) isBool(_implies_(V1,V2)) -> U161(isBool(V1),V2) isBool(_isEqualTo_(V1,V2)) -> U171(isUniversal(V1),V2) isBool(_isNotEqualTo_(V1,V2)) -> U181(isUniversal(V1),V2) isBool(_or_AC(V1,V2)) -> U191(isBool(V1),V2) isBool(_xor_AC(V1,V2)) -> U201(isBool(V1),V2) isBool(not_(V1)) -> U211(isBool(V1)) not_(A) -> U221(isBool(A),A) not_(false()) -> true() not_(true()) -> false() Proof: DP Processor: Equations#: _xor_{AC,#}(_xor_AC(x8,x9),x10) -> _xor_{AC,#}(x8,_xor_AC(x9,x10)) _xor_{AC,#}(x8,x9) -> _xor_{AC,#}(x9,x8) _and_{AC,#}(_and_AC(x8,x9),x10) -> _and_{AC,#}(x8,_and_AC(x9,x10)) _and_{AC,#}(x8,x9) -> _and_{AC,#}(x9,x8) _or_{AC,#}(_or_AC(x8,x9),x10) -> _or_{AC,#}(x8,_or_AC(x9,x10)) _or_{AC,#}(x8,x9) -> _or_{AC,#}(x9,x8) _xor_{AC,#}(x8,_xor_AC(x9,x10)) -> _xor_{AC,#}(_xor_AC(x8,x9),x10) _xor_{AC,#}(x9,x8) -> _xor_{AC,#}(x8,x9) _and_{AC,#}(x8,_and_AC(x9,x10)) -> _and_{AC,#}(_and_AC(x8,x9),x10) _and_{AC,#}(x9,x8) -> _and_{AC,#}(x8,x9) _or_{AC,#}(x8,_or_AC(x9,x10)) -> _or_{AC,#}(_or_AC(x8,x9),x10) _or_{AC,#}(x9,x8) -> _or_{AC,#}(x8,x9) DPs: U101#(tt(),A,B) -> isBool#(B) U101#(tt(),A,B) -> U102#(isBool(B),A,B) U102#(tt(),A,B) -> _xor_{AC,#}(A,B) U102#(tt(),A,B) -> _and_{AC,#}(A,B) U102#(tt(),A,B) -> _xor_{AC,#}(_and_AC(A,B),_xor_AC(A,B)) U131#(tt(),B,U',U) -> U132#(isS(U'),B,U',U) U132#(tt(),B,U',U) -> U133#(isS(U),B,U') U133#(tt(),B,U') -> _isNotEqualTo_#(B,true()) U133#(tt(),B,U') -> equal#(_isNotEqualTo_(B,true()),true()) U133#(tt(),B,U') -> U134#(equal(_isNotEqualTo_(B,true()),true()),U') U141#(tt(),U) -> U142#(isS(U),U) U151#(tt(),V2) -> isBool#(V2) U151#(tt(),V2) -> U152#(isBool(V2)) U161#(tt(),V2) -> isBool#(V2) U161#(tt(),V2) -> U162#(isBool(V2)) U171#(tt(),V2) -> U172#(isUniversal(V2)) U181#(tt(),V2) -> U182#(isUniversal(V2)) U191#(tt(),V2) -> isBool#(V2) U191#(tt(),V2) -> U192#(isBool(V2)) U201#(tt(),V2) -> isBool#(V2) U201#(tt(),V2) -> U202#(isBool(V2)) U21#(tt(),A,B,C) -> isBool#(B) U21#(tt(),A,B,C) -> U22#(isBool(B),A,B,C) U22#(tt(),A,B,C) -> isBool#(C) U22#(tt(),A,B,C) -> U23#(isBool(C),A,B,C) U221#(tt(),A) -> _xor_{AC,#}(A,true()) U23#(tt(),A,B,C) -> _and_{AC,#}(A,C) U23#(tt(),A,B,C) -> _and_{AC,#}(A,B) U23#(tt(),A,B,C) -> _xor_{AC,#}(_and_AC(A,B),_and_AC(A,C)) U51#(tt(),A,B) -> isBool#(B) U51#(tt(),A,B) -> U52#(isBool(B),A,B) U52#(tt(),A,B) -> _and_{AC,#}(A,B) U52#(tt(),A,B) -> _xor_{AC,#}(A,_and_AC(A,B)) U52#(tt(),A,B) -> not_#(_xor_AC(A,_and_AC(A,B))) U61#(tt(),U',U) -> U62#(isS(U),U',U) U62#(tt(),U',U) -> _isNotEqualTo_#(U,U') U62#(tt(),U',U) -> equal#(_isNotEqualTo_(U,U'),true()) U62#(tt(),U',U) -> U63#(equal(_isNotEqualTo_(U,U'),true())) U81#(tt(),U',U) -> U82#(isS(U),U',U) U82#(tt(),U',U) -> _isEqualTo_#(U,U') U82#(tt(),U',U) -> if_then_else_fi#(_isEqualTo_(U,U'),false(),true()) _and_{AC,#}(A,A) -> isBool#(A) _and_{AC,#}(A,A) -> U11#(isBool(A),A) _and_{AC,#}(A,_xor_AC(B,C)) -> isBool#(A) _and_{AC,#}(A,_xor_AC(B,C)) -> U21#(isBool(A),A,B,C) _and_{AC,#}(false(),A) -> isBool#(A) _and_{AC,#}(false(),A) -> U31#(isBool(A)) _and_{AC,#}(true(),A) -> isBool#(A) _and_{AC,#}(true(),A) -> U41#(isBool(A),A) _implies_#(A,B) -> isBool#(A) _implies_#(A,B) -> U51#(isBool(A),A,B) _isEqualTo_#(U,U') -> U61#(isS(U'),U',U) _isEqualTo_#(U,U) -> U71#(isS(U)) _isNotEqualTo_#(U,U') -> U81#(isS(U'),U',U) _isNotEqualTo_#(U,U) -> U91#(isS(U)) _or_{AC,#}(A,B) -> isBool#(A) _or_{AC,#}(A,B) -> U101#(isBool(A),A,B) _xor_{AC,#}(A,A) -> isBool#(A) _xor_{AC,#}(A,A) -> U111#(isBool(A)) _xor_{AC,#}(false(),A) -> isBool#(A) _xor_{AC,#}(false(),A) -> U121#(isBool(A),A) if_then_else_fi#(B,U,U') -> isBool#(B) if_then_else_fi#(B,U,U') -> U131#(isBool(B),B,U',U) if_then_else_fi#(true(),U,U') -> U141#(isS(U'),U) isBool#(_and_AC(V1,V2)) -> isBool#(V1) isBool#(_and_AC(V1,V2)) -> U151#(isBool(V1),V2) isBool#(_implies_(V1,V2)) -> isBool#(V1) isBool#(_implies_(V1,V2)) -> U161#(isBool(V1),V2) isBool#(_isEqualTo_(V1,V2)) -> U171#(isUniversal(V1),V2) isBool#(_isNotEqualTo_(V1,V2)) -> U181#(isUniversal(V1),V2) isBool#(_or_AC(V1,V2)) -> isBool#(V1) isBool#(_or_AC(V1,V2)) -> U191#(isBool(V1),V2) isBool#(_xor_AC(V1,V2)) -> isBool#(V1) isBool#(_xor_AC(V1,V2)) -> U201#(isBool(V1),V2) isBool#(not_(V1)) -> isBool#(V1) isBool#(not_(V1)) -> U211#(isBool(V1)) not_#(A) -> isBool#(A) not_#(A) -> U221#(isBool(A),A) _and_{AC,#}(x11,_and_AC(A,A)) -> isBool#(A) _and_{AC,#}(x11,_and_AC(A,A)) -> U11#(isBool(A),A) _and_{AC,#}(x11,_and_AC(A,A)) -> _and_{AC,#}(x11,U11(isBool(A),A)) _and_{AC,#}(x12,_and_AC(A,_xor_AC(B,C))) -> isBool#(A) _and_{AC,#}(x12,_and_AC(A,_xor_AC(B,C))) -> U21#(isBool(A),A,B,C) _and_{AC,#}(x12,_and_AC(A,_xor_AC(B,C))) -> _and_{AC,#}(x12,U21(isBool(A),A,B,C)) _and_{AC,#}(x13,_and_AC(false(),A)) -> isBool#(A) _and_{AC,#}(x13,_and_AC(false(),A)) -> U31#(isBool(A)) _and_{AC,#}(x13,_and_AC(false(),A)) -> _and_{AC,#}(x13,U31(isBool(A))) _and_{AC,#}(x14,_and_AC(true(),A)) -> isBool#(A) _and_{AC,#}(x14,_and_AC(true(),A)) -> U41#(isBool(A),A) _and_{AC,#}(x14,_and_AC(true(),A)) -> _and_{AC,#}(x14,U41(isBool(A),A)) _or_{AC,#}(x15,_or_AC(A,B)) -> isBool#(A) _or_{AC,#}(x15,_or_AC(A,B)) -> U101#(isBool(A),A,B) _or_{AC,#}(x15,_or_AC(A,B)) -> _or_{AC,#}(x15,U101(isBool(A),A,B)) _xor_{AC,#}(x16,_xor_AC(A,A)) -> isBool#(A) _xor_{AC,#}(x16,_xor_AC(A,A)) -> U111#(isBool(A)) _xor_{AC,#}(x16,_xor_AC(A,A)) -> _xor_{AC,#}(x16,U111(isBool(A))) _xor_{AC,#}(x17,_xor_AC(false(),A)) -> isBool#(A) _xor_{AC,#}(x17,_xor_AC(false(),A)) -> U121#(isBool(A),A) _xor_{AC,#}(x17,_xor_AC(false(),A)) -> _xor_{AC,#}(x17,U121(isBool(A),A)) Equations: _xor_AC(_xor_AC(x8,x9),x10) -> _xor_AC(x8,_xor_AC(x9,x10)) _xor_AC(x8,x9) -> _xor_AC(x9,x8) _and_AC(_and_AC(x8,x9),x10) -> _and_AC(x8,_and_AC(x9,x10)) _and_AC(x8,x9) -> _and_AC(x9,x8) _or_AC(_or_AC(x8,x9),x10) -> _or_AC(x8,_or_AC(x9,x10)) _or_AC(x8,x9) -> _or_AC(x9,x8) _xor_AC(x8,_xor_AC(x9,x10)) -> _xor_AC(_xor_AC(x8,x9),x10) _xor_AC(x9,x8) -> _xor_AC(x8,x9) _and_AC(x8,_and_AC(x9,x10)) -> _and_AC(_and_AC(x8,x9),x10) _and_AC(x9,x8) -> _and_AC(x8,x9) _or_AC(x8,_or_AC(x9,x10)) -> _or_AC(_or_AC(x8,x9),x10) _or_AC(x9,x8) -> _or_AC(x8,x9) TRS: U101(tt(),A,B) -> U102(isBool(B),A,B) U102(tt(),A,B) -> _xor_AC(_and_AC(A,B),_xor_AC(A,B)) U11(tt(),A) -> A U111(tt()) -> false() U121(tt(),A) -> A U131(tt(),B,U',U) -> U132(isS(U'),B,U',U) U132(tt(),B,U',U) -> U133(isS(U),B,U') U133(tt(),B,U') -> U134(equal(_isNotEqualTo_(B,true()),true()),U') U134(tt(),U') -> U' U141(tt(),U) -> U142(isS(U),U) U142(tt(),U) -> U U151(tt(),V2) -> U152(isBool(V2)) U152(tt()) -> tt() U161(tt(),V2) -> U162(isBool(V2)) U162(tt()) -> tt() U171(tt(),V2) -> U172(isUniversal(V2)) U172(tt()) -> tt() U181(tt(),V2) -> U182(isUniversal(V2)) U182(tt()) -> tt() U191(tt(),V2) -> U192(isBool(V2)) U192(tt()) -> tt() U201(tt(),V2) -> U202(isBool(V2)) U202(tt()) -> tt() U21(tt(),A,B,C) -> U22(isBool(B),A,B,C) U211(tt()) -> tt() U22(tt(),A,B,C) -> U23(isBool(C),A,B,C) U221(tt(),A) -> _xor_AC(A,true()) U23(tt(),A,B,C) -> _xor_AC(_and_AC(A,B),_and_AC(A,C)) U31(tt()) -> false() U41(tt(),A) -> A U51(tt(),A,B) -> U52(isBool(B),A,B) U52(tt(),A,B) -> not_(_xor_AC(A,_and_AC(A,B))) U61(tt(),U',U) -> U62(isS(U),U',U) U62(tt(),U',U) -> U63(equal(_isNotEqualTo_(U,U'),true())) U63(tt()) -> false() U71(tt()) -> true() U81(tt(),U',U) -> U82(isS(U),U',U) U82(tt(),U',U) -> if_then_else_fi(_isEqualTo_(U,U'),false(),true()) U91(tt()) -> false() _and_AC(A,A) -> U11(isBool(A),A) _and_AC(A,_xor_AC(B,C)) -> U21(isBool(A),A,B,C) _and_AC(false(),A) -> U31(isBool(A)) _and_AC(true(),A) -> U41(isBool(A),A) _implies_(A,B) -> U51(isBool(A),A,B) _isEqualTo_(U,U') -> U61(isS(U'),U',U) _isEqualTo_(U,U) -> U71(isS(U)) _isNotEqualTo_(U,U') -> U81(isS(U'),U',U) _isNotEqualTo_(U,U) -> U91(isS(U)) _or_AC(A,B) -> U101(isBool(A),A,B) _xor_AC(A,A) -> U111(isBool(A)) _xor_AC(false(),A) -> U121(isBool(A),A) equal(X,X) -> tt() if_then_else_fi(B,U,U') -> U131(isBool(B),B,U',U) if_then_else_fi(true(),U,U') -> U141(isS(U'),U) isBool(false()) -> tt() isBool(true()) -> tt() isBool(_and_AC(V1,V2)) -> U151(isBool(V1),V2) isBool(_implies_(V1,V2)) -> U161(isBool(V1),V2) isBool(_isEqualTo_(V1,V2)) -> U171(isUniversal(V1),V2) isBool(_isNotEqualTo_(V1,V2)) -> U181(isUniversal(V1),V2) isBool(_or_AC(V1,V2)) -> U191(isBool(V1),V2) isBool(_xor_AC(V1,V2)) -> U201(isBool(V1),V2) isBool(not_(V1)) -> U211(isBool(V1)) not_(A) -> U221(isBool(A),A) not_(false()) -> true() not_(true()) -> false() S: _xor_{AC,#}(_xor_AC(x18,x19),x20) -> _xor_{AC,#}(x18,x19) _xor_{AC,#}(x18,_xor_AC(x19,x20)) -> _xor_{AC,#}(x19,x20) _and_{AC,#}(_and_AC(x18,x19),x20) -> _and_{AC,#}(x18,x19) _and_{AC,#}(x18,_and_AC(x19,x20)) -> _and_{AC,#}(x19,x20) _or_{AC,#}(_or_AC(x18,x19),x20) -> _or_{AC,#}(x18,x19) _or_{AC,#}(x18,_or_AC(x19,x20)) -> _or_{AC,#}(x19,x20) AC-EDG Processor: Equations#: _xor_{AC,#}(_xor_AC(x8,x9),x10) -> _xor_{AC,#}(x8,_xor_AC(x9,x10)) _xor_{AC,#}(x8,x9) -> _xor_{AC,#}(x9,x8) _and_{AC,#}(_and_AC(x8,x9),x10) -> _and_{AC,#}(x8,_and_AC(x9,x10)) _and_{AC,#}(x8,x9) -> _and_{AC,#}(x9,x8) _or_{AC,#}(_or_AC(x8,x9),x10) -> _or_{AC,#}(x8,_or_AC(x9,x10)) _or_{AC,#}(x8,x9) -> _or_{AC,#}(x9,x8) _xor_{AC,#}(x8,_xor_AC(x9,x10)) -> _xor_{AC,#}(_xor_AC(x8,x9),x10) _xor_{AC,#}(x9,x8) -> _xor_{AC,#}(x8,x9) _and_{AC,#}(x8,_and_AC(x9,x10)) -> _and_{AC,#}(_and_AC(x8,x9),x10) _and_{AC,#}(x9,x8) -> _and_{AC,#}(x8,x9) _or_{AC,#}(x8,_or_AC(x9,x10)) -> _or_{AC,#}(_or_AC(x8,x9),x10) _or_{AC,#}(x9,x8) -> _or_{AC,#}(x8,x9) DPs: U101#(tt(),A,B) -> isBool#(B) U101#(tt(),A,B) -> U102#(isBool(B),A,B) U102#(tt(),A,B) -> _xor_{AC,#}(A,B) U102#(tt(),A,B) -> _and_{AC,#}(A,B) U102#(tt(),A,B) -> _xor_{AC,#}(_and_AC(A,B),_xor_AC(A,B)) U131#(tt(),B,U',U) -> U132#(isS(U'),B,U',U) U132#(tt(),B,U',U) -> U133#(isS(U),B,U') U133#(tt(),B,U') -> _isNotEqualTo_#(B,true()) U133#(tt(),B,U') -> equal#(_isNotEqualTo_(B,true()),true()) U133#(tt(),B,U') -> U134#(equal(_isNotEqualTo_(B,true()),true()),U') U141#(tt(),U) -> U142#(isS(U),U) U151#(tt(),V2) -> isBool#(V2) U151#(tt(),V2) -> U152#(isBool(V2)) U161#(tt(),V2) -> isBool#(V2) U161#(tt(),V2) -> U162#(isBool(V2)) U171#(tt(),V2) -> U172#(isUniversal(V2)) U181#(tt(),V2) -> U182#(isUniversal(V2)) U191#(tt(),V2) -> isBool#(V2) U191#(tt(),V2) -> U192#(isBool(V2)) U201#(tt(),V2) -> isBool#(V2) U201#(tt(),V2) -> U202#(isBool(V2)) U21#(tt(),A,B,C) -> isBool#(B) U21#(tt(),A,B,C) -> U22#(isBool(B),A,B,C) U22#(tt(),A,B,C) -> isBool#(C) U22#(tt(),A,B,C) -> U23#(isBool(C),A,B,C) U221#(tt(),A) -> _xor_{AC,#}(A,true()) U23#(tt(),A,B,C) -> _and_{AC,#}(A,C) U23#(tt(),A,B,C) -> _and_{AC,#}(A,B) U23#(tt(),A,B,C) -> _xor_{AC,#}(_and_AC(A,B),_and_AC(A,C)) U51#(tt(),A,B) -> isBool#(B) U51#(tt(),A,B) -> U52#(isBool(B),A,B) U52#(tt(),A,B) -> _and_{AC,#}(A,B) U52#(tt(),A,B) -> _xor_{AC,#}(A,_and_AC(A,B)) U52#(tt(),A,B) -> not_#(_xor_AC(A,_and_AC(A,B))) U61#(tt(),U',U) -> U62#(isS(U),U',U) U62#(tt(),U',U) -> _isNotEqualTo_#(U,U') U62#(tt(),U',U) -> equal#(_isNotEqualTo_(U,U'),true()) U62#(tt(),U',U) -> U63#(equal(_isNotEqualTo_(U,U'),true())) U81#(tt(),U',U) -> U82#(isS(U),U',U) U82#(tt(),U',U) -> _isEqualTo_#(U,U') U82#(tt(),U',U) -> if_then_else_fi#(_isEqualTo_(U,U'),false(),true()) _and_{AC,#}(A,A) -> isBool#(A) _and_{AC,#}(A,A) -> U11#(isBool(A),A) _and_{AC,#}(A,_xor_AC(B,C)) -> isBool#(A) _and_{AC,#}(A,_xor_AC(B,C)) -> U21#(isBool(A),A,B,C) _and_{AC,#}(false(),A) -> isBool#(A) _and_{AC,#}(false(),A) -> U31#(isBool(A)) _and_{AC,#}(true(),A) -> isBool#(A) _and_{AC,#}(true(),A) -> U41#(isBool(A),A) _implies_#(A,B) -> isBool#(A) _implies_#(A,B) -> U51#(isBool(A),A,B) _isEqualTo_#(U,U') -> U61#(isS(U'),U',U) _isEqualTo_#(U,U) -> U71#(isS(U)) _isNotEqualTo_#(U,U') -> U81#(isS(U'),U',U) _isNotEqualTo_#(U,U) -> U91#(isS(U)) _or_{AC,#}(A,B) -> isBool#(A) _or_{AC,#}(A,B) -> U101#(isBool(A),A,B) _xor_{AC,#}(A,A) -> isBool#(A) _xor_{AC,#}(A,A) -> U111#(isBool(A)) _xor_{AC,#}(false(),A) -> isBool#(A) _xor_{AC,#}(false(),A) -> U121#(isBool(A),A) if_then_else_fi#(B,U,U') -> isBool#(B) if_then_else_fi#(B,U,U') -> U131#(isBool(B),B,U',U) if_then_else_fi#(true(),U,U') -> U141#(isS(U'),U) isBool#(_and_AC(V1,V2)) -> isBool#(V1) isBool#(_and_AC(V1,V2)) -> U151#(isBool(V1),V2) isBool#(_implies_(V1,V2)) -> isBool#(V1) isBool#(_implies_(V1,V2)) -> U161#(isBool(V1),V2) isBool#(_isEqualTo_(V1,V2)) -> U171#(isUniversal(V1),V2) isBool#(_isNotEqualTo_(V1,V2)) -> U181#(isUniversal(V1),V2) isBool#(_or_AC(V1,V2)) -> isBool#(V1) isBool#(_or_AC(V1,V2)) -> U191#(isBool(V1),V2) isBool#(_xor_AC(V1,V2)) -> isBool#(V1) isBool#(_xor_AC(V1,V2)) -> U201#(isBool(V1),V2) isBool#(not_(V1)) -> isBool#(V1) isBool#(not_(V1)) -> U211#(isBool(V1)) not_#(A) -> isBool#(A) not_#(A) -> U221#(isBool(A),A) _and_{AC,#}(x11,_and_AC(A,A)) -> isBool#(A) _and_{AC,#}(x11,_and_AC(A,A)) -> U11#(isBool(A),A) _and_{AC,#}(x11,_and_AC(A,A)) -> _and_{AC,#}(x11,U11(isBool(A),A)) _and_{AC,#}(x12,_and_AC(A,_xor_AC(B,C))) -> isBool#(A) _and_{AC,#}(x12,_and_AC(A,_xor_AC(B,C))) -> U21#(isBool(A),A,B,C) _and_{AC,#}(x12,_and_AC(A,_xor_AC(B,C))) -> _and_{AC,#}(x12,U21(isBool(A),A,B,C)) _and_{AC,#}(x13,_and_AC(false(),A)) -> isBool#(A) _and_{AC,#}(x13,_and_AC(false(),A)) -> U31#(isBool(A)) _and_{AC,#}(x13,_and_AC(false(),A)) -> _and_{AC,#}(x13,U31(isBool(A))) _and_{AC,#}(x14,_and_AC(true(),A)) -> isBool#(A) _and_{AC,#}(x14,_and_AC(true(),A)) -> U41#(isBool(A),A) _and_{AC,#}(x14,_and_AC(true(),A)) -> _and_{AC,#}(x14,U41(isBool(A),A)) _or_{AC,#}(x15,_or_AC(A,B)) -> isBool#(A) _or_{AC,#}(x15,_or_AC(A,B)) -> U101#(isBool(A),A,B) _or_{AC,#}(x15,_or_AC(A,B)) -> _or_{AC,#}(x15,U101(isBool(A),A,B)) _xor_{AC,#}(x16,_xor_AC(A,A)) -> isBool#(A) _xor_{AC,#}(x16,_xor_AC(A,A)) -> U111#(isBool(A)) _xor_{AC,#}(x16,_xor_AC(A,A)) -> _xor_{AC,#}(x16,U111(isBool(A))) _xor_{AC,#}(x17,_xor_AC(false(),A)) -> isBool#(A) _xor_{AC,#}(x17,_xor_AC(false(),A)) -> U121#(isBool(A),A) _xor_{AC,#}(x17,_xor_AC(false(),A)) -> _xor_{AC,#}(x17,U121(isBool(A),A)) Equations: _xor_AC(_xor_AC(x8,x9),x10) -> _xor_AC(x8,_xor_AC(x9,x10)) _xor_AC(x8,x9) -> _xor_AC(x9,x8) _and_AC(_and_AC(x8,x9),x10) -> _and_AC(x8,_and_AC(x9,x10)) _and_AC(x8,x9) -> _and_AC(x9,x8) _or_AC(_or_AC(x8,x9),x10) -> _or_AC(x8,_or_AC(x9,x10)) _or_AC(x8,x9) -> _or_AC(x9,x8) _xor_AC(x8,_xor_AC(x9,x10)) -> _xor_AC(_xor_AC(x8,x9),x10) _xor_AC(x9,x8) -> _xor_AC(x8,x9) _and_AC(x8,_and_AC(x9,x10)) -> _and_AC(_and_AC(x8,x9),x10) _and_AC(x9,x8) -> _and_AC(x8,x9) _or_AC(x8,_or_AC(x9,x10)) -> _or_AC(_or_AC(x8,x9),x10) _or_AC(x9,x8) -> _or_AC(x8,x9) TRS: U101(tt(),A,B) -> U102(isBool(B),A,B) U102(tt(),A,B) -> _xor_AC(_and_AC(A,B),_xor_AC(A,B)) U11(tt(),A) -> A U111(tt()) -> false() U121(tt(),A) -> A U131(tt(),B,U',U) -> U132(isS(U'),B,U',U) U132(tt(),B,U',U) -> U133(isS(U),B,U') U133(tt(),B,U') -> U134(equal(_isNotEqualTo_(B,true()),true()),U') U134(tt(),U') -> U' U141(tt(),U) -> U142(isS(U),U) U142(tt(),U) -> U U151(tt(),V2) -> U152(isBool(V2)) U152(tt()) -> tt() U161(tt(),V2) -> U162(isBool(V2)) U162(tt()) -> tt() U171(tt(),V2) -> U172(isUniversal(V2)) U172(tt()) -> tt() U181(tt(),V2) -> U182(isUniversal(V2)) U182(tt()) -> tt() U191(tt(),V2) -> U192(isBool(V2)) U192(tt()) -> tt() U201(tt(),V2) -> U202(isBool(V2)) U202(tt()) -> tt() U21(tt(),A,B,C) -> U22(isBool(B),A,B,C) U211(tt()) -> tt() U22(tt(),A,B,C) -> U23(isBool(C),A,B,C) U221(tt(),A) -> _xor_AC(A,true()) U23(tt(),A,B,C) -> _xor_AC(_and_AC(A,B),_and_AC(A,C)) U31(tt()) -> false() U41(tt(),A) -> A U51(tt(),A,B) -> U52(isBool(B),A,B) U52(tt(),A,B) -> not_(_xor_AC(A,_and_AC(A,B))) U61(tt(),U',U) -> U62(isS(U),U',U) U62(tt(),U',U) -> U63(equal(_isNotEqualTo_(U,U'),true())) U63(tt()) -> false() U71(tt()) -> true() U81(tt(),U',U) -> U82(isS(U),U',U) U82(tt(),U',U) -> if_then_else_fi(_isEqualTo_(U,U'),false(),true()) U91(tt()) -> false() _and_AC(A,A) -> U11(isBool(A),A) _and_AC(A,_xor_AC(B,C)) -> U21(isBool(A),A,B,C) _and_AC(false(),A) -> U31(isBool(A)) _and_AC(true(),A) -> U41(isBool(A),A) _implies_(A,B) -> U51(isBool(A),A,B) _isEqualTo_(U,U') -> U61(isS(U'),U',U) _isEqualTo_(U,U) -> U71(isS(U)) _isNotEqualTo_(U,U') -> U81(isS(U'),U',U) _isNotEqualTo_(U,U) -> U91(isS(U)) _or_AC(A,B) -> U101(isBool(A),A,B) _xor_AC(A,A) -> U111(isBool(A)) _xor_AC(false(),A) -> U121(isBool(A),A) equal(X,X) -> tt() if_then_else_fi(B,U,U') -> U131(isBool(B),B,U',U) if_then_else_fi(true(),U,U') -> U141(isS(U'),U) isBool(false()) -> tt() isBool(true()) -> tt() isBool(_and_AC(V1,V2)) -> U151(isBool(V1),V2) isBool(_implies_(V1,V2)) -> U161(isBool(V1),V2) isBool(_isEqualTo_(V1,V2)) -> U171(isUniversal(V1),V2) isBool(_isNotEqualTo_(V1,V2)) -> U181(isUniversal(V1),V2) isBool(_or_AC(V1,V2)) -> U191(isBool(V1),V2) isBool(_xor_AC(V1,V2)) -> U201(isBool(V1),V2) isBool(not_(V1)) -> U211(isBool(V1)) not_(A) -> U221(isBool(A),A) not_(false()) -> true() not_(true()) -> false() S: _xor_{AC,#}(_xor_AC(x18,x19),x20) -> _xor_{AC,#}(x18,x19) _xor_{AC,#}(x18,_xor_AC(x19,x20)) -> _xor_{AC,#}(x19,x20) _and_{AC,#}(_and_AC(x18,x19),x20) -> _and_{AC,#}(x18,x19) _and_{AC,#}(x18,_and_AC(x19,x20)) -> _and_{AC,#}(x19,x20) _or_{AC,#}(_or_AC(x18,x19),x20) -> _or_{AC,#}(x18,x19) _or_{AC,#}(x18,_or_AC(x19,x20)) -> _or_{AC,#}(x19,x20) Open