TSTP Solution File: LAT039-2 by Moca---0.1
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : Moca---0.1
% Problem : LAT039-2 : TPTP v8.1.0. Released v2.4.0.
% Transfm : none
% Format : tptp:raw
% Command : moca.sh %s
% Computer : n007.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 : Sun Jul 17 06:04:16 EDT 2022
% Result : Unsatisfiable 4.42s 4.60s
% Output : Proof 4.42s
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12 % Problem : LAT039-2 : TPTP v8.1.0. Released v2.4.0.
% 0.07/0.13 % Command : moca.sh %s
% 0.12/0.32 % Computer : n007.cluster.edu
% 0.12/0.32 % Model : x86_64 x86_64
% 0.12/0.32 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.32 % Memory : 8042.1875MB
% 0.12/0.32 % OS : Linux 3.10.0-693.el7.x86_64
% 0.12/0.32 % CPULimit : 300
% 0.12/0.32 % WCLimit : 600
% 0.12/0.32 % DateTime : Thu Jun 30 14:26:23 EDT 2022
% 0.12/0.32 % CPUTime :
% 4.42/4.60 % SZS status Unsatisfiable
% 4.42/4.60 % SZS output start Proof
% 4.42/4.60 The input problem is unsatisfiable because
% 4.42/4.60
% 4.42/4.60 [1] the following set of Horn clauses is unsatisfiable:
% 4.42/4.60
% 4.42/4.60 meet(X, X) = X
% 4.42/4.60 join(X, X) = X
% 4.42/4.60 meet(X, join(X, Y)) = X
% 4.42/4.60 join(X, meet(X, Y)) = X
% 4.42/4.60 meet(X, Y) = meet(Y, X)
% 4.42/4.60 join(X, Y) = join(Y, X)
% 4.42/4.60 meet(meet(X, Y), Z) = meet(X, meet(Y, Z))
% 4.42/4.60 join(join(X, Y), Z) = join(X, join(Y, Z))
% 4.42/4.60 join(X, meet(Y, Z)) = meet(join(X, Y), join(X, Z))
% 4.42/4.60 meet(X, join(Y, Z)) = join(meet(X, Y), meet(X, Z))
% 4.42/4.60 join(xx, yy) = yy
% 4.42/4.60 join(xx, meet(yy, zz)) = meet(join(xx, yy), join(xx, zz)) ==> \bottom
% 4.42/4.60
% 4.42/4.60 This holds because
% 4.42/4.60
% 4.42/4.60 [2] the following E entails the following G (Claessen-Smallbone's transformation (2018)):
% 4.42/4.60
% 4.42/4.60 E:
% 4.42/4.60 f1(join(xx, meet(yy, zz))) = true__
% 4.42/4.60 f1(meet(join(xx, yy), join(xx, zz))) = false__
% 4.42/4.60 join(X, X) = X
% 4.42/4.60 join(X, Y) = join(Y, X)
% 4.42/4.60 join(X, meet(X, Y)) = X
% 4.42/4.60 join(X, meet(Y, Z)) = meet(join(X, Y), join(X, Z))
% 4.42/4.60 join(join(X, Y), Z) = join(X, join(Y, Z))
% 4.42/4.60 join(xx, yy) = yy
% 4.42/4.60 meet(X, X) = X
% 4.42/4.60 meet(X, Y) = meet(Y, X)
% 4.42/4.60 meet(X, join(X, Y)) = X
% 4.42/4.60 meet(X, join(Y, Z)) = join(meet(X, Y), meet(X, Z))
% 4.42/4.60 meet(meet(X, Y), Z) = meet(X, meet(Y, Z))
% 4.42/4.60 G:
% 4.42/4.60 true__ = false__
% 4.42/4.60
% 4.42/4.60 This holds because
% 4.42/4.60
% 4.42/4.60 [3] E entails the following ordered TRS and the lhs and rhs of G join by the TRS:
% 4.42/4.60
% 4.42/4.60 join(X, Y) = join(Y, X)
% 4.42/4.60 join(Y1, join(Y0, Y2)) = join(Y0, join(Y1, Y2))
% 4.42/4.60 join(Y2, join(Y0, Y1)) = join(Y0, join(Y1, Y2))
% 4.42/4.60 meet(X, Y) = meet(Y, X)
% 4.42/4.60 meet(Y1, meet(Y0, Y2)) = meet(Y0, meet(Y1, Y2))
% 4.42/4.60 meet(Y2, meet(Y0, Y1)) = meet(Y0, meet(Y1, Y2))
% 4.42/4.60 meet(join(Y1, Y2), Y0) = join(meet(Y0, Y1), meet(Y0, Y2))
% 4.42/4.60 f1(join(meet(xx, yy), meet(yy, zz))) -> false__
% 4.42/4.60 f1(join(xx, join(meet(xx, yy), meet(yy, zz)))) -> false__
% 4.42/4.60 f1(join(xx, meet(yy, zz))) -> true__
% 4.42/4.60 f1(meet(join(xx, yy), join(xx, zz))) -> false__
% 4.42/4.60 join(X, X) -> X
% 4.42/4.60 join(X, meet(X, Y)) -> X
% 4.42/4.60 join(X0, join(X1, join(X0, meet(X1, X2)))) -> join(X0, X1)
% 4.42/4.60 join(X0, join(X1, join(meet(X1, Y1), meet(join(X0, join(X1, Y1)), Y2)))) -> join(X0, join(X1, meet(Y1, Y2)))
% 4.42/4.60 join(X0, join(meet(X0, X1), join(meet(X0, Y1), join(meet(X1, X0), join(X1, join(meet(X1, Y1), meet(join(X0, join(X1, Y1)), Y2))))))) -> join(X0, join(X1, meet(Y1, Y2)))
% 4.42/4.60 join(Y0, join(Y1, join(Y0, Y1))) -> join(Y0, Y1)
% 4.42/4.60 join(Y0, join(Y1, meet(join(Y0, Y1), X1))) -> join(Y0, Y1)
% 4.42/4.60 join(Y0, join(meet(Y0, X1), Y2)) -> join(Y0, Y2)
% 4.42/4.60 join(Y0, join(meet(Y0, X1), meet(Y0, X2))) -> Y0
% 4.42/4.60 join(Y0, join(meet(Y0, Y1), meet(join(Y0, Y1), Y2))) -> join(Y0, meet(Y1, Y2))
% 4.42/4.60 join(Y0, meet(Y1, Y0)) -> Y0
% 4.42/4.60 join(Y0, meet(Y1, meet(Y0, X1))) -> Y0
% 4.42/4.60 join(Y1, join(Y1, Y2)) -> join(Y1, Y2)
% 4.42/4.60 join(Y1, join(Y2, meet(Y1, Y2))) -> join(Y1, Y2)
% 4.42/4.60 join(join(X, Y), Z) -> join(X, join(Y, Z))
% 4.42/4.60 join(meet(X0, X1), meet(X0, meet(X1, Y1))) -> meet(X0, X1)
% 4.42/4.60 join(meet(Y0, Y1), join(Y0, meet(join(Y1, Y0), Y2))) -> join(Y0, meet(Y1, Y2))
% 4.42/4.60 join(meet(Y0, xx), meet(Y0, yy)) -> meet(Y0, yy)
% 4.42/4.60 join(meet(xx, yy), meet(yy, Y2)) -> join(xx, meet(yy, Y2))
% 4.42/4.60 join(xx, join(yy, Y2)) -> join(yy, Y2)
% 4.42/4.60 join(xx, yy) -> yy
% 4.42/4.60 meet(X, X) -> X
% 4.42/4.60 meet(X, join(Y, Z)) -> join(meet(X, Y), meet(X, Z))
% 4.42/4.60 meet(Y0, meet(Y1, meet(Y0, Y1))) -> meet(Y0, Y1)
% 4.42/4.60 meet(Y1, meet(Y1, Y2)) -> meet(Y1, Y2)
% 4.42/4.60 meet(join(X, Y), join(X, Z)) -> join(X, meet(Y, Z))
% 4.42/4.60 meet(join(X0, meet(X1, X2)), Y2) -> meet(join(X0, X1), meet(join(X0, X2), Y2))
% 4.42/4.60 meet(join(meet(Y0, X1), meet(Y0, X2)), Y2) -> meet(Y0, meet(join(X1, X2), Y2))
% 4.42/4.60 meet(join(xx, Y1), yy) -> join(xx, meet(Y1, yy))
% 4.42/4.60 meet(meet(X, Y), Z) -> meet(X, meet(Y, Z))
% 4.42/4.60 true__ -> false__
% 4.42/4.60 with the LPO induced by
% 4.42/4.60 zz > f1 > yy > xx > meet > join > true__ > false__
% 4.42/4.60
% 4.42/4.60 % SZS output end Proof
% 4.42/4.60
%------------------------------------------------------------------------------