## TPTP Axioms File: GEO004+2.ax

```%--------------------------------------------------------------------------
% File     : GEO004+2 : TPTP v7.5.0. Released v2.4.0.
% Domain   : Geometry (Oriented curves)
% Axioms   : Oriented curves
% Version  : [EHK99] axioms.
% English  :

% Refs     : [KE99]  Kulik & Eschenbach (1999), A Geometry of Oriented Curv
%          : [EHK99] Eschenbach et al. (1999), Representing Simple Trajecto
% Source   : [EHK99]
% Names    :

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

% Comments : Requires GEO004+0.ax GEO004+1.ax
%--------------------------------------------------------------------------
fof(between_o_defn,axiom,
( ! [O,P,Q,R] :
( between_o(O,P,Q,R)
<=> ( ( ordered_by(O,P,Q)
& ordered_by(O,Q,R) )
| ( ordered_by(O,R,Q)
& ordered_by(O,Q,P) ) ) ) )).

fof(start_point_defn,axiom,
( ! [P,O] :
( start_point(P,O)
<=> ( incident_o(P,O)
& ! [Q] :
( ( P != Q
& incident_o(Q,O) )
=> ordered_by(O,P,Q) ) ) ) )).

fof(finish_point_defn,axiom,
( ! [P,O] :
( finish_point(P,O)
<=> ( incident_o(P,O)
& ! [Q] :
( ( P != Q
& incident_o(Q,O) )
=> ordered_by(O,Q,P) ) ) ) )).

fof(o1,axiom,
( ! [O,P,Q] :
( ordered_by(O,P,Q)
=> ( incident_o(P,O)
& incident_o(Q,O) ) ) )).

fof(o2,axiom,
( ! [O] :
? [C] :
( open(C)
& ! [P] :
( incident_o(P,O)
<=> incident_c(P,C) ) ) )).

fof(o3,axiom,
( ! [P,Q,R,O] :
( between_o(O,P,Q,R)
<=> ? [C] :
( ! [P] :
( incident_o(P,O)
<=> incident_c(P,C) )
& between_c(C,P,Q,R) ) ) )).

fof(o4,axiom,
( ! [O] :
? [P] : start_point(P,O) )).

fof(o5,axiom,
( ! [P,Q,C] :
( ( open(C)
& P != Q
& incident_c(P,C)
& incident_c(Q,C) )
=> ? [O] :
( ! [R] :
( incident_o(R,O)
<=> incident_c(R,C) )
& ordered_by(O,P,Q) ) ) )).

fof(o6,axiom,
( ! [O1,O2] :
( ! [P,Q] :
( ordered_by(O1,P,Q)
<=> ordered_by(O2,P,Q) )
=> O1 = O2 ) )).

fof(underlying_curve_defn,axiom,
( ! [C,O] :
( C = underlying_curve(O)
<=> ! [P] :
( incident_o(P,O)
<=> incident_c(P,C) ) ) )).

%--------------------------------------------------------------------------
```