## TPTP Axioms File: GRP001-0.ax

```%--------------------------------------------------------------------------
% File     : GRP001-0 : TPTP v7.5.0. Released v1.0.0.
% Domain   : Group theory (Monoids)
% Axioms   : Monoid axioms
% Version  : [MOW76] axioms.
% English  :

% Refs     : [MOW76] McCharen et al. (1976), Problems and Experiments for a
%          : [Ver93] Veroff (1993), Email to G. Sutcliffe
% Source   : [MOW76]
% Names    :

% Status   : Satisfiable
% Syntax   : Number of clauses    :    6 (   0 non-Horn;   3 unit;   3 RR)
%            Number of atoms      :   14 (   1 equality)
%            Maximal clause size  :    4 (   2 average)
%            Number of predicates :    2 (   0 propositional; 2-3 arity)
%            Number of functors   :    2 (   1 constant; 0-2 arity)
%            Number of variables  :   20 (   0 singleton)
%            Maximal term depth   :    2 (   1 average)
% 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.
%          : I cut down the [MOW76] group axioms for this.
%--------------------------------------------------------------------------
cnf(left_identity,axiom,
( product(identity,X,X) )).

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

%----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) )).

%--------------------------------------------------------------------------
```