TPTP Axioms File: GRP003-0.ax


%--------------------------------------------------------------------------
% File     : GRP003-0 : TPTP v9.0.0. Released v1.0.0.
% Domain   : Group Theory
% Axioms   : Group theory axioms
% Version  : [MOW76] axioms.
% English  :

% Refs     : [MOW76] McCharen et al. (1976), Problems and Experiments for a
%          : [Wos88] Wos (1988), Automated Reasoning - 33 Basic Research Pr
%          : [Ver93] Veroff (1993), Email to G. Sutcliffe
% Source   : [MOW76]
% Names    :

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

% Comments : [Ver93] pointed out that the traditional labelling of the
%            closure and well_definedness axioms was wrong. The correct
%            labelling indicates that product is a total function.
%          : These axioms are used in [Wos88] p.184.
%--------------------------------------------------------------------------
cnf(left_identity,axiom,
    product(identity,X,X) ).

cnf(right_identity,axiom,
    product(X,identity,X) ).

cnf(left_inverse,axiom,
    product(inverse(X),X,identity) ).

cnf(right_inverse,axiom,
    product(X,inverse(X),identity) ).

%----This axiom is called closure or totality in some axiomatisations
cnf(total_function1,axiom,
    product(X,Y,multiply(X,Y)) ).

%----This axiom is called well_definedness in some axiomatisations
cnf(total_function2,axiom,
    ( ~ product(X,Y,Z)
    | ~ product(X,Y,W)
    | Z = W ) ).

cnf(associativity1,axiom,
    ( ~ product(X,Y,U)
    | ~ product(Y,Z,V)
    | ~ product(U,Z,W)
    | product(X,V,W) ) ).

cnf(associativity2,axiom,
    ( ~ product(X,Y,U)
    | ~ product(Y,Z,V)
    | ~ product(X,V,W)
    | product(U,Z,W) ) ).

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