TPTP Axioms File: LCL017^0.ax


%------------------------------------------------------------------------------
% File     : LCL017^0 : TPTP v7.5.0. Released v6.1.0.
% Domain   : Logic Calculi (Second Order Modal Logic)
% Axioms   : Embedding of second order modal logic S5 with universal access
% Version  : [Ben16] axioms.
% English  : Embedding of second order modal logic S5 (with a universal 
%            accessibility) relation in simple type theory. In this case, the 
%            guarding accessibility constraints in the definition of box and 
%            diamond can be dropped.

% Refs     : [Ben16] Benzmueller (2016), Email to Geoff Sutcliffe
% Source   : [Ben16]
% Names    : QML_S5U.ax [Ben16]

% Status   : Satisfiable
% Syntax   : Number of formulae    :   41 (   1 unit;  21 type;  20 defn)
%            Number of atoms       :  200 (  21 equality;  58 variable)
%            Maximal formula depth :    9 (   5 average)
%            Number of connectives :   43 (   4   ~;   2   |;   3   &;  31   @)
%                                         (   1 <=>;   2  =>;   0  <=;   0 <~>)
%                                         (   0  ~|;   0  ~&;   0  !!;   0  ??)
%            Number of type conns  :  119 ( 119   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   26 (  21   :)
%            Number of variables   :   53 (   5 sgn;   6   !;   4   ?;  43   ^)
%                                         (  53   :;   0  !>;   0  ?*)
%                                         (   0  @-;   0  @+)
% SPC      : TH0_SAT_EQU

% Comments : 
%------------------------------------------------------------------------------
%----Declaration of additional base type mu
thf(mu_type,type,(
    mu: $tType )).

%----Equality on individuals
thf(meq_ind_type,type,(
    meq_ind: mu > mu > $i > $o )).

thf(meq_ind,definition,
    ( meq_ind
    = ( ^ [X: mu,Y: mu,W: $i] : ( X = Y ) ) )).

%----Modal operators mtrue, mfalse, mnot, mor, mand, mimplies, mequiv, ...
thf(mtrue_type,type,(
    mtrue: $i > $o )).

thf(mtrue,definition,
    ( mtrue
    = ( ^ [W: $i] : $true ) )).

thf(mfalse_type,type,(
    mfalse: $i > $o )).

thf(mfalse,definition,
    ( mfalse
    = ( ^ [W: $i] : $false ) )).

thf(mnot_type,type,(
    mnot: ( $i > $o ) > $i > $o )).

thf(mnot,definition,
    ( mnot
    = ( ^ [Phi: $i > $o,W: $i] :
          ~ ( Phi @ W ) ) )).

thf(mor_type,type,(
    mor: ( $i > $o ) > ( $i > $o ) > $i > $o )).

thf(mor,definition,
    ( mor
    = ( ^ [Phi: $i > $o,Psi: $i > $o,W: $i] :
          ( ( Phi @ W )
          | ( Psi @ W ) ) ) )).

thf(mand_type,type,(
    mand: ( $i > $o ) > ( $i > $o ) > $i > $o )).

thf(mand,definition,
    ( mand
    = ( ^ [Phi: $i > $o,Psi: $i > $o,W: $i] :
          ( ( Phi @ W )
          & ( Psi @ W ) ) ) )).

thf(mimplies_type,type,(
    mimplies: ( $i > $o ) > ( $i > $o ) > $i > $o )).

thf(mimplies,definition,
    ( mimplies
    = ( ^ [Phi: $i > $o,Psi: $i > $o,W: $i] :
          ( ( Phi @ W )
         => ( Psi @ W ) ) ) )).

thf(mimplied_type,type,(
    mimplied: ( $i > $o ) > ( $i > $o ) > $i > $o )).

thf(mimplied,definition,
    ( mimplied
    = ( ^ [Phi: $i > $o,Psi: $i > $o,W: $i] :
          ( ( Psi @ W )
         => ( Phi @ W ) ) ) )).

thf(mequiv_type,type,(
    mequiv: ( $i > $o ) > ( $i > $o ) > $i > $o )).

thf(mequiv,definition,
    ( mequiv
    = ( ^ [Phi: $i > $o,Psi: $i > $o,W: $i] :
          ( ( Phi @ W )
        <=> ( Psi @ W ) ) ) )).

thf(mxor_type,type,(
    mxor: ( $i > $o ) > ( $i > $o ) > $i > $o )).

thf(mxor,definition,
    ( mxor
    = ( ^ [Phi: $i > $o,Psi: $i > $o,W: $i] :
          ( ( ( Phi @ W )
            & ~ ( Psi @ W ) )
          | ( ~ ( Phi @ W )
            & ( Psi @ W ) ) ) ) )).

%----Universal quantification: individuals
thf(mforall_ind_type,type,(
    mforall_ind: ( mu > $i > $o ) > $i > $o )).

thf(mforall_ind,definition,
    ( mforall_ind
    = ( ^ [Phi: mu > $i > $o,W: $i] :
        ! [X: mu] :
          ( Phi @ X @ W ) ) )).

%----Universal quantification: sets of individuals (properties)
thf(mforall_indset_type,type,(
    mforall_indset: ( ( mu > $i > $o ) > $i > $o ) > $i > $o )).

thf(mforall_indset,definition,
    ( mforall_indset
    = ( ^ [Phi: ( mu > $i > $o ) > $i > $o,W: $i] :
        ! [X: mu > $i > $o] :
          ( Phi @ X @ W ) ) )).

%----Universal quantification: propositions
thf(mforall_prop_type,type,(
    mforall_prop: ( ( $i > $o ) > $i > $o ) > $i > $o )).

thf(mforall_prop,definition,
    ( mforall_prop
    = ( ^ [Phi: ( $i > $o ) > $i > $o,W: $i] :
        ! [P: $i > $o] :
          ( Phi @ P @ W ) ) )).

%----Existential quantification: individuals
thf(mexists_ind_type,type,(
    mexists_ind: ( mu > $i > $o ) > $i > $o )).

thf(mexists_ind,definition,
    ( mexists_ind
    = ( ^ [Phi: mu > $i > $o,W: $i] :
        ? [X: mu] :
          ( Phi @ X @ W ) ) )).

%----Existential quantification: sets of individuals (properties)
thf(mexists_indset_type,type,(
    mexists_indset: ( ( mu > $i > $o ) > $i > $o ) > $i > $o )).

thf(mexists_indset,definition,
    ( mexists_indset
    = ( ^ [Phi: ( mu > $i > $o ) > $i > $o,W: $i] :
        ? [X: mu > $i > $o] :
          ( Phi @ X @ W ) ) )).

%----Existential quantification: propositions
thf(mexists_prop_type,type,(
    mexists_prop: ( ( $i > $o ) > $i > $o ) > $i > $o )).

thf(mexists_prop,definition,
    ( mexists_prop
    = ( ^ [Phi: ( $i > $o ) > $i > $o,W: $i] :
        ? [P: $i > $o] :
          ( Phi @ P @ W ) ) )).

%----Box operator (exploting universal accessibility)
thf(mbox_type,type,(
    mbox: ( $i > $o ) > $i > $o )).

thf(mbox,definition,
    ( mbox
    = ( ^ [Phi: $i > $o,W: $i] :
        ! [V: $i] :
          ( Phi @ V ) ) )).

%----Diamond operator
thf(mdia_type,type,(
    mdia: ( $i > $o ) > $i > $o )).

thf(mdia,definition,
    ( mdia
    = ( ^ [Phi: $i > $o,W: $i] :
        ? [V: $i] :
          ( Phi @ V ) ) )).

%----The notion of validity
thf(mvalid_type,type,(
    mvalid: ( $i > $o ) > $o )).

thf(mvalid,definition,
    ( mvalid
    = ( ^ [Phi: $i > $o] :
        ! [W: $i] :
          ( Phi @ W ) ) )).

%----Definition of invalidity
thf(minvalid_type,type,(
    minvalid: ( $i > $o ) > $o )).

thf(minvalid,definition,
    ( minvalid
    = ( ^ [Phi: $i > $o] :
        ! [W: $i] :
          ~ ( Phi @ W ) ) )).

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