TPTP Axioms File: TIM002_1.ax
%------------------------------------------------------------------------------
% File : TIM002_1 : TPTP v9.3.1. Released v9.3.0.
% Domain : Time
% Axioms : Allen and Hayes axioms for points in time
% Version : [AH83] axioms : Especial.
% English :
% Refs : [All83] Allen (1983), Maintaining Knowledge about Temporal Int
% : [AH89] Allen & Hayes (1989), Moments and Points in an Interva
% Source : [ChatGPT]
% Names :
% Status : Satisfiable
% Syntax : Number of formulae : 16 ( 2 unt; 5 typ; 0 def)
% Number of atoms : 28 ( 7 equ)
% Maximal formula atoms : 4 ( 2 avg)
% Number of connectives : 18 ( 1 ~; 1 |; 7 &)
% ( 8 <=>; 1 =>; 0 <=; 0 <~>)
% Maximal formula depth : 6 ( 5 avg)
% Maximal term depth : 2 ( 1 avg)
% Number of types : 2 ( 1 usr)
% Number of type conns : 6 ( 4 >; 2 *; 0 +; 0 <<)
% Number of predicates : 10 ( 9 usr; 1 prp; 0-2 aty)
% Number of functors : 2 ( 2 usr; 0 con; 1-1 aty)
% Number of variables : 21 ( 21 !; 0 ?; 21 :)
% SPC : TF0_SAT_EQU_NAR_NDT
% Comments : Requires TIM002_0.ax
%------------------------------------------------------------------------------
tff(time_type,type,
time: $tType ).
tff(start_type,type,
start: interval > time ).
tff(end_type,type,
end: interval > time ).
tff(lt_type,type,
lt: ( time * time ) > $o ).
tff(le_type,type,
le: ( time * time ) > $o ).
tff(le_definition,axiom,
! [X: time,Y: time] :
( le(X,Y)
<=> ( lt(X,Y)
| ( X = Y ) ) ) ).
tff(lt_irreflexive,axiom,
! [X: time] : ~ lt(X,X) ).
tff(lt_transitive,axiom,
! [X: time,Y: time,Z: time] :
( ( lt(X,Y)
& lt(Y,Z) )
=> lt(X,Z) ) ).
tff(interval_wellformed,axiom,
! [I: interval] : lt(start(I),end(I)) ).
tff(before_def,axiom,
! [I: interval,J: interval] :
( before(I,J)
<=> lt(end(I),start(J)) ) ).
tff(meets_def,axiom,
! [I: interval,J: interval] :
( meets(I,J)
<=> ( end(I) = start(J) ) ) ).
tff(overlaps_def,axiom,
! [I: interval,J: interval] :
( overlaps(I,J)
<=> ( lt(start(I),start(J))
& lt(start(J),end(I))
& lt(end(I),end(J)) ) ) ).
tff(starts_def,axiom,
! [I: interval,J: interval] :
( starts(I,J)
<=> ( ( start(I) = start(J) )
& lt(end(I),end(J)) ) ) ).
tff(during_def,axiom,
! [I: interval,J: interval] :
( during(I,J)
<=> ( lt(start(J),start(I))
& lt(end(I),end(J)) ) ) ).
tff(finishes_def,axiom,
! [I: interval,J: interval] :
( finishes(I,J)
<=> ( ( end(I) = end(J) )
& lt(start(J),start(I)) ) ) ).
tff(equal_def,axiom,
! [I: interval,J: interval] :
( I = J
<=> ( ( start(I) = start(J) )
& ( end(I) = end(J) ) ) ) ).
%------------------------------------------------------------------------------