## TPTP Axioms File: LCL012^0.ax

```%------------------------------------------------------------------------------
% File     : LCL012^0 : TPTP v7.5.0. Released v4.0.0.
% Domain   : Logic Calculi
% Axioms   : Propositional intuitionistic logic in HOL
% Version  : [MT48] axioms.
% English  : An embedding of propositional intuitionisitc logic in HOL based
%            on the McKinsey/Tarski translation of propositional intuitionistic
%            logic to modal logic S4.

% Refs     : [MT48]  McKinsey & Tarski (1948), Some Theorems about the Sent
%          : [Gol06] Goldblatt (2006), Mathematical Modal Logic: A View of
%          : [Ben09] Benzmueller (2009), Email to Geoff Sutcliffe
%          : [BP10]  Benzmueller & Paulson (2009), Exploring Properties of
% Source   : [Ben09]
% Names    : IL2HOL_3 [Ben09]

% Status   : Satisfiable
% Syntax   : Number of formulae    :   41 (   0 unit;  20 type;  19 defn)
%            Number of atoms       :  264 (  19 equality;  48 variable)
%            Maximal formula depth :    8 (   5 average)
%            Number of connectives :   53 (   3   ~;   1   |;   2   &;  45   @)
%                                         (   0 <=>;   2  =>;   0  <=;   0 <~>)
%                                         (   0  ~|;   0  ~&;   0  !!;   0  ??)
%            Number of type conns  :   95 (  95   >;   0   *;   0   +)
%            Number of symbols     :   23 (  20   :;   0  :=)
%            Number of variables   :   40 (   1 sgn;   7   !;   2   ?;  31   ^)
%                                         (  40   :;   0  :=;   0  !>;   0  ?*)
% SPC      :

%------------------------------------------------------------------------------
%----Modal Logic S4 in HOL
%----We define an accessibility relation irel
thf(irel_type,type,(
irel: \$i > \$i > \$o )).

%----We require reflexivity and transitivity for irel
thf(refl_axiom,axiom,(
! [X: \$i] :
( irel @ X @ X ) )).

thf(trans_axiom,axiom,(
! [X: \$i,Y: \$i,Z: \$i] :
( ( ( irel @ X @ Y )
& ( irel @ Y @ Z ) )
=> ( irel @ X @ Z ) ) )).

%----We define S4 connective mnot (as set complement)
thf(mnot_decl_type,type,(
mnot: ( \$i > \$o ) > \$i > \$o )).

thf(mnot,definition,
( mnot
= ( ^ [X: \$i > \$o,U: \$i] :
~ ( X @ U ) ) )).

%----We define S4 connective mor (as set union)
thf(mor_decl_type,type,(
mor: ( \$i > \$o ) > ( \$i > \$o ) > \$i > \$o )).

thf(mor,definition,
( mor
= ( ^ [X: \$i > \$o,Y: \$i > \$o,U: \$i] :
( ( X @ U )
| ( Y @ U ) ) ) )).

%----We define S4 connective mand (as set intersection)
thf(mand_decl_type,type,(
mand: ( \$i > \$o ) > ( \$i > \$o ) > \$i > \$o )).

thf(mand,definition,
( mand
= ( ^ [X: \$i > \$o,Y: \$i > \$o,U: \$i] :
( ( X @ U )
& ( Y @ U ) ) ) )).

%----We define S4 connective mimpl
thf(mimplies_decl_type,type,(
mimplies: ( \$i > \$o ) > ( \$i > \$o ) > \$i > \$o )).

thf(mimplies,definition,
( mimplies
= ( ^ [U: \$i > \$o,V: \$i > \$o] :
( mor @ ( mnot @ U ) @ V ) ) )).

%----Definition of mbox_s4; since irel is reflexive and transitive,
%----it is easy to show that the K and the T axiom hold for mbox_s4
thf(mbox_s4_decl_type,type,(
mbox_s4: ( \$i > \$o ) > \$i > \$o )).

thf(mbox_s4,definition,
( mbox_s4
= ( ^ [P: \$i > \$o,X: \$i] :
! [Y: \$i] :
( ( irel @ X @ Y )
=> ( P @ Y ) ) ) )).

%----Intuitionistic Logic in Modal Logic S4
%----Definition of iatom: iatom P = (mbox_s4 P)
thf(iatom_type,type,(
iatom: ( \$i > \$o ) > \$i > \$o )).

thf(iatom,definition,
( iatom
= ( ^ [P: \$i > \$o] :
( mbox_s4 @ P ) ) )).

%----Definition of inot: inot P = (mbox_s4 (mnot P))
thf(inot_type,type,(
inot: ( \$i > \$o ) > \$i > \$o )).

thf(inot,definition,
( inot
= ( ^ [P: \$i > \$o] :
( mbox_s4 @ ( mnot @ P ) ) ) )).

%----Definition of true and false
thf(itrue_type,type,(
itrue: \$i > \$o )).

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

thf(ifalse_type,type,(
ifalse: \$i > \$o )).

thf(ifalse,definition,
( ifalse
= ( inot @ itrue ) )).

%----Definition of iand: iand P Q = (mand P Q)
thf(iand_type,type,(
iand: ( \$i > \$o ) > ( \$i > \$o ) > \$i > \$o )).

thf(iand,definition,
( iand
= ( ^ [P: \$i > \$o,Q: \$i > \$o] :
( mand @ P @ Q ) ) )).

%----Definition of ior: ior P Q = (mor P Q)
thf(ior_type,type,(
ior: ( \$i > \$o ) > ( \$i > \$o ) > \$i > \$o )).

thf(ior,definition,
( ior
= ( ^ [P: \$i > \$o,Q: \$i > \$o] :
( mor @ P @ Q ) ) )).

%----Definition of iimplies: iimplies P Q =
%---- (mbox_s4 (mimiplies P Q)
thf(iimplies_type,type,(
iimplies: ( \$i > \$o ) > ( \$i > \$o ) > \$i > \$o )).

thf(iimplies,definition,
( iimplies
= ( ^ [P: \$i > \$o,Q: \$i > \$o] :
( mbox_s4 @ ( mimplies @ P @ Q ) ) ) )).

%----Definition of iimplied: iimplied P Q = (iimplies Q P)
thf(iimplied_type,type,(
iimplied: ( \$i > \$o ) > ( \$i > \$o ) > \$i > \$o )).

thf(iimplied,definition,
( iimplied
= ( ^ [P: \$i > \$o,Q: \$i > \$o] :
( iimplies @ Q @ P ) ) )).

%----Definition of iequiv: iequiv P Q =
%---- (iand (iimplies P Q) (iimplies Q P))
thf(iequiv_type,type,(
iequiv: ( \$i > \$o ) > ( \$i > \$o ) > \$i > \$o )).

thf(iequiv,definition,
( iequiv
= ( ^ [P: \$i > \$o,Q: \$i > \$o] :
( iand @ ( iimplies @ P @ Q ) @ ( iimplies @ Q @ P ) ) ) )).

%----Definition of ixor: ixor P Q = (mnot (iequiv P Q))
thf(ixor_type,type,(
ixor: ( \$i > \$o ) > ( \$i > \$o ) > \$i > \$o )).

thf(ixor,definition,
( ixor
= ( ^ [P: \$i > \$o,Q: \$i > \$o] :
( mnot @ ( iequiv @ P @ Q ) ) ) )).

%----Definition of validity
thf(ivalid_type,type,(
ivalid: ( \$i > \$o ) > \$o )).

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

%----Definition of satisfiability
thf(isatisfiable_type,type,(
isatisfiable: ( \$i > \$o ) > \$o )).

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

%----Definition of countersatisfiability
thf(icountersatisfiable_type,type,(
icountersatisfiable: ( \$i > \$o ) > \$o )).

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

%----Definition of invalidity
thf(iinvalid_type,type,(
iinvalid: ( \$i > \$o ) > \$o )).

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

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