TSTP Solution File: GEO077-4 by Z3---4.8.9.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Z3---4.8.9.0
% Problem  : GEO077-4 : TPTP v8.1.0. Released v1.0.0.
% Transfm  : none
% Format   : tptp
% Command  : z3_tptp -proof -model -t:%d -file:%s

% Computer : n027.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 : Fri Sep 16 20:34:42 EDT 2022

% Result   : Unsatisfiable 0.19s 0.39s
% Output   : Proof 0.19s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   12
%            Number of leaves      :   66
% Syntax   : Number of formulae    :  132 (  39 unt;   9 typ;   0 def)
%            Number of atoms       : 2494 ( 821 equ)
%            Maximal formula atoms :   40 (  20 avg)
%            Number of connectives : 3624 (1425   ~;2059   |;   0   &)
%                                         ( 140 <=>;   0  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   18 (   9 avg)
%            Maximal term depth    :    2 (   1 avg)
%            Number of FOOLs       :  172 ( 172 fml;   0 var)
%            Number of types       :    2 (   0 usr)
%            Number of type conns  :   10 (   5   >;   5   *;   0   +;   0  <<)
%            Number of predicates  :   10 (   8 usr;   1 prp; 0-3 aty)
%            Number of functors    :    5 (   5 usr;   4 con; 0-3 aty)
%            Number of variables   :  336 ( 304   !;   0   ?; 336   :)

% Comments : 
%------------------------------------------------------------------------------
tff(on_type,type,
    on: ( $i * $i ) > $o ).

tff(line_through_3_points_type,type,
    line_through_3_points: ( $i * $i * $i ) > $i ).

tff(point3_type,type,
    point3: $i ).

tff(point2_type,type,
    point2: $i ).

tff(point1_type,type,
    point1: $i ).

tff(a_line_type,type,
    a_line: $i ).

tff(collinear_type,type,
    collinear: ( $i * $i * $i ) > $o ).

tff(point_type,type,
    point: $i > $o ).

tff(line_type,type,
    line: $i > $o ).

tff(1,plain,
    ( collinear(point1,point2,point3)
  <=> collinear(point1,point2,point3) ),
    inference(rewrite,[status(thm)],]) ).

tff(2,axiom,
    collinear(point1,point2,point3),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',prove_points_noncollinear) ).

tff(3,plain,
    collinear(point1,point2,point3),
    inference(modus_ponens,[status(thm)],[2,1]) ).

tff(4,plain,
    ( ( point2 != point3 )
  <=> ( point2 != point3 ) ),
    inference(rewrite,[status(thm)],]) ).

tff(5,axiom,
    point2 != point3,
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',point2_not_point3) ).

tff(6,plain,
    point2 != point3,
    inference(modus_ponens,[status(thm)],[5,4]) ).

tff(7,plain,
    ( ( point1 != point3 )
  <=> ( point1 != point3 ) ),
    inference(rewrite,[status(thm)],]) ).

tff(8,axiom,
    point1 != point3,
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',point1_not_point3) ).

tff(9,plain,
    point1 != point3,
    inference(modus_ponens,[status(thm)],[8,7]) ).

tff(10,plain,
    ( ( point1 != point2 )
  <=> ( point1 != point2 ) ),
    inference(rewrite,[status(thm)],]) ).

tff(11,axiom,
    point1 != point2,
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',point1_not_point2) ).

tff(12,plain,
    point1 != point2,
    inference(modus_ponens,[status(thm)],[11,10]) ).

tff(13,plain,
    ( point(point3)
  <=> point(point3) ),
    inference(rewrite,[status(thm)],]) ).

tff(14,axiom,
    point(point3),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',point3) ).

tff(15,plain,
    point(point3),
    inference(modus_ponens,[status(thm)],[14,13]) ).

tff(16,plain,
    ( point(point2)
  <=> point(point2) ),
    inference(rewrite,[status(thm)],]) ).

tff(17,axiom,
    point(point2),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',point2) ).

tff(18,plain,
    point(point2),
    inference(modus_ponens,[status(thm)],[17,16]) ).

tff(19,plain,
    ( point(point1)
  <=> point(point1) ),
    inference(rewrite,[status(thm)],]) ).

tff(20,axiom,
    point(point1),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',point1) ).

tff(21,plain,
    point(point1),
    inference(modus_ponens,[status(thm)],[20,19]) ).

tff(22,plain,
    ^ [X3: $i,X2: $i,X1: $i] :
      refl(
        ( ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X1,line_through_3_points(X1,X2,X3)) )
      <=> ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X1,line_through_3_points(X1,X2,X3)) ) )),
    inference(bind,[status(th)],]) ).

tff(23,plain,
    ( ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X1,line_through_3_points(X1,X2,X3)) )
  <=> ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X1,line_through_3_points(X1,X2,X3)) ) ),
    inference(quant_intro,[status(thm)],[22]) ).

tff(24,plain,
    ( ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X1,line_through_3_points(X1,X2,X3)) )
  <=> ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X1,line_through_3_points(X1,X2,X3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(25,plain,
    ^ [X3: $i,X2: $i,X1: $i] :
      trans(
        monotonicity(
          trans(
            monotonicity(
              trans(
                monotonicity(
                  trans(
                    monotonicity(
                      trans(
                        monotonicity(
                          rewrite(
                            ( ( ~ point(X1)
                              | ~ point(X2)
                              | ~ point(X3) )
                          <=> ( ~ point(X1)
                              | ~ point(X2)
                              | ~ point(X3) ) )),
                          ( ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) )
                        <=> ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) ) )),
                        rewrite(
                          ( ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) )
                        <=> ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) ) )),
                        ( ( ~ point(X1)
                          | ~ point(X2)
                          | ~ point(X3)
                          | ( X1 = X2 ) )
                      <=> ( ~ point(X1)
                          | ~ point(X2)
                          | ~ point(X3)
                          | ( X1 = X2 ) ) )),
                      ( ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X2 )
                        | ( X1 = X3 ) )
                    <=> ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X2 )
                        | ( X1 = X3 ) ) )),
                    rewrite(
                      ( ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X2 )
                        | ( X1 = X3 ) )
                    <=> ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X3 )
                        | ( X1 = X2 ) ) )),
                    ( ( ~ point(X1)
                      | ~ point(X2)
                      | ~ point(X3)
                      | ( X1 = X2 )
                      | ( X1 = X3 ) )
                  <=> ( ~ point(X1)
                      | ~ point(X2)
                      | ~ point(X3)
                      | ( X1 = X3 )
                      | ( X1 = X2 ) ) )),
                  ( ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X1 = X2 )
                    | ( X1 = X3 )
                    | ( X2 = X3 ) )
                <=> ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X1 = X3 )
                    | ( X1 = X2 )
                    | ( X2 = X3 ) ) )),
                rewrite(
                  ( ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X1 = X3 )
                    | ( X1 = X2 )
                    | ( X2 = X3 ) )
                <=> ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X2 = X3 )
                    | ( X1 = X3 )
                    | ( X1 = X2 ) ) )),
                ( ( ~ point(X1)
                  | ~ point(X2)
                  | ~ point(X3)
                  | ( X1 = X2 )
                  | ( X1 = X3 )
                  | ( X2 = X3 ) )
              <=> ( ~ point(X1)
                  | ~ point(X2)
                  | ~ point(X3)
                  | ( X2 = X3 )
                  | ( X1 = X3 )
                  | ( X1 = X2 ) ) )),
              ( ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X1 = X2 )
                | ( X1 = X3 )
                | ( X2 = X3 )
                | on(X1,line_through_3_points(X1,X2,X3)) )
            <=> ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X2 = X3 )
                | ( X1 = X3 )
                | ( X1 = X2 )
                | on(X1,line_through_3_points(X1,X2,X3)) ) )),
            rewrite(
              ( ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X2 = X3 )
                | ( X1 = X3 )
                | ( X1 = X2 )
                | on(X1,line_through_3_points(X1,X2,X3)) )
            <=> ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X2 = X3 )
                | ( X1 = X3 )
                | ( X1 = X2 )
                | on(X1,line_through_3_points(X1,X2,X3)) ) )),
            ( ( ~ point(X1)
              | ~ point(X2)
              | ~ point(X3)
              | ( X1 = X2 )
              | ( X1 = X3 )
              | ( X2 = X3 )
              | on(X1,line_through_3_points(X1,X2,X3)) )
          <=> ( ~ point(X1)
              | ~ point(X2)
              | ~ point(X3)
              | ( X2 = X3 )
              | ( X1 = X3 )
              | ( X1 = X2 )
              | on(X1,line_through_3_points(X1,X2,X3)) ) )),
          ( ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X1 = X2 )
            | ( X1 = X3 )
            | ( X2 = X3 )
            | on(X1,line_through_3_points(X1,X2,X3))
            | ~ collinear(X1,X2,X3) )
        <=> ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | on(X1,line_through_3_points(X1,X2,X3))
            | ~ collinear(X1,X2,X3) ) )),
        rewrite(
          ( ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | on(X1,line_through_3_points(X1,X2,X3))
            | ~ collinear(X1,X2,X3) )
        <=> ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X1,line_through_3_points(X1,X2,X3)) ) )),
        ( ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X1 = X2 )
          | ( X1 = X3 )
          | ( X2 = X3 )
          | on(X1,line_through_3_points(X1,X2,X3))
          | ~ collinear(X1,X2,X3) )
      <=> ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X1,line_through_3_points(X1,X2,X3)) ) )),
    inference(bind,[status(th)],]) ).

tff(26,plain,
    ( ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X1 = X2 )
        | ( X1 = X3 )
        | ( X2 = X3 )
        | on(X1,line_through_3_points(X1,X2,X3))
        | ~ collinear(X1,X2,X3) )
  <=> ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X1,line_through_3_points(X1,X2,X3)) ) ),
    inference(quant_intro,[status(thm)],[25]) ).

tff(27,axiom,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X1 = X2 )
      | ( X1 = X3 )
      | ( X2 = X3 )
      | on(X1,line_through_3_points(X1,X2,X3))
      | ~ collinear(X1,X2,X3) ),
    file('/export/starexec/sandbox/benchmark/Axioms/GEO003-0.ax',axiom_G10A) ).

tff(28,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | on(X1,line_through_3_points(X1,X2,X3)) ),
    inference(modus_ponens,[status(thm)],[27,26]) ).

tff(29,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | on(X1,line_through_3_points(X1,X2,X3)) ),
    inference(modus_ponens,[status(thm)],[28,24]) ).

tff(30,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | on(X1,line_through_3_points(X1,X2,X3)) ),
    inference(skolemize,[status(sab)],[29]) ).

tff(31,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | on(X1,line_through_3_points(X1,X2,X3)) ),
    inference(modus_ponens,[status(thm)],[30,23]) ).

tff(32,plain,
    ( ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X1,line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point1,line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X1,line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point1,line_through_3_points(point1,point2,point3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(33,plain,
    ( ( ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ( point2 = point3 )
      | ( point1 = point3 )
      | ( point1 = point2 )
      | ~ collinear(point1,point2,point3)
      | on(point1,line_through_3_points(point1,point2,point3)) )
  <=> ( ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point1,line_through_3_points(point1,point2,point3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(34,plain,
    ( ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X1,line_through_3_points(X1,X2,X3)) )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ( point2 = point3 )
      | ( point1 = point3 )
      | ( point1 = point2 )
      | ~ collinear(point1,point2,point3)
      | on(point1,line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X1,line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point1,line_through_3_points(point1,point2,point3)) ) ),
    inference(monotonicity,[status(thm)],[33]) ).

tff(35,plain,
    ( ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X1,line_through_3_points(X1,X2,X3)) )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ( point2 = point3 )
      | ( point1 = point3 )
      | ( point1 = point2 )
      | ~ collinear(point1,point2,point3)
      | on(point1,line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X1,line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point1,line_through_3_points(point1,point2,point3)) ) ),
    inference(transitivity,[status(thm)],[34,32]) ).

tff(36,plain,
    ( ~ ! [X3: $i,X2: $i,X1: $i] :
          ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X1,line_through_3_points(X1,X2,X3)) )
    | ~ point(point1)
    | ~ point(point2)
    | ~ point(point3)
    | ( point2 = point3 )
    | ( point1 = point3 )
    | ( point1 = point2 )
    | ~ collinear(point1,point2,point3)
    | on(point1,line_through_3_points(point1,point2,point3)) ),
    inference(quant_inst,[status(thm)],]) ).

tff(37,plain,
    ( ~ ! [X3: $i,X2: $i,X1: $i] :
          ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X1,line_through_3_points(X1,X2,X3)) )
    | ( point1 = point2 )
    | ( point1 = point3 )
    | ( point2 = point3 )
    | ~ point(point1)
    | ~ point(point2)
    | ~ point(point3)
    | ~ collinear(point1,point2,point3)
    | on(point1,line_through_3_points(point1,point2,point3)) ),
    inference(modus_ponens,[status(thm)],[36,35]) ).

tff(38,plain,
    on(point1,line_through_3_points(point1,point2,point3)),
    inference(unit_resolution,[status(thm)],[37,31,21,18,15,12,9,6,3]) ).

tff(39,plain,
    ^ [X3: $i,X2: $i,X1: $i] :
      refl(
        ( ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X2,line_through_3_points(X1,X2,X3)) )
      <=> ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X2,line_through_3_points(X1,X2,X3)) ) )),
    inference(bind,[status(th)],]) ).

tff(40,plain,
    ( ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X2,line_through_3_points(X1,X2,X3)) )
  <=> ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X2,line_through_3_points(X1,X2,X3)) ) ),
    inference(quant_intro,[status(thm)],[39]) ).

tff(41,plain,
    ( ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X2,line_through_3_points(X1,X2,X3)) )
  <=> ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X2,line_through_3_points(X1,X2,X3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(42,plain,
    ^ [X3: $i,X2: $i,X1: $i] :
      trans(
        monotonicity(
          trans(
            monotonicity(
              trans(
                monotonicity(
                  trans(
                    monotonicity(
                      trans(
                        monotonicity(
                          rewrite(
                            ( ( ~ point(X1)
                              | ~ point(X2)
                              | ~ point(X3) )
                          <=> ( ~ point(X1)
                              | ~ point(X2)
                              | ~ point(X3) ) )),
                          ( ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) )
                        <=> ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) ) )),
                        rewrite(
                          ( ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) )
                        <=> ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) ) )),
                        ( ( ~ point(X1)
                          | ~ point(X2)
                          | ~ point(X3)
                          | ( X1 = X2 ) )
                      <=> ( ~ point(X1)
                          | ~ point(X2)
                          | ~ point(X3)
                          | ( X1 = X2 ) ) )),
                      ( ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X2 )
                        | ( X1 = X3 ) )
                    <=> ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X2 )
                        | ( X1 = X3 ) ) )),
                    rewrite(
                      ( ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X2 )
                        | ( X1 = X3 ) )
                    <=> ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X3 )
                        | ( X1 = X2 ) ) )),
                    ( ( ~ point(X1)
                      | ~ point(X2)
                      | ~ point(X3)
                      | ( X1 = X2 )
                      | ( X1 = X3 ) )
                  <=> ( ~ point(X1)
                      | ~ point(X2)
                      | ~ point(X3)
                      | ( X1 = X3 )
                      | ( X1 = X2 ) ) )),
                  ( ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X1 = X2 )
                    | ( X1 = X3 )
                    | ( X2 = X3 ) )
                <=> ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X1 = X3 )
                    | ( X1 = X2 )
                    | ( X2 = X3 ) ) )),
                rewrite(
                  ( ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X1 = X3 )
                    | ( X1 = X2 )
                    | ( X2 = X3 ) )
                <=> ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X2 = X3 )
                    | ( X1 = X3 )
                    | ( X1 = X2 ) ) )),
                ( ( ~ point(X1)
                  | ~ point(X2)
                  | ~ point(X3)
                  | ( X1 = X2 )
                  | ( X1 = X3 )
                  | ( X2 = X3 ) )
              <=> ( ~ point(X1)
                  | ~ point(X2)
                  | ~ point(X3)
                  | ( X2 = X3 )
                  | ( X1 = X3 )
                  | ( X1 = X2 ) ) )),
              ( ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X1 = X2 )
                | ( X1 = X3 )
                | ( X2 = X3 )
                | on(X2,line_through_3_points(X1,X2,X3)) )
            <=> ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X2 = X3 )
                | ( X1 = X3 )
                | ( X1 = X2 )
                | on(X2,line_through_3_points(X1,X2,X3)) ) )),
            rewrite(
              ( ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X2 = X3 )
                | ( X1 = X3 )
                | ( X1 = X2 )
                | on(X2,line_through_3_points(X1,X2,X3)) )
            <=> ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X2 = X3 )
                | ( X1 = X3 )
                | ( X1 = X2 )
                | on(X2,line_through_3_points(X1,X2,X3)) ) )),
            ( ( ~ point(X1)
              | ~ point(X2)
              | ~ point(X3)
              | ( X1 = X2 )
              | ( X1 = X3 )
              | ( X2 = X3 )
              | on(X2,line_through_3_points(X1,X2,X3)) )
          <=> ( ~ point(X1)
              | ~ point(X2)
              | ~ point(X3)
              | ( X2 = X3 )
              | ( X1 = X3 )
              | ( X1 = X2 )
              | on(X2,line_through_3_points(X1,X2,X3)) ) )),
          ( ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X1 = X2 )
            | ( X1 = X3 )
            | ( X2 = X3 )
            | on(X2,line_through_3_points(X1,X2,X3))
            | ~ collinear(X1,X2,X3) )
        <=> ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | on(X2,line_through_3_points(X1,X2,X3))
            | ~ collinear(X1,X2,X3) ) )),
        rewrite(
          ( ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | on(X2,line_through_3_points(X1,X2,X3))
            | ~ collinear(X1,X2,X3) )
        <=> ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X2,line_through_3_points(X1,X2,X3)) ) )),
        ( ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X1 = X2 )
          | ( X1 = X3 )
          | ( X2 = X3 )
          | on(X2,line_through_3_points(X1,X2,X3))
          | ~ collinear(X1,X2,X3) )
      <=> ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X2,line_through_3_points(X1,X2,X3)) ) )),
    inference(bind,[status(th)],]) ).

tff(43,plain,
    ( ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X1 = X2 )
        | ( X1 = X3 )
        | ( X2 = X3 )
        | on(X2,line_through_3_points(X1,X2,X3))
        | ~ collinear(X1,X2,X3) )
  <=> ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X2,line_through_3_points(X1,X2,X3)) ) ),
    inference(quant_intro,[status(thm)],[42]) ).

tff(44,axiom,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X1 = X2 )
      | ( X1 = X3 )
      | ( X2 = X3 )
      | on(X2,line_through_3_points(X1,X2,X3))
      | ~ collinear(X1,X2,X3) ),
    file('/export/starexec/sandbox/benchmark/Axioms/GEO003-0.ax',axiom_G10B) ).

tff(45,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | on(X2,line_through_3_points(X1,X2,X3)) ),
    inference(modus_ponens,[status(thm)],[44,43]) ).

tff(46,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | on(X2,line_through_3_points(X1,X2,X3)) ),
    inference(modus_ponens,[status(thm)],[45,41]) ).

tff(47,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | on(X2,line_through_3_points(X1,X2,X3)) ),
    inference(skolemize,[status(sab)],[46]) ).

tff(48,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | on(X2,line_through_3_points(X1,X2,X3)) ),
    inference(modus_ponens,[status(thm)],[47,40]) ).

tff(49,plain,
    ( ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X2,line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point2,line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X2,line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point2,line_through_3_points(point1,point2,point3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(50,plain,
    ( ( ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ( point2 = point3 )
      | ( point1 = point3 )
      | ( point1 = point2 )
      | ~ collinear(point1,point2,point3)
      | on(point2,line_through_3_points(point1,point2,point3)) )
  <=> ( ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point2,line_through_3_points(point1,point2,point3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(51,plain,
    ( ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X2,line_through_3_points(X1,X2,X3)) )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ( point2 = point3 )
      | ( point1 = point3 )
      | ( point1 = point2 )
      | ~ collinear(point1,point2,point3)
      | on(point2,line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X2,line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point2,line_through_3_points(point1,point2,point3)) ) ),
    inference(monotonicity,[status(thm)],[50]) ).

tff(52,plain,
    ( ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X2,line_through_3_points(X1,X2,X3)) )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ( point2 = point3 )
      | ( point1 = point3 )
      | ( point1 = point2 )
      | ~ collinear(point1,point2,point3)
      | on(point2,line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X2,line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point2,line_through_3_points(point1,point2,point3)) ) ),
    inference(transitivity,[status(thm)],[51,49]) ).

tff(53,plain,
    ( ~ ! [X3: $i,X2: $i,X1: $i] :
          ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X2,line_through_3_points(X1,X2,X3)) )
    | ~ point(point1)
    | ~ point(point2)
    | ~ point(point3)
    | ( point2 = point3 )
    | ( point1 = point3 )
    | ( point1 = point2 )
    | ~ collinear(point1,point2,point3)
    | on(point2,line_through_3_points(point1,point2,point3)) ),
    inference(quant_inst,[status(thm)],]) ).

tff(54,plain,
    ( ~ ! [X3: $i,X2: $i,X1: $i] :
          ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X2,line_through_3_points(X1,X2,X3)) )
    | ( point1 = point2 )
    | ( point1 = point3 )
    | ( point2 = point3 )
    | ~ point(point1)
    | ~ point(point2)
    | ~ point(point3)
    | ~ collinear(point1,point2,point3)
    | on(point2,line_through_3_points(point1,point2,point3)) ),
    inference(modus_ponens,[status(thm)],[53,52]) ).

tff(55,plain,
    on(point2,line_through_3_points(point1,point2,point3)),
    inference(unit_resolution,[status(thm)],[54,48,21,18,15,12,9,6,3]) ).

tff(56,plain,
    ^ [X3: $i,X2: $i,X1: $i] :
      refl(
        ( ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | line(line_through_3_points(X1,X2,X3)) )
      <=> ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | line(line_through_3_points(X1,X2,X3)) ) )),
    inference(bind,[status(th)],]) ).

tff(57,plain,
    ( ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | line(line_through_3_points(X1,X2,X3)) )
  <=> ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | line(line_through_3_points(X1,X2,X3)) ) ),
    inference(quant_intro,[status(thm)],[56]) ).

tff(58,plain,
    ( ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | line(line_through_3_points(X1,X2,X3)) )
  <=> ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | line(line_through_3_points(X1,X2,X3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(59,plain,
    ^ [X3: $i,X2: $i,X1: $i] :
      trans(
        monotonicity(
          trans(
            monotonicity(
              trans(
                monotonicity(
                  trans(
                    monotonicity(
                      trans(
                        monotonicity(
                          rewrite(
                            ( ( ~ point(X1)
                              | ~ point(X2)
                              | ~ point(X3) )
                          <=> ( ~ point(X1)
                              | ~ point(X2)
                              | ~ point(X3) ) )),
                          ( ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) )
                        <=> ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) ) )),
                        rewrite(
                          ( ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) )
                        <=> ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) ) )),
                        ( ( ~ point(X1)
                          | ~ point(X2)
                          | ~ point(X3)
                          | ( X1 = X2 ) )
                      <=> ( ~ point(X1)
                          | ~ point(X2)
                          | ~ point(X3)
                          | ( X1 = X2 ) ) )),
                      ( ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X2 )
                        | ( X1 = X3 ) )
                    <=> ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X2 )
                        | ( X1 = X3 ) ) )),
                    rewrite(
                      ( ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X2 )
                        | ( X1 = X3 ) )
                    <=> ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X3 )
                        | ( X1 = X2 ) ) )),
                    ( ( ~ point(X1)
                      | ~ point(X2)
                      | ~ point(X3)
                      | ( X1 = X2 )
                      | ( X1 = X3 ) )
                  <=> ( ~ point(X1)
                      | ~ point(X2)
                      | ~ point(X3)
                      | ( X1 = X3 )
                      | ( X1 = X2 ) ) )),
                  ( ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X1 = X2 )
                    | ( X1 = X3 )
                    | ( X2 = X3 ) )
                <=> ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X1 = X3 )
                    | ( X1 = X2 )
                    | ( X2 = X3 ) ) )),
                rewrite(
                  ( ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X1 = X3 )
                    | ( X1 = X2 )
                    | ( X2 = X3 ) )
                <=> ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X2 = X3 )
                    | ( X1 = X3 )
                    | ( X1 = X2 ) ) )),
                ( ( ~ point(X1)
                  | ~ point(X2)
                  | ~ point(X3)
                  | ( X1 = X2 )
                  | ( X1 = X3 )
                  | ( X2 = X3 ) )
              <=> ( ~ point(X1)
                  | ~ point(X2)
                  | ~ point(X3)
                  | ( X2 = X3 )
                  | ( X1 = X3 )
                  | ( X1 = X2 ) ) )),
              ( ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X1 = X2 )
                | ( X1 = X3 )
                | ( X2 = X3 )
                | line(line_through_3_points(X1,X2,X3)) )
            <=> ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X2 = X3 )
                | ( X1 = X3 )
                | ( X1 = X2 )
                | line(line_through_3_points(X1,X2,X3)) ) )),
            rewrite(
              ( ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X2 = X3 )
                | ( X1 = X3 )
                | ( X1 = X2 )
                | line(line_through_3_points(X1,X2,X3)) )
            <=> ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X2 = X3 )
                | ( X1 = X3 )
                | ( X1 = X2 )
                | line(line_through_3_points(X1,X2,X3)) ) )),
            ( ( ~ point(X1)
              | ~ point(X2)
              | ~ point(X3)
              | ( X1 = X2 )
              | ( X1 = X3 )
              | ( X2 = X3 )
              | line(line_through_3_points(X1,X2,X3)) )
          <=> ( ~ point(X1)
              | ~ point(X2)
              | ~ point(X3)
              | ( X2 = X3 )
              | ( X1 = X3 )
              | ( X1 = X2 )
              | line(line_through_3_points(X1,X2,X3)) ) )),
          ( ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X1 = X2 )
            | ( X1 = X3 )
            | ( X2 = X3 )
            | line(line_through_3_points(X1,X2,X3))
            | ~ collinear(X1,X2,X3) )
        <=> ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | line(line_through_3_points(X1,X2,X3))
            | ~ collinear(X1,X2,X3) ) )),
        rewrite(
          ( ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | line(line_through_3_points(X1,X2,X3))
            | ~ collinear(X1,X2,X3) )
        <=> ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | line(line_through_3_points(X1,X2,X3)) ) )),
        ( ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X1 = X2 )
          | ( X1 = X3 )
          | ( X2 = X3 )
          | line(line_through_3_points(X1,X2,X3))
          | ~ collinear(X1,X2,X3) )
      <=> ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | line(line_through_3_points(X1,X2,X3)) ) )),
    inference(bind,[status(th)],]) ).

tff(60,plain,
    ( ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X1 = X2 )
        | ( X1 = X3 )
        | ( X2 = X3 )
        | line(line_through_3_points(X1,X2,X3))
        | ~ collinear(X1,X2,X3) )
  <=> ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | line(line_through_3_points(X1,X2,X3)) ) ),
    inference(quant_intro,[status(thm)],[59]) ).

tff(61,axiom,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X1 = X2 )
      | ( X1 = X3 )
      | ( X2 = X3 )
      | line(line_through_3_points(X1,X2,X3))
      | ~ collinear(X1,X2,X3) ),
    file('/export/starexec/sandbox/benchmark/Axioms/GEO003-0.ax',axiom_G10D) ).

tff(62,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | line(line_through_3_points(X1,X2,X3)) ),
    inference(modus_ponens,[status(thm)],[61,60]) ).

tff(63,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | line(line_through_3_points(X1,X2,X3)) ),
    inference(modus_ponens,[status(thm)],[62,58]) ).

tff(64,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | line(line_through_3_points(X1,X2,X3)) ),
    inference(skolemize,[status(sab)],[63]) ).

tff(65,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | line(line_through_3_points(X1,X2,X3)) ),
    inference(modus_ponens,[status(thm)],[64,57]) ).

tff(66,plain,
    ( ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | line(line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | line(line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | line(line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | line(line_through_3_points(point1,point2,point3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(67,plain,
    ( ( ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ( point2 = point3 )
      | ( point1 = point3 )
      | ( point1 = point2 )
      | ~ collinear(point1,point2,point3)
      | line(line_through_3_points(point1,point2,point3)) )
  <=> ( ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | line(line_through_3_points(point1,point2,point3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(68,plain,
    ( ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | line(line_through_3_points(X1,X2,X3)) )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ( point2 = point3 )
      | ( point1 = point3 )
      | ( point1 = point2 )
      | ~ collinear(point1,point2,point3)
      | line(line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | line(line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | line(line_through_3_points(point1,point2,point3)) ) ),
    inference(monotonicity,[status(thm)],[67]) ).

tff(69,plain,
    ( ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | line(line_through_3_points(X1,X2,X3)) )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ( point2 = point3 )
      | ( point1 = point3 )
      | ( point1 = point2 )
      | ~ collinear(point1,point2,point3)
      | line(line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | line(line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | line(line_through_3_points(point1,point2,point3)) ) ),
    inference(transitivity,[status(thm)],[68,66]) ).

tff(70,plain,
    ( ~ ! [X3: $i,X2: $i,X1: $i] :
          ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | line(line_through_3_points(X1,X2,X3)) )
    | ~ point(point1)
    | ~ point(point2)
    | ~ point(point3)
    | ( point2 = point3 )
    | ( point1 = point3 )
    | ( point1 = point2 )
    | ~ collinear(point1,point2,point3)
    | line(line_through_3_points(point1,point2,point3)) ),
    inference(quant_inst,[status(thm)],]) ).

tff(71,plain,
    ( ~ ! [X3: $i,X2: $i,X1: $i] :
          ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | line(line_through_3_points(X1,X2,X3)) )
    | ( point1 = point2 )
    | ( point1 = point3 )
    | ( point2 = point3 )
    | ~ point(point1)
    | ~ point(point2)
    | ~ point(point3)
    | ~ collinear(point1,point2,point3)
    | line(line_through_3_points(point1,point2,point3)) ),
    inference(modus_ponens,[status(thm)],[70,69]) ).

tff(72,plain,
    line(line_through_3_points(point1,point2,point3)),
    inference(unit_resolution,[status(thm)],[71,65,21,18,15,12,9,6,3]) ).

tff(73,plain,
    ( on(point2,a_line)
  <=> on(point2,a_line) ),
    inference(rewrite,[status(thm)],]) ).

tff(74,axiom,
    on(point2,a_line),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',point2_on_line) ).

tff(75,plain,
    on(point2,a_line),
    inference(modus_ponens,[status(thm)],[74,73]) ).

tff(76,plain,
    ( on(point1,a_line)
  <=> on(point1,a_line) ),
    inference(rewrite,[status(thm)],]) ).

tff(77,axiom,
    on(point1,a_line),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',point1_on_line) ).

tff(78,plain,
    on(point1,a_line),
    inference(modus_ponens,[status(thm)],[77,76]) ).

tff(79,plain,
    ( line(a_line)
  <=> line(a_line) ),
    inference(rewrite,[status(thm)],]) ).

tff(80,axiom,
    line(a_line),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',line) ).

tff(81,plain,
    line(a_line),
    inference(modus_ponens,[status(thm)],[80,79]) ).

tff(82,plain,
    ^ [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
      refl(
        ( ( ~ point(Z2)
          | ~ line(Y4)
          | ~ line(Y3)
          | ~ point(Z1)
          | ~ on(Z2,Y4)
          | ~ on(Z1,Y4)
          | ( Y3 = Y4 )
          | ~ on(Z2,Y3)
          | ( Z1 = Z2 )
          | ~ on(Z1,Y3) )
      <=> ( ~ point(Z2)
          | ~ line(Y4)
          | ~ line(Y3)
          | ~ point(Z1)
          | ~ on(Z2,Y4)
          | ~ on(Z1,Y4)
          | ( Y3 = Y4 )
          | ~ on(Z2,Y3)
          | ( Z1 = Z2 )
          | ~ on(Z1,Y3) ) )),
    inference(bind,[status(th)],]) ).

tff(83,plain,
    ( ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
        ( ~ point(Z2)
        | ~ line(Y4)
        | ~ line(Y3)
        | ~ point(Z1)
        | ~ on(Z2,Y4)
        | ~ on(Z1,Y4)
        | ( Y3 = Y4 )
        | ~ on(Z2,Y3)
        | ( Z1 = Z2 )
        | ~ on(Z1,Y3) )
  <=> ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
        ( ~ point(Z2)
        | ~ line(Y4)
        | ~ line(Y3)
        | ~ point(Z1)
        | ~ on(Z2,Y4)
        | ~ on(Z1,Y4)
        | ( Y3 = Y4 )
        | ~ on(Z2,Y3)
        | ( Z1 = Z2 )
        | ~ on(Z1,Y3) ) ),
    inference(quant_intro,[status(thm)],[82]) ).

tff(84,plain,
    ( ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
        ( ~ point(Z2)
        | ~ line(Y4)
        | ~ line(Y3)
        | ~ point(Z1)
        | ~ on(Z2,Y4)
        | ~ on(Z1,Y4)
        | ( Y3 = Y4 )
        | ~ on(Z2,Y3)
        | ( Z1 = Z2 )
        | ~ on(Z1,Y3) )
  <=> ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
        ( ~ point(Z2)
        | ~ line(Y4)
        | ~ line(Y3)
        | ~ point(Z1)
        | ~ on(Z2,Y4)
        | ~ on(Z1,Y4)
        | ( Y3 = Y4 )
        | ~ on(Z2,Y3)
        | ( Z1 = Z2 )
        | ~ on(Z1,Y3) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(85,plain,
    ^ [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
      trans(
        monotonicity(
          trans(
            monotonicity(
              trans(
                monotonicity(
                  trans(
                    monotonicity(
                      trans(
                        monotonicity(
                          trans(
                            monotonicity(
                              trans(
                                monotonicity(
                                  rewrite(
                                    ( ( ~ on(Z1,Y3)
                                      | ( Z1 = Z2 )
                                      | ~ on(Z2,Y3) )
                                  <=> ( ~ on(Z2,Y3)
                                      | ( Z1 = Z2 )
                                      | ~ on(Z1,Y3) ) )),
                                  ( ( ~ on(Z1,Y3)
                                    | ( Z1 = Z2 )
                                    | ~ on(Z2,Y3)
                                    | ( Y3 = Y4 ) )
                                <=> ( ~ on(Z2,Y3)
                                    | ( Z1 = Z2 )
                                    | ~ on(Z1,Y3)
                                    | ( Y3 = Y4 ) ) )),
                                rewrite(
                                  ( ( ~ on(Z2,Y3)
                                    | ( Z1 = Z2 )
                                    | ~ on(Z1,Y3)
                                    | ( Y3 = Y4 ) )
                                <=> ( ( Y3 = Y4 )
                                    | ~ on(Z2,Y3)
                                    | ( Z1 = Z2 )
                                    | ~ on(Z1,Y3) ) )),
                                ( ( ~ on(Z1,Y3)
                                  | ( Z1 = Z2 )
                                  | ~ on(Z2,Y3)
                                  | ( Y3 = Y4 ) )
                              <=> ( ( Y3 = Y4 )
                                  | ~ on(Z2,Y3)
                                  | ( Z1 = Z2 )
                                  | ~ on(Z1,Y3) ) )),
                              ( ( ~ on(Z1,Y3)
                                | ( Z1 = Z2 )
                                | ~ on(Z2,Y3)
                                | ( Y3 = Y4 )
                                | ~ on(Z1,Y4) )
                            <=> ( ( Y3 = Y4 )
                                | ~ on(Z2,Y3)
                                | ( Z1 = Z2 )
                                | ~ on(Z1,Y3)
                                | ~ on(Z1,Y4) ) )),
                            rewrite(
                              ( ( ( Y3 = Y4 )
                                | ~ on(Z2,Y3)
                                | ( Z1 = Z2 )
                                | ~ on(Z1,Y3)
                                | ~ on(Z1,Y4) )
                            <=> ( ~ on(Z1,Y4)
                                | ( Y3 = Y4 )
                                | ~ on(Z2,Y3)
                                | ( Z1 = Z2 )
                                | ~ on(Z1,Y3) ) )),
                            ( ( ~ on(Z1,Y3)
                              | ( Z1 = Z2 )
                              | ~ on(Z2,Y3)
                              | ( Y3 = Y4 )
                              | ~ on(Z1,Y4) )
                          <=> ( ~ on(Z1,Y4)
                              | ( Y3 = Y4 )
                              | ~ on(Z2,Y3)
                              | ( Z1 = Z2 )
                              | ~ on(Z1,Y3) ) )),
                          ( ( ~ on(Z1,Y3)
                            | ( Z1 = Z2 )
                            | ~ on(Z2,Y3)
                            | ( Y3 = Y4 )
                            | ~ on(Z1,Y4)
                            | ~ on(Z2,Y4) )
                        <=> ( ~ on(Z1,Y4)
                            | ( Y3 = Y4 )
                            | ~ on(Z2,Y3)
                            | ( Z1 = Z2 )
                            | ~ on(Z1,Y3)
                            | ~ on(Z2,Y4) ) )),
                        rewrite(
                          ( ( ~ on(Z1,Y4)
                            | ( Y3 = Y4 )
                            | ~ on(Z2,Y3)
                            | ( Z1 = Z2 )
                            | ~ on(Z1,Y3)
                            | ~ on(Z2,Y4) )
                        <=> ( ~ on(Z2,Y4)
                            | ~ on(Z1,Y4)
                            | ( Y3 = Y4 )
                            | ~ on(Z2,Y3)
                            | ( Z1 = Z2 )
                            | ~ on(Z1,Y3) ) )),
                        ( ( ~ on(Z1,Y3)
                          | ( Z1 = Z2 )
                          | ~ on(Z2,Y3)
                          | ( Y3 = Y4 )
                          | ~ on(Z1,Y4)
                          | ~ on(Z2,Y4) )
                      <=> ( ~ on(Z2,Y4)
                          | ~ on(Z1,Y4)
                          | ( Y3 = Y4 )
                          | ~ on(Z2,Y3)
                          | ( Z1 = Z2 )
                          | ~ on(Z1,Y3) ) )),
                      ( ( ~ on(Z1,Y3)
                        | ( Z1 = Z2 )
                        | ~ on(Z2,Y3)
                        | ( Y3 = Y4 )
                        | ~ on(Z1,Y4)
                        | ~ on(Z2,Y4)
                        | ~ point(Z1) )
                    <=> ( ~ on(Z2,Y4)
                        | ~ on(Z1,Y4)
                        | ( Y3 = Y4 )
                        | ~ on(Z2,Y3)
                        | ( Z1 = Z2 )
                        | ~ on(Z1,Y3)
                        | ~ point(Z1) ) )),
                    rewrite(
                      ( ( ~ on(Z2,Y4)
                        | ~ on(Z1,Y4)
                        | ( Y3 = Y4 )
                        | ~ on(Z2,Y3)
                        | ( Z1 = Z2 )
                        | ~ on(Z1,Y3)
                        | ~ point(Z1) )
                    <=> ( ~ point(Z1)
                        | ~ on(Z2,Y4)
                        | ~ on(Z1,Y4)
                        | ( Y3 = Y4 )
                        | ~ on(Z2,Y3)
                        | ( Z1 = Z2 )
                        | ~ on(Z1,Y3) ) )),
                    ( ( ~ on(Z1,Y3)
                      | ( Z1 = Z2 )
                      | ~ on(Z2,Y3)
                      | ( Y3 = Y4 )
                      | ~ on(Z1,Y4)
                      | ~ on(Z2,Y4)
                      | ~ point(Z1) )
                  <=> ( ~ point(Z1)
                      | ~ on(Z2,Y4)
                      | ~ on(Z1,Y4)
                      | ( Y3 = Y4 )
                      | ~ on(Z2,Y3)
                      | ( Z1 = Z2 )
                      | ~ on(Z1,Y3) ) )),
                  ( ( ~ on(Z1,Y3)
                    | ( Z1 = Z2 )
                    | ~ on(Z2,Y3)
                    | ( Y3 = Y4 )
                    | ~ on(Z1,Y4)
                    | ~ on(Z2,Y4)
                    | ~ point(Z1)
                    | ~ point(Z2) )
                <=> ( ~ point(Z1)
                    | ~ on(Z2,Y4)
                    | ~ on(Z1,Y4)
                    | ( Y3 = Y4 )
                    | ~ on(Z2,Y3)
                    | ( Z1 = Z2 )
                    | ~ on(Z1,Y3)
                    | ~ point(Z2) ) )),
                rewrite(
                  ( ( ~ point(Z1)
                    | ~ on(Z2,Y4)
                    | ~ on(Z1,Y4)
                    | ( Y3 = Y4 )
                    | ~ on(Z2,Y3)
                    | ( Z1 = Z2 )
                    | ~ on(Z1,Y3)
                    | ~ point(Z2) )
                <=> ( ~ point(Z2)
                    | ~ point(Z1)
                    | ~ on(Z2,Y4)
                    | ~ on(Z1,Y4)
                    | ( Y3 = Y4 )
                    | ~ on(Z2,Y3)
                    | ( Z1 = Z2 )
                    | ~ on(Z1,Y3) ) )),
                ( ( ~ on(Z1,Y3)
                  | ( Z1 = Z2 )
                  | ~ on(Z2,Y3)
                  | ( Y3 = Y4 )
                  | ~ on(Z1,Y4)
                  | ~ on(Z2,Y4)
                  | ~ point(Z1)
                  | ~ point(Z2) )
              <=> ( ~ point(Z2)
                  | ~ point(Z1)
                  | ~ on(Z2,Y4)
                  | ~ on(Z1,Y4)
                  | ( Y3 = Y4 )
                  | ~ on(Z2,Y3)
                  | ( Z1 = Z2 )
                  | ~ on(Z1,Y3) ) )),
              ( ( ~ on(Z1,Y3)
                | ( Z1 = Z2 )
                | ~ on(Z2,Y3)
                | ( Y3 = Y4 )
                | ~ on(Z1,Y4)
                | ~ on(Z2,Y4)
                | ~ point(Z1)
                | ~ point(Z2)
                | ~ line(Y3) )
            <=> ( ~ point(Z2)
                | ~ point(Z1)
                | ~ on(Z2,Y4)
                | ~ on(Z1,Y4)
                | ( Y3 = Y4 )
                | ~ on(Z2,Y3)
                | ( Z1 = Z2 )
                | ~ on(Z1,Y3)
                | ~ line(Y3) ) )),
            rewrite(
              ( ( ~ point(Z2)
                | ~ point(Z1)
                | ~ on(Z2,Y4)
                | ~ on(Z1,Y4)
                | ( Y3 = Y4 )
                | ~ on(Z2,Y3)
                | ( Z1 = Z2 )
                | ~ on(Z1,Y3)
                | ~ line(Y3) )
            <=> ( ~ point(Z2)
                | ~ line(Y3)
                | ~ point(Z1)
                | ~ on(Z2,Y4)
                | ~ on(Z1,Y4)
                | ( Y3 = Y4 )
                | ~ on(Z2,Y3)
                | ( Z1 = Z2 )
                | ~ on(Z1,Y3) ) )),
            ( ( ~ on(Z1,Y3)
              | ( Z1 = Z2 )
              | ~ on(Z2,Y3)
              | ( Y3 = Y4 )
              | ~ on(Z1,Y4)
              | ~ on(Z2,Y4)
              | ~ point(Z1)
              | ~ point(Z2)
              | ~ line(Y3) )
          <=> ( ~ point(Z2)
              | ~ line(Y3)
              | ~ point(Z1)
              | ~ on(Z2,Y4)
              | ~ on(Z1,Y4)
              | ( Y3 = Y4 )
              | ~ on(Z2,Y3)
              | ( Z1 = Z2 )
              | ~ on(Z1,Y3) ) )),
          ( ( ~ on(Z1,Y3)
            | ( Z1 = Z2 )
            | ~ on(Z2,Y3)
            | ( Y3 = Y4 )
            | ~ on(Z1,Y4)
            | ~ on(Z2,Y4)
            | ~ point(Z1)
            | ~ point(Z2)
            | ~ line(Y3)
            | ~ line(Y4) )
        <=> ( ~ point(Z2)
            | ~ line(Y3)
            | ~ point(Z1)
            | ~ on(Z2,Y4)
            | ~ on(Z1,Y4)
            | ( Y3 = Y4 )
            | ~ on(Z2,Y3)
            | ( Z1 = Z2 )
            | ~ on(Z1,Y3)
            | ~ line(Y4) ) )),
        rewrite(
          ( ( ~ point(Z2)
            | ~ line(Y3)
            | ~ point(Z1)
            | ~ on(Z2,Y4)
            | ~ on(Z1,Y4)
            | ( Y3 = Y4 )
            | ~ on(Z2,Y3)
            | ( Z1 = Z2 )
            | ~ on(Z1,Y3)
            | ~ line(Y4) )
        <=> ( ~ point(Z2)
            | ~ line(Y4)
            | ~ line(Y3)
            | ~ point(Z1)
            | ~ on(Z2,Y4)
            | ~ on(Z1,Y4)
            | ( Y3 = Y4 )
            | ~ on(Z2,Y3)
            | ( Z1 = Z2 )
            | ~ on(Z1,Y3) ) )),
        ( ( ~ on(Z1,Y3)
          | ( Z1 = Z2 )
          | ~ on(Z2,Y3)
          | ( Y3 = Y4 )
          | ~ on(Z1,Y4)
          | ~ on(Z2,Y4)
          | ~ point(Z1)
          | ~ point(Z2)
          | ~ line(Y3)
          | ~ line(Y4) )
      <=> ( ~ point(Z2)
          | ~ line(Y4)
          | ~ line(Y3)
          | ~ point(Z1)
          | ~ on(Z2,Y4)
          | ~ on(Z1,Y4)
          | ( Y3 = Y4 )
          | ~ on(Z2,Y3)
          | ( Z1 = Z2 )
          | ~ on(Z1,Y3) ) )),
    inference(bind,[status(th)],]) ).

tff(86,plain,
    ( ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
        ( ~ on(Z1,Y3)
        | ( Z1 = Z2 )
        | ~ on(Z2,Y3)
        | ( Y3 = Y4 )
        | ~ on(Z1,Y4)
        | ~ on(Z2,Y4)
        | ~ point(Z1)
        | ~ point(Z2)
        | ~ line(Y3)
        | ~ line(Y4) )
  <=> ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
        ( ~ point(Z2)
        | ~ line(Y4)
        | ~ line(Y3)
        | ~ point(Z1)
        | ~ on(Z2,Y4)
        | ~ on(Z1,Y4)
        | ( Y3 = Y4 )
        | ~ on(Z2,Y3)
        | ( Z1 = Z2 )
        | ~ on(Z1,Y3) ) ),
    inference(quant_intro,[status(thm)],[85]) ).

tff(87,axiom,
    ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
      ( ~ on(Z1,Y3)
      | ( Z1 = Z2 )
      | ~ on(Z2,Y3)
      | ( Y3 = Y4 )
      | ~ on(Z1,Y4)
      | ~ on(Z2,Y4)
      | ~ point(Z1)
      | ~ point(Z2)
      | ~ line(Y3)
      | ~ line(Y4) ),
    file('/export/starexec/sandbox/benchmark/Axioms/GEO003-0.ax',axiom_G1D) ).

tff(88,plain,
    ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
      ( ~ point(Z2)
      | ~ line(Y4)
      | ~ line(Y3)
      | ~ point(Z1)
      | ~ on(Z2,Y4)
      | ~ on(Z1,Y4)
      | ( Y3 = Y4 )
      | ~ on(Z2,Y3)
      | ( Z1 = Z2 )
      | ~ on(Z1,Y3) ),
    inference(modus_ponens,[status(thm)],[87,86]) ).

tff(89,plain,
    ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
      ( ~ point(Z2)
      | ~ line(Y4)
      | ~ line(Y3)
      | ~ point(Z1)
      | ~ on(Z2,Y4)
      | ~ on(Z1,Y4)
      | ( Y3 = Y4 )
      | ~ on(Z2,Y3)
      | ( Z1 = Z2 )
      | ~ on(Z1,Y3) ),
    inference(modus_ponens,[status(thm)],[88,84]) ).

tff(90,plain,
    ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
      ( ~ point(Z2)
      | ~ line(Y4)
      | ~ line(Y3)
      | ~ point(Z1)
      | ~ on(Z2,Y4)
      | ~ on(Z1,Y4)
      | ( Y3 = Y4 )
      | ~ on(Z2,Y3)
      | ( Z1 = Z2 )
      | ~ on(Z1,Y3) ),
    inference(skolemize,[status(sab)],[89]) ).

tff(91,plain,
    ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
      ( ~ point(Z2)
      | ~ line(Y4)
      | ~ line(Y3)
      | ~ point(Z1)
      | ~ on(Z2,Y4)
      | ~ on(Z1,Y4)
      | ( Y3 = Y4 )
      | ~ on(Z2,Y3)
      | ( Z1 = Z2 )
      | ~ on(Z1,Y3) ),
    inference(modus_ponens,[status(thm)],[90,83]) ).

tff(92,plain,
    ( ( ~ ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
            ( ~ point(Z2)
            | ~ line(Y4)
            | ~ line(Y3)
            | ~ point(Z1)
            | ~ on(Z2,Y4)
            | ~ on(Z1,Y4)
            | ( Y3 = Y4 )
            | ~ on(Z2,Y3)
            | ( Z1 = Z2 )
            | ~ on(Z1,Y3) )
      | ( point1 = point2 )
      | ~ line(a_line)
      | ~ point(point1)
      | ~ point(point2)
      | ~ line(line_through_3_points(point1,point2,point3))
      | ~ on(point1,a_line)
      | ( line_through_3_points(point1,point2,point3) = a_line )
      | ~ on(point1,line_through_3_points(point1,point2,point3))
      | ~ on(point2,a_line)
      | ~ on(point2,line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
            ( ~ point(Z2)
            | ~ line(Y4)
            | ~ line(Y3)
            | ~ point(Z1)
            | ~ on(Z2,Y4)
            | ~ on(Z1,Y4)
            | ( Y3 = Y4 )
            | ~ on(Z2,Y3)
            | ( Z1 = Z2 )
            | ~ on(Z1,Y3) )
      | ( point1 = point2 )
      | ~ line(a_line)
      | ~ point(point1)
      | ~ point(point2)
      | ~ line(line_through_3_points(point1,point2,point3))
      | ~ on(point1,a_line)
      | ( line_through_3_points(point1,point2,point3) = a_line )
      | ~ on(point1,line_through_3_points(point1,point2,point3))
      | ~ on(point2,a_line)
      | ~ on(point2,line_through_3_points(point1,point2,point3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(93,plain,
    ( ( ~ point(point2)
      | ~ line(a_line)
      | ~ line(line_through_3_points(point1,point2,point3))
      | ~ point(point1)
      | ~ on(point2,a_line)
      | ~ on(point1,a_line)
      | ( line_through_3_points(point1,point2,point3) = a_line )
      | ~ on(point2,line_through_3_points(point1,point2,point3))
      | ( point1 = point2 )
      | ~ on(point1,line_through_3_points(point1,point2,point3)) )
  <=> ( ( point1 = point2 )
      | ~ line(a_line)
      | ~ point(point1)
      | ~ point(point2)
      | ~ line(line_through_3_points(point1,point2,point3))
      | ~ on(point1,a_line)
      | ( line_through_3_points(point1,point2,point3) = a_line )
      | ~ on(point1,line_through_3_points(point1,point2,point3))
      | ~ on(point2,a_line)
      | ~ on(point2,line_through_3_points(point1,point2,point3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(94,plain,
    ( ( ~ ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
            ( ~ point(Z2)
            | ~ line(Y4)
            | ~ line(Y3)
            | ~ point(Z1)
            | ~ on(Z2,Y4)
            | ~ on(Z1,Y4)
            | ( Y3 = Y4 )
            | ~ on(Z2,Y3)
            | ( Z1 = Z2 )
            | ~ on(Z1,Y3) )
      | ~ point(point2)
      | ~ line(a_line)
      | ~ line(line_through_3_points(point1,point2,point3))
      | ~ point(point1)
      | ~ on(point2,a_line)
      | ~ on(point1,a_line)
      | ( line_through_3_points(point1,point2,point3) = a_line )
      | ~ on(point2,line_through_3_points(point1,point2,point3))
      | ( point1 = point2 )
      | ~ on(point1,line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
            ( ~ point(Z2)
            | ~ line(Y4)
            | ~ line(Y3)
            | ~ point(Z1)
            | ~ on(Z2,Y4)
            | ~ on(Z1,Y4)
            | ( Y3 = Y4 )
            | ~ on(Z2,Y3)
            | ( Z1 = Z2 )
            | ~ on(Z1,Y3) )
      | ( point1 = point2 )
      | ~ line(a_line)
      | ~ point(point1)
      | ~ point(point2)
      | ~ line(line_through_3_points(point1,point2,point3))
      | ~ on(point1,a_line)
      | ( line_through_3_points(point1,point2,point3) = a_line )
      | ~ on(point1,line_through_3_points(point1,point2,point3))
      | ~ on(point2,a_line)
      | ~ on(point2,line_through_3_points(point1,point2,point3)) ) ),
    inference(monotonicity,[status(thm)],[93]) ).

tff(95,plain,
    ( ( ~ ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
            ( ~ point(Z2)
            | ~ line(Y4)
            | ~ line(Y3)
            | ~ point(Z1)
            | ~ on(Z2,Y4)
            | ~ on(Z1,Y4)
            | ( Y3 = Y4 )
            | ~ on(Z2,Y3)
            | ( Z1 = Z2 )
            | ~ on(Z1,Y3) )
      | ~ point(point2)
      | ~ line(a_line)
      | ~ line(line_through_3_points(point1,point2,point3))
      | ~ point(point1)
      | ~ on(point2,a_line)
      | ~ on(point1,a_line)
      | ( line_through_3_points(point1,point2,point3) = a_line )
      | ~ on(point2,line_through_3_points(point1,point2,point3))
      | ( point1 = point2 )
      | ~ on(point1,line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
            ( ~ point(Z2)
            | ~ line(Y4)
            | ~ line(Y3)
            | ~ point(Z1)
            | ~ on(Z2,Y4)
            | ~ on(Z1,Y4)
            | ( Y3 = Y4 )
            | ~ on(Z2,Y3)
            | ( Z1 = Z2 )
            | ~ on(Z1,Y3) )
      | ( point1 = point2 )
      | ~ line(a_line)
      | ~ point(point1)
      | ~ point(point2)
      | ~ line(line_through_3_points(point1,point2,point3))
      | ~ on(point1,a_line)
      | ( line_through_3_points(point1,point2,point3) = a_line )
      | ~ on(point1,line_through_3_points(point1,point2,point3))
      | ~ on(point2,a_line)
      | ~ on(point2,line_through_3_points(point1,point2,point3)) ) ),
    inference(transitivity,[status(thm)],[94,92]) ).

tff(96,plain,
    ( ~ ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
          ( ~ point(Z2)
          | ~ line(Y4)
          | ~ line(Y3)
          | ~ point(Z1)
          | ~ on(Z2,Y4)
          | ~ on(Z1,Y4)
          | ( Y3 = Y4 )
          | ~ on(Z2,Y3)
          | ( Z1 = Z2 )
          | ~ on(Z1,Y3) )
    | ~ point(point2)
    | ~ line(a_line)
    | ~ line(line_through_3_points(point1,point2,point3))
    | ~ point(point1)
    | ~ on(point2,a_line)
    | ~ on(point1,a_line)
    | ( line_through_3_points(point1,point2,point3) = a_line )
    | ~ on(point2,line_through_3_points(point1,point2,point3))
    | ( point1 = point2 )
    | ~ on(point1,line_through_3_points(point1,point2,point3)) ),
    inference(quant_inst,[status(thm)],]) ).

tff(97,plain,
    ( ~ ! [Y4: $i,Z1: $i,Y3: $i,Z2: $i] :
          ( ~ point(Z2)
          | ~ line(Y4)
          | ~ line(Y3)
          | ~ point(Z1)
          | ~ on(Z2,Y4)
          | ~ on(Z1,Y4)
          | ( Y3 = Y4 )
          | ~ on(Z2,Y3)
          | ( Z1 = Z2 )
          | ~ on(Z1,Y3) )
    | ( point1 = point2 )
    | ~ line(a_line)
    | ~ point(point1)
    | ~ point(point2)
    | ~ line(line_through_3_points(point1,point2,point3))
    | ~ on(point1,a_line)
    | ( line_through_3_points(point1,point2,point3) = a_line )
    | ~ on(point1,line_through_3_points(point1,point2,point3))
    | ~ on(point2,a_line)
    | ~ on(point2,line_through_3_points(point1,point2,point3)) ),
    inference(modus_ponens,[status(thm)],[96,95]) ).

tff(98,plain,
    line_through_3_points(point1,point2,point3) = a_line,
    inference(unit_resolution,[status(thm)],[97,91,21,18,81,78,75,12,72,55,38]) ).

tff(99,plain,
    ( on(point3,line_through_3_points(point1,point2,point3))
  <=> on(point3,a_line) ),
    inference(monotonicity,[status(thm)],[98]) ).

tff(100,plain,
    ( on(point3,a_line)
  <=> on(point3,line_through_3_points(point1,point2,point3)) ),
    inference(symmetry,[status(thm)],[99]) ).

tff(101,plain,
    ( ~ on(point3,a_line)
  <=> ~ on(point3,line_through_3_points(point1,point2,point3)) ),
    inference(monotonicity,[status(thm)],[100]) ).

tff(102,plain,
    ( ~ on(point3,a_line)
  <=> ~ on(point3,a_line) ),
    inference(rewrite,[status(thm)],]) ).

tff(103,axiom,
    ~ on(point3,a_line),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',point3_not_on_line) ).

tff(104,plain,
    ~ on(point3,a_line),
    inference(modus_ponens,[status(thm)],[103,102]) ).

tff(105,plain,
    ~ on(point3,line_through_3_points(point1,point2,point3)),
    inference(modus_ponens,[status(thm)],[104,101]) ).

tff(106,plain,
    ^ [X3: $i,X2: $i,X1: $i] :
      refl(
        ( ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X3,line_through_3_points(X1,X2,X3)) )
      <=> ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X3,line_through_3_points(X1,X2,X3)) ) )),
    inference(bind,[status(th)],]) ).

tff(107,plain,
    ( ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X3,line_through_3_points(X1,X2,X3)) )
  <=> ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X3,line_through_3_points(X1,X2,X3)) ) ),
    inference(quant_intro,[status(thm)],[106]) ).

tff(108,plain,
    ( ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X3,line_through_3_points(X1,X2,X3)) )
  <=> ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X3,line_through_3_points(X1,X2,X3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(109,plain,
    ^ [X3: $i,X2: $i,X1: $i] :
      trans(
        monotonicity(
          trans(
            monotonicity(
              trans(
                monotonicity(
                  trans(
                    monotonicity(
                      trans(
                        monotonicity(
                          rewrite(
                            ( ( ~ point(X1)
                              | ~ point(X2)
                              | ~ point(X3) )
                          <=> ( ~ point(X1)
                              | ~ point(X2)
                              | ~ point(X3) ) )),
                          ( ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) )
                        <=> ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) ) )),
                        rewrite(
                          ( ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) )
                        <=> ( ~ point(X1)
                            | ~ point(X2)
                            | ~ point(X3)
                            | ( X1 = X2 ) ) )),
                        ( ( ~ point(X1)
                          | ~ point(X2)
                          | ~ point(X3)
                          | ( X1 = X2 ) )
                      <=> ( ~ point(X1)
                          | ~ point(X2)
                          | ~ point(X3)
                          | ( X1 = X2 ) ) )),
                      ( ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X2 )
                        | ( X1 = X3 ) )
                    <=> ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X2 )
                        | ( X1 = X3 ) ) )),
                    rewrite(
                      ( ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X2 )
                        | ( X1 = X3 ) )
                    <=> ( ~ point(X1)
                        | ~ point(X2)
                        | ~ point(X3)
                        | ( X1 = X3 )
                        | ( X1 = X2 ) ) )),
                    ( ( ~ point(X1)
                      | ~ point(X2)
                      | ~ point(X3)
                      | ( X1 = X2 )
                      | ( X1 = X3 ) )
                  <=> ( ~ point(X1)
                      | ~ point(X2)
                      | ~ point(X3)
                      | ( X1 = X3 )
                      | ( X1 = X2 ) ) )),
                  ( ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X1 = X2 )
                    | ( X1 = X3 )
                    | ( X2 = X3 ) )
                <=> ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X1 = X3 )
                    | ( X1 = X2 )
                    | ( X2 = X3 ) ) )),
                rewrite(
                  ( ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X1 = X3 )
                    | ( X1 = X2 )
                    | ( X2 = X3 ) )
                <=> ( ~ point(X1)
                    | ~ point(X2)
                    | ~ point(X3)
                    | ( X2 = X3 )
                    | ( X1 = X3 )
                    | ( X1 = X2 ) ) )),
                ( ( ~ point(X1)
                  | ~ point(X2)
                  | ~ point(X3)
                  | ( X1 = X2 )
                  | ( X1 = X3 )
                  | ( X2 = X3 ) )
              <=> ( ~ point(X1)
                  | ~ point(X2)
                  | ~ point(X3)
                  | ( X2 = X3 )
                  | ( X1 = X3 )
                  | ( X1 = X2 ) ) )),
              ( ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X1 = X2 )
                | ( X1 = X3 )
                | ( X2 = X3 )
                | on(X3,line_through_3_points(X1,X2,X3)) )
            <=> ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X2 = X3 )
                | ( X1 = X3 )
                | ( X1 = X2 )
                | on(X3,line_through_3_points(X1,X2,X3)) ) )),
            rewrite(
              ( ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X2 = X3 )
                | ( X1 = X3 )
                | ( X1 = X2 )
                | on(X3,line_through_3_points(X1,X2,X3)) )
            <=> ( ~ point(X1)
                | ~ point(X2)
                | ~ point(X3)
                | ( X2 = X3 )
                | ( X1 = X3 )
                | ( X1 = X2 )
                | on(X3,line_through_3_points(X1,X2,X3)) ) )),
            ( ( ~ point(X1)
              | ~ point(X2)
              | ~ point(X3)
              | ( X1 = X2 )
              | ( X1 = X3 )
              | ( X2 = X3 )
              | on(X3,line_through_3_points(X1,X2,X3)) )
          <=> ( ~ point(X1)
              | ~ point(X2)
              | ~ point(X3)
              | ( X2 = X3 )
              | ( X1 = X3 )
              | ( X1 = X2 )
              | on(X3,line_through_3_points(X1,X2,X3)) ) )),
          ( ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X1 = X2 )
            | ( X1 = X3 )
            | ( X2 = X3 )
            | on(X3,line_through_3_points(X1,X2,X3))
            | ~ collinear(X1,X2,X3) )
        <=> ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | on(X3,line_through_3_points(X1,X2,X3))
            | ~ collinear(X1,X2,X3) ) )),
        rewrite(
          ( ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | on(X3,line_through_3_points(X1,X2,X3))
            | ~ collinear(X1,X2,X3) )
        <=> ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X3,line_through_3_points(X1,X2,X3)) ) )),
        ( ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X1 = X2 )
          | ( X1 = X3 )
          | ( X2 = X3 )
          | on(X3,line_through_3_points(X1,X2,X3))
          | ~ collinear(X1,X2,X3) )
      <=> ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X3,line_through_3_points(X1,X2,X3)) ) )),
    inference(bind,[status(th)],]) ).

tff(110,plain,
    ( ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X1 = X2 )
        | ( X1 = X3 )
        | ( X2 = X3 )
        | on(X3,line_through_3_points(X1,X2,X3))
        | ~ collinear(X1,X2,X3) )
  <=> ! [X3: $i,X2: $i,X1: $i] :
        ( ~ point(X1)
        | ~ point(X2)
        | ~ point(X3)
        | ( X2 = X3 )
        | ( X1 = X3 )
        | ( X1 = X2 )
        | ~ collinear(X1,X2,X3)
        | on(X3,line_through_3_points(X1,X2,X3)) ) ),
    inference(quant_intro,[status(thm)],[109]) ).

tff(111,axiom,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X1 = X2 )
      | ( X1 = X3 )
      | ( X2 = X3 )
      | on(X3,line_through_3_points(X1,X2,X3))
      | ~ collinear(X1,X2,X3) ),
    file('/export/starexec/sandbox/benchmark/Axioms/GEO003-0.ax',axiom_G10C) ).

tff(112,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | on(X3,line_through_3_points(X1,X2,X3)) ),
    inference(modus_ponens,[status(thm)],[111,110]) ).

tff(113,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | on(X3,line_through_3_points(X1,X2,X3)) ),
    inference(modus_ponens,[status(thm)],[112,108]) ).

tff(114,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | on(X3,line_through_3_points(X1,X2,X3)) ),
    inference(skolemize,[status(sab)],[113]) ).

tff(115,plain,
    ! [X3: $i,X2: $i,X1: $i] :
      ( ~ point(X1)
      | ~ point(X2)
      | ~ point(X3)
      | ( X2 = X3 )
      | ( X1 = X3 )
      | ( X1 = X2 )
      | ~ collinear(X1,X2,X3)
      | on(X3,line_through_3_points(X1,X2,X3)) ),
    inference(modus_ponens,[status(thm)],[114,107]) ).

tff(116,plain,
    ( ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X3,line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point3,line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X3,line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point3,line_through_3_points(point1,point2,point3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(117,plain,
    ( ( ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ( point2 = point3 )
      | ( point1 = point3 )
      | ( point1 = point2 )
      | ~ collinear(point1,point2,point3)
      | on(point3,line_through_3_points(point1,point2,point3)) )
  <=> ( ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point3,line_through_3_points(point1,point2,point3)) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(118,plain,
    ( ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X3,line_through_3_points(X1,X2,X3)) )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ( point2 = point3 )
      | ( point1 = point3 )
      | ( point1 = point2 )
      | ~ collinear(point1,point2,point3)
      | on(point3,line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X3,line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point3,line_through_3_points(point1,point2,point3)) ) ),
    inference(monotonicity,[status(thm)],[117]) ).

tff(119,plain,
    ( ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X3,line_through_3_points(X1,X2,X3)) )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ( point2 = point3 )
      | ( point1 = point3 )
      | ( point1 = point2 )
      | ~ collinear(point1,point2,point3)
      | on(point3,line_through_3_points(point1,point2,point3)) )
  <=> ( ~ ! [X3: $i,X2: $i,X1: $i] :
            ( ~ point(X1)
            | ~ point(X2)
            | ~ point(X3)
            | ( X2 = X3 )
            | ( X1 = X3 )
            | ( X1 = X2 )
            | ~ collinear(X1,X2,X3)
            | on(X3,line_through_3_points(X1,X2,X3)) )
      | ( point1 = point2 )
      | ( point1 = point3 )
      | ( point2 = point3 )
      | ~ point(point1)
      | ~ point(point2)
      | ~ point(point3)
      | ~ collinear(point1,point2,point3)
      | on(point3,line_through_3_points(point1,point2,point3)) ) ),
    inference(transitivity,[status(thm)],[118,116]) ).

tff(120,plain,
    ( ~ ! [X3: $i,X2: $i,X1: $i] :
          ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X3,line_through_3_points(X1,X2,X3)) )
    | ~ point(point1)
    | ~ point(point2)
    | ~ point(point3)
    | ( point2 = point3 )
    | ( point1 = point3 )
    | ( point1 = point2 )
    | ~ collinear(point1,point2,point3)
    | on(point3,line_through_3_points(point1,point2,point3)) ),
    inference(quant_inst,[status(thm)],]) ).

tff(121,plain,
    ( ~ ! [X3: $i,X2: $i,X1: $i] :
          ( ~ point(X1)
          | ~ point(X2)
          | ~ point(X3)
          | ( X2 = X3 )
          | ( X1 = X3 )
          | ( X1 = X2 )
          | ~ collinear(X1,X2,X3)
          | on(X3,line_through_3_points(X1,X2,X3)) )
    | ( point1 = point2 )
    | ( point1 = point3 )
    | ( point2 = point3 )
    | ~ point(point1)
    | ~ point(point2)
    | ~ point(point3)
    | ~ collinear(point1,point2,point3)
    | on(point3,line_through_3_points(point1,point2,point3)) ),
    inference(modus_ponens,[status(thm)],[120,119]) ).

tff(122,plain,
    on(point3,line_through_3_points(point1,point2,point3)),
    inference(unit_resolution,[status(thm)],[121,115,21,18,15,12,9,6,3]) ).

tff(123,plain,
    $false,
    inference(unit_resolution,[status(thm)],[122,105]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12  % Problem  : GEO077-4 : TPTP v8.1.0. Released v1.0.0.
% 0.07/0.12  % Command  : z3_tptp -proof -model -t:%d -file:%s
% 0.12/0.33  % Computer : n027.cluster.edu
% 0.12/0.33  % Model    : x86_64 x86_64
% 0.12/0.33  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.33  % Memory   : 8042.1875MB
% 0.12/0.33  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.12/0.33  % CPULimit : 300
% 0.12/0.33  % WCLimit  : 300
% 0.12/0.33  % DateTime : Wed Aug 31 05:31:32 EDT 2022
% 0.12/0.33  % CPUTime  : 
% 0.12/0.34  Z3tptp [4.8.9.0] (c) 2006-20**. Microsoft Corp.
% 0.12/0.34  Usage: tptp [options] [-file:]file
% 0.12/0.34    -h, -?       prints this message.
% 0.12/0.34    -smt2        print SMT-LIB2 benchmark.
% 0.12/0.34    -m, -model   generate model.
% 0.12/0.34    -p, -proof   generate proof.
% 0.12/0.34    -c, -core    generate unsat core of named formulas.
% 0.12/0.34    -st, -statistics display statistics.
% 0.12/0.34    -t:timeout   set timeout (in second).
% 0.12/0.34    -smt2status  display status in smt2 format instead of SZS.
% 0.12/0.34    -check_status check the status produced by Z3 against annotation in benchmark.
% 0.12/0.34    -<param>:<value> configuration parameter and value.
% 0.12/0.34    -o:<output-file> file to place output in.
% 0.19/0.39  % SZS status Unsatisfiable
% 0.19/0.39  % SZS output start Proof
% See solution above
%------------------------------------------------------------------------------