TPTP Axioms File: GEO006+0.ax


%------------------------------------------------------------------------------
% File     : GEO006+0 : TPTP v7.5.0. Released v3.3.0.
% Domain   : Geometry (Constructive)
% Axioms   : Apartness geometry
% Version  : [vPl95] axioms.
% English  :

% Refs     : [vPl95] von Plato (1995), The Axioms of Constructive Geometry
% Source   : [ILTP]
% Names    :

% Status   : Satisfiable
% Syntax   : Number of formulae    :   14 (   3 unit)
%            Number of atoms       :   35 (   0 equality)
%            Maximal formula depth :    9 (   5 average)
%            Number of connectives :   28 (   7 ~  ;   9  |;   1  &)
%                                         (   0 <=>;  11 =>;   0 <=)
%                                         (   0 <~>;   0 ~|;   0 ~&)
%            Number of predicates  :    4 (   0 propositional; 2-2 arity)
%            Number of functors    :    2 (   0 constant; 2-2 arity)
%            Number of variables   :   33 (   0 singleton;  33 !;   0 ?)
%            Maximal term depth    :    2 (   1 average)
% SPC      : 

% Comments :
%------------------------------------------------------------------------------
%----Apartness for distinct points, distinct lines, convergent lines
fof(apart1,axiom,(
    ! [X] : ~ distinct_points(X,X) )).

fof(apart2,axiom,(
    ! [X] : ~ distinct_lines(X,X) )).

fof(apart3,axiom,(
    ! [X] : ~ convergent_lines(X,X) )).

fof(apart4,axiom,(
    ! [X,Y,Z] :
      ( distinct_points(X,Y)
     => ( distinct_points(X,Z)
        | distinct_points(Y,Z) ) ) )).

fof(apart5,axiom,(
    ! [X,Y,Z] :
      ( distinct_lines(X,Y)
     => ( distinct_lines(X,Z)
        | distinct_lines(Y,Z) ) ) )).

fof(ax6,axiom,(
    ! [X,Y,Z] :
      ( convergent_lines(X,Y)
     => ( convergent_lines(X,Z)
        | convergent_lines(Y,Z) ) ) )).

%----Connecting lines and intersection points
fof(ci1,axiom,(
    ! [X,Y] :
      ( distinct_points(X,Y)
     => ~ apart_point_and_line(X,line_connecting(X,Y)) ) )).

fof(ci2,axiom,(
    ! [X,Y] :
      ( distinct_points(X,Y)
     => ~ apart_point_and_line(Y,line_connecting(X,Y)) ) )).

fof(ci3,axiom,(
    ! [X,Y] :
      ( convergent_lines(X,Y)
     => ~ apart_point_and_line(intersection_point(X,Y),X) ) )).

fof(ci4,axiom,(
    ! [X,Y] :
      ( convergent_lines(X,Y)
     => ~ apart_point_and_line(intersection_point(X,Y),Y) ) )).

%----Constructive uniqueness axiom for lines and points
fof(cu1,axiom,(
    ! [X,Y,U,V] :
      ( ( distinct_points(X,Y)
        & distinct_lines(U,V) )
     => ( apart_point_and_line(X,U)
        | apart_point_and_line(X,V)
        | apart_point_and_line(Y,U)
        | apart_point_and_line(Y,V) ) ) )).

%----Compatibility of equality with apartness and convergence
fof(ceq1,axiom,(
    ! [X,Y,Z] :
      ( apart_point_and_line(X,Y)
     => ( distinct_points(X,Z)
        | apart_point_and_line(Z,Y) ) ) )).

fof(ceq2,axiom,(
    ! [X,Y,Z] :
      ( apart_point_and_line(X,Y)
     => ( distinct_lines(Y,Z)
        | apart_point_and_line(X,Z) ) ) )).

fof(ceq3,axiom,(
    ! [X,Y,Z] :
      ( convergent_lines(X,Y)
     => ( distinct_lines(Y,Z)
        | convergent_lines(X,Z) ) ) )).

%------------------------------------------------------------------------------