%------------------------------------------------------------------------------ % File : Moca---0.1 % Problem : GRP192-1 : TPTP v8.1.0. Bugfixed v1.2.1. % Transfm : none % Format : tptp:raw % Command : moca.sh %s % Computer : n025.cluster.edu % Model : x86_64 x86_64 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz % Memory : 8042.1875MB % OS : Linux 3.10.0-693.el7.x86_64 % CPULimit : 300s % WCLimit : 600s % DateTime : Sat Jul 16 10:54:01 EDT 2022 % Result : Unsatisfiable 1.28s 1.39s % Output : Proof 1.28s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.10/0.12 % Problem : GRP192-1 : TPTP v8.1.0. Bugfixed v1.2.1. % 0.10/0.12 % Command : moca.sh %s % 0.12/0.33 % Computer : n025.cluster.edu % 0.12/0.33 % Model : x86_64 x86_64 % 0.12/0.33 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.12/0.33 % Memory : 8042.1875MB % 0.12/0.33 % OS : Linux 3.10.0-693.el7.x86_64 % 0.12/0.33 % CPULimit : 300 % 0.12/0.33 % WCLimit : 600 % 0.12/0.33 % DateTime : Tue Jun 14 06:43:09 EDT 2022 % 0.12/0.33 % CPUTime : % 1.28/1.39 % SZS status Unsatisfiable % 1.28/1.39 % SZS output start Proof % 1.28/1.39 The input problem is unsatisfiable because % 1.28/1.39 % 1.28/1.39 [1] the following set of Horn clauses is unsatisfiable: % 1.28/1.39 % 1.28/1.39 multiply(identity, X) = X % 1.28/1.39 multiply(inverse(X), X) = identity % 1.28/1.39 multiply(multiply(X, Y), Z) = multiply(X, multiply(Y, Z)) % 1.28/1.39 greatest_lower_bound(X, Y) = greatest_lower_bound(Y, X) % 1.28/1.39 least_upper_bound(X, Y) = least_upper_bound(Y, X) % 1.28/1.39 greatest_lower_bound(X, greatest_lower_bound(Y, Z)) = greatest_lower_bound(greatest_lower_bound(X, Y), Z) % 1.28/1.39 least_upper_bound(X, least_upper_bound(Y, Z)) = least_upper_bound(least_upper_bound(X, Y), Z) % 1.28/1.39 least_upper_bound(X, X) = X % 1.28/1.39 greatest_lower_bound(X, X) = X % 1.28/1.39 least_upper_bound(X, greatest_lower_bound(X, Y)) = X % 1.28/1.39 greatest_lower_bound(X, least_upper_bound(X, Y)) = X % 1.28/1.39 multiply(X, least_upper_bound(Y, Z)) = least_upper_bound(multiply(X, Y), multiply(X, Z)) % 1.28/1.39 multiply(X, greatest_lower_bound(Y, Z)) = greatest_lower_bound(multiply(X, Y), multiply(X, Z)) % 1.28/1.39 multiply(least_upper_bound(Y, Z), X) = least_upper_bound(multiply(Y, X), multiply(Z, X)) % 1.28/1.39 multiply(greatest_lower_bound(Y, Z), X) = greatest_lower_bound(multiply(Y, X), multiply(Z, X)) % 1.28/1.39 least_upper_bound(identity, X) = X % 1.28/1.39 multiply(a, b) = multiply(b, a) ==> \bottom % 1.28/1.39 % 1.28/1.39 This holds because % 1.28/1.39 % 1.28/1.39 [2] the following E entails the following G (Claessen-Smallbone's transformation (2018)): % 1.28/1.39 % 1.28/1.39 E: % 1.28/1.39 f1(multiply(a, b)) = true__ % 1.28/1.39 f1(multiply(b, a)) = false__ % 1.28/1.39 greatest_lower_bound(X, X) = X % 1.28/1.39 greatest_lower_bound(X, Y) = greatest_lower_bound(Y, X) % 1.28/1.39 greatest_lower_bound(X, greatest_lower_bound(Y, Z)) = greatest_lower_bound(greatest_lower_bound(X, Y), Z) % 1.28/1.39 greatest_lower_bound(X, least_upper_bound(X, Y)) = X % 1.28/1.39 least_upper_bound(X, X) = X % 1.28/1.39 least_upper_bound(X, Y) = least_upper_bound(Y, X) % 1.28/1.39 least_upper_bound(X, greatest_lower_bound(X, Y)) = X % 1.28/1.39 least_upper_bound(X, least_upper_bound(Y, Z)) = least_upper_bound(least_upper_bound(X, Y), Z) % 1.28/1.39 least_upper_bound(identity, X) = X % 1.28/1.39 multiply(X, greatest_lower_bound(Y, Z)) = greatest_lower_bound(multiply(X, Y), multiply(X, Z)) % 1.28/1.39 multiply(X, least_upper_bound(Y, Z)) = least_upper_bound(multiply(X, Y), multiply(X, Z)) % 1.28/1.39 multiply(greatest_lower_bound(Y, Z), X) = greatest_lower_bound(multiply(Y, X), multiply(Z, X)) % 1.28/1.39 multiply(identity, X) = X % 1.28/1.39 multiply(inverse(X), X) = identity % 1.28/1.39 multiply(least_upper_bound(Y, Z), X) = least_upper_bound(multiply(Y, X), multiply(Z, X)) % 1.28/1.39 multiply(multiply(X, Y), Z) = multiply(X, multiply(Y, Z)) % 1.28/1.39 G: % 1.28/1.39 true__ = false__ % 1.28/1.39 % 1.28/1.39 This holds because % 1.28/1.39 % 1.28/1.39 [3] E entails the following ordered TRS and the lhs and rhs of G join by the TRS: % 1.28/1.39 % 1.28/1.39 X0 = Y0 % 1.28/1.39 false__ = Y0 % 1.28/1.39 greatest_lower_bound(X, Y) = greatest_lower_bound(Y, X) % 1.28/1.39 identity = Y0 % 1.28/1.39 least_upper_bound(X, Y) = least_upper_bound(Y, X) % 1.28/1.39 f1(multiply(a, b)) -> true__ % 1.28/1.39 f1(multiply(b, a)) -> false__ % 1.28/1.39 greatest_lower_bound(X, X) -> X % 1.28/1.39 greatest_lower_bound(X, least_upper_bound(X, Y)) -> X % 1.28/1.39 greatest_lower_bound(X0, Y0) -> false__ % 1.28/1.39 greatest_lower_bound(Y0, greatest_lower_bound(Y1, Y0)) -> greatest_lower_bound(Y0, Y1) % 1.28/1.39 greatest_lower_bound(Y0, greatest_lower_bound(Y1, greatest_lower_bound(Y0, Y1))) -> greatest_lower_bound(Y0, Y1) % 1.28/1.39 greatest_lower_bound(Y0, least_upper_bound(Y1, Y0)) -> Y0 % 1.28/1.39 greatest_lower_bound(Y1, greatest_lower_bound(X1, Y1)) -> greatest_lower_bound(X1, Y1) % 1.28/1.39 greatest_lower_bound(Y1, greatest_lower_bound(Y1, Y2)) -> greatest_lower_bound(Y1, Y2) % 1.28/1.39 greatest_lower_bound(Y1, identity) -> identity % 1.28/1.39 greatest_lower_bound(Y1, multiply(Y2, Y1)) -> Y1 % 1.28/1.39 greatest_lower_bound(greatest_lower_bound(X, Y), Z) -> greatest_lower_bound(X, greatest_lower_bound(Y, Z)) % 1.28/1.39 greatest_lower_bound(identity, Y1) -> identity % 1.28/1.39 greatest_lower_bound(multiply(X, Y), multiply(X, Z)) -> multiply(X, greatest_lower_bound(Y, Z)) % 1.28/1.39 greatest_lower_bound(multiply(Y, X), multiply(Z, X)) -> multiply(greatest_lower_bound(Y, Z), X) % 1.28/1.39 least_upper_bound(X, X) -> X % 1.28/1.39 least_upper_bound(X, greatest_lower_bound(X, Y)) -> X % 1.28/1.39 least_upper_bound(X0, Y0) -> Y0 % 1.28/1.39 least_upper_bound(Y0, X0) -> Y0 % 1.28/1.39 least_upper_bound(Y0, greatest_lower_bound(Y1, Y0)) -> Y0 % 1.28/1.39 least_upper_bound(Y0, least_upper_bound(Y1, Y0)) -> least_upper_bound(Y0, Y1) % 1.28/1.39 least_upper_bound(Y0, least_upper_bound(Y1, least_upper_bound(Y0, Y1))) -> least_upper_bound(Y0, Y1) % 1.28/1.39 least_upper_bound(Y1, identity) -> Y1 % 1.28/1.39 least_upper_bound(Y1, least_upper_bound(X1, Y1)) -> least_upper_bound(X1, Y1) % 1.28/1.39 least_upper_bound(Y1, least_upper_bound(Y1, Y2)) -> least_upper_bound(Y1, Y2) % 1.28/1.39 least_upper_bound(Y1, multiply(Y2, Y1)) -> multiply(Y2, Y1) % 1.28/1.39 least_upper_bound(identity, X) -> X % 1.28/1.39 least_upper_bound(least_upper_bound(X, Y), Z) -> least_upper_bound(X, least_upper_bound(Y, Z)) % 1.28/1.39 least_upper_bound(multiply(X, Y), multiply(X, Z)) -> multiply(X, least_upper_bound(Y, Z)) % 1.28/1.39 least_upper_bound(multiply(Y, X), multiply(Z, X)) -> multiply(least_upper_bound(Y, Z), X) % 1.28/1.39 multiply(X0, Y0) -> Y0 % 1.28/1.39 multiply(identity, X) -> X % 1.28/1.39 multiply(inverse(X), X) -> identity % 1.28/1.39 multiply(inverse(Y1), multiply(Y1, Y2)) -> Y2 % 1.28/1.39 multiply(inverse(identity), Y1) -> Y1 % 1.28/1.39 multiply(inverse(inverse(Y1)), identity) -> Y1 % 1.28/1.39 multiply(inverse(inverse(identity)), Y1) -> Y1 % 1.28/1.39 multiply(inverse(inverse(inverse(X0))), X0) -> identity % 1.28/1.39 multiply(multiply(X, Y), Z) -> multiply(X, multiply(Y, Z)) % 1.28/1.39 true__ -> false__ % 1.28/1.39 with the LPO induced by % 1.28/1.39 f1 > a > b > inverse > identity > greatest_lower_bound > least_upper_bound > multiply > true__ > false__ % 1.28/1.39 % 1.28/1.39 % SZS output end Proof % 1.28/1.39 %------------------------------------------------------------------------------