/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, 26 ms] (2) QTRS (3) RisEmptyProof [EQUIVALENT, 0 ms] (4) 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 and(tt, X) -> activate(X) isList(V) -> isNeList(activate(V)) isList(n__nil) -> tt isList(n____(V1, V2)) -> and(isList(activate(V1)), n__isList(activate(V2))) isNeList(V) -> isQid(activate(V)) isNeList(n____(V1, V2)) -> and(isList(activate(V1)), n__isNeList(activate(V2))) isNeList(n____(V1, V2)) -> and(isNeList(activate(V1)), n__isList(activate(V2))) isNePal(V) -> isQid(activate(V)) isNePal(n____(I, __(P, I))) -> and(isQid(activate(I)), n__isPal(activate(P))) isPal(V) -> 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) isList(X) -> n__isList(X) isNeList(X) -> n__isNeList(X) isPal(X) -> n__isPal(X) 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__isList(X)) -> isList(X) activate(n__isNeList(X)) -> isNeList(X) activate(n__isPal(X)) -> isPal(X) 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: Knuth-Bendix order [KBO] with precedence:u > activate_1 > o > i > isPal_1 > n__nil > e > n__o > n__isList_1 > a > n__u > n__i > n__e > n__a > n_____2 > nil > n__isPal_1 > n__isNeList_1 > isQid_1 > isNePal_1 > isNeList_1 > isList_1 > tt > and_2 > ___2 and weight map: nil=3 tt=7 n__nil=1 n__a=6 n__e=6 n__i=6 n__o=6 n__u=6 a=7 e=7 i=7 o=8 u=7 activate_1=2 isList_1=7 isNeList_1=4 n__isList_1=5 isQid_1=1 n__isNeList_1=2 isNePal_1=4 n__isPal_1=19 isPal_1=20 ___2=10 and_2=0 n_____2=9 The variable weight is 1With 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 and(tt, X) -> activate(X) isList(V) -> isNeList(activate(V)) isList(n__nil) -> tt isList(n____(V1, V2)) -> and(isList(activate(V1)), n__isList(activate(V2))) isNeList(V) -> isQid(activate(V)) isNeList(n____(V1, V2)) -> and(isList(activate(V1)), n__isNeList(activate(V2))) isNeList(n____(V1, V2)) -> and(isNeList(activate(V1)), n__isList(activate(V2))) isNePal(V) -> isQid(activate(V)) isNePal(n____(I, __(P, I))) -> and(isQid(activate(I)), n__isPal(activate(P))) isPal(V) -> 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) isList(X) -> n__isList(X) isNeList(X) -> n__isNeList(X) isPal(X) -> n__isPal(X) 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__isList(X)) -> isList(X) activate(n__isNeList(X)) -> isNeList(X) activate(n__isPal(X)) -> isPal(X) activate(n__a) -> a activate(n__e) -> e activate(n__i) -> i activate(n__o) -> o activate(n__u) -> u activate(X) -> X ---------------------------------------- (2) Obligation: Q restricted rewrite system: R is empty. Q is empty. ---------------------------------------- (3) RisEmptyProof (EQUIVALENT) The TRS R is empty. Hence, termination is trivially proven. ---------------------------------------- (4) YES