/export/starexec/sandbox2/solver/bin/starexec_run_standard /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox2/benchmark/theBenchmark.xml # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Termination w.r.t. Q of the given QTRS could be proven: (0) QTRS (1) QTRSRRRProof [EQUIVALENT, 149 ms] (2) QTRS (3) QTRSRRRProof [EQUIVALENT, 5 ms] (4) QTRS (5) RisEmptyProof [EQUIVALENT, 0 ms] (6) YES ---------------------------------------- (0) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: __(__(X, Y), Z) -> __(X, __(Y, Z)) __(X, nil) -> X __(nil, X) -> X U11(tt) -> tt U21(tt, V2) -> U22(isList(activate(V2))) U22(tt) -> tt U31(tt) -> tt U41(tt, V2) -> U42(isNeList(activate(V2))) U42(tt) -> tt U51(tt, V2) -> U52(isList(activate(V2))) U52(tt) -> tt U61(tt) -> tt U71(tt, P) -> U72(isPal(activate(P))) U72(tt) -> tt U81(tt) -> tt isList(V) -> U11(isNeList(activate(V))) isList(n__nil) -> tt isList(n____(V1, V2)) -> U21(isList(activate(V1)), activate(V2)) isNeList(V) -> U31(isQid(activate(V))) isNeList(n____(V1, V2)) -> U41(isList(activate(V1)), activate(V2)) isNeList(n____(V1, V2)) -> U51(isNeList(activate(V1)), activate(V2)) isNePal(V) -> U61(isQid(activate(V))) isNePal(n____(I, __(P, I))) -> U71(isQid(activate(I)), activate(P)) isPal(V) -> U81(isNePal(activate(V))) isPal(n__nil) -> tt isQid(n__a) -> tt isQid(n__e) -> tt isQid(n__i) -> tt isQid(n__o) -> tt isQid(n__u) -> tt nil -> n__nil __(X1, X2) -> n____(X1, X2) a -> n__a e -> n__e i -> n__i o -> n__o u -> n__u activate(n__nil) -> nil activate(n____(X1, X2)) -> __(X1, X2) activate(n__a) -> a activate(n__e) -> e activate(n__i) -> i activate(n__o) -> o activate(n__u) -> u activate(X) -> X Q is empty. ---------------------------------------- (1) QTRSRRRProof (EQUIVALENT) Used ordering: Polynomial interpretation [POLO]: POL(U11(x_1)) = x_1 POL(U21(x_1, x_2)) = 2*x_1 + x_2 POL(U22(x_1)) = x_1 POL(U31(x_1)) = x_1 POL(U41(x_1, x_2)) = 1 + x_1 + x_2 POL(U42(x_1)) = x_1 POL(U51(x_1, x_2)) = 1 + x_1 + x_2 POL(U52(x_1)) = 1 + x_1 POL(U61(x_1)) = x_1 POL(U71(x_1, x_2)) = 2 + x_1 + 2*x_2 POL(U72(x_1)) = x_1 POL(U81(x_1)) = 2*x_1 POL(__(x_1, x_2)) = 2 + 2*x_1 + x_2 POL(a) = 0 POL(activate(x_1)) = x_1 POL(e) = 0 POL(i) = 0 POL(isList(x_1)) = x_1 POL(isNeList(x_1)) = x_1 POL(isNePal(x_1)) = x_1 POL(isPal(x_1)) = 1 + 2*x_1 POL(isQid(x_1)) = x_1 POL(n____(x_1, x_2)) = 2 + 2*x_1 + x_2 POL(n__a) = 0 POL(n__e) = 0 POL(n__i) = 0 POL(n__nil) = 0 POL(n__o) = 0 POL(n__u) = 0 POL(nil) = 0 POL(o) = 0 POL(tt) = 0 POL(u) = 0 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: __(__(X, Y), Z) -> __(X, __(Y, Z)) __(X, nil) -> X __(nil, X) -> X U41(tt, V2) -> U42(isNeList(activate(V2))) U52(tt) -> tt U71(tt, P) -> U72(isPal(activate(P))) isList(n____(V1, V2)) -> U21(isList(activate(V1)), activate(V2)) isNeList(n____(V1, V2)) -> U41(isList(activate(V1)), activate(V2)) isNeList(n____(V1, V2)) -> U51(isNeList(activate(V1)), activate(V2)) isNePal(n____(I, __(P, I))) -> U71(isQid(activate(I)), activate(P)) isPal(V) -> U81(isNePal(activate(V))) isPal(n__nil) -> tt ---------------------------------------- (2) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: U11(tt) -> tt U21(tt, V2) -> U22(isList(activate(V2))) U22(tt) -> tt U31(tt) -> tt U42(tt) -> tt U51(tt, V2) -> U52(isList(activate(V2))) U61(tt) -> tt U72(tt) -> tt U81(tt) -> tt isList(V) -> U11(isNeList(activate(V))) isList(n__nil) -> tt isNeList(V) -> U31(isQid(activate(V))) isNePal(V) -> U61(isQid(activate(V))) isQid(n__a) -> tt isQid(n__e) -> tt isQid(n__i) -> tt isQid(n__o) -> tt isQid(n__u) -> tt nil -> n__nil __(X1, X2) -> n____(X1, X2) a -> n__a e -> n__e i -> n__i o -> n__o u -> n__u activate(n__nil) -> nil activate(n____(X1, X2)) -> __(X1, X2) activate(n__a) -> a activate(n__e) -> e activate(n__i) -> i activate(n__o) -> o activate(n__u) -> u activate(X) -> X Q is empty. ---------------------------------------- (3) QTRSRRRProof (EQUIVALENT) Used ordering: Knuth-Bendix order [KBO] with precedence:activate_1 > u > o > isNeList_1 > i > e > a > n_____2 > ___2 > nil > n__u > n__o > n__i > n__e > n__a > isNePal_1 > U21_2 > isQid_1 > n__nil > U81_1 > U61_1 > U42_1 > U72_1 > U52_1 > U51_2 > U31_1 > isList_1 > U22_1 > tt > U11_1 and weight map: tt=8 n__nil=1 n__a=7 n__e=7 n__i=7 n__o=7 n__u=7 nil=3 a=9 e=9 i=9 o=9 u=8 U11_1=1 U22_1=1 isList_1=7 activate_1=2 U31_1=1 U42_1=1 U52_1=1 U61_1=1 U72_1=1 U81_1=1 isNeList_1=4 isQid_1=1 isNePal_1=4 U21_2=2 U51_2=3 ___2=2 n_____2=0 The variable weight is 1With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: U11(tt) -> tt U21(tt, V2) -> U22(isList(activate(V2))) U22(tt) -> tt U31(tt) -> tt U42(tt) -> tt U51(tt, V2) -> U52(isList(activate(V2))) U61(tt) -> tt U72(tt) -> tt U81(tt) -> tt isList(V) -> U11(isNeList(activate(V))) isList(n__nil) -> tt isNeList(V) -> U31(isQid(activate(V))) isNePal(V) -> U61(isQid(activate(V))) isQid(n__a) -> tt isQid(n__e) -> tt isQid(n__i) -> tt isQid(n__o) -> tt isQid(n__u) -> tt nil -> n__nil __(X1, X2) -> n____(X1, X2) a -> n__a e -> n__e i -> n__i o -> n__o u -> n__u activate(n__nil) -> nil activate(n____(X1, X2)) -> __(X1, X2) activate(n__a) -> a activate(n__e) -> e activate(n__i) -> i activate(n__o) -> o activate(n__u) -> u activate(X) -> X ---------------------------------------- (4) Obligation: Q restricted rewrite system: R is empty. Q is empty. ---------------------------------------- (5) RisEmptyProof (EQUIVALENT) The TRS R is empty. Hence, termination is trivially proven. ---------------------------------------- (6) YES