TSTP Solution File: LCL022-1 by Moca---0.1

View Problem - Process Solution

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

% Computer : n008.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 12:57:23 EDT 2022

% Result   : Unsatisfiable 2.25s 2.31s
% Output   : Proof 2.25s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.11/0.12  % Problem  : LCL022-1 : TPTP v8.1.0. Released v1.0.0.
% 0.11/0.12  % Command  : moca.sh %s
% 0.13/0.33  % Computer : n008.cluster.edu
% 0.13/0.33  % Model    : x86_64 x86_64
% 0.13/0.33  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.13/0.33  % Memory   : 8042.1875MB
% 0.13/0.33  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.13/0.33  % CPULimit : 300
% 0.13/0.33  % WCLimit  : 600
% 0.13/0.33  % DateTime : Mon Jul  4 15:41:53 EDT 2022
% 0.13/0.34  % CPUTime  : 
% 2.25/2.31  % SZS status Unsatisfiable
% 2.25/2.31  % SZS output start Proof
% 2.25/2.31  The input problem is unsatisfiable because
% 2.25/2.31  
% 2.25/2.31  [1] the following set of Horn clauses is unsatisfiable:
% 2.25/2.31  
% 2.25/2.31  	is_a_theorem(equivalent(X, Y)) & is_a_theorem(X) ==> is_a_theorem(Y)
% 2.25/2.31  	is_a_theorem(equivalent(equivalent(X, Y), equivalent(equivalent(Z, Y), equivalent(X, Z))))
% 2.25/2.31  	is_a_theorem(equivalent(equivalent(equivalent(a, b), equivalent(c, a)), equivalent(b, c))) ==> \bottom
% 2.25/2.31  
% 2.25/2.31  This holds because
% 2.25/2.31  
% 2.25/2.31  [2] the following E entails the following G (Claessen-Smallbone's transformation (2018)):
% 2.25/2.31  
% 2.25/2.31  E:
% 2.25/2.31  	f1(true__, Y) = is_a_theorem(Y)
% 2.25/2.31  	f2(is_a_theorem(X), X, Y) = true__
% 2.25/2.31  	f2(true__, X, Y) = f1(is_a_theorem(equivalent(X, Y)), Y)
% 2.25/2.31  	f3(is_a_theorem(equivalent(equivalent(equivalent(a, b), equivalent(c, a)), equivalent(b, c)))) = true__
% 2.25/2.31  	f3(true__) = false__
% 2.25/2.31  	is_a_theorem(equivalent(equivalent(X, Y), equivalent(equivalent(Z, Y), equivalent(X, Z)))) = true__
% 2.25/2.31  G:
% 2.25/2.31  	true__ = false__
% 2.25/2.31  
% 2.25/2.31  This holds because
% 2.25/2.31  
% 2.25/2.31  [3] E entails the following ordered TRS and the lhs and rhs of G join by the TRS:
% 2.25/2.31  
% 2.25/2.31  
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(X0, X0), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, X1), equivalent(X0, X1)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, X1), equivalent(X1, X0)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, X1), equivalent(equivalent(X0, X2), equivalent(X2, X1))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, X1), equivalent(equivalent(X0, X2), equivalent(equivalent(X3, X1), equivalent(X2, X3)))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, X1), equivalent(equivalent(X2, X0), equivalent(X1, X2))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, X1), equivalent(equivalent(X2, X1), equivalent(X0, X2))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, X1), equivalent(equivalent(X2, equivalent(X0, X3)), equivalent(equivalent(X3, X1), X2))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, equivalent(X1, X2)), equivalent(equivalent(X1, X2), X0)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, equivalent(X1, X2)), equivalent(equivalent(X2, X1), X0)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, equivalent(X1, X2)), equivalent(equivalent(equivalent(X3, X2), equivalent(X1, X3)), X0)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, equivalent(X1, equivalent(X2, X3))), equivalent(equivalent(equivalent(X2, X3), X1), X0)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, equivalent(equivalent(X1, X2), X3)), equivalent(equivalent(X3, equivalent(X1, X2)), X0)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, equivalent(equivalent(X1, X2), X3)), equivalent(equivalent(X3, equivalent(equivalent(X4, X2), equivalent(X1, X4))), X0)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, equivalent(equivalent(X1, X2), equivalent(X2, X3))), equivalent(equivalent(X1, X3), X0)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, equivalent(equivalent(X1, X2), equivalent(X3, X1))), equivalent(equivalent(X3, X2), X0)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(X0, equivalent(equivalent(X1, X2), equivalent(equivalent(X3, X4), equivalent(X2, X3)))), equivalent(equivalent(X1, X4), X0)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(X0, X1), X0), X1), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(X0, X1), X2), equivalent(X2, equivalent(X0, X1))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(X0, X1), X2), equivalent(X2, equivalent(X1, X0))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(X0, X1), X2), equivalent(X2, equivalent(equivalent(X3, X1), equivalent(X0, X3)))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(X0, X1), X2), equivalent(equivalent(X3, equivalent(X0, X1)), equivalent(X2, X3))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(X0, X1), X2), equivalent(equivalent(X3, equivalent(X1, X0)), equivalent(X2, X3))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(X0, X1), X2), equivalent(equivalent(X3, equivalent(equivalent(X4, X1), equivalent(X0, X4))), equivalent(X2, X3))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(X0, X1), equivalent(X1, X2)), equivalent(X0, X2)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(X0, X1), equivalent(X2, X0)), equivalent(X1, X2)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(X0, X1), equivalent(X2, X0)), equivalent(X2, X1)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(X0, X1), equivalent(equivalent(X2, X3), equivalent(X1, X2))), equivalent(X0, X3)), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(X0, equivalent(X1, X2)), X3), equivalent(X3, equivalent(equivalent(X1, X2), X0))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(X0, equivalent(equivalent(X1, X2), equivalent(X3, X1))), X4), equivalent(equivalent(X5, equivalent(equivalent(X3, X2), X0)), equivalent(X4, X5))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(f1(true__, equivalent(equivalent(equivalent(equivalent(equivalent(X0, X1), equivalent(X2, X0)), X3), equivalent(X3, equivalent(X2, X1))), Y1)), Y1) -> true__
% 2.25/2.31  	f1(true__, equivalent(Y1, Y1)) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X2, Y0), equivalent(Y0, X2))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X2, equivalent(Y0, X3)), equivalent(equivalent(X3, Y0), X2))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X2, equivalent(Y0, Y1)), equivalent(equivalent(Y0, Y1), X2))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X2, equivalent(Y2, equivalent(Y0, Y1))), equivalent(equivalent(equivalent(Y0, Y1), Y2), X2))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X2, equivalent(equivalent(Y0, Y2), equivalent(Y2, Y1))), equivalent(equivalent(Y0, Y1), X2))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X2, equivalent(equivalent(Y0, Y2), equivalent(equivalent(Y3, Y1), equivalent(Y2, Y3)))), equivalent(equivalent(Y0, Y1), X2))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X2, equivalent(equivalent(Y1, Y2), Y0)), equivalent(equivalent(Y0, equivalent(Y1, Y2)), X2))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X2, equivalent(equivalent(Y2, Y0), equivalent(Y1, Y2))), equivalent(equivalent(Y0, Y1), X2))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X2, equivalent(equivalent(Y2, Y1), equivalent(Y0, Y2))), equivalent(equivalent(Y0, Y1), X2))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X2, equivalent(equivalent(Y3, Y2), Y0)), equivalent(equivalent(Y0, equivalent(equivalent(Y1, Y2), equivalent(Y3, Y1))), X2))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X3, X2), equivalent(equivalent(Y0, equivalent(X3, X1)), equivalent(equivalent(X1, X2), Y0)))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X3, Y2), equivalent(equivalent(X3, Y1), equivalent(Y1, Y2)))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X3, Y2), equivalent(equivalent(X3, Y3), equivalent(equivalent(Y1, Y2), equivalent(Y3, Y1))))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(X3, equivalent(Y0, Y1)), equivalent(equivalent(equivalent(Y2, Y1), equivalent(Y0, Y2)), X3))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(Y0, X2), equivalent(equivalent(X3, Y0), equivalent(X2, X3)))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(Y0, Y1), equivalent(Y0, Y1))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(Y0, Y1), equivalent(equivalent(Y2, Y1), equivalent(Y0, Y2)))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(X2, X3), X2), X3)) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(Y0, Y1), X2), equivalent(X2, equivalent(Y1, Y0)))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(Y0, Y1), X2), equivalent(equivalent(X3, equivalent(Y0, Y1)), equivalent(X2, X3)))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(Y0, Y1), X2), equivalent(equivalent(X3, equivalent(Y1, Y0)), equivalent(X2, X3)))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(Y0, Y1), X2), equivalent(equivalent(X3, equivalent(equivalent(Y2, Y1), equivalent(Y0, Y2))), equivalent(X2, X3)))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(Y0, Y2), equivalent(Y2, Y1)), equivalent(Y0, Y1))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(Y0, Y2), equivalent(equivalent(X4, Y1), equivalent(Y2, X4))), equivalent(Y0, Y1))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(Y0, equivalent(Y1, Y2)), X2), equivalent(X2, equivalent(equivalent(Y1, Y2), Y0)))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(Y0, equivalent(equivalent(Y1, Y2), equivalent(Y3, Y1))), X2), equivalent(equivalent(X3, equivalent(equivalent(Y3, Y2), Y0)), equivalent(X2, X3)))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(Y1, Y2), Y0), equivalent(Y0, equivalent(Y1, Y2)))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(Y2, Y0), equivalent(Y1, Y2)), equivalent(Y0, Y1))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(Y2, Y1), equivalent(Y0, Y2)), equivalent(Y0, Y1))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(Y3, Y2), Y0), equivalent(Y0, equivalent(equivalent(Y1, Y2), equivalent(Y3, Y1))))) -> true__
% 2.25/2.31  	f1(true__, equivalent(equivalent(equivalent(equivalent(Y0, Y1), equivalent(Y2, Y0)), X2), equivalent(X2, equivalent(Y2, Y1)))) -> true__
% 2.25/2.31  	f2(f1(true__, Y0), Y0, Y1) -> true__
% 2.25/2.31  	f2(is_a_theorem(X), X, Y) -> true__
% 2.25/2.31  	f2(true__, X, Y) -> f1(is_a_theorem(equivalent(X, Y)), Y)
% 2.25/2.31  	f3(f1(true__, equivalent(equivalent(equivalent(a, b), equivalent(c, a)), equivalent(b, c)))) -> true__
% 2.25/2.31  	f3(is_a_theorem(equivalent(equivalent(equivalent(a, b), equivalent(c, a)), equivalent(b, c)))) -> true__
% 2.25/2.31  	f3(true__) -> false__
% 2.25/2.31  	false__ -> true__
% 2.25/2.31  	is_a_theorem(Y) -> f1(true__, Y)
% 2.25/2.31  	is_a_theorem(equivalent(equivalent(X, Y), equivalent(equivalent(Z, Y), equivalent(X, Z)))) -> true__
% 2.25/2.31  with the LPO induced by
% 2.25/2.31  	f2 > equivalent > is_a_theorem > f1 > c > b > a > f3 > false__ > true__
% 2.25/2.31  
% 2.25/2.31  % SZS output end Proof
% 2.25/2.31  
%------------------------------------------------------------------------------