TPTP Problem File: PUZ157_1.p
View Solutions
- Solve Problem
%------------------------------------------------------------------------------
% File : PUZ157_1 : TPTP v9.2.1. Released v9.1.0.
% Domain : Puzzles
% Problem : Alex and Chris work on Leo-III
% Version : Especial.
% English :
% Refs :
% Source : [TPTP]
% Names :
% Status : CounterSatisfiable
% Rating : ? v9.1.0
% Syntax : Number of formulae : 13 ( 3 unt; 7 typ; 0 def)
% Number of atoms : 11 ( 1 equ)
% Maximal formula atoms : 3 ( 1 avg)
% Number of connectives : 11 ( 3 ~; 0 |; 1 &)
% ( 0 <=>; 1 =>; 0 <=; 0 <~>)
% ( 3 {.}; 0 {#})
% Maximal formula depth : 4 ( 3 avg)
% Maximal term depth : 1 ( 1 avg)
% Number of types : 3 ( 2 usr)
% Number of type conns : 3 ( 2 >; 1 *; 0 +; 0 <<)
% Number of predicates : 5 ( 2 usr; 2 prp; 0-2 aty)
% Number of functors : 3 ( 3 usr; 3 con; 0-0 aty)
% Number of variables : 3 ( 1 !; 2 ?; 3 :)
% SPC : NX0_CSA_EQU_NAR
% Comments :
%------------------------------------------------------------------------------
tff(semantics,logic,
$alethic_modal ==
[ $domains == $constant,
$designation == $rigid,
$terms == $local,
$modalities == $modal_system_M ] ).
tff(person_decl,type,
person: $tType ).
tff(product_decl,type,
product: $tType ).
tff(alex_decl,type,
alex: person ).
tff(chris_decl,type,
chris: person ).
tff(leo_decl,type,
leo: product ).
tff(work_hard_decl,type,
work_hard: ( person * product ) > $o ).
tff(gets_rich_decl,type,
gets_rich: person > $o ).
%----If there is a product that a person works hard on, then
%----it's possible that the person will get rich.
tff(work_hard_to_get_rich,axiom,
! [P: person] :
( ? [R: product] : work_hard(P,R)
=> ( {$possible} @ ( gets_rich(P) ) ) ) ).
%----Nobody necessarily gets rich.
tff(not_all_get_rich,axiom,
~ ? [P: person] : ( {$necessary} @ ( gets_rich(P) ) ) ).
%----Alex and Chris work hard on Leo-III.
tff(alex_works_on_leo,axiom,
work_hard(alex,leo) ).
tff(chris_works_on_leo,axiom,
work_hard(chris,leo) ).
%----Chris is not Alex
tff(chris_not_alex,axiom,
chris != alex ).
%----It's possible that Alex gets rich but Chris does not.
tff(only_alex_gets_rich,conjecture,
( {$possible}
@ ( gets_rich(alex)
& ~ gets_rich(chris) ) ) ).
%------------------------------------------------------------------------------