TSTP Solution File: BOO012-4 by Moca---0.1

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Moca---0.1
% Problem  : BOO012-4 : TPTP v8.1.0. Released v1.1.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : moca.sh %s

% Computer : n023.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 : Thu Jul 14 23:46:24 EDT 2022

% Result   : Unsatisfiable 3.68s 3.86s
% Output   : Proof 3.68s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12  % Problem  : BOO012-4 : TPTP v8.1.0. Released v1.1.0.
% 0.07/0.13  % Command  : moca.sh %s
% 0.13/0.34  % Computer : n023.cluster.edu
% 0.13/0.34  % Model    : x86_64 x86_64
% 0.13/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.13/0.34  % Memory   : 8042.1875MB
% 0.13/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.13/0.34  % CPULimit : 300
% 0.13/0.34  % WCLimit  : 600
% 0.13/0.34  % DateTime : Wed Jun  1 17:52:41 EDT 2022
% 0.13/0.34  % CPUTime  : 
% 3.68/3.86  % SZS status Unsatisfiable
% 3.68/3.86  % SZS output start Proof
% 3.68/3.86  The input problem is unsatisfiable because
% 3.68/3.86  
% 3.68/3.86  [1] the following set of Horn clauses is unsatisfiable:
% 3.68/3.86  
% 3.68/3.86  	add(X, Y) = add(Y, X)
% 3.68/3.86  	multiply(X, Y) = multiply(Y, X)
% 3.68/3.86  	add(X, multiply(Y, Z)) = multiply(add(X, Y), add(X, Z))
% 3.68/3.86  	multiply(X, add(Y, Z)) = add(multiply(X, Y), multiply(X, Z))
% 3.68/3.86  	add(X, additive_identity) = X
% 3.68/3.86  	multiply(X, multiplicative_identity) = X
% 3.68/3.86  	add(X, inverse(X)) = multiplicative_identity
% 3.68/3.86  	multiply(X, inverse(X)) = additive_identity
% 3.68/3.86  	inverse(inverse(x)) = x ==> \bottom
% 3.68/3.86  
% 3.68/3.86  This holds because
% 3.68/3.86  
% 3.68/3.86  [2] the following E entails the following G (Claessen-Smallbone's transformation (2018)):
% 3.68/3.86  
% 3.68/3.86  E:
% 3.68/3.86  	add(X, Y) = add(Y, X)
% 3.68/3.86  	add(X, additive_identity) = X
% 3.68/3.86  	add(X, inverse(X)) = multiplicative_identity
% 3.68/3.86  	add(X, multiply(Y, Z)) = multiply(add(X, Y), add(X, Z))
% 3.68/3.86  	f1(inverse(inverse(x))) = true__
% 3.68/3.86  	f1(x) = false__
% 3.68/3.86  	multiply(X, Y) = multiply(Y, X)
% 3.68/3.86  	multiply(X, add(Y, Z)) = add(multiply(X, Y), multiply(X, Z))
% 3.68/3.86  	multiply(X, inverse(X)) = additive_identity
% 3.68/3.86  	multiply(X, multiplicative_identity) = X
% 3.68/3.86  G:
% 3.68/3.86  	true__ = false__
% 3.68/3.86  
% 3.68/3.86  This holds because
% 3.68/3.86  
% 3.68/3.86  [3] E entails the following ordered TRS and the lhs and rhs of G join by the TRS:
% 3.68/3.86  
% 3.68/3.86  	add(X, Y) = add(Y, X)
% 3.68/3.86  	multiply(X, Y) = multiply(Y, X)
% 3.68/3.86  	add(X, additive_identity) -> X
% 3.68/3.86  	add(X, inverse(X)) -> inverse(additive_identity)
% 3.68/3.86  	add(X, multiply(Y, Z)) -> multiply(add(X, Y), add(X, Z))
% 3.68/3.86  	add(Y0, add(Y0, Y1)) -> add(Y0, Y1)
% 3.68/3.86  	add(Y0, add(Y1, Y0)) -> add(Y0, Y1)
% 3.68/3.86  	add(Y0, inverse(additive_identity)) -> inverse(additive_identity)
% 3.68/3.86  	add(Y0, multiply(Y0, Y1)) -> Y0
% 3.68/3.86  	add(Y0, multiply(inverse(Y1), Y0)) -> Y0
% 3.68/3.86  	add(Y1, Y1) -> Y1
% 3.68/3.86  	add(Y2, multiply(Y1, Y2)) -> Y2
% 3.68/3.86  	add(additive_identity, Y0) -> Y0
% 3.68/3.86  	add(inverse(additive_identity), Y0) -> inverse(additive_identity)
% 3.68/3.86  	add(multiply(X, Y), multiply(X, Z)) -> multiply(X, add(Y, Z))
% 3.68/3.86  	add(multiply(Y0, Y0), multiply(Y0, Y2)) -> Y0
% 3.68/3.86  	add(multiply(Y0, Y1), multiply(Y0, Y0)) -> Y0
% 3.68/3.86  	add(multiply(Y0, Y1), multiply(Y0, Y2)) -> multiply(add(Y1, Y2), Y0)
% 3.68/3.86  	add(multiply(Y0, Y1), multiply(Y0, inverse(Y1))) -> Y0
% 3.68/3.86  	add(multiply(Y0, Y1), multiply(inverse(Y1), Y0)) -> Y0
% 3.68/3.86  	add(multiply(Y1, Y0), multiply(Y0, inverse(Y1))) -> Y0
% 3.68/3.86  	f1(inverse(inverse(x))) -> true__
% 3.68/3.86  	f1(x) -> false__
% 3.68/3.86  	inverse(inverse(Y1)) -> Y1
% 3.68/3.86  	multiplicative_identity -> inverse(additive_identity)
% 3.68/3.86  	multiply(X, inverse(X)) -> additive_identity
% 3.68/3.86  	multiply(X0, multiply(X0, X1)) -> multiply(X0, X1)
% 3.68/3.86  	multiply(Y0, Y0) -> Y0
% 3.68/3.86  	multiply(Y0, add(Y0, Y2)) -> Y0
% 3.68/3.86  	multiply(Y0, add(Y1, Y0)) -> Y0
% 3.68/3.86  	multiply(Y0, add(Y1, inverse(Y0))) -> multiply(Y0, Y1)
% 3.68/3.86  	multiply(Y0, add(inverse(Y0), Y2)) -> multiply(Y0, Y2)
% 3.68/3.86  	multiply(Y0, inverse(additive_identity)) -> Y0
% 3.68/3.86  	multiply(Y1, additive_identity) -> additive_identity
% 3.68/3.86  	multiply(Y1, multiply(X1, Y1)) -> multiply(X1, Y1)
% 3.68/3.86  	multiply(add(Y0, Y1), add(Y0, inverse(Y1))) -> Y0
% 3.68/3.86  	multiply(add(Y0, Y1), add(inverse(Y1), Y0)) -> Y0
% 3.68/3.86  	multiply(add(Y1, Y0), add(Y0, inverse(Y1))) -> Y0
% 3.68/3.86  	multiply(additive_identity, Y0) -> additive_identity
% 3.68/3.86  	multiply(inverse(X0), add(X0, Y1)) -> multiply(inverse(X0), Y1)
% 3.68/3.86  	multiply(inverse(additive_identity), Y0) -> Y0
% 3.68/3.86  	true__ -> false__
% 3.68/3.86  with the LPO induced by
% 3.68/3.86  	x > f1 > add > multiply > multiplicative_identity > inverse > additive_identity > true__ > false__
% 3.68/3.86  
% 3.68/3.86  % SZS output end Proof
% 3.68/3.86  
%------------------------------------------------------------------------------