%------------------------------------------------------------------------------ % File : Moca---0.1 % Problem : GRP544-1 : TPTP v8.1.0. Bugfixed v2.7.0. % Transfm : none % Format : tptp:raw % Command : moca.sh %s % Computer : n019.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:56:09 EDT 2022 % Result : Unsatisfiable 0.95s 1.08s % Output : Proof 0.95s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.07/0.12 % Problem : GRP544-1 : TPTP v8.1.0. Bugfixed v2.7.0. % 0.07/0.13 % Command : moca.sh %s % 0.12/0.34 % Computer : n019.cluster.edu % 0.12/0.34 % Model : x86_64 x86_64 % 0.12/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.12/0.34 % Memory : 8042.1875MB % 0.12/0.34 % OS : Linux 3.10.0-693.el7.x86_64 % 0.12/0.34 % CPULimit : 300 % 0.12/0.34 % WCLimit : 600 % 0.12/0.34 % DateTime : Mon Jun 13 12:10:54 EDT 2022 % 0.12/0.35 % CPUTime : % 0.95/1.08 % SZS status Unsatisfiable % 0.95/1.08 % SZS output start Proof % 0.95/1.08 The input problem is unsatisfiable because % 0.95/1.08 % 0.95/1.08 [1] the following set of Horn clauses is unsatisfiable: % 0.95/1.08 % 0.95/1.08 divide(divide(identity, divide(divide(divide(A, B), C), A)), C) = B % 0.95/1.08 multiply(A, B) = divide(A, divide(identity, B)) % 0.95/1.08 inverse(A) = divide(identity, A) % 0.95/1.08 identity = divide(A, A) % 0.95/1.08 multiply(a, b) = multiply(b, a) ==> \bottom % 0.95/1.08 % 0.95/1.08 This holds because % 0.95/1.08 % 0.95/1.08 [2] the following E entails the following G (Claessen-Smallbone's transformation (2018)): % 0.95/1.08 % 0.95/1.08 E: % 0.95/1.08 divide(divide(identity, divide(divide(divide(A, B), C), A)), C) = B % 0.95/1.08 f1(multiply(a, b)) = true__ % 0.95/1.08 f1(multiply(b, a)) = false__ % 0.95/1.08 identity = divide(A, A) % 0.95/1.08 inverse(A) = divide(identity, A) % 0.95/1.08 multiply(A, B) = divide(A, divide(identity, B)) % 0.95/1.08 G: % 0.95/1.08 true__ = false__ % 0.95/1.08 % 0.95/1.08 This holds because % 0.95/1.08 % 0.95/1.08 [3] E entails the following ordered TRS and the lhs and rhs of G join by the TRS: % 0.95/1.08 % 0.95/1.08 divide(X0, inverse(Y1)) = divide(Y1, inverse(X0)) % 0.95/1.08 divide(inverse(X1), inverse(X0)) = divide(X0, X1) % 0.95/1.08 divide(A, A) -> identity % 0.95/1.08 divide(X0, divide(inverse(Y1), inverse(X0))) -> Y1 % 0.95/1.08 divide(Y0, divide(X0, inverse(Y0))) -> inverse(X0) % 0.95/1.08 divide(Y0, divide(Y0, Y1)) -> Y1 % 0.95/1.08 divide(Y1, identity) -> Y1 % 0.95/1.08 divide(divide(identity, divide(divide(divide(A, B), C), A)), C) -> B % 0.95/1.08 divide(identity, A) -> inverse(A) % 0.95/1.08 divide(inverse(X0), divide(inverse(X0), Y1)) -> Y1 % 0.95/1.08 divide(inverse(X0), inverse(divide(X0, X1))) -> inverse(X1) % 0.95/1.08 divide(inverse(X1), divide(inverse(Y1), X1)) -> Y1 % 0.95/1.08 divide(inverse(Y0), divide(X0, Y0)) -> inverse(X0) % 0.95/1.08 divide(inverse(Y0), identity) -> inverse(Y0) % 0.95/1.08 divide(inverse(Y2), divide(X0, inverse(divide(inverse(X0), Y2)))) -> identity % 0.95/1.08 divide(inverse(Y2), divide(inverse(Y0), inverse(divide(Y0, Y2)))) -> identity % 0.95/1.08 divide(inverse(divide(X1, identity)), divide(X0, X1)) -> inverse(X0) % 0.95/1.08 divide(inverse(divide(divide(divide(Y0, Y1), Y2), Y0)), Y2) -> Y1 % 0.95/1.08 divide(inverse(divide(divide(inverse(Y1), Y2), identity)), Y2) -> Y1 % 0.95/1.08 divide(inverse(divide(inverse(Y2), Y1)), Y2) -> Y1 % 0.95/1.08 divide(inverse(inverse(Y0)), divide(Y0, Y1)) -> Y1 % 0.95/1.08 divide(inverse(inverse(Y1)), identity) -> Y1 % 0.95/1.08 divide(inverse(inverse(inverse(divide(inverse(Y1), X1)))), X1) -> Y1 % 0.95/1.08 divide(inverse(inverse(inverse(inverse(X0)))), X1) -> divide(X0, X1) % 0.95/1.08 f1(divide(a, inverse(b))) -> true__ % 0.95/1.08 f1(divide(b, inverse(a))) -> false__ % 0.95/1.08 f1(multiply(a, b)) -> true__ % 0.95/1.08 f1(multiply(b, a)) -> false__ % 0.95/1.08 inverse(divide(inverse(Y0), inverse(divide(Y0, Y1)))) -> Y1 % 0.95/1.08 inverse(divide(inverse(Y1), identity)) -> Y1 % 0.95/1.08 inverse(identity) -> identity % 0.95/1.08 inverse(inverse(Y1)) -> Y1 % 0.95/1.08 multiply(A, B) -> divide(A, divide(identity, B)) % 0.95/1.08 true__ -> false__ % 0.95/1.08 with the LPO induced by % 0.95/1.08 a > b > f1 > multiply > divide > identity > inverse > true__ > false__ % 0.95/1.08 % 0.95/1.08 % SZS output end Proof % 0.95/1.08 %------------------------------------------------------------------------------