MAYBE
R
↳Dependency Pair Analysis
U11'(tt, U', U) -> U12'(equal(isNotEqualTo(U, U'), true))
U11'(tt, U', U) -> EQUAL(isNotEqualTo(U, U'), true)
U11'(tt, U', U) -> ISNOTEQUALTO(U, U')
U21'(tt, B, U') -> U22'(equal(isNotEqualTo(B, true), true), U')
U21'(tt, B, U') -> EQUAL(isNotEqualTo(B, true), true)
U21'(tt, B, U') -> ISNOTEQUALTO(B, true)
and(A, xor(B, C)) -> xor(and(A, B), and(A, C))
and(A, xor(B, C)) -> and(A, B)
and(A, xor(B, C)) -> and(A, C)
and(and(A, A), ext) -> and(A, ext)
and(and(A, xor(B, C)), ext) -> and(xor(and(A, B), and(A, C)), ext)
and(and(A, xor(B, C)), ext) -> xor(and(A, B), and(A, C))
and(and(A, xor(B, C)), ext) -> and(A, B)
and(and(A, xor(B, C)), ext) -> and(A, C)
and(and(false, A), ext) -> and(false, ext)
IMPLIES(A, B) -> NOT(xor(A, and(A, B)))
IMPLIES(A, B) -> xor(A, and(A, B))
IMPLIES(A, B) -> and(A, B)
ISEQUALTO(U, U') -> U11'(tt, U', U)
ISNOTEQUALTO(U, U') -> IFTHENELSEFI(isEqualTo(U, U'), false, true)
ISNOTEQUALTO(U, U') -> ISEQUALTO(U, U')
or(A, B) -> xor(and(A, B), xor(A, B))
or(A, B) -> and(A, B)
or(A, B) -> xor(A, B)
or(or(A, B), ext) -> or(xor(and(A, B), xor(A, B)), ext)
or(or(A, B), ext) -> xor(and(A, B), xor(A, B))
or(or(A, B), ext) -> and(A, B)
or(or(A, B), ext) -> xor(A, B)
xor(xor(A, A), ext) -> xor(false, ext)
IFTHENELSEFI(B, U, U') -> U21'(tt, B, U')
NOT(A) -> xor(A, true)
R
↳DPs
→DP Problem 1
↳Instantiation Transformation
→DP Problem 2
↳Polo
→DP Problem 3
↳Polo
→DP Problem 4
↳AFS
ISEQUALTO(U, U') -> U11'(tt, U', U)
ISNOTEQUALTO(U, U') -> ISEQUALTO(U, U')
U21'(tt, B, U') -> ISNOTEQUALTO(B, true)
IFTHENELSEFI(B, U, U') -> U21'(tt, B, U')
ISNOTEQUALTO(U, U') -> IFTHENELSEFI(isEqualTo(U, U'), false, true)
U11'(tt, U', U) -> ISNOTEQUALTO(U, U')
U11(tt, U', U) -> U12(equal(isNotEqualTo(U, U'), true))
U12(tt) -> false
U21(tt, B, U') -> U22(equal(isNotEqualTo(B, true), true), U')
U22(tt, U') -> U'
and(A, A) -> A
and(A, xor(B, C)) -> xor(and(A, B), and(A, C))
and(false, A) -> false
and(true, A) -> A
implies(A, B) -> not(xor(A, and(A, B)))
isEqualTo(U, U') -> U11(tt, U', U)
isEqualTo(U, U) -> true
isNotEqualTo(U, U') -> ifthenelsefi(isEqualTo(U, U'), false, true)
isNotEqualTo(U, U) -> false
or(A, B) -> xor(and(A, B), xor(A, B))
xor(A, A) -> false
xor(false, A) -> A
and(tt, X) -> X
equal(X, X) -> tt
ifthenelsefi(B, U, U') -> U21(tt, B, U')
ifthenelsefi(true, U, U') -> U
not(A) -> xor(A, true)
not(false) -> true
not(true) -> false
one new Dependency Pair is created:
IFTHENELSEFI(B, U, U') -> U21'(tt, B, U')
IFTHENELSEFI(B', false, true) -> U21'(tt, B', true)
R
↳DPs
→DP Problem 1
↳Inst
→DP Problem 9
↳Instantiation Transformation
→DP Problem 2
↳Polo
→DP Problem 3
↳Polo
→DP Problem 4
↳AFS
ISNOTEQUALTO(U, U') -> ISEQUALTO(U, U')
U21'(tt, B, U') -> ISNOTEQUALTO(B, true)
IFTHENELSEFI(B', false, true) -> U21'(tt, B', true)
ISNOTEQUALTO(U, U') -> IFTHENELSEFI(isEqualTo(U, U'), false, true)
U11'(tt, U', U) -> ISNOTEQUALTO(U, U')
ISEQUALTO(U, U') -> U11'(tt, U', U)
U11(tt, U', U) -> U12(equal(isNotEqualTo(U, U'), true))
U12(tt) -> false
U21(tt, B, U') -> U22(equal(isNotEqualTo(B, true), true), U')
U22(tt, U') -> U'
and(A, A) -> A
and(A, xor(B, C)) -> xor(and(A, B), and(A, C))
and(false, A) -> false
and(true, A) -> A
implies(A, B) -> not(xor(A, and(A, B)))
isEqualTo(U, U') -> U11(tt, U', U)
isEqualTo(U, U) -> true
isNotEqualTo(U, U') -> ifthenelsefi(isEqualTo(U, U'), false, true)
isNotEqualTo(U, U) -> false
or(A, B) -> xor(and(A, B), xor(A, B))
xor(A, A) -> false
xor(false, A) -> A
and(tt, X) -> X
equal(X, X) -> tt
ifthenelsefi(B, U, U') -> U21(tt, B, U')
ifthenelsefi(true, U, U') -> U
not(A) -> xor(A, true)
not(false) -> true
not(true) -> false
one new Dependency Pair is created:
U21'(tt, B, U') -> ISNOTEQUALTO(B, true)
U21'(tt, B', true) -> ISNOTEQUALTO(B', true)
R
↳DPs
→DP Problem 1
↳Inst
→DP Problem 9
↳Inst
...
→DP Problem 10
↳Remaining Obligation(s)
→DP Problem 2
↳Polo
→DP Problem 3
↳Polo
→DP Problem 4
↳AFS
U21'(tt, B', true) -> ISNOTEQUALTO(B', true)
IFTHENELSEFI(B', false, true) -> U21'(tt, B', true)
ISNOTEQUALTO(U, U') -> IFTHENELSEFI(isEqualTo(U, U'), false, true)
U11'(tt, U', U) -> ISNOTEQUALTO(U, U')
ISEQUALTO(U, U') -> U11'(tt, U', U)
ISNOTEQUALTO(U, U') -> ISEQUALTO(U, U')
U11(tt, U', U) -> U12(equal(isNotEqualTo(U, U'), true))
U12(tt) -> false
U21(tt, B, U') -> U22(equal(isNotEqualTo(B, true), true), U')
U22(tt, U') -> U'
and(A, A) -> A
and(A, xor(B, C)) -> xor(and(A, B), and(A, C))
and(false, A) -> false
and(true, A) -> A
implies(A, B) -> not(xor(A, and(A, B)))
isEqualTo(U, U') -> U11(tt, U', U)
isEqualTo(U, U) -> true
isNotEqualTo(U, U') -> ifthenelsefi(isEqualTo(U, U'), false, true)
isNotEqualTo(U, U) -> false
or(A, B) -> xor(and(A, B), xor(A, B))
xor(A, A) -> false
xor(false, A) -> A
and(tt, X) -> X
equal(X, X) -> tt
ifthenelsefi(B, U, U') -> U21(tt, B, U')
ifthenelsefi(true, U, U') -> U
not(A) -> xor(A, true)
not(false) -> true
not(true) -> false
R
↳DPs
→DP Problem 1
↳Inst
→DP Problem 2
↳Polynomial Ordering
→DP Problem 3
↳Polo
→DP Problem 4
↳AFS
xor(xor(A, A), ext) -> xor(false, ext)
U11(tt, U', U) -> U12(equal(isNotEqualTo(U, U'), true))
U12(tt) -> false
U21(tt, B, U') -> U22(equal(isNotEqualTo(B, true), true), U')
U22(tt, U') -> U'
and(A, A) -> A
and(A, xor(B, C)) -> xor(and(A, B), and(A, C))
and(false, A) -> false
and(true, A) -> A
implies(A, B) -> not(xor(A, and(A, B)))
isEqualTo(U, U') -> U11(tt, U', U)
isEqualTo(U, U) -> true
isNotEqualTo(U, U') -> ifthenelsefi(isEqualTo(U, U'), false, true)
isNotEqualTo(U, U) -> false
or(A, B) -> xor(and(A, B), xor(A, B))
xor(A, A) -> false
xor(false, A) -> A
and(tt, X) -> X
equal(X, X) -> tt
ifthenelsefi(B, U, U') -> U21(tt, B, U')
ifthenelsefi(true, U, U') -> U
not(A) -> xor(A, true)
not(false) -> true
not(true) -> false
xor(xor(A, A), ext) -> xor(false, ext)
xor(A, A) -> false
xor(false, A) -> A
xor(x, xor(y, z)) == xor(xor(x, y), z)
xor(x, y) == xor(y, x)
POL(false) = 0 POL(_xor_(x1, x2)) = 1 + x1 + x2
R
↳DPs
→DP Problem 1
↳Inst
→DP Problem 2
↳Polo
→DP Problem 5
↳Dependency Graph
→DP Problem 3
↳Polo
→DP Problem 4
↳AFS
U11(tt, U', U) -> U12(equal(isNotEqualTo(U, U'), true))
U12(tt) -> false
U21(tt, B, U') -> U22(equal(isNotEqualTo(B, true), true), U')
U22(tt, U') -> U'
and(A, A) -> A
and(A, xor(B, C)) -> xor(and(A, B), and(A, C))
and(false, A) -> false
and(true, A) -> A
implies(A, B) -> not(xor(A, and(A, B)))
isEqualTo(U, U') -> U11(tt, U', U)
isEqualTo(U, U) -> true
isNotEqualTo(U, U') -> ifthenelsefi(isEqualTo(U, U'), false, true)
isNotEqualTo(U, U) -> false
or(A, B) -> xor(and(A, B), xor(A, B))
xor(A, A) -> false
xor(false, A) -> A
and(tt, X) -> X
equal(X, X) -> tt
ifthenelsefi(B, U, U') -> U21(tt, B, U')
ifthenelsefi(true, U, U') -> U
not(A) -> xor(A, true)
not(false) -> true
not(true) -> false
R
↳DPs
→DP Problem 1
↳Inst
→DP Problem 2
↳Polo
→DP Problem 3
↳Polynomial Ordering
→DP Problem 4
↳AFS
and(and(false, A), ext) -> and(false, ext)
and(and(A, xor(B, C)), ext) -> and(A, C)
and(and(A, xor(B, C)), ext) -> and(A, B)
and(and(A, xor(B, C)), ext) -> and(xor(and(A, B), and(A, C)), ext)
and(and(A, A), ext) -> and(A, ext)
and(A, xor(B, C)) -> and(A, C)
and(A, xor(B, C)) -> and(A, B)
U11(tt, U', U) -> U12(equal(isNotEqualTo(U, U'), true))
U12(tt) -> false
U21(tt, B, U') -> U22(equal(isNotEqualTo(B, true), true), U')
U22(tt, U') -> U'
and(A, A) -> A
and(A, xor(B, C)) -> xor(and(A, B), and(A, C))
and(false, A) -> false
and(true, A) -> A
implies(A, B) -> not(xor(A, and(A, B)))
isEqualTo(U, U') -> U11(tt, U', U)
isEqualTo(U, U) -> true
isNotEqualTo(U, U') -> ifthenelsefi(isEqualTo(U, U'), false, true)
isNotEqualTo(U, U) -> false
or(A, B) -> xor(and(A, B), xor(A, B))
xor(A, A) -> false
xor(false, A) -> A
and(tt, X) -> X
equal(X, X) -> tt
ifthenelsefi(B, U, U') -> U21(tt, B, U')
ifthenelsefi(true, U, U') -> U
not(A) -> xor(A, true)
not(false) -> true
not(true) -> false
and(and(A, xor(B, C)), ext) -> and(A, C)
and(and(A, xor(B, C)), ext) -> and(A, B)
and(A, xor(B, C)) -> and(A, C)
and(A, xor(B, C)) -> and(A, B)
and(A, A) -> A
and(A, xor(B, C)) -> xor(and(A, B), and(A, C))
and(false, A) -> false
and(true, A) -> A
xor(A, A) -> false
xor(false, A) -> A
and(x, and(y, z)) == and(and(x, y), z)
and(x, y) == and(y, x)
xor(x, xor(y, z)) == xor(xor(x, y), z)
xor(x, y) == xor(y, x)
POL(false) = 0 POL(_and_(x1, x2)) = x1 + x1·x2 + x2 POL(_xor_(x1, x2)) = 1 + x1 + x2 POL(true) = 0
R
↳DPs
→DP Problem 1
↳Inst
→DP Problem 2
↳Polo
→DP Problem 3
↳Polo
→DP Problem 6
↳Argument Filtering and Ordering
→DP Problem 4
↳AFS
and(and(false, A), ext) -> and(false, ext)
and(and(A, xor(B, C)), ext) -> and(xor(and(A, B), and(A, C)), ext)
and(and(A, A), ext) -> and(A, ext)
U11(tt, U', U) -> U12(equal(isNotEqualTo(U, U'), true))
U12(tt) -> false
U21(tt, B, U') -> U22(equal(isNotEqualTo(B, true), true), U')
U22(tt, U') -> U'
and(A, A) -> A
and(A, xor(B, C)) -> xor(and(A, B), and(A, C))
and(false, A) -> false
and(true, A) -> A
implies(A, B) -> not(xor(A, and(A, B)))
isEqualTo(U, U') -> U11(tt, U', U)
isEqualTo(U, U) -> true
isNotEqualTo(U, U') -> ifthenelsefi(isEqualTo(U, U'), false, true)
isNotEqualTo(U, U) -> false
or(A, B) -> xor(and(A, B), xor(A, B))
xor(A, A) -> false
xor(false, A) -> A
and(tt, X) -> X
equal(X, X) -> tt
ifthenelsefi(B, U, U') -> U21(tt, B, U')
ifthenelsefi(true, U, U') -> U
not(A) -> xor(A, true)
not(false) -> true
not(true) -> false
and(and(false, A), ext) -> and(false, ext)
and(and(A, xor(B, C)), ext) -> and(xor(and(A, B), and(A, C)), ext)
and(and(A, A), ext) -> and(A, ext)
and(A, A) -> A
and(A, xor(B, C)) -> xor(and(A, B), and(A, C))
and(false, A) -> false
and(true, A) -> A
xor(A, A) -> false
xor(false, A) -> A
and(x, and(y, z)) == and(and(x, y), z)
and(x, y) == and(y, x)
xor(x, xor(y, z)) == xor(xor(x, y), z)
xor(x, y) == xor(y, x)
and > xor > false
xor: flat
and: flat
and(x1, x2) -> and(x1, x2)
xor(x1, x2) -> xor(x1, x2)
R
↳DPs
→DP Problem 1
↳Inst
→DP Problem 2
↳Polo
→DP Problem 3
↳Polo
→DP Problem 6
↳AFS
...
→DP Problem 8
↳Dependency Graph
→DP Problem 4
↳AFS
U11(tt, U', U) -> U12(equal(isNotEqualTo(U, U'), true))
U12(tt) -> false
U21(tt, B, U') -> U22(equal(isNotEqualTo(B, true), true), U')
U22(tt, U') -> U'
and(A, A) -> A
and(A, xor(B, C)) -> xor(and(A, B), and(A, C))
and(false, A) -> false
and(true, A) -> A
implies(A, B) -> not(xor(A, and(A, B)))
isEqualTo(U, U') -> U11(tt, U', U)
isEqualTo(U, U) -> true
isNotEqualTo(U, U') -> ifthenelsefi(isEqualTo(U, U'), false, true)
isNotEqualTo(U, U) -> false
or(A, B) -> xor(and(A, B), xor(A, B))
xor(A, A) -> false
xor(false, A) -> A
and(tt, X) -> X
equal(X, X) -> tt
ifthenelsefi(B, U, U') -> U21(tt, B, U')
ifthenelsefi(true, U, U') -> U
not(A) -> xor(A, true)
not(false) -> true
not(true) -> false
R
↳DPs
→DP Problem 1
↳Inst
→DP Problem 2
↳Polo
→DP Problem 3
↳Polo
→DP Problem 4
↳Argument Filtering and Ordering
or(or(A, B), ext) -> or(xor(and(A, B), xor(A, B)), ext)
U11(tt, U', U) -> U12(equal(isNotEqualTo(U, U'), true))
U12(tt) -> false
U21(tt, B, U') -> U22(equal(isNotEqualTo(B, true), true), U')
U22(tt, U') -> U'
and(A, A) -> A
and(A, xor(B, C)) -> xor(and(A, B), and(A, C))
and(false, A) -> false
and(true, A) -> A
implies(A, B) -> not(xor(A, and(A, B)))
isEqualTo(U, U') -> U11(tt, U', U)
isEqualTo(U, U) -> true
isNotEqualTo(U, U') -> ifthenelsefi(isEqualTo(U, U'), false, true)
isNotEqualTo(U, U) -> false
or(A, B) -> xor(and(A, B), xor(A, B))
xor(A, A) -> false
xor(false, A) -> A
and(tt, X) -> X
equal(X, X) -> tt
ifthenelsefi(B, U, U') -> U21(tt, B, U')
ifthenelsefi(true, U, U') -> U
not(A) -> xor(A, true)
not(false) -> true
not(true) -> false
or(or(A, B), ext) -> or(xor(and(A, B), xor(A, B)), ext)
xor(A, A) -> false
xor(false, A) -> A
and(A, A) -> A
and(A, xor(B, C)) -> xor(and(A, B), and(A, C))
and(false, A) -> false
and(true, A) -> A
or(A, B) -> xor(and(A, B), xor(A, B))
and(x, and(y, z)) == and(and(x, y), z)
and(x, y) == and(y, x)
xor(x, xor(y, z)) == xor(xor(x, y), z)
xor(x, y) == xor(y, x)
or(x, or(y, z)) == or(or(x, y), z)
or(x, y) == or(y, x)
or > and > xor > false
xor: flat
and: flat
or: flat
and(x1, x2) -> and(x1, x2)
xor(x1, x2) -> xor(x1, x2)
or(x1, x2) -> or(x1, x2)