TSTP Solution File: SEU705^2 by cocATP---0.2.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cocATP---0.2.0
% Problem  : SEU705^2 : TPTP v6.1.0. Released v3.7.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p

% Computer : n117.star.cs.uiowa.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2609 0 2.40GHz
% Memory   : 32286.75MB
% OS       : Linux 2.6.32-431.20.3.el6.x86_64
% CPULimit : 300s
% DateTime : Thu Jul 17 13:32:52 EDT 2014

% Result   : Theorem 0.84s
% Output   : Proof 0.84s
% Verified : 
% SZS Type : None (Parsing solution fails)
% Syntax   : Number of formulae    : 0

% Comments : 
%------------------------------------------------------------------------------
%----ERROR: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% % Problem  : SEU705^2 : TPTP v6.1.0. Released v3.7.0.
% % Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% % Computer : n117.star.cs.uiowa.edu
% % Model    : x86_64 x86_64
% % CPU      : Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz
% % Memory   : 32286.75MB
% % OS       : Linux 2.6.32-431.20.3.el6.x86_64
% % CPULimit : 300
% % DateTime : Thu Jul 17 11:15:26 CDT 2014
% % CPUTime  : 0.84 
% Python 2.7.5
% Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox/benchmark/', '/export/starexec/sandbox/benchmark/']
% FOF formula (<kernel.Constant object at 0x251de60>, <kernel.DependentProduct object at 0x251d560>) of role type named in_type
% Using role type
% Declaring in:(fofType->(fofType->Prop))
% FOF formula (<kernel.Constant object at 0x28da5f0>, <kernel.Single object at 0x251df80>) of role type named emptyset_type
% Using role type
% Declaring emptyset:fofType
% FOF formula (<kernel.Constant object at 0x251d560>, <kernel.DependentProduct object at 0x251df38>) of role type named setadjoin_type
% Using role type
% Declaring setadjoin:(fofType->(fofType->fofType))
% FOF formula (<kernel.Constant object at 0x251d518>, <kernel.DependentProduct object at 0x251dc20>) of role type named setunion_type
% Using role type
% Declaring setunion:(fofType->fofType)
% FOF formula (<kernel.Constant object at 0x251ddd0>, <kernel.DependentProduct object at 0x251d440>) of role type named dsetconstr_type
% Using role type
% Declaring dsetconstr:(fofType->((fofType->Prop)->fofType))
% FOF formula (<kernel.Constant object at 0x251dbd8>, <kernel.DependentProduct object at 0x251d518>) of role type named subset_type
% Using role type
% Declaring subset:(fofType->(fofType->Prop))
% FOF formula (<kernel.Constant object at 0x251df38>, <kernel.Sort object at 0x23e5ea8>) of role type named subsetE_type
% Using role type
% Declaring subsetE:Prop
% FOF formula (((eq Prop) subsetE) (forall (A:fofType) (B:fofType) (Xx:fofType), (((subset A) B)->(((in Xx) A)->((in Xx) B))))) of role definition named subsetE
% A new definition: (((eq Prop) subsetE) (forall (A:fofType) (B:fofType) (Xx:fofType), (((subset A) B)->(((in Xx) A)->((in Xx) B)))))
% Defined: subsetE:=(forall (A:fofType) (B:fofType) (Xx:fofType), (((subset A) B)->(((in Xx) A)->((in Xx) B))))
% FOF formula (<kernel.Constant object at 0x251d560>, <kernel.Sort object at 0x23e5ea8>) of role type named sepSubset_type
% Using role type
% Declaring sepSubset:Prop
% FOF formula (((eq Prop) sepSubset) (forall (A:fofType) (Xphi:(fofType->Prop)), ((subset ((dsetconstr A) (fun (Xx:fofType)=> (Xphi Xx)))) A))) of role definition named sepSubset
% A new definition: (((eq Prop) sepSubset) (forall (A:fofType) (Xphi:(fofType->Prop)), ((subset ((dsetconstr A) (fun (Xx:fofType)=> (Xphi Xx)))) A)))
% Defined: sepSubset:=(forall (A:fofType) (Xphi:(fofType->Prop)), ((subset ((dsetconstr A) (fun (Xx:fofType)=> (Xphi Xx)))) A))
% FOF formula (<kernel.Constant object at 0x251d5f0>, <kernel.DependentProduct object at 0x251d440>) of role type named singleton_type
% Using role type
% Declaring singleton:(fofType->Prop)
% FOF formula (((eq (fofType->Prop)) singleton) (fun (A:fofType)=> ((ex fofType) (fun (Xx:fofType)=> ((and ((in Xx) A)) (((eq fofType) A) ((setadjoin Xx) emptyset))))))) of role definition named singleton
% A new definition: (((eq (fofType->Prop)) singleton) (fun (A:fofType)=> ((ex fofType) (fun (Xx:fofType)=> ((and ((in Xx) A)) (((eq fofType) A) ((setadjoin Xx) emptyset)))))))
% Defined: singleton:=(fun (A:fofType)=> ((ex fofType) (fun (Xx:fofType)=> ((and ((in Xx) A)) (((eq fofType) A) ((setadjoin Xx) emptyset))))))
% FOF formula (<kernel.Constant object at 0x251d440>, <kernel.Sort object at 0x23e5ea8>) of role type named theprop_type
% Using role type
% Declaring theprop:Prop
% FOF formula (((eq Prop) theprop) (forall (X:fofType), ((singleton X)->((in (setunion X)) X)))) of role definition named theprop
% A new definition: (((eq Prop) theprop) (forall (X:fofType), ((singleton X)->((in (setunion X)) X))))
% Defined: theprop:=(forall (X:fofType), ((singleton X)->((in (setunion X)) X)))
% FOF formula (<kernel.Constant object at 0x251d4d0>, <kernel.Sort object at 0x23e5ea8>) of role type named ifSingleton_type
% Using role type
% Declaring ifSingleton:Prop
% FOF formula (((eq Prop) ifSingleton) (forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->(singleton ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))))))) of role definition named ifSingleton
% A new definition: (((eq Prop) ifSingleton) (forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->(singleton ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))))))
% Defined: ifSingleton:=(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->(singleton ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))))))
% FOF formula (<kernel.Constant object at 0x251ddd0>, <kernel.DependentProduct object at 0x251d560>) of role type named if_type
% Using role type
% Declaring if:(fofType->(Prop->(fofType->(fofType->fofType))))
% FOF formula (((eq (fofType->(Prop->(fofType->(fofType->fofType))))) if) (fun (A:fofType) (Xphi:Prop) (Xx:fofType) (Xy:fofType)=> (setunion ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))) of role definition named if
% A new definition: (((eq (fofType->(Prop->(fofType->(fofType->fofType))))) if) (fun (A:fofType) (Xphi:Prop) (Xx:fofType) (Xy:fofType)=> (setunion ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))))
% Defined: if:=(fun (A:fofType) (Xphi:Prop) (Xx:fofType) (Xy:fofType)=> (setunion ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% FOF formula (subsetE->(sepSubset->(theprop->(ifSingleton->(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A))))))))) of role conjecture named ifp
% Conjecture to prove = (subsetE->(sepSubset->(theprop->(ifSingleton->(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A))))))))):Prop
% We need to prove ['(subsetE->(sepSubset->(theprop->(ifSingleton->(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A)))))))))']
% Parameter fofType:Type.
% Parameter in:(fofType->(fofType->Prop)).
% Parameter emptyset:fofType.
% Parameter setadjoin:(fofType->(fofType->fofType)).
% Parameter setunion:(fofType->fofType).
% Parameter dsetconstr:(fofType->((fofType->Prop)->fofType)).
% Parameter subset:(fofType->(fofType->Prop)).
% Definition subsetE:=(forall (A:fofType) (B:fofType) (Xx:fofType), (((subset A) B)->(((in Xx) A)->((in Xx) B)))):Prop.
% Definition sepSubset:=(forall (A:fofType) (Xphi:(fofType->Prop)), ((subset ((dsetconstr A) (fun (Xx:fofType)=> (Xphi Xx)))) A)):Prop.
% Definition singleton:=(fun (A:fofType)=> ((ex fofType) (fun (Xx:fofType)=> ((and ((in Xx) A)) (((eq fofType) A) ((setadjoin Xx) emptyset)))))):(fofType->Prop).
% Definition theprop:=(forall (X:fofType), ((singleton X)->((in (setunion X)) X))):Prop.
% Definition ifSingleton:=(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->(singleton ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))))):Prop.
% Definition if:=(fun (A:fofType) (Xphi:Prop) (Xx:fofType) (Xy:fofType)=> (setunion ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))):(fofType->(Prop->(fofType->(fofType->fofType)))).
% Trying to prove (subsetE->(sepSubset->(theprop->(ifSingleton->(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A)))))))))
% Found x2000000:=(x200000 x4):(singleton ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (x200000 x4) as proof of (singleton ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((x20000 Xy) x4) as proof of (singleton ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((x2000 x3) Xy) x4) as proof of (singleton ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((((x200 Xx) x3) Xy) x4) as proof of (singleton ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((((x20 Xphi) Xx) x3) Xy) x4) as proof of (singleton ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((((((x2 A) Xphi) Xx) x3) Xy) x4) as proof of (singleton ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((((((x2 A) Xphi) Xx) x3) Xy) x4) as proof of (singleton ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (x10 ((((((x2 A) Xphi) Xx) x3) Xy) x4)) as proof of ((in ((((if A) Xphi) Xx) Xy)) A0)
% Found ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)) as proof of ((in ((((if A) Xphi) Xx) Xy)) A0)
% Found ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)) as proof of ((in ((((if A) Xphi) Xx) Xy)) A0)
% Found ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)) as proof of ((in ((((if A) Xphi) Xx) Xy)) A0)
% Found x000:=(x00 (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy))))):((subset ((dsetconstr A) (fun (Xx0:fofType)=> ((or ((and Xphi) (((eq fofType) Xx0) Xx))) ((and (Xphi->False)) (((eq fofType) Xx0) Xy)))))) A)
% Found (x00 (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy))))) as proof of ((subset A0) A)
% Found ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy))))) as proof of ((subset A0) A)
% Found ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy))))) as proof of ((subset A0) A)
% Found ((x500 ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4))) as proof of ((in ((((if A) Xphi) Xx) Xy)) A)
% Found (((x50 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4))) as proof of ((in ((((if A) Xphi) Xx) Xy)) A)
% Found ((((fun (A0:fofType)=> ((x5 A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4))) as proof of ((in ((((if A) Xphi) Xx) Xy)) A)
% Found ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4))) as proof of ((in ((((if A) Xphi) Xx) Xy)) A)
% Found (fun (x4:((in Xy) A))=> ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)))) as proof of ((in ((((if A) Xphi) Xx) Xy)) A)
% Found (fun (Xy:fofType) (x4:((in Xy) A))=> ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)))) as proof of (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A))
% Found (fun (x3:((in Xx) A)) (Xy:fofType) (x4:((in Xy) A))=> ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)))) as proof of (forall (Xy:fofType), (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A)))
% Found (fun (Xx:fofType) (x3:((in Xx) A)) (Xy:fofType) (x4:((in Xy) A))=> ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)))) as proof of (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A))))
% Found (fun (Xphi:Prop) (Xx:fofType) (x3:((in Xx) A)) (Xy:fofType) (x4:((in Xy) A))=> ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)))) as proof of (forall (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A)))))
% Found (fun (A:fofType) (Xphi:Prop) (Xx:fofType) (x3:((in Xx) A)) (Xy:fofType) (x4:((in Xy) A))=> ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)))) as proof of (forall (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A)))))
% Found (fun (x2:ifSingleton) (A:fofType) (Xphi:Prop) (Xx:fofType) (x3:((in Xx) A)) (Xy:fofType) (x4:((in Xy) A))=> ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)))) as proof of (forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A)))))
% Found (fun (x1:theprop) (x2:ifSingleton) (A:fofType) (Xphi:Prop) (Xx:fofType) (x3:((in Xx) A)) (Xy:fofType) (x4:((in Xy) A))=> ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)))) as proof of (ifSingleton->(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A))))))
% Found (fun (x0:sepSubset) (x1:theprop) (x2:ifSingleton) (A:fofType) (Xphi:Prop) (Xx:fofType) (x3:((in Xx) A)) (Xy:fofType) (x4:((in Xy) A))=> ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)))) as proof of (theprop->(ifSingleton->(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A)))))))
% Found (fun (x:subsetE) (x0:sepSubset) (x1:theprop) (x2:ifSingleton) (A:fofType) (Xphi:Prop) (Xx:fofType) (x3:((in Xx) A)) (Xy:fofType) (x4:((in Xy) A))=> ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)))) as proof of (sepSubset->(theprop->(ifSingleton->(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A))))))))
% Found (fun (x:subsetE) (x0:sepSubset) (x1:theprop) (x2:ifSingleton) (A:fofType) (Xphi:Prop) (Xx:fofType) (x3:((in Xx) A)) (Xy:fofType) (x4:((in Xy) A))=> ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4)))) as proof of (subsetE->(sepSubset->(theprop->(ifSingleton->(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((in ((((if A) Xphi) Xx) Xy)) A)))))))))
% Got proof (fun (x:subsetE) (x0:sepSubset) (x1:theprop) (x2:ifSingleton) (A:fofType) (Xphi:Prop) (Xx:fofType) (x3:((in Xx) A)) (Xy:fofType) (x4:((in Xy) A))=> ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4))))
% Time elapsed = 0.500729s
% node=64 cost=274.000000 depth=17
% ::::::::::::::::::::::
% % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p
% % SZS output start Proof for /export/starexec/sandbox/benchmark/theBenchmark.p
% (fun (x:subsetE) (x0:sepSubset) (x1:theprop) (x2:ifSingleton) (A:fofType) (Xphi:Prop) (Xx:fofType) (x3:((in Xx) A)) (Xy:fofType) (x4:((in Xy) A))=> ((((fun (A0:fofType)=> (((fun (A0:fofType)=> ((x A0) A)) A0) ((((if A) Xphi) Xx) Xy))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((x0 A) (fun (x7:fofType)=> ((or ((and Xphi) (((eq fofType) x7) Xx))) ((and (Xphi->False)) (((eq fofType) x7) Xy)))))) ((x1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((((((x2 A) Xphi) Xx) x3) Xy) x4))))
% % SZS output end Proof for /export/starexec/sandbox/benchmark/theBenchmark.p
% EOF
%------------------------------------------------------------------------------