TSTP Solution File: GEO118+1 by Twee---2.4.2

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Twee---2.4.2
% Problem  : GEO118+1 : TPTP v8.1.2. Released v2.4.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 : n014.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 : Wed Aug 30 23:27:29 EDT 2023

% Result   : Theorem 0.18s 0.54s
% Output   : Proof 0.18s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.11  % Problem  : GEO118+1 : TPTP v8.1.2. Released v2.4.0.
% 0.00/0.12  % Command  : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof
% 0.11/0.33  % Computer : n014.cluster.edu
% 0.11/0.33  % Model    : x86_64 x86_64
% 0.11/0.33  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.11/0.33  % Memory   : 8042.1875MB
% 0.11/0.33  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.11/0.33  % CPULimit : 300
% 0.11/0.33  % WCLimit  : 300
% 0.11/0.33  % DateTime : Tue Aug 29 21:07:45 EDT 2023
% 0.11/0.33  % CPUTime  : 
% 0.18/0.54  Command-line arguments: --set-join --lhs-weight 1 --no-flatten-goal --complete-subsets --goal-heuristic
% 0.18/0.54  
% 0.18/0.54  % SZS status Theorem
% 0.18/0.54  
% 0.18/0.54  % SZS output start Proof
% 0.18/0.54  Take the following subset of the input axioms:
% 0.18/0.54    fof(between_c_defn, axiom, ![C, P, Q, R]: (between_c(C, P, Q, R) <=> (P!=R & ?[Cpp]: (part_of(Cpp, C) & (end_point(P, Cpp) & (end_point(R, Cpp) & inner_point(Q, Cpp))))))).
% 0.18/0.54    fof(between_o_defn, axiom, ![O, P3, Q2, R2]: (between_o(O, P3, Q2, R2) <=> ((ordered_by(O, P3, Q2) & ordered_by(O, Q2, R2)) | (ordered_by(O, R2, Q2) & ordered_by(O, Q2, P3))))).
% 0.18/0.54    fof(c6, axiom, ![C2, P3]: (end_point(P3, C2) => ?[Q2]: (end_point(Q2, C2) & P3!=Q2))).
% 0.18/0.54    fof(closed_defn, axiom, ![C2]: (closed(C2) <=> ~?[P3]: end_point(P3, C2))).
% 0.18/0.54    fof(inner_point_defn, axiom, ![C2, P3]: (inner_point(P3, C2) <=> (incident_c(P3, C2) & ~end_point(P3, C2)))).
% 0.18/0.54    fof(o3, axiom, ![O2, P2, Q2, R2]: (between_o(O2, P2, Q2, R2) <=> ?[C2]: (![P3]: (incident_o(P3, O2) <=> incident_c(P3, C2)) & between_c(C2, P2, Q2, R2)))).
% 0.18/0.54    fof(theorem_4_5, conjecture, ![O2, P3, Q2]: (ordered_by(O2, P3, Q2) => ~ordered_by(O2, Q2, P3))).
% 0.18/0.54  
% 0.18/0.54  Now clausify the problem and encode Horn clauses using encoding 3 of
% 0.18/0.54  http://www.cse.chalmers.se/~nicsma/papers/horn.pdf.
% 0.18/0.54  We repeatedly replace C & s=t => u=v by the two clauses:
% 0.18/0.54    fresh(y, y, x1...xn) = u
% 0.18/0.54    C => fresh(s, t, x1...xn) = v
% 0.18/0.54  where fresh is a fresh function symbol and x1..xn are the free
% 0.18/0.54  variables of u and v.
% 0.18/0.54  A predicate p(X) is encoded as p(X)=true (this is sound, because the
% 0.18/0.54  input problem has no model of domain size 1).
% 0.18/0.54  
% 0.18/0.54  The encoding turns the above axioms into the following unit equations and goals:
% 0.18/0.54  
% 0.18/0.54  Axiom 1 (theorem_4_5): ordered_by(o, p, q) = true2.
% 0.18/0.54  Axiom 2 (theorem_4_5_1): ordered_by(o, q, p) = true2.
% 0.18/0.54  Axiom 3 (between_o_defn_4): fresh61(X, X, Y, Z, W, V) = between_o(Y, Z, W, V).
% 0.18/0.54  Axiom 4 (between_o_defn_4): fresh60(X, X, Y, Z, W, V) = true2.
% 0.18/0.54  Axiom 5 (o3_3): fresh32(X, X, Y, Z, W, V) = true2.
% 0.18/0.54  Axiom 6 (between_o_defn_4): fresh61(ordered_by(X, Y, Z), true2, X, W, Y, Z) = fresh60(ordered_by(X, W, Y), true2, X, W, Y, Z).
% 0.18/0.54  Axiom 7 (o3_3): fresh32(between_o(X, Y, Z, W), true2, Y, Z, W, X) = between_c(c(Y, Z, W, X), Y, Z, W).
% 0.18/0.54  
% 0.18/0.54  Goal 1 (between_c_defn_5): between_c(X, Y, Z, Y) = true2.
% 0.18/0.54  The goal is true when:
% 0.18/0.54    X = c(p, q, p, o)
% 0.18/0.54    Y = p
% 0.18/0.54    Z = q
% 0.18/0.54  
% 0.18/0.54  Proof:
% 0.18/0.54    between_c(c(p, q, p, o), p, q, p)
% 0.18/0.54  = { by axiom 7 (o3_3) R->L }
% 0.18/0.54    fresh32(between_o(o, p, q, p), true2, p, q, p, o)
% 0.18/0.54  = { by axiom 3 (between_o_defn_4) R->L }
% 0.18/0.54    fresh32(fresh61(true2, true2, o, p, q, p), true2, p, q, p, o)
% 0.18/0.54  = { by axiom 2 (theorem_4_5_1) R->L }
% 0.18/0.54    fresh32(fresh61(ordered_by(o, q, p), true2, o, p, q, p), true2, p, q, p, o)
% 0.18/0.54  = { by axiom 6 (between_o_defn_4) }
% 0.18/0.54    fresh32(fresh60(ordered_by(o, p, q), true2, o, p, q, p), true2, p, q, p, o)
% 0.18/0.54  = { by axiom 1 (theorem_4_5) }
% 0.18/0.54    fresh32(fresh60(true2, true2, o, p, q, p), true2, p, q, p, o)
% 0.18/0.54  = { by axiom 4 (between_o_defn_4) }
% 0.18/0.54    fresh32(true2, true2, p, q, p, o)
% 0.18/0.54  = { by axiom 5 (o3_3) }
% 0.18/0.54    true2
% 0.18/0.54  % SZS output end Proof
% 0.18/0.54  
% 0.18/0.54  RESULT: Theorem (the conjecture is true).
%------------------------------------------------------------------------------