/export/starexec/sandbox2/solver/bin/starexec_run_default /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- YES Problem 1: (VAR A B F F1 F2 Fs G1 G2 Gs Left NF Right V X X0 X1 Xs Ys) (RULES intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ) Problem 1: Dependency Pairs Processor: -> Pairs: INTERSECT'II'IN(cons(X0,Xs),Ys) -> INTERSECT'II'IN(Xs,Ys) INTERSECT'II'IN(cons(X0,Xs),Ys) -> U'2'1(intersect'ii'in(Xs,Ys)) INTERSECT'II'IN(Xs,cons(X0,Ys)) -> INTERSECT'II'IN(Xs,Ys) INTERSECT'II'IN(Xs,cons(X0,Ys)) -> U'1'1(intersect'ii'in(Xs,Ys)) REDUCE'II'IN(sequent(cons(if(A,B),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF) REDUCE'II'IN(sequent(cons(if(A,B),Fs),Gs),NF) -> U'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) REDUCE'II'IN(sequent(cons(iff(A,B),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF) REDUCE'II'IN(sequent(cons(iff(A,B),Fs),Gs),NF) -> U'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) REDUCE'II'IN(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> REDUCE'II'IN(sequent(Fs,Gs),sequent(cons(p(V),Left),Right)) REDUCE'II'IN(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> U'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,cons(F2,Fs)),Gs),NF) REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> U'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> U'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> U'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) REDUCE'II'IN(sequent(nil,nil),sequent(F1,F2)) -> INTERSECT'II'IN(F1,F2) REDUCE'II'IN(sequent(nil,nil),sequent(F1,F2)) -> U'15'1(intersect'ii'in(F1,F2)) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> U'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> U'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> U'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> U'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) TAUTOLOGY'I'IN(F) -> REDUCE'II'IN(sequent(nil,cons(F,nil)),sequent(nil,nil)) TAUTOLOGY'I'IN(F) -> U'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> U'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> U'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1: SCC Processor: -> Pairs: INTERSECT'II'IN(cons(X0,Xs),Ys) -> INTERSECT'II'IN(Xs,Ys) INTERSECT'II'IN(cons(X0,Xs),Ys) -> U'2'1(intersect'ii'in(Xs,Ys)) INTERSECT'II'IN(Xs,cons(X0,Ys)) -> INTERSECT'II'IN(Xs,Ys) INTERSECT'II'IN(Xs,cons(X0,Ys)) -> U'1'1(intersect'ii'in(Xs,Ys)) REDUCE'II'IN(sequent(cons(if(A,B),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF) REDUCE'II'IN(sequent(cons(if(A,B),Fs),Gs),NF) -> U'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) REDUCE'II'IN(sequent(cons(iff(A,B),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF) REDUCE'II'IN(sequent(cons(iff(A,B),Fs),Gs),NF) -> U'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) REDUCE'II'IN(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> REDUCE'II'IN(sequent(Fs,Gs),sequent(cons(p(V),Left),Right)) REDUCE'II'IN(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> U'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,cons(F2,Fs)),Gs),NF) REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> U'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> U'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> U'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) REDUCE'II'IN(sequent(nil,nil),sequent(F1,F2)) -> INTERSECT'II'IN(F1,F2) REDUCE'II'IN(sequent(nil,nil),sequent(F1,F2)) -> U'15'1(intersect'ii'in(F1,F2)) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> U'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> U'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> U'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> U'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) TAUTOLOGY'I'IN(F) -> REDUCE'II'IN(sequent(nil,cons(F,nil)),sequent(nil,nil)) TAUTOLOGY'I'IN(F) -> U'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> U'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> U'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: INTERSECT'II'IN(cons(X0,Xs),Ys) -> INTERSECT'II'IN(Xs,Ys) INTERSECT'II'IN(Xs,cons(X0,Ys)) -> INTERSECT'II'IN(Xs,Ys) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(cons(if(A,B),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF) REDUCE'II'IN(sequent(cons(iff(A,B),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF) REDUCE'II'IN(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> REDUCE'II'IN(sequent(Fs,Gs),sequent(cons(p(V),Left),Right)) REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,cons(F2,Fs)),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out The problem is decomposed in 2 subproblems. Problem 1.1: Subterm Processor: -> Pairs: INTERSECT'II'IN(cons(X0,Xs),Ys) -> INTERSECT'II'IN(Xs,Ys) INTERSECT'II'IN(Xs,cons(X0,Ys)) -> INTERSECT'II'IN(Xs,Ys) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Projection: pi(INTERSECT'II'IN) = 1 Problem 1.1: SCC Processor: -> Pairs: INTERSECT'II'IN(Xs,cons(X0,Ys)) -> INTERSECT'II'IN(Xs,Ys) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: INTERSECT'II'IN(Xs,cons(X0,Ys)) -> INTERSECT'II'IN(Xs,Ys) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.1: Subterm Processor: -> Pairs: INTERSECT'II'IN(Xs,cons(X0,Ys)) -> INTERSECT'II'IN(Xs,Ys) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Projection: pi(INTERSECT'II'IN) = 2 Problem 1.1: SCC Processor: -> Pairs: Empty -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(cons(if(A,B),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF) REDUCE'II'IN(sequent(cons(iff(A,B),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF) REDUCE'II'IN(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> REDUCE'II'IN(sequent(Fs,Gs),sequent(cons(p(V),Left),Right)) REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,cons(F2,Fs)),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [intersect'ii'in](X1,X2) = 2.X1 + 2 [reduce'ii'in](X1,X2) = 0 [u'1'1](X) = 2 [u'10'1](X) = 2.X [u'11'1](X) = 2.X [u'12'1](X1,X2,X3,X4,X5) = 2.X1 [u'12'2](X) = X [u'13'1](X) = 2.X [u'14'1](X) = 2.X [u'15'1](X) = 0 [u'2'1](X) = X [u'3'1](X) = 2.X [u'4'1](X) = 2.X [u'5'1](X) = 2.X [u'6'1](X1,X2,X3,X4,X5) = 2.X1 [u'6'2](X) = 2.X [u'7'1](X) = 2.X [u'8'1](X) = 2.X [u'9'1](X) = 2.X [cons](X1,X2) = X1 + X2 [if](X1,X2) = X1 + X2 + 1 [iff](X1,X2) = 2.X1 + 2.X2 + 2 [intersect'ii'out] = 2 [nil] = 0 [p](X) = 2.X [reduce'ii'out] = 0 [sequent](X1,X2) = 2.X1 + 2.X2 [x'2a](X1,X2) = X1 + X2 [x'2b](X1,X2) = X1 + X2 [x'2d](X) = X [REDUCE'II'IN](X1,X2) = X1 + X2 + 2 [U'12'1](X1,X2,X3,X4,X5) = 2.X2 + 2.X3 + 2.X4 + X5 + 2 [U'6'1](X1,X2,X3,X4,X5) = 2.X1 + 2.X2 + 2.X3 + 2.X4 + X5 + 2 Problem 1.2: SCC Processor: -> Pairs: REDUCE'II'IN(sequent(cons(iff(A,B),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF) REDUCE'II'IN(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> REDUCE'II'IN(sequent(Fs,Gs),sequent(cons(p(V),Left),Right)) REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,cons(F2,Fs)),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(cons(iff(A,B),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF) REDUCE'II'IN(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> REDUCE'II'IN(sequent(Fs,Gs),sequent(cons(p(V),Left),Right)) REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,cons(F2,Fs)),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(cons(iff(A,B),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF) REDUCE'II'IN(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> REDUCE'II'IN(sequent(Fs,Gs),sequent(cons(p(V),Left),Right)) REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,cons(F2,Fs)),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [intersect'ii'in](X1,X2) = 0 [reduce'ii'in](X1,X2) = 0 [u'1'1](X) = 2.X [u'10'1](X) = 0 [u'11'1](X) = 2.X [u'12'1](X1,X2,X3,X4,X5) = 2.X1 [u'12'2](X) = 0 [u'13'1](X) = 0 [u'14'1](X) = 2.X [u'15'1](X) = 0 [u'2'1](X) = 0 [u'3'1](X) = 2.X [u'4'1](X) = 0 [u'5'1](X) = 2.X [u'6'1](X1,X2,X3,X4,X5) = 2.X1 [u'6'2](X) = 0 [u'7'1](X) = 2.X [u'8'1](X) = 2.X [u'9'1](X) = 2.X [cons](X1,X2) = 2.X1 + X2 [if](X1,X2) = X1 + X2 [iff](X1,X2) = 2.X1 + 2.X2 + 2 [intersect'ii'out] = 0 [nil] = 2 [p](X) = 2.X + 2 [reduce'ii'out] = 0 [sequent](X1,X2) = X1 + X2 [x'2a](X1,X2) = X1 + X2 + 1 [x'2b](X1,X2) = X1 + X2 [x'2d](X) = X [REDUCE'II'IN](X1,X2) = X1 + 2 [U'12'1](X1,X2,X3,X4,X5) = X2 + 2.X3 + X4 + 2 [U'6'1](X1,X2,X3,X4,X5) = 2.X1 + 2.X2 + X3 + X4 + 2 Problem 1.2: SCC Processor: -> Pairs: REDUCE'II'IN(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> REDUCE'II'IN(sequent(Fs,Gs),sequent(cons(p(V),Left),Right)) REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,cons(F2,Fs)),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> REDUCE'II'IN(sequent(Fs,Gs),sequent(cons(p(V),Left),Right)) REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,cons(F2,Fs)),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> REDUCE'II'IN(sequent(Fs,Gs),sequent(cons(p(V),Left),Right)) REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,cons(F2,Fs)),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [intersect'ii'in](X1,X2) = 2 [reduce'ii'in](X1,X2) = 2 [u'1'1](X) = X [u'10'1](X) = 2 [u'11'1](X) = X [u'12'1](X1,X2,X3,X4,X5) = X1 [u'12'2](X) = 2 [u'13'1](X) = 2 [u'14'1](X) = 2 [u'15'1](X) = X [u'2'1](X) = X [u'3'1](X) = X [u'4'1](X) = 2 [u'5'1](X) = X [u'6'1](X1,X2,X3,X4,X5) = X1 [u'6'2](X) = X [u'7'1](X) = X [u'8'1](X) = 2 [u'9'1](X) = 2 [cons](X1,X2) = X1 + X2 [if](X1,X2) = X1 + X2 + 1 [iff](X1,X2) = 2.X1 + 2.X2 + 2 [intersect'ii'out] = 2 [nil] = 0 [p](X) = 2 [reduce'ii'out] = 2 [sequent](X1,X2) = 2.X1 + 2.X2 [x'2a](X1,X2) = X1 + X2 [x'2b](X1,X2) = X1 + X2 + 1 [x'2d](X) = X [REDUCE'II'IN](X1,X2) = X1 + 2 [U'12'1](X1,X2,X3,X4,X5) = 2.X2 + 2.X3 + 2.X4 + 2 [U'6'1](X1,X2,X3,X4,X5) = 2.X1 + 2.X2 + 2.X3 + 2.X4 Problem 1.2: SCC Processor: -> Pairs: REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,cons(F2,Fs)),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,cons(F2,Fs)),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,cons(F2,Fs)),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [intersect'ii'in](X1,X2) = 0 [reduce'ii'in](X1,X2) = 2.X1 + 1 [u'1'1](X) = 0 [u'10'1](X) = X + 2 [u'11'1](X) = 2 [u'12'1](X1,X2,X3,X4,X5) = 2.X3 + 2.X4 + 2 [u'12'2](X) = 2 [u'13'1](X) = X [u'14'1](X) = X + 2 [u'15'1](X) = 2.X + 2 [u'2'1](X) = 2.X [u'3'1](X) = 2 [u'4'1](X) = 2 [u'5'1](X) = 2 [u'6'1](X1,X2,X3,X4,X5) = X1 [u'6'2](X) = 2 [u'7'1](X) = 2 [u'8'1](X) = 2 [u'9'1](X) = 2 [cons](X1,X2) = 2.X1 + X2 [if](X1,X2) = X1 + X2 [iff](X1,X2) = 2.X1 + 2.X2 + 2 [intersect'ii'out] = 0 [nil] = 0 [p](X) = X + 1 [reduce'ii'out] = 2 [sequent](X1,X2) = X1 + X2 + 1 [x'2a](X1,X2) = X1 + X2 + 2 [x'2b](X1,X2) = X1 + X2 [x'2d](X) = X [REDUCE'II'IN](X1,X2) = X1 + 1 [U'12'1](X1,X2,X3,X4,X5) = X2 + 2.X3 + X4 + 2 [U'6'1](X1,X2,X3,X4,X5) = 2.X2 + X3 + X4 + 2 Problem 1.2: SCC Processor: -> Pairs: REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> REDUCE'II'IN(sequent(cons(F1,Fs),Gs),NF) REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [intersect'ii'in](X1,X2) = 0 [reduce'ii'in](X1,X2) = 2.X1 + 2 [u'1'1](X) = 0 [u'10'1](X) = X + 2 [u'11'1](X) = 2 [u'12'1](X1,X2,X3,X4,X5) = X1 + X3 [u'12'2](X) = 2 [u'13'1](X) = X [u'14'1](X) = X + 1 [u'15'1](X) = 2 [u'2'1](X) = 2.X [u'3'1](X) = 2 [u'4'1](X) = 2 [u'5'1](X) = 2 [u'6'1](X1,X2,X3,X4,X5) = X1 + 2.X2 + 1 [u'6'2](X) = 2 [u'7'1](X) = X [u'8'1](X) = 2 [u'9'1](X) = X [cons](X1,X2) = X1 + X2 + 1 [if](X1,X2) = X1 + X2 + 1 [iff](X1,X2) = 2.X1 + 2.X2 + 2 [intersect'ii'out] = 0 [nil] = 2 [p](X) = X + 2 [reduce'ii'out] = 2 [sequent](X1,X2) = 2.X1 + 2.X2 [x'2a](X1,X2) = X1 + X2 [x'2b](X1,X2) = X1 + X2 + 1 [x'2d](X) = X [REDUCE'II'IN](X1,X2) = X1 + X2 [U'12'1](X1,X2,X3,X4,X5) = 2.X2 + 2.X3 + 2.X4 + X5 + 2 [U'6'1](X1,X2,X3,X4,X5) = 2.X2 + 2.X3 + 2.X4 + X5 + 2 Problem 1.2: SCC Processor: -> Pairs: REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> U'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [intersect'ii'in](X1,X2) = 0 [reduce'ii'in](X1,X2) = 2.X1 + 2.X2 + 2 [u'1'1](X) = 0 [u'10'1](X) = 2 [u'11'1](X) = X + 1 [u'12'1](X1,X2,X3,X4,X5) = X1 + X3 [u'12'2](X) = 2 [u'13'1](X) = X [u'14'1](X) = X [u'15'1](X) = 2.X + 2 [u'2'1](X) = 2.X [u'3'1](X) = X [u'4'1](X) = 2 [u'5'1](X) = 2 [u'6'1](X1,X2,X3,X4,X5) = X3 + 2.X4 + 2.X5 + 2 [u'6'2](X) = 2 [u'7'1](X) = 2 [u'8'1](X) = X [u'9'1](X) = 2 [cons](X1,X2) = X1 + X2 [if](X1,X2) = X1 + X2 + 1 [iff](X1,X2) = 2.X1 + 2.X2 + 2 [intersect'ii'out] = 0 [nil] = 2 [p](X) = 0 [reduce'ii'out] = 2 [sequent](X1,X2) = 2.X1 + 2.X2 + 2 [x'2a](X1,X2) = X1 + X2 [x'2b](X1,X2) = X1 + X2 + 1 [x'2d](X) = X [REDUCE'II'IN](X1,X2) = X1 + 2.X2 [U'12'1](X1,X2,X3,X4,X5) = 2.X2 + 2.X3 + 2.X4 + 2.X5 + 2 [U'6'1](X1,X2,X3,X4,X5) = 2.X2 + 2.X3 + 2.X4 + 2.X5 + 2 Problem 1.2: SCC Processor: -> Pairs: REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) U'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> REDUCE'II'IN(sequent(cons(F2,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(cons(x'2d(F1),Fs),Gs),NF) -> REDUCE'II'IN(sequent(Fs,cons(F1,Gs)),NF) REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [intersect'ii'in](X1,X2) = 2 [reduce'ii'in](X1,X2) = 2.X1 + 2 [u'1'1](X) = X [u'10'1](X) = 1 [u'11'1](X) = X [u'12'1](X1,X2,X3,X4,X5) = 2.X2 + 2.X3 + 2.X4 + 2 [u'12'2](X) = 2 [u'13'1](X) = 2 [u'14'1](X) = 2 [u'15'1](X) = 1 [u'2'1](X) = 2 [u'3'1](X) = 2 [u'4'1](X) = 2 [u'5'1](X) = X [u'6'1](X1,X2,X3,X4,X5) = X2 + 2.X4 + 2 [u'6'2](X) = 2 [u'7'1](X) = X + 2 [u'8'1](X) = 1 [u'9'1](X) = 2 [cons](X1,X2) = 2.X1 + X2 [if](X1,X2) = X1 + X2 + 1 [iff](X1,X2) = 2.X1 + 2.X2 + 2 [intersect'ii'out] = 2 [nil] = 2 [p](X) = 2 [reduce'ii'out] = 1 [sequent](X1,X2) = X1 + X2 + 2 [x'2a](X1,X2) = X1 + X2 [x'2b](X1,X2) = X1 + X2 [x'2d](X) = X + 1 [REDUCE'II'IN](X1,X2) = X1 + X2 [U'12'1](X1,X2,X3,X4,X5) = X2 + 2.X3 + X4 + X5 + 2 Problem 1.2: SCC Processor: -> Pairs: REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> REDUCE'II'IN(sequent(nil,Gs),sequent(Left,cons(p(V),Right))) REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [intersect'ii'in](X1,X2) = 2.X2 + 2 [reduce'ii'in](X1,X2) = 0 [u'1'1](X) = 2 [u'10'1](X) = 0 [u'11'1](X) = 0 [u'12'1](X1,X2,X3,X4,X5) = 2.X1 [u'12'2](X) = 2.X [u'13'1](X) = 2.X [u'14'1](X) = 0 [u'15'1](X) = 0 [u'2'1](X) = 2 [u'3'1](X) = 2.X [u'4'1](X) = 2.X [u'5'1](X) = 2.X [u'6'1](X1,X2,X3,X4,X5) = 2.X1 [u'6'2](X) = 2.X [u'7'1](X) = 0 [u'8'1](X) = 0 [u'9'1](X) = 2.X [cons](X1,X2) = X1 + X2 [if](X1,X2) = 2.X1 [iff](X1,X2) = 2.X1 + 2.X2 + 2 [intersect'ii'out] = 2 [nil] = 0 [p](X) = X + 2 [reduce'ii'out] = 0 [sequent](X1,X2) = 2.X2 [x'2a](X1,X2) = X1 + X2 [x'2b](X1,X2) = 2.X1 + X2 [x'2d](X) = 0 [REDUCE'II'IN](X1,X2) = X1 + 2 [U'12'1](X1,X2,X3,X4,X5) = 2.X3 + 2.X4 + 2 Problem 1.2: SCC Processor: -> Pairs: REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(Fs,cons(if(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [intersect'ii'in](X1,X2) = 2 [reduce'ii'in](X1,X2) = 2 [u'1'1](X) = X [u'10'1](X) = 2 [u'11'1](X) = 2 [u'12'1](X1,X2,X3,X4,X5) = X1 [u'12'2](X) = 1 [u'13'1](X) = X [u'14'1](X) = 2 [u'15'1](X) = X [u'2'1](X) = X [u'3'1](X) = 2 [u'4'1](X) = 2 [u'5'1](X) = X [u'6'1](X1,X2,X3,X4,X5) = X1 [u'6'2](X) = 1 [u'7'1](X) = 1 [u'8'1](X) = 2 [u'9'1](X) = 1 [cons](X1,X2) = X1 + X2 [if](X1,X2) = X1 + X2 + 1 [iff](X1,X2) = 2.X1 + 2.X2 + 2 [intersect'ii'out] = 2 [nil] = 2 [p](X) = 0 [reduce'ii'out] = 1 [sequent](X1,X2) = 2.X2 [x'2a](X1,X2) = X1 + X2 [x'2b](X1,X2) = 2.X1 + X2 [x'2d](X) = 0 [REDUCE'II'IN](X1,X2) = X1 + 2.X2 + 2 [U'12'1](X1,X2,X3,X4,X5) = 2.X3 + 2.X4 + 2.X5 + 2 Problem 1.2: SCC Processor: -> Pairs: REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(Fs,cons(iff(A,B),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [intersect'ii'in](X1,X2) = 0 [reduce'ii'in](X1,X2) = 0 [u'1'1](X) = 2.X [u'10'1](X) = X [u'11'1](X) = 2.X [u'12'1](X1,X2,X3,X4,X5) = X1 [u'12'2](X) = 2.X [u'13'1](X) = 2.X [u'14'1](X) = 2.X [u'15'1](X) = 0 [u'2'1](X) = 2.X [u'3'1](X) = 2.X [u'4'1](X) = 2.X [u'5'1](X) = X [u'6'1](X1,X2,X3,X4,X5) = 0 [u'6'2](X) = X [u'7'1](X) = 2.X [u'8'1](X) = 2.X [u'9'1](X) = 2.X [cons](X1,X2) = X1 + X2 [if](X1,X2) = 0 [iff](X1,X2) = 2.X1 + 2.X2 + 2 [intersect'ii'out] = 0 [nil] = 2 [p](X) = 2 [reduce'ii'out] = 0 [sequent](X1,X2) = 2.X1 + 2.X2 [x'2a](X1,X2) = 2.X1 + 2.X2 + 1 [x'2b](X1,X2) = 2.X1 + X2 + 1 [x'2d](X) = 2.X + 2 [REDUCE'II'IN](X1,X2) = X1 + 2.X2 + 2 [U'12'1](X1,X2,X3,X4,X5) = 2.X2 + 2.X3 + 2.X4 + 2.X5 + 2 Problem 1.2: SCC Processor: -> Pairs: REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,Gs)),NF) REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [intersect'ii'in](X1,X2) = 0 [reduce'ii'in](X1,X2) = 0 [u'1'1](X) = 2.X [u'10'1](X) = 2.X [u'11'1](X) = 2.X [u'12'1](X1,X2,X3,X4,X5) = 2.X1 [u'12'2](X) = 0 [u'13'1](X) = X [u'14'1](X) = 2.X [u'15'1](X) = 0 [u'2'1](X) = 0 [u'3'1](X) = 2.X [u'4'1](X) = 0 [u'5'1](X) = 2.X [u'6'1](X1,X2,X3,X4,X5) = 2.X1 [u'6'2](X) = 2.X [u'7'1](X) = 2.X [u'8'1](X) = 2.X [u'9'1](X) = 2.X [cons](X1,X2) = X1 + X2 [if](X1,X2) = X1 + 2.X2 + 2 [iff](X1,X2) = X1 + 2.X2 + 2 [intersect'ii'out] = 0 [nil] = 1 [p](X) = 2.X [reduce'ii'out] = 0 [sequent](X1,X2) = X1 + X2 [x'2a](X1,X2) = 2.X1 + 2.X2 + 2 [x'2b](X1,X2) = X1 + 2.X2 + 2 [x'2d](X) = 2.X + 2 [REDUCE'II'IN](X1,X2) = 2.X1 + 2.X2 + 2 [U'12'1](X1,X2,X3,X4,X5) = 2.X1 + 2.X2 + 2.X3 + 2.X4 + 2.X5 + 2 Problem 1.2: SCC Processor: -> Pairs: REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> U'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [intersect'ii'in](X1,X2) = X2 + 1 [reduce'ii'in](X1,X2) = 2.X2 + 2 [u'1'1](X) = X [u'10'1](X) = 2 [u'11'1](X) = 2 [u'12'1](X1,X2,X3,X4,X5) = 2.X5 + 2 [u'12'2](X) = 2 [u'13'1](X) = X [u'14'1](X) = X [u'15'1](X) = X + 1 [u'2'1](X) = 1 [u'3'1](X) = X [u'4'1](X) = 2 [u'5'1](X) = 2 [u'6'1](X1,X2,X3,X4,X5) = 2.X5 + 2 [u'6'2](X) = 2 [u'7'1](X) = X [u'8'1](X) = 2 [u'9'1](X) = 2 [cons](X1,X2) = 2.X1 + X2 [if](X1,X2) = 2 [iff](X1,X2) = 2.X1 + 2.X2 + 2 [intersect'ii'out] = 1 [nil] = 0 [p](X) = 0 [reduce'ii'out] = 2 [sequent](X1,X2) = X2 [x'2a](X1,X2) = 2.X2 + 2 [x'2b](X1,X2) = 2.X1 + 2.X2 [x'2d](X) = 2 [REDUCE'II'IN](X1,X2) = X1 + 2.X2 + 2 [U'12'1](X1,X2,X3,X4,X5) = 2.X3 + X4 + 2.X5 + 2 Problem 1.2: SCC Processor: -> Pairs: REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) U'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> REDUCE'II'IN(sequent(Fs,cons(G2,Gs)),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> REDUCE'II'IN(sequent(Fs,cons(G1,cons(G2,Gs))),NF) REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: Empty ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [cons](X1,X2) = X1 + X2 [sequent](X1,X2) = X2 [x'2b](X1,X2) = X1 + 2.X2 + 2 [x'2d](X) = 1 [REDUCE'II'IN](X1,X2) = X1 Problem 1.2: SCC Processor: -> Pairs: REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) ->->-> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out Problem 1.2: Reduction Pair Processor: -> Pairs: REDUCE'II'IN(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> REDUCE'II'IN(sequent(cons(G1,Fs),Gs),NF) -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out -> Usable rules: Empty ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [cons](X1,X2) = 2.X2 + 2 [sequent](X1,X2) = 2.X2 [x'2d](X) = 2 [REDUCE'II'IN](X1,X2) = 2.X1 Problem 1.2: SCC Processor: -> Pairs: Empty -> Rules: intersect'ii'in(cons(X,X0),cons(X,X1)) -> intersect'ii'out intersect'ii'in(cons(X0,Xs),Ys) -> u'2'1(intersect'ii'in(Xs,Ys)) intersect'ii'in(Xs,cons(X0,Ys)) -> u'1'1(intersect'ii'in(Xs,Ys)) reduce'ii'in(sequent(cons(if(A,B),Fs),Gs),NF) -> u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B),A),Fs),Gs),NF)) reduce'ii'in(sequent(cons(iff(A,B),Fs),Gs),NF) -> u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A,B),if(B,A)),Fs),Gs),NF)) reduce'ii'in(sequent(cons(p(V),Fs),Gs),sequent(Left,Right)) -> u'10'1(reduce'ii'in(sequent(Fs,Gs),sequent(cons(p(V),Left),Right))) reduce'ii'in(sequent(cons(x'2a(F1,F2),Fs),Gs),NF) -> u'5'1(reduce'ii'in(sequent(cons(F1,cons(F2,Fs)),Gs),NF)) reduce'ii'in(sequent(cons(x'2b(F1,F2),Fs),Gs),NF) -> u'6'1(reduce'ii'in(sequent(cons(F1,Fs),Gs),NF),F2,Fs,Gs,NF) reduce'ii'in(sequent(cons(x'2d(F1),Fs),Gs),NF) -> u'7'1(reduce'ii'in(sequent(Fs,cons(F1,Gs)),NF)) reduce'ii'in(sequent(nil,cons(p(V),Gs)),sequent(Left,Right)) -> u'14'1(reduce'ii'in(sequent(nil,Gs),sequent(Left,cons(p(V),Right)))) reduce'ii'in(sequent(nil,nil),sequent(F1,F2)) -> u'15'1(intersect'ii'in(F1,F2)) reduce'ii'in(sequent(Fs,cons(if(A,B),Gs)),NF) -> u'8'1(reduce'ii'in(sequent(Fs,cons(x'2b(x'2d(B),A),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(iff(A,B),Gs)),NF) -> u'9'1(reduce'ii'in(sequent(Fs,cons(x'2a(if(A,B),if(B,A)),Gs)),NF)) reduce'ii'in(sequent(Fs,cons(x'2a(G1,G2),Gs)),NF) -> u'12'1(reduce'ii'in(sequent(Fs,cons(G1,Gs)),NF),Fs,G2,Gs,NF) reduce'ii'in(sequent(Fs,cons(x'2b(G1,G2),Gs)),NF) -> u'11'1(reduce'ii'in(sequent(Fs,cons(G1,cons(G2,Gs))),NF)) reduce'ii'in(sequent(Fs,cons(x'2d(G1),Gs)),NF) -> u'13'1(reduce'ii'in(sequent(cons(G1,Fs),Gs),NF)) tautology'i'in(F) -> u'16'1(reduce'ii'in(sequent(nil,cons(F,nil)),sequent(nil,nil))) u'1'1(intersect'ii'out) -> intersect'ii'out u'10'1(reduce'ii'out) -> reduce'ii'out u'11'1(reduce'ii'out) -> reduce'ii'out u'12'1(reduce'ii'out,Fs,G2,Gs,NF) -> u'12'2(reduce'ii'in(sequent(Fs,cons(G2,Gs)),NF)) u'12'2(reduce'ii'out) -> reduce'ii'out u'13'1(reduce'ii'out) -> reduce'ii'out u'14'1(reduce'ii'out) -> reduce'ii'out u'15'1(intersect'ii'out) -> reduce'ii'out u'16'1(reduce'ii'out) -> tautology'i'out u'2'1(intersect'ii'out) -> intersect'ii'out u'3'1(reduce'ii'out) -> reduce'ii'out u'4'1(reduce'ii'out) -> reduce'ii'out u'5'1(reduce'ii'out) -> reduce'ii'out u'6'1(reduce'ii'out,F2,Fs,Gs,NF) -> u'6'2(reduce'ii'in(sequent(cons(F2,Fs),Gs),NF)) u'6'2(reduce'ii'out) -> reduce'ii'out u'7'1(reduce'ii'out) -> reduce'ii'out u'8'1(reduce'ii'out) -> reduce'ii'out u'9'1(reduce'ii'out) -> reduce'ii'out ->Strongly Connected Components: There is no strongly connected component The problem is finite.