TPTP Axioms File: SET001-2.ax


%--------------------------------------------------------------------------
% File     : SET001-2 : TPTP v7.5.0. Released v1.0.0.
% Domain   : Set Theory
% Axioms   : Membership and intersection
% Version  : [LS74] axioms.
% English  :

% Refs     : [LS74]  Lawrence & Starkey (1974), Experimental tests of resol
% Source   : [SPRFN]
% Names    : Problem 118 [LS74]

% Status   : Satisfiable
% Syntax   : Number of clauses    :    6 (   2 non-Horn;   0 unit;   4 RR)
%            Number of atoms      :   20 (   0 equality)
%            Maximal clause size  :    4 (   3 average)
%            Number of predicates :    2 (   0 propositional; 2-3 arity)
%            Number of functors   :    1 (   0 constant; 3-3 arity)
%            Number of variables  :   21 (   2 singleton)
%            Maximal term depth   :    2 (   1 average)
% SPC      : 

% Comments : Requires SET001-0.ax
%--------------------------------------------------------------------------
cnf(member_of_intersection_is_member_of_set1,axiom,
    ( ~ intersection(Set1,Set2,Intersection)
    | ~ member(Element,Intersection)
    | member(Element,Set1) )).

cnf(member_of_intersection_is_member_of_set2,axiom,
    ( ~ intersection(Set1,Set2,Intersection)
    | ~ member(Element,Intersection)
    | member(Element,Set2) )).

cnf(member_of_both_is_member_of_intersection,axiom,
    ( ~ intersection(Set1,Set2,Intersection)
    | ~ member(Element,Set2)
    | ~ member(Element,Set1)
    | member(Element,Intersection) )).

cnf(intersection_axiom1,axiom,
    ( member(h(Set1,Set2,Intersection),Intersection)
    | intersection(Set1,Set2,Intersection)
    | member(h(Set1,Set2,Intersection),Set1) )).

cnf(intersection_axiom2,axiom,
    ( member(h(Set1,Set2,Intersection),Intersection)
    | intersection(Set1,Set2,Intersection)
    | member(h(Set1,Set2,Intersection),Set2) )).

cnf(intersection_axiom3,axiom,
    ( ~ member(h(Set1,Set2,Intersection),Intersection)
    | ~ member(h(Set1,Set2,Intersection),Set2)
    | ~ member(h(Set1,Set2,Intersection),Set1)
    | intersection(Set1,Set2,Intersection) )).

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