TPTP Axioms File: KLE001+4.ax
%------------------------------------------------------------------------------
% File : KLE001+4 : TPTP v9.0.0. Released v3.6.0.
% Domain : Kleene Algebra
% Axioms : Boolean domain, antidomain, codomain, coantidomain
% Version : [Hoe08] axioms.
% English :
% Refs : [Hoe08] Hoefner (2008), Email to G. Sutcliffe
% Source : [Hoe08]
% Names :
% Status : Satisfiable
% Syntax : Number of formulae : 8 ( 8 unt; 0 def)
% Number of atoms : 8 ( 8 equ)
% Maximal formula atoms : 1 ( 1 avg)
% Number of connectives : 0 ( 0 ~; 0 |; 0 &)
% ( 0 <=>; 0 =>; 0 <=; 0 <~>)
% Maximal formula depth : 3 ( 2 avg)
% Maximal term depth : 6 ( 2 avg)
% Number of predicates : 1 ( 0 usr; 0 prp; 2-2 aty)
% Number of functors : 8 ( 8 usr; 2 con; 0-2 aty)
% Number of variables : 10 ( 10 !; 0 ?)
% SPC :
% Comments : Requires KLE001+0.ax, KLE002+0.ax or KLE003+0.ax
% : With KLE001+0 generates Idempotent semirings with domain/codomain
% With KLE002+0 generates Kleene Algebra with domain domain/codomain
% With KLE003+0 generates Omega Algebra with domain/codomain
%------------------------------------------------------------------------------
%----Boolean domain axioms (a la Desharnais & Struth)
fof(domain1,axiom,
! [X0] : multiplication(antidomain(X0),X0) = zero ).
fof(domain2,axiom,
! [X0,X1] : addition(antidomain(multiplication(X0,X1)),antidomain(multiplication(X0,antidomain(antidomain(X1))))) = antidomain(multiplication(X0,antidomain(antidomain(X1)))) ).
fof(domain3,axiom,
! [X0] : addition(antidomain(antidomain(X0)),antidomain(X0)) = one ).
fof(domain4,axiom,
! [X0] : domain(X0) = antidomain(antidomain(X0)) ).
%----Boolean codomain axioms (a la Desharnais & Struth)
fof(codomain1,axiom,
! [X0] : multiplication(X0,coantidomain(X0)) = zero ).
fof(codomain2,axiom,
! [X0,X1] : addition(coantidomain(multiplication(X0,X1)),coantidomain(multiplication(coantidomain(coantidomain(X0)),X1))) = coantidomain(multiplication(coantidomain(coantidomain(X0)),X1)) ).
fof(codomain3,axiom,
! [X0] : addition(coantidomain(coantidomain(X0)),coantidomain(X0)) = one ).
fof(codomain4,axiom,
! [X0] : codomain(X0) = coantidomain(coantidomain(X0)) ).
%------------------------------------------------------------------------------