TPTP Axioms File: RNG002-0.ax


%--------------------------------------------------------------------------
% File     : RNG002-0 : TPTP v8.2.0. Released v1.0.0.
% Domain   : Ring Theory
% Axioms   : Ring theory (equality) axioms
% Version  : [PS81] (equality) axioms :
%            Reduced & Augmented > Complete.
% English  :

% Refs     : [PS81]  Peterson & Stickel (1981), Complete Sets of Reductions
% Source   : [ANL]
% Names    :

% Status   : Satisfiable
% Syntax   : Number of clauses     :   14 (  14 unt;   0 nHn;   1 RR)
%            Number of literals    :   14 (  14 equ;   0 neg)
%            Maximal clause size   :    1 (   1 avg)
%            Maximal term depth    :    3 (   2 avg)
%            Number of predicates  :    1 (   0 usr;   0 prp; 2-2 aty)
%            Number of functors    :    4 (   4 usr;   1 con; 0-2 aty)
%            Number of variables   :   25 (   2 sgn)
% SPC      : 

% Comments : Not sure if these are complete. I don't know if the reductions
%            given in [PS81] are suitable for ATP.
%--------------------------------------------------------------------------
%----Existence of left identity for addition
cnf(left_identity,axiom,
    add(additive_identity,X) = X ).

%----Existence of left additive additive_inverse
cnf(left_additive_inverse,axiom,
    add(additive_inverse(X),X) = additive_identity ).

%----Distributive property of product over sum
cnf(distribute1,axiom,
    multiply(X,add(Y,Z)) = add(multiply(X,Y),multiply(X,Z)) ).

cnf(distribute2,axiom,
    multiply(add(X,Y),Z) = add(multiply(X,Z),multiply(Y,Z)) ).

%----Inverse of identity is identity, stupid
cnf(additive_inverse_identity,axiom,
    additive_inverse(additive_identity) = additive_identity ).

%----Inverse of additive_inverse of X is X
cnf(additive_inverse_additive_inverse,axiom,
    additive_inverse(additive_inverse(X)) = X ).

%----Behavior of 0 and the multiplication operation
cnf(multiply_additive_id1,axiom,
    multiply(X,additive_identity) = additive_identity ).

cnf(multiply_additive_id2,axiom,
    multiply(additive_identity,X) = additive_identity ).

%----Inverse of (x + y) is additive_inverse(x) + additive_inverse(y)
cnf(distribute_additive_inverse,axiom,
    additive_inverse(add(X,Y)) = add(additive_inverse(X),additive_inverse(Y)) ).

%----x * additive_inverse(y) = additive_inverse (x * y)
cnf(multiply_additive_inverse1,axiom,
    multiply(X,additive_inverse(Y)) = additive_inverse(multiply(X,Y)) ).

cnf(multiply_additive_inverse2,axiom,
    multiply(additive_inverse(X),Y) = additive_inverse(multiply(X,Y)) ).

%----Associativity of addition
cnf(associative_addition,axiom,
    add(add(X,Y),Z) = add(X,add(Y,Z)) ).

%----Commutativity of addition
cnf(commutative_addition,axiom,
    add(X,Y) = add(Y,X) ).

%----Associativity of product
cnf(associative_multiplication,axiom,
    multiply(multiply(X,Y),Z) = multiply(X,multiply(Y,Z)) ).

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