TPTP Problem File: SEV216^5.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : SEV216^5 : TPTP v7.5.0. Released v4.0.0.
% Domain   : Set Theory (Sets of sets)
% Problem  : TPS problem from S-T-THMS
% Version  : Especial.
% English  :

% Refs     : [Bro09] Brown (2009), Email to Geoff Sutcliffe
% Source   : [Bro09]
% Names    : tps_1251 [Bro09]

% Status   : Unknown
% Rating   : 1.00 v4.0.0
% Syntax   : Number of formulae    :    5 (   0 unit;   4 type;   0 defn)
%            Number of atoms       :  390 (  58 equality; 243 variable)
%            Maximal formula depth :   35 (   9 average)
%            Number of connectives :  274 (   1   ~;  24   |;  64   &; 163   @)
%                                         (   0 <=>;  22  =>;   0  <=;   0 <~>)
%                                         (   0  ~|;   0  ~&)
%            Number of type conns  :   22 (  22   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :    7 (   4   :;   0   =)
%            Number of variables   :   97 (   0 sgn;  49   !;  48   ?;   0   ^)
%                                         (  97   :;   0  !>;   0  ?*)
%                                         (   0  @-;   0  @+)
% SPC      : TH0_UNK_EQU_NAR

% Comments : This problem is from the TPS library. Copyright (c) 2009 The TPS
%            project in the Department of Mathematical Sciences at Carnegie
%            Mellon University. Distributed under the Creative Commons copyleft
%            license: http://creativecommons.org/licenses/by-sa/3.0/
%------------------------------------------------------------------------------
thf(iS_type,type,(
    iS: $tType )).

thf(cP,type,(
    cP: iS > iS > iS )).

thf(cD,type,(
    cD: iS > $o )).

thf(c0,type,(
    c0: iS )).

thf(cS_T_LR_LEM1_pme,conjecture,
    ( ( ! [Xx: iS,Xy: iS] :
          ( ( cP @ Xx @ Xy )
         != c0 )
      & ! [Xx: iS,Xy: iS,Xu: iS,Xv: iS] :
          ( ( ( cP @ Xx @ Xu )
            = ( cP @ Xy @ Xv ) )
         => ( ( Xx = Xy )
            & ( Xu = Xv ) ) )
      & ! [X: iS > $o] :
          ( ( ( X @ c0 )
            & ! [Xx: iS,Xy: iS] :
                ( ( ( X @ Xx )
                  & ( X @ Xy ) )
               => ( X @ ( cP @ Xx @ Xy ) ) ) )
         => ! [Xx: iS] :
              ( X @ Xx ) )
      & ( cD @ c0 )
      & ! [Xx: iS,Xy: iS] :
          ( ( ( cD @ Xy )
            & ! [R: iS > iS > iS > $o] :
                ( ( $true
                  & ! [Xa: iS,Xb: iS,Xc: iS] :
                      ( ( ( ( Xa = c0 )
                          & ( Xb = Xc ) )
                        | ( ( Xb = c0 )
                          & ( Xa = Xc ) )
                        | ? [Xx1: iS,Xx2: iS,Xy1: iS,Xy2: iS,Xz1: iS,Xz2: iS] :
                            ( ( Xa
                              = ( cP @ Xx1 @ Xx2 ) )
                            & ( Xb
                              = ( cP @ Xy1 @ Xy2 ) )
                            & ( Xc
                              = ( cP @ Xz1 @ Xz2 ) )
                            & ( R @ Xx1 @ Xy1 @ Xz1 )
                            & ( R @ Xx2 @ Xy2 @ Xz2 ) ) )
                     => ( R @ Xa @ Xb @ Xc ) ) )
               => ( R @ Xx @ Xy @ Xy ) ) )
         => ( cD @ Xx ) )
      & ! [Xx: iS,Xy: iS,Xz: iS] :
          ( ( ( cD @ Xx )
            & ( cD @ Xy )
            & ! [R: iS > iS > iS > $o] :
                ( ( $true
                  & ! [Xa: iS,Xb: iS,Xc: iS] :
                      ( ( ( ( Xa = c0 )
                          & ( Xb = Xc ) )
                        | ( ( Xb = c0 )
                          & ( Xa = Xc ) )
                        | ? [Xx1: iS,Xx2: iS,Xy1: iS,Xy2: iS,Xz1: iS,Xz2: iS] :
                            ( ( Xa
                              = ( cP @ Xx1 @ Xx2 ) )
                            & ( Xb
                              = ( cP @ Xy1 @ Xy2 ) )
                            & ( Xc
                              = ( cP @ Xz1 @ Xz2 ) )
                            & ( R @ Xx1 @ Xy1 @ Xz1 )
                            & ( R @ Xx2 @ Xy2 @ Xz2 ) ) )
                     => ( R @ Xa @ Xb @ Xc ) ) )
               => ( R @ Xx @ Xy @ Xz ) ) )
         => ( cD @ Xz ) ) )
   => ( ( ( c0 = c0 )
        | ? [Xy: iS] :
            ( cD @ ( cP @ c0 @ Xy ) ) )
      & ! [Xx: iS,Xy: iS] :
          ( ( ( ( Xy = c0 )
              | ? [Xy_0: iS] :
                  ( cD @ ( cP @ Xy @ Xy_0 ) ) )
            & ! [R: iS > iS > iS > $o] :
                ( ( $true
                  & ! [Xa: iS,Xb: iS,Xc: iS] :
                      ( ( ( ( Xa = c0 )
                          & ( Xb = Xc ) )
                        | ( ( Xb = c0 )
                          & ( Xa = Xc ) )
                        | ? [Xx1: iS,Xx2: iS,Xy1: iS,Xy2: iS,Xz1: iS,Xz2: iS] :
                            ( ( Xa
                              = ( cP @ Xx1 @ Xx2 ) )
                            & ( Xb
                              = ( cP @ Xy1 @ Xy2 ) )
                            & ( Xc
                              = ( cP @ Xz1 @ Xz2 ) )
                            & ( R @ Xx1 @ Xy1 @ Xz1 )
                            & ( R @ Xx2 @ Xy2 @ Xz2 ) ) )
                     => ( R @ Xa @ Xb @ Xc ) ) )
               => ( R @ Xx @ Xy @ Xy ) ) )
         => ( ( Xx = c0 )
            | ? [Xy0: iS] :
                ( cD @ ( cP @ Xx @ Xy0 ) ) ) )
      & ! [Xx: iS,Xy: iS,Xz: iS] :
          ( ( ( ( Xx = c0 )
              | ? [Xy0: iS] :
                  ( cD @ ( cP @ Xx @ Xy0 ) ) )
            & ( ( Xy = c0 )
              | ? [Xy_1: iS] :
                  ( cD @ ( cP @ Xy @ Xy_1 ) ) )
            & ! [R: iS > iS > iS > $o] :
                ( ( $true
                  & ! [Xa: iS,Xb: iS,Xc: iS] :
                      ( ( ( ( Xa = c0 )
                          & ( Xb = Xc ) )
                        | ( ( Xb = c0 )
                          & ( Xa = Xc ) )
                        | ? [Xx1: iS,Xx2: iS,Xy1: iS,Xy2: iS,Xz1: iS,Xz2: iS] :
                            ( ( Xa
                              = ( cP @ Xx1 @ Xx2 ) )
                            & ( Xb
                              = ( cP @ Xy1 @ Xy2 ) )
                            & ( Xc
                              = ( cP @ Xz1 @ Xz2 ) )
                            & ( R @ Xx1 @ Xy1 @ Xz1 )
                            & ( R @ Xx2 @ Xy2 @ Xz2 ) ) )
                     => ( R @ Xa @ Xb @ Xc ) ) )
               => ( R @ Xx @ Xy @ Xz ) ) )
         => ( ( Xz = c0 )
            | ? [Xy0: iS] :
                ( cD @ ( cP @ Xz @ Xy0 ) ) ) )
      & ( ( c0 = c0 )
        | ? [Xx: iS] :
            ( cD @ ( cP @ Xx @ c0 ) ) )
      & ! [Xx: iS,Xy: iS] :
          ( ( ( ( Xy = c0 )
              | ? [Xx0: iS] :
                  ( cD @ ( cP @ Xx0 @ Xy ) ) )
            & ! [R: iS > iS > iS > $o] :
                ( ( $true
                  & ! [Xa: iS,Xb: iS,Xc: iS] :
                      ( ( ( ( Xa = c0 )
                          & ( Xb = Xc ) )
                        | ( ( Xb = c0 )
                          & ( Xa = Xc ) )
                        | ? [Xx1: iS,Xx2: iS,Xy1: iS,Xy2: iS,Xz1: iS,Xz2: iS] :
                            ( ( Xa
                              = ( cP @ Xx1 @ Xx2 ) )
                            & ( Xb
                              = ( cP @ Xy1 @ Xy2 ) )
                            & ( Xc
                              = ( cP @ Xz1 @ Xz2 ) )
                            & ( R @ Xx1 @ Xy1 @ Xz1 )
                            & ( R @ Xx2 @ Xy2 @ Xz2 ) ) )
                     => ( R @ Xa @ Xb @ Xc ) ) )
               => ( R @ Xx @ Xy @ Xy ) ) )
         => ( ( Xx = c0 )
            | ? [Xx_0: iS] :
                ( cD @ ( cP @ Xx_0 @ Xx ) ) ) )
      & ! [Xx: iS,Xy: iS,Xz: iS] :
          ( ( ( ( Xx = c0 )
              | ? [Xx_1: iS] :
                  ( cD @ ( cP @ Xx_1 @ Xx ) ) )
            & ( ( Xy = c0 )
              | ? [Xx0: iS] :
                  ( cD @ ( cP @ Xx0 @ Xy ) ) )
            & ! [R: iS > iS > iS > $o] :
                ( ( $true
                  & ! [Xa: iS,Xb: iS,Xc: iS] :
                      ( ( ( ( Xa = c0 )
                          & ( Xb = Xc ) )
                        | ( ( Xb = c0 )
                          & ( Xa = Xc ) )
                        | ? [Xx1: iS,Xx2: iS,Xy1: iS,Xy2: iS,Xz1: iS,Xz2: iS] :
                            ( ( Xa
                              = ( cP @ Xx1 @ Xx2 ) )
                            & ( Xb
                              = ( cP @ Xy1 @ Xy2 ) )
                            & ( Xc
                              = ( cP @ Xz1 @ Xz2 ) )
                            & ( R @ Xx1 @ Xy1 @ Xz1 )
                            & ( R @ Xx2 @ Xy2 @ Xz2 ) ) )
                     => ( R @ Xa @ Xb @ Xc ) ) )
               => ( R @ Xx @ Xy @ Xz ) ) )
         => ( ( Xz = c0 )
            | ? [Xx0: iS] :
                ( cD @ ( cP @ Xx0 @ Xz ) ) ) ) ) )).

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