TPTP Axioms File: CSR001_0.ax
%------------------------------------------------------------------------------
% File : CSR001_0 : TPTP v9.1.0. Released v9.1.0.
% Domain : Commonsense Reasoning
% Axioms : Kitchen sink scenario
% Version : [Sha97] axioms : Especial.
% English :
% Refs : [Sha97] Shanahan (1997), Solving the Frame Problem
% Source : [Sha97]
% Names :
% Status : Satisfiable
% Syntax : Number of formulae : 26 ( 0 unt; 14 typ; 0 def)
% Number of atoms : 54 ( 0 equ)
% Maximal formula atoms : 6 ( 4 avg)
% Number of connectives : 56 ( 14 ~; 2 |; 28 &)
% ( 2 <=>; 10 =>; 0 <=; 0 <~>)
% Maximal formula depth : 12 ( 9 avg)
% Maximal term depth : 3 ( 1 avg)
% Number arithmetic : 50 ( 6 atm; 14 fun; 12 num; 18 var)
% Number of types : 5 ( 3 usr; 1 ari)
% Number of type conns : 30 ( 11 >; 19 *; 0 +; 0 <<)
% Number of predicates : 11 ( 10 usr; 0 prp; 2-4 aty)
% Number of functors : 4 ( 1 usr; 2 con; 0-2 aty)
% Number of variables : 44 ( 36 !; 8 ?; 44 :)
% SPC :
% Comments :
%------------------------------------------------------------------------------
tff(time_type,type,
time: $tType ).
tff(fluent_type,type,
fluent: $tType ).
tff(event_type,type,
event: $tType ).
tff(startedIn_decl,type,
startedIn: ( time * fluent * time ) > $o ).
tff(stoppedIn_decl,type,
stoppedIn: ( time * fluent * time ) > $o ).
tff(happens_decl,type,
happens: ( event * time ) > $o ).
tff(initiates_decl,type,
initiates: ( event * fluent * time ) > $o ).
tff(terminates_decl,type,
terminates: ( event * fluent * time ) > $o ).
tff(releases_decl,type,
releases: ( event * fluent * time ) > $o ).
tff(trajectory_decl,type,
trajectory: ( fluent * time * fluent * $int ) > $o ).
tff(antitrajectory_decl,type,
antitrajectory: ( fluent * time * fluent * $int ) > $o ).
tff(holdsAt_decl,type,
holdsAt: ( fluent * time ) > $o ).
tff(releasedAt_decl,type,
releasedAt: ( fluent * time ) > $o ).
tff(at_time_decl,type,
at_time: $int > time ).
tff(stoppedin_defn,axiom,
! [Time1: $int,Fluent: fluent,Time2: $int] :
( stoppedIn(at_time(Time1),Fluent,at_time(Time2))
<=> ? [Event: event,Time: $int] :
( happens(Event,at_time(Time))
& $less(Time1,Time)
& $less(Time,Time2)
& terminates(Event,Fluent,at_time(Time)) ) ) ).
tff(startedin_defn,axiom,
! [Time1: $int,Fluent: fluent,Time2: $int] :
( startedIn(at_time(Time1),Fluent,at_time(Time2))
<=> ? [Event: event,Time: $int] :
( happens(Event,at_time(Time))
& $less(Time1,Time)
& $less(Time,Time2)
& initiates(Event,Fluent,at_time(Time)) ) ) ).
tff(change_holding,axiom,
! [Event: event,Time: $int,Fluent: fluent,Fluent2: fluent,Offset: $int] :
( ( happens(Event,at_time(Time))
& initiates(Event,Fluent,at_time(Time))
& $less(0,Offset)
& trajectory(Fluent,at_time(Time),Fluent2,Offset)
& ~ stoppedIn(at_time(Time),Fluent,at_time($sum(Time,Offset))) )
=> holdsAt(Fluent2,at_time($sum(Time,Offset))) ) ).
tff(antitrajectory,axiom,
! [Event: event,Time1: $int,Fluent1: fluent,Time2: $int,Fluent2: fluent] :
( ( happens(Event,at_time(Time1))
& terminates(Event,Fluent1,at_time(Time1))
& $less(0,Time2)
& antitrajectory(Fluent1,at_time(Time1),Fluent2,Time2)
& ~ startedIn(at_time(Time1),Fluent1,at_time($sum(Time1,Time2))) )
=> holdsAt(Fluent2,at_time($sum(Time1,Time2))) ) ).
tff(keep_holding,axiom,
! [Fluent: fluent,Time: $int] :
( ( holdsAt(Fluent,at_time(Time))
& ~ releasedAt(Fluent,at_time($sum(Time,1)))
& ~ ? [Event: event] :
( happens(Event,at_time(Time))
& terminates(Event,Fluent,at_time(Time)) ) )
=> holdsAt(Fluent,at_time($sum(Time,1))) ) ).
tff(keep_not_holding,axiom,
! [Fluent: fluent,Time: $int] :
( ( ~ holdsAt(Fluent,at_time(Time))
& ~ releasedAt(Fluent,at_time($sum(Time,1)))
& ~ ? [Event: event] :
( happens(Event,at_time(Time))
& initiates(Event,Fluent,at_time(Time)) ) )
=> ~ holdsAt(Fluent,at_time($sum(Time,1))) ) ).
tff(keep_released,axiom,
! [Fluent: fluent,Time: $int] :
( ( releasedAt(Fluent,at_time(Time))
& ~ ? [Event: event] :
( happens(Event,at_time(Time))
& ( initiates(Event,Fluent,at_time(Time))
| terminates(Event,Fluent,at_time(Time)) ) ) )
=> releasedAt(Fluent,at_time($sum(Time,1))) ) ).
tff(keep_not_released,axiom,
! [Fluent: fluent,Time: $int] :
( ( ~ releasedAt(Fluent,at_time(Time))
& ~ ? [Event: event] :
( happens(Event,at_time(Time))
& releases(Event,Fluent,at_time(Time)) ) )
=> ~ releasedAt(Fluent,at_time($sum(Time,1))) ) ).
tff(happens_holds,axiom,
! [Event: event,Time: $int,Fluent: fluent] :
( ( happens(Event,at_time(Time))
& initiates(Event,Fluent,at_time(Time)) )
=> holdsAt(Fluent,at_time($sum(Time,1))) ) ).
tff(happens_terminates_not_holds,axiom,
! [Event: event,Time: $int,Fluent: fluent] :
( ( happens(Event,at_time(Time))
& terminates(Event,Fluent,at_time(Time)) )
=> ~ holdsAt(Fluent,at_time($sum(Time,1))) ) ).
tff(happens_releases,axiom,
! [Event: event,Time: $int,Fluent: fluent] :
( ( happens(Event,at_time(Time))
& releases(Event,Fluent,at_time(Time)) )
=> releasedAt(Fluent,at_time($sum(Time,1))) ) ).
tff(happens_not_released,axiom,
! [Event: event,Time: $int,Fluent: fluent] :
( ( happens(Event,at_time(Time))
& ( initiates(Event,Fluent,at_time(Time))
| terminates(Event,Fluent,at_time(Time)) ) )
=> ~ releasedAt(Fluent,at_time($sum(Time,1))) ) ).
%tff(before_time,axiom,
% ~ ? [X:$int] :
% ? [T:time] :
% ( $less(X,0)
% & at_time(X) = T ) ).
%------------------------------------------------------------------------------