TSTP Solution File: SWV856-1 by Twee---2.4.2

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Twee---2.4.2
% Problem  : SWV856-1 : TPTP v8.1.2. Released v4.1.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof

% Computer : n018.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  : 300s
% DateTime : Thu Aug 31 23:06:32 EDT 2023

% Result   : Unsatisfiable 15.63s 2.41s
% Output   : Proof 15.63s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12  % Problem  : SWV856-1 : TPTP v8.1.2. Released v4.1.0.
% 0.07/0.13  % Command  : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof
% 0.13/0.34  % Computer : n018.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  : 300
% 0.13/0.34  % DateTime : Tue Aug 29 09:10:32 EDT 2023
% 0.13/0.35  % CPUTime  : 
% 15.63/2.41  Command-line arguments: --no-flatten-goal
% 15.63/2.41  
% 15.63/2.41  % SZS status Unsatisfiable
% 15.63/2.41  
% 15.63/2.41  % SZS output start Proof
% 15.63/2.41  Take the following subset of the input axioms:
% 15.63/2.42    fof(cls_Collect__empty__eq_0, axiom, ![T_a, V_x, V_P]: (c_Collect(V_P, T_a)!=c_Orderings_Obot__class_Obot(tc_fun(T_a, tc_bool)) | ~hBOOL(hAPP(V_P, V_x)))).
% 15.63/2.42    fof(cls_DiffE_1, axiom, ![V_A, V_B, V_c, T_a2]: (~hBOOL(hAPP(hAPP(c_in(T_a2), V_c), V_B)) | ~hBOOL(hAPP(hAPP(c_in(T_a2), V_c), c_HOL_Ominus__class_Ominus(V_A, V_B, tc_fun(T_a2, tc_bool)))))).
% 15.63/2.42    fof(cls_Suc__n__not__n_0, axiom, ![V_n]: c_Suc(V_n)!=V_n).
% 15.63/2.42    fof(cls_UNIV__not__empty_0, axiom, ![T_a2]: c_Orderings_Otop__class_Otop(tc_fun(T_a2, tc_bool))!=c_Orderings_Obot__class_Obot(tc_fun(T_a2, tc_bool))).
% 15.63/2.42    fof(cls_bex__empty_0, axiom, ![T_a2, V_x2, V_P2]: (~hBOOL(hAPP(V_P2, V_x2)) | ~hBOOL(hAPP(hAPP(c_in(T_a2), V_x2), c_Orderings_Obot__class_Obot(tc_fun(T_a2, tc_bool)))))).
% 15.63/2.42    fof(cls_bot1E_0, axiom, ![T_a2, V_x2]: ~hBOOL(hAPP(c_Orderings_Obot__class_Obot(tc_fun(T_a2, tc_bool)), V_x2))).
% 15.63/2.42    fof(cls_conjecture_0, negated_conjecture, hBOOL(hAPP(hAPP(c_in(tc_Hoare__Mirabelle_Otriple(t_a)), v_xa), c_Orderings_Obot__class_Obot(tc_fun(tc_Hoare__Mirabelle_Otriple(t_a), tc_bool))))).
% 15.63/2.42    fof(cls_disjoint__iff__not__equal_0, axiom, ![T_a2, V_x2, V_A2, V_B2]: (~hBOOL(hAPP(hAPP(c_in(T_a2), V_x2), V_B2)) | (~hBOOL(hAPP(hAPP(c_in(T_a2), V_x2), V_A2)) | hAPP(hAPP(c_Lattices_Olower__semilattice__class_Oinf(tc_fun(T_a2, tc_bool)), V_A2), V_B2)!=c_Orderings_Obot__class_Obot(tc_fun(T_a2, tc_bool))))).
% 15.63/2.42    fof(cls_emptyE_0, axiom, ![V_a, T_a2]: ~hBOOL(hAPP(hAPP(c_in(T_a2), V_a), c_Orderings_Obot__class_Obot(tc_fun(T_a2, tc_bool))))).
% 15.63/2.42    fof(cls_empty__Collect__eq_0, axiom, ![T_a2, V_x2, V_P2]: (c_Orderings_Obot__class_Obot(tc_fun(T_a2, tc_bool))!=c_Collect(V_P2, T_a2) | ~hBOOL(hAPP(V_P2, V_x2)))).
% 15.63/2.42    fof(cls_empty__fold1SetE_0, axiom, ![V_f, T_a2, V_x2]: ~c_Finite__Set_Ofold1Set(V_f, c_Orderings_Obot__class_Obot(tc_fun(T_a2, tc_bool)), V_x2, T_a2)).
% 15.63/2.42    fof(cls_empty__iff_0, axiom, ![T_a2, V_c2]: ~hBOOL(hAPP(hAPP(c_in(T_a2), V_c2), c_Orderings_Obot__class_Obot(tc_fun(T_a2, tc_bool))))).
% 15.63/2.42    fof(cls_empty__not__insert_0, axiom, ![V_a2, T_a2, V_A2]: c_Orderings_Obot__class_Obot(tc_fun(T_a2, tc_bool))!=c_Set_Oinsert(V_a2, V_A2, T_a2)).
% 15.63/2.42    fof(cls_ex__in__conv_0, axiom, ![T_a2, V_x2]: ~hBOOL(hAPP(hAPP(c_in(T_a2), V_x2), c_Orderings_Obot__class_Obot(tc_fun(T_a2, tc_bool))))).
% 15.63/2.42    fof(cls_inj__on__insert_1, axiom, ![T_b, V_a2, T_a2, V_A2, V_f2]: (~hBOOL(hAPP(hAPP(c_in(T_b), hAPP(V_f2, V_a2)), c_Set_Oimage(V_f2, c_HOL_Ominus__class_Ominus(V_A2, c_Set_Oinsert(V_a2, c_Orderings_Obot__class_Obot(tc_fun(T_a2, tc_bool)), T_a2), tc_fun(T_a2, tc_bool)), T_a2, T_b))) | ~c_Fun_Oinj__on(V_f2, c_Set_Oinsert(V_a2, V_A2, T_a2), T_a2, T_b))).
% 15.63/2.42    fof(cls_insert__not__empty_0, axiom, ![V_a2, T_a2, V_A2]: c_Set_Oinsert(V_a2, V_A2, T_a2)!=c_Orderings_Obot__class_Obot(tc_fun(T_a2, tc_bool))).
% 15.63/2.42    fof(cls_less__fun__def_1, axiom, ![V_g, T_a2, V_f2, T_b2]: (~class_HOL_Oord(T_b2) | (~c_lessequals(V_g, V_f2, tc_fun(T_a2, T_b2)) | ~c_HOL_Oord__class_Oless(V_f2, V_g, tc_fun(T_a2, T_b2))))).
% 15.63/2.42    fof(cls_less__le__not__le_1, axiom, ![V_y, T_a2, V_x2]: (~class_Orderings_Opreorder(T_a2) | (~c_lessequals(V_y, V_x2, T_a2) | ~c_HOL_Oord__class_Oless(V_x2, V_y, T_a2)))).
% 15.63/2.42    fof(cls_linorder__antisym__conv2_1, axiom, ![T_a2, V_x2]: (~class_Orderings_Olinorder(T_a2) | (~c_lessequals(V_x2, V_x2, T_a2) | ~c_HOL_Oord__class_Oless(V_x2, V_x2, T_a2)))).
% 15.63/2.42    fof(cls_linorder__neq__iff_1, axiom, ![T_a2, V_x2]: (~class_Orderings_Olinorder(T_a2) | ~c_HOL_Oord__class_Oless(V_x2, V_x2, T_a2))).
% 15.63/2.42    fof(cls_linorder__not__le_1, axiom, ![T_a2, V_x2, V_y2]: (~class_Orderings_Olinorder(T_a2) | (~c_lessequals(V_x2, V_y2, T_a2) | ~c_HOL_Oord__class_Oless(V_y2, V_x2, T_a2)))).
% 15.63/2.42    fof(cls_linorder__not__less_1, axiom, ![T_a2, V_x2, V_y2]: (~class_Orderings_Olinorder(T_a2) | (~c_HOL_Oord__class_Oless(V_x2, V_y2, T_a2) | ~c_lessequals(V_y2, V_x2, T_a2)))).
% 15.63/2.42    fof(cls_max__extp_Ocases_2, axiom, ![V_R, V_a1]: ~c_Wellfounded_Omax__extp(V_R, V_a1, c_Orderings_Obot__class_Obot(tc_fun(t_a, tc_bool)), t_a)).
% 15.63/2.42    fof(cls_n__not__Suc__n_0, axiom, ![V_n2]: V_n2!=c_Suc(V_n2)).
% 15.63/2.42    fof(cls_not__less__iff__gr__or__eq_1, axiom, ![T_a2, V_x2, V_y2]: (~class_Orderings_Olinorder(T_a2) | (~c_HOL_Oord__class_Oless(V_x2, V_y2, T_a2) | ~c_HOL_Oord__class_Oless(V_y2, V_x2, T_a2)))).
% 15.63/2.42    fof(cls_not__psubset__empty_0, axiom, ![T_a2, V_A2]: ~c_HOL_Oord__class_Oless(V_A2, c_Orderings_Obot__class_Obot(tc_fun(T_a2, tc_bool)), tc_fun(T_a2, tc_bool))).
% 15.63/2.42    fof(cls_order__less__asym_0, axiom, ![T_a2, V_x2, V_y2]: (~class_Orderings_Opreorder(T_a2) | (~c_HOL_Oord__class_Oless(V_y2, V_x2, T_a2) | ~c_HOL_Oord__class_Oless(V_x2, V_y2, T_a2)))).
% 15.63/2.42    fof(cls_order__less__asym_H_0, axiom, ![V_b, V_a2, T_a2]: (~class_Orderings_Opreorder(T_a2) | (~c_HOL_Oord__class_Oless(V_b, V_a2, T_a2) | ~c_HOL_Oord__class_Oless(V_a2, V_b, T_a2)))).
% 15.63/2.42    fof(cls_order__less__irrefl_0, axiom, ![T_a2, V_x2]: (~class_Orderings_Opreorder(T_a2) | ~c_HOL_Oord__class_Oless(V_x2, V_x2, T_a2))).
% 15.63/2.42    fof(cls_order__less__le_1, axiom, ![T_a2, V_x2]: (~class_Orderings_Oorder(T_a2) | ~c_HOL_Oord__class_Oless(V_x2, V_x2, T_a2))).
% 15.63/2.42    fof(cls_psubset__eq_1, axiom, ![T_a2, V_x2]: ~c_HOL_Oord__class_Oless(V_x2, V_x2, tc_fun(T_a2, tc_bool))).
% 15.63/2.42    fof(cls_xt1_I9_J_0, axiom, ![V_a2, T_a2, V_b2]: (~class_Orderings_Oorder(T_a2) | (~c_HOL_Oord__class_Oless(V_a2, V_b2, T_a2) | ~c_HOL_Oord__class_Oless(V_b2, V_a2, T_a2)))).
% 15.63/2.42  
% 15.63/2.42  Now clausify the problem and encode Horn clauses using encoding 3 of
% 15.63/2.42  http://www.cse.chalmers.se/~nicsma/papers/horn.pdf.
% 15.63/2.42  We repeatedly replace C & s=t => u=v by the two clauses:
% 15.63/2.42    fresh(y, y, x1...xn) = u
% 15.63/2.42    C => fresh(s, t, x1...xn) = v
% 15.63/2.42  where fresh is a fresh function symbol and x1..xn are the free
% 15.63/2.42  variables of u and v.
% 15.63/2.42  A predicate p(X) is encoded as p(X)=true (this is sound, because the
% 15.63/2.42  input problem has no model of domain size 1).
% 15.63/2.42  
% 15.63/2.42  The encoding turns the above axioms into the following unit equations and goals:
% 15.63/2.42  
% 15.63/2.42  Axiom 1 (cls_conjecture_0): hBOOL(hAPP(hAPP(c_in(tc_Hoare__Mirabelle_Otriple(t_a)), v_xa), c_Orderings_Obot__class_Obot(tc_fun(tc_Hoare__Mirabelle_Otriple(t_a), tc_bool)))) = true2.
% 15.63/2.42  
% 15.63/2.42  Goal 1 (cls_ex__in__conv_0): hBOOL(hAPP(hAPP(c_in(X), Y), c_Orderings_Obot__class_Obot(tc_fun(X, tc_bool)))) = true2.
% 15.63/2.42  The goal is true when:
% 15.63/2.42    X = tc_Hoare__Mirabelle_Otriple(t_a)
% 15.63/2.42    Y = v_xa
% 15.63/2.42  
% 15.63/2.42  Proof:
% 15.63/2.42    hBOOL(hAPP(hAPP(c_in(tc_Hoare__Mirabelle_Otriple(t_a)), v_xa), c_Orderings_Obot__class_Obot(tc_fun(tc_Hoare__Mirabelle_Otriple(t_a), tc_bool))))
% 15.63/2.42  = { by axiom 1 (cls_conjecture_0) }
% 15.63/2.42    true2
% 15.63/2.42  % SZS output end Proof
% 15.63/2.42  
% 15.63/2.42  RESULT: Unsatisfiable (the axioms are contradictory).
%------------------------------------------------------------------------------