%------------------------------------------------------------------------------ % File : cocATP---0.2.0 % Problem : SET640^3 : TPTP v6.1.0. Released v3.6.0. % Transfm : none % Format : tptp:raw % Command : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p % Computer : n100.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:30:55 EDT 2014 % Result : Theorem 1.05s % Output : Proof 1.05s % Verified : % SZS Type : None (Parsing solution fails) % Syntax : Number of formulae : 0 % Comments : %------------------------------------------------------------------------------ %----ERROR: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % % Problem : SET640^3 : TPTP v6.1.0. Released v3.6.0. % % Command : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p % % Computer : n100.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 10:29:31 CDT 2014 % % CPUTime : 1.05 % Python 2.7.5 % Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox/benchmark/', '/export/starexec/sandbox/benchmark/'] % Failed to open /home/cristobal/cocATP/CASC/TPTP/Axioms/SET008^0.ax, trying next directory % FOF formula (<kernel.Constant object at 0x247b320>, <kernel.DependentProduct object at 0x247bef0>) of role type named in_decl % Using role type % Declaring in:(fofType->((fofType->Prop)->Prop)) % FOF formula (((eq (fofType->((fofType->Prop)->Prop))) in) (fun (X:fofType) (M:(fofType->Prop))=> (M X))) of role definition named in % A new definition: (((eq (fofType->((fofType->Prop)->Prop))) in) (fun (X:fofType) (M:(fofType->Prop))=> (M X))) % Defined: in:=(fun (X:fofType) (M:(fofType->Prop))=> (M X)) % FOF formula (<kernel.Constant object at 0x247b320>, <kernel.DependentProduct object at 0x247b4d0>) of role type named is_a_decl % Using role type % Declaring is_a:(fofType->((fofType->Prop)->Prop)) % FOF formula (((eq (fofType->((fofType->Prop)->Prop))) is_a) (fun (X:fofType) (M:(fofType->Prop))=> (M X))) of role definition named is_a % A new definition: (((eq (fofType->((fofType->Prop)->Prop))) is_a) (fun (X:fofType) (M:(fofType->Prop))=> (M X))) % Defined: is_a:=(fun (X:fofType) (M:(fofType->Prop))=> (M X)) % FOF formula (<kernel.Constant object at 0x247b4d0>, <kernel.DependentProduct object at 0x247bc20>) of role type named emptyset_decl % Using role type % Declaring emptyset:(fofType->Prop) % FOF formula (((eq (fofType->Prop)) emptyset) (fun (X:fofType)=> False)) of role definition named emptyset % A new definition: (((eq (fofType->Prop)) emptyset) (fun (X:fofType)=> False)) % Defined: emptyset:=(fun (X:fofType)=> False) % FOF formula (<kernel.Constant object at 0x247bc20>, <kernel.DependentProduct object at 0x247b248>) of role type named unord_pair_decl % Using role type % Declaring unord_pair:(fofType->(fofType->(fofType->Prop))) % FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) unord_pair) (fun (X:fofType) (Y:fofType) (U:fofType)=> ((or (((eq fofType) U) X)) (((eq fofType) U) Y)))) of role definition named unord_pair % A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) unord_pair) (fun (X:fofType) (Y:fofType) (U:fofType)=> ((or (((eq fofType) U) X)) (((eq fofType) U) Y)))) % Defined: unord_pair:=(fun (X:fofType) (Y:fofType) (U:fofType)=> ((or (((eq fofType) U) X)) (((eq fofType) U) Y))) % FOF formula (<kernel.Constant object at 0x247b248>, <kernel.DependentProduct object at 0x247b950>) of role type named singleton_decl % Using role type % Declaring singleton:(fofType->(fofType->Prop)) % FOF formula (((eq (fofType->(fofType->Prop))) singleton) (fun (X:fofType) (U:fofType)=> (((eq fofType) U) X))) of role definition named singleton % A new definition: (((eq (fofType->(fofType->Prop))) singleton) (fun (X:fofType) (U:fofType)=> (((eq fofType) U) X))) % Defined: singleton:=(fun (X:fofType) (U:fofType)=> (((eq fofType) U) X)) % FOF formula (<kernel.Constant object at 0x247b950>, <kernel.DependentProduct object at 0x247be60>) of role type named union_decl % Using role type % Declaring union:((fofType->Prop)->((fofType->Prop)->(fofType->Prop))) % FOF formula (((eq ((fofType->Prop)->((fofType->Prop)->(fofType->Prop)))) union) (fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((or (X U)) (Y U)))) of role definition named union % A new definition: (((eq ((fofType->Prop)->((fofType->Prop)->(fofType->Prop)))) union) (fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((or (X U)) (Y U)))) % Defined: union:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((or (X U)) (Y U))) % FOF formula (<kernel.Constant object at 0x247be60>, <kernel.DependentProduct object at 0x247bf80>) of role type named excl_union_decl % Using role type % Declaring excl_union:((fofType->Prop)->((fofType->Prop)->(fofType->Prop))) % FOF formula (((eq ((fofType->Prop)->((fofType->Prop)->(fofType->Prop)))) excl_union) (fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((or ((and (X U)) ((Y U)->False))) ((and ((X U)->False)) (Y U))))) of role definition named excl_union % A new definition: (((eq ((fofType->Prop)->((fofType->Prop)->(fofType->Prop)))) excl_union) (fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((or ((and (X U)) ((Y U)->False))) ((and ((X U)->False)) (Y U))))) % Defined: excl_union:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((or ((and (X U)) ((Y U)->False))) ((and ((X U)->False)) (Y U)))) % FOF formula (<kernel.Constant object at 0x247bf80>, <kernel.DependentProduct object at 0x247b4d0>) of role type named intersection_decl % Using role type % Declaring intersection:((fofType->Prop)->((fofType->Prop)->(fofType->Prop))) % FOF formula (((eq ((fofType->Prop)->((fofType->Prop)->(fofType->Prop)))) intersection) (fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((and (X U)) (Y U)))) of role definition named intersection % A new definition: (((eq ((fofType->Prop)->((fofType->Prop)->(fofType->Prop)))) intersection) (fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((and (X U)) (Y U)))) % Defined: intersection:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((and (X U)) (Y U))) % FOF formula (<kernel.Constant object at 0x247d290>, <kernel.DependentProduct object at 0x247b050>) of role type named setminus_decl % Using role type % Declaring setminus:((fofType->Prop)->((fofType->Prop)->(fofType->Prop))) % FOF formula (((eq ((fofType->Prop)->((fofType->Prop)->(fofType->Prop)))) setminus) (fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((and (X U)) ((Y U)->False)))) of role definition named setminus % A new definition: (((eq ((fofType->Prop)->((fofType->Prop)->(fofType->Prop)))) setminus) (fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((and (X U)) ((Y U)->False)))) % Defined: setminus:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((and (X U)) ((Y U)->False))) % FOF formula (<kernel.Constant object at 0x247d290>, <kernel.DependentProduct object at 0x247bd40>) of role type named complement_decl % Using role type % Declaring complement:((fofType->Prop)->(fofType->Prop)) % FOF formula (((eq ((fofType->Prop)->(fofType->Prop))) complement) (fun (X:(fofType->Prop)) (U:fofType)=> ((X U)->False))) of role definition named complement % A new definition: (((eq ((fofType->Prop)->(fofType->Prop))) complement) (fun (X:(fofType->Prop)) (U:fofType)=> ((X U)->False))) % Defined: complement:=(fun (X:(fofType->Prop)) (U:fofType)=> ((X U)->False)) % FOF formula (<kernel.Constant object at 0x247d638>, <kernel.DependentProduct object at 0x247b950>) of role type named disjoint_decl % Using role type % Declaring disjoint:((fofType->Prop)->((fofType->Prop)->Prop)) % FOF formula (((eq ((fofType->Prop)->((fofType->Prop)->Prop))) disjoint) (fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> (((eq (fofType->Prop)) ((intersection X) Y)) emptyset))) of role definition named disjoint % A new definition: (((eq ((fofType->Prop)->((fofType->Prop)->Prop))) disjoint) (fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> (((eq (fofType->Prop)) ((intersection X) Y)) emptyset))) % Defined: disjoint:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> (((eq (fofType->Prop)) ((intersection X) Y)) emptyset)) % FOF formula (<kernel.Constant object at 0x26d48c0>, <kernel.DependentProduct object at 0x247b3f8>) of role type named subset_decl % Using role type % Declaring subset:((fofType->Prop)->((fofType->Prop)->Prop)) % FOF formula (((eq ((fofType->Prop)->((fofType->Prop)->Prop))) subset) (fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> (forall (U:fofType), ((X U)->(Y U))))) of role definition named subset % A new definition: (((eq ((fofType->Prop)->((fofType->Prop)->Prop))) subset) (fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> (forall (U:fofType), ((X U)->(Y U))))) % Defined: subset:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> (forall (U:fofType), ((X U)->(Y U)))) % FOF formula (<kernel.Constant object at 0x26d4f38>, <kernel.DependentProduct object at 0x247b050>) of role type named meets_decl % Using role type % Declaring meets:((fofType->Prop)->((fofType->Prop)->Prop)) % FOF formula (((eq ((fofType->Prop)->((fofType->Prop)->Prop))) meets) (fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> ((ex fofType) (fun (U:fofType)=> ((and (X U)) (Y U)))))) of role definition named meets % A new definition: (((eq ((fofType->Prop)->((fofType->Prop)->Prop))) meets) (fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> ((ex fofType) (fun (U:fofType)=> ((and (X U)) (Y U)))))) % Defined: meets:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> ((ex fofType) (fun (U:fofType)=> ((and (X U)) (Y U))))) % FOF formula (<kernel.Constant object at 0x26d4f38>, <kernel.DependentProduct object at 0x247bf80>) of role type named misses_decl % Using role type % Declaring misses:((fofType->Prop)->((fofType->Prop)->Prop)) % FOF formula (((eq ((fofType->Prop)->((fofType->Prop)->Prop))) misses) (fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> (((ex fofType) (fun (U:fofType)=> ((and (X U)) (Y U))))->False))) of role definition named misses % A new definition: (((eq ((fofType->Prop)->((fofType->Prop)->Prop))) misses) (fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> (((ex fofType) (fun (U:fofType)=> ((and (X U)) (Y U))))->False))) % Defined: misses:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> (((ex fofType) (fun (U:fofType)=> ((and (X U)) (Y U))))->False)) % Failed to open /home/cristobal/cocATP/CASC/TPTP/Axioms/SET008^2.ax, trying next directory % FOF formula (<kernel.Constant object at 0x247b7e8>, <kernel.DependentProduct object at 0x247b560>) of role type named cartesian_product_decl % Using role type % Declaring cartesian_product:((fofType->Prop)->((fofType->Prop)->(fofType->(fofType->Prop)))) % FOF formula (((eq ((fofType->Prop)->((fofType->Prop)->(fofType->(fofType->Prop))))) cartesian_product) (fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType) (V:fofType)=> ((and (X U)) (Y V)))) of role definition named cartesian_product % A new definition: (((eq ((fofType->Prop)->((fofType->Prop)->(fofType->(fofType->Prop))))) cartesian_product) (fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType) (V:fofType)=> ((and (X U)) (Y V)))) % Defined: cartesian_product:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType) (V:fofType)=> ((and (X U)) (Y V))) % FOF formula (<kernel.Constant object at 0x247b560>, <kernel.DependentProduct object at 0x247b6c8>) of role type named pair_rel_decl % Using role type % Declaring pair_rel:(fofType->(fofType->(fofType->(fofType->Prop)))) % FOF formula (((eq (fofType->(fofType->(fofType->(fofType->Prop))))) pair_rel) (fun (X:fofType) (Y:fofType) (U:fofType) (V:fofType)=> ((or (((eq fofType) U) X)) (((eq fofType) V) Y)))) of role definition named pair_rel % A new definition: (((eq (fofType->(fofType->(fofType->(fofType->Prop))))) pair_rel) (fun (X:fofType) (Y:fofType) (U:fofType) (V:fofType)=> ((or (((eq fofType) U) X)) (((eq fofType) V) Y)))) % Defined: pair_rel:=(fun (X:fofType) (Y:fofType) (U:fofType) (V:fofType)=> ((or (((eq fofType) U) X)) (((eq fofType) V) Y))) % FOF formula (<kernel.Constant object at 0x247b6c8>, <kernel.DependentProduct object at 0x247b368>) of role type named id_rel_decl % Using role type % Declaring id_rel:((fofType->Prop)->(fofType->(fofType->Prop))) % FOF formula (((eq ((fofType->Prop)->(fofType->(fofType->Prop)))) id_rel) (fun (S:(fofType->Prop)) (X:fofType) (Y:fofType)=> ((and (S X)) (((eq fofType) X) Y)))) of role definition named id_rel % A new definition: (((eq ((fofType->Prop)->(fofType->(fofType->Prop)))) id_rel) (fun (S:(fofType->Prop)) (X:fofType) (Y:fofType)=> ((and (S X)) (((eq fofType) X) Y)))) % Defined: id_rel:=(fun (S:(fofType->Prop)) (X:fofType) (Y:fofType)=> ((and (S X)) (((eq fofType) X) Y))) % FOF formula (<kernel.Constant object at 0x247b368>, <kernel.DependentProduct object at 0x247b6c8>) of role type named sub_rel_decl % Using role type % Declaring sub_rel:((fofType->(fofType->Prop))->((fofType->(fofType->Prop))->Prop)) % FOF formula (((eq ((fofType->(fofType->Prop))->((fofType->(fofType->Prop))->Prop))) sub_rel) (fun (R1:(fofType->(fofType->Prop))) (R2:(fofType->(fofType->Prop)))=> (forall (X:fofType) (Y:fofType), (((R1 X) Y)->((R2 X) Y))))) of role definition named sub_rel % A new definition: (((eq ((fofType->(fofType->Prop))->((fofType->(fofType->Prop))->Prop))) sub_rel) (fun (R1:(fofType->(fofType->Prop))) (R2:(fofType->(fofType->Prop)))=> (forall (X:fofType) (Y:fofType), (((R1 X) Y)->((R2 X) Y))))) % Defined: sub_rel:=(fun (R1:(fofType->(fofType->Prop))) (R2:(fofType->(fofType->Prop)))=> (forall (X:fofType) (Y:fofType), (((R1 X) Y)->((R2 X) Y)))) % FOF formula (<kernel.Constant object at 0x247b6c8>, <kernel.DependentProduct object at 0x247b170>) of role type named is_rel_on_decl % Using role type % Declaring is_rel_on:((fofType->(fofType->Prop))->((fofType->Prop)->((fofType->Prop)->Prop))) % FOF formula (((eq ((fofType->(fofType->Prop))->((fofType->Prop)->((fofType->Prop)->Prop)))) is_rel_on) (fun (R:(fofType->(fofType->Prop))) (A:(fofType->Prop)) (B:(fofType->Prop))=> (forall (X:fofType) (Y:fofType), (((R X) Y)->((and (A X)) (B Y)))))) of role definition named is_rel_on % A new definition: (((eq ((fofType->(fofType->Prop))->((fofType->Prop)->((fofType->Prop)->Prop)))) is_rel_on) (fun (R:(fofType->(fofType->Prop))) (A:(fofType->Prop)) (B:(fofType->Prop))=> (forall (X:fofType) (Y:fofType), (((R X) Y)->((and (A X)) (B Y)))))) % Defined: is_rel_on:=(fun (R:(fofType->(fofType->Prop))) (A:(fofType->Prop)) (B:(fofType->Prop))=> (forall (X:fofType) (Y:fofType), (((R X) Y)->((and (A X)) (B Y))))) % FOF formula (<kernel.Constant object at 0x247b170>, <kernel.DependentProduct object at 0x247bef0>) of role type named restrict_rel_domain_decl % Using role type % Declaring restrict_rel_domain:((fofType->(fofType->Prop))->((fofType->Prop)->(fofType->(fofType->Prop)))) % FOF formula (((eq ((fofType->(fofType->Prop))->((fofType->Prop)->(fofType->(fofType->Prop))))) restrict_rel_domain) (fun (R:(fofType->(fofType->Prop))) (S:(fofType->Prop)) (X:fofType) (Y:fofType)=> ((and (S X)) ((R X) Y)))) of role definition named restrict_rel_domain % A new definition: (((eq ((fofType->(fofType->Prop))->((fofType->Prop)->(fofType->(fofType->Prop))))) restrict_rel_domain) (fun (R:(fofType->(fofType->Prop))) (S:(fofType->Prop)) (X:fofType) (Y:fofType)=> ((and (S X)) ((R X) Y)))) % Defined: restrict_rel_domain:=(fun (R:(fofType->(fofType->Prop))) (S:(fofType->Prop)) (X:fofType) (Y:fofType)=> ((and (S X)) ((R X) Y))) % FOF formula (<kernel.Constant object at 0x247bef0>, <kernel.DependentProduct object at 0x247b7e8>) of role type named rel_diagonal_decl % Using role type % Declaring rel_diagonal:(fofType->(fofType->Prop)) % FOF formula (((eq (fofType->(fofType->Prop))) rel_diagonal) (fun (X:fofType) (Y:fofType)=> (((eq fofType) X) Y))) of role definition named rel_diagonal % A new definition: (((eq (fofType->(fofType->Prop))) rel_diagonal) (fun (X:fofType) (Y:fofType)=> (((eq fofType) X) Y))) % Defined: rel_diagonal:=(fun (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)) % FOF formula (<kernel.Constant object at 0x247b7e8>, <kernel.DependentProduct object at 0x247bef0>) of role type named rel_composition_decl % Using role type % Declaring rel_composition:((fofType->(fofType->Prop))->((fofType->(fofType->Prop))->(fofType->(fofType->Prop)))) % FOF formula (((eq ((fofType->(fofType->Prop))->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) rel_composition) (fun (R1:(fofType->(fofType->Prop))) (R2:(fofType->(fofType->Prop))) (X:fofType) (Z:fofType)=> ((ex fofType) (fun (Y:fofType)=> ((and ((R1 X) Y)) ((R2 Y) Z)))))) of role definition named rel_composition % A new definition: (((eq ((fofType->(fofType->Prop))->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) rel_composition) (fun (R1:(fofType->(fofType->Prop))) (R2:(fofType->(fofType->Prop))) (X:fofType) (Z:fofType)=> ((ex fofType) (fun (Y:fofType)=> ((and ((R1 X) Y)) ((R2 Y) Z)))))) % Defined: rel_composition:=(fun (R1:(fofType->(fofType->Prop))) (R2:(fofType->(fofType->Prop))) (X:fofType) (Z:fofType)=> ((ex fofType) (fun (Y:fofType)=> ((and ((R1 X) Y)) ((R2 Y) Z))))) % FOF formula (<kernel.Constant object at 0x247bef0>, <kernel.DependentProduct object at 0x247bbd8>) of role type named reflexive_decl % Using role type % Declaring reflexive:((fofType->(fofType->Prop))->Prop) % FOF formula (((eq ((fofType->(fofType->Prop))->Prop)) reflexive) (fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType), ((R X) X)))) of role definition named reflexive % A new definition: (((eq ((fofType->(fofType->Prop))->Prop)) reflexive) (fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType), ((R X) X)))) % Defined: reflexive:=(fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType), ((R X) X))) % FOF formula (<kernel.Constant object at 0x247bbd8>, <kernel.DependentProduct object at 0x247b290>) of role type named irreflexive_decl % Using role type % Declaring irreflexive:((fofType->(fofType->Prop))->Prop) % FOF formula (((eq ((fofType->(fofType->Prop))->Prop)) irreflexive) (fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType), (((R X) X)->False)))) of role definition named irreflexive % A new definition: (((eq ((fofType->(fofType->Prop))->Prop)) irreflexive) (fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType), (((R X) X)->False)))) % Defined: irreflexive:=(fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType), (((R X) X)->False))) % FOF formula (<kernel.Constant object at 0x247b290>, <kernel.DependentProduct object at 0x247be60>) of role type named symmetric_decl % Using role type % Declaring symmetric:((fofType->(fofType->Prop))->Prop) % FOF formula (((eq ((fofType->(fofType->Prop))->Prop)) symmetric) (fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType) (Y:fofType), (((R X) Y)->((R Y) X))))) of role definition named symmetric % A new definition: (((eq ((fofType->(fofType->Prop))->Prop)) symmetric) (fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType) (Y:fofType), (((R X) Y)->((R Y) X))))) % Defined: symmetric:=(fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType) (Y:fofType), (((R X) Y)->((R Y) X)))) % FOF formula (<kernel.Constant object at 0x247be60>, <kernel.DependentProduct object at 0x247b4d0>) of role type named transitive_decl % Using role type % Declaring transitive:((fofType->(fofType->Prop))->Prop) % FOF formula (((eq ((fofType->(fofType->Prop))->Prop)) transitive) (fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType) (Y:fofType) (Z:fofType), (((and ((R X) Y)) ((R Y) Z))->((R X) Z))))) of role definition named transitive % A new definition: (((eq ((fofType->(fofType->Prop))->Prop)) transitive) (fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType) (Y:fofType) (Z:fofType), (((and ((R X) Y)) ((R Y) Z))->((R X) Z))))) % Defined: transitive:=(fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType) (Y:fofType) (Z:fofType), (((and ((R X) Y)) ((R Y) Z))->((R X) Z)))) % FOF formula (<kernel.Constant object at 0x247b4d0>, <kernel.DependentProduct object at 0x247bef0>) of role type named equiv_rel__decl % Using role type % Declaring equiv_rel:((fofType->(fofType->Prop))->Prop) % FOF formula (((eq ((fofType->(fofType->Prop))->Prop)) equiv_rel) (fun (R:(fofType->(fofType->Prop)))=> ((and ((and (reflexive R)) (symmetric R))) (transitive R)))) of role definition named equiv_rel % A new definition: (((eq ((fofType->(fofType->Prop))->Prop)) equiv_rel) (fun (R:(fofType->(fofType->Prop)))=> ((and ((and (reflexive R)) (symmetric R))) (transitive R)))) % Defined: equiv_rel:=(fun (R:(fofType->(fofType->Prop)))=> ((and ((and (reflexive R)) (symmetric R))) (transitive R))) % FOF formula (<kernel.Constant object at 0x247bef0>, <kernel.DependentProduct object at 0x247b5f0>) of role type named rel_codomain_decl % Using role type % Declaring rel_codomain:((fofType->(fofType->Prop))->(fofType->Prop)) % FOF formula (((eq ((fofType->(fofType->Prop))->(fofType->Prop))) rel_codomain) (fun (R:(fofType->(fofType->Prop))) (Y:fofType)=> ((ex fofType) (fun (X:fofType)=> ((R X) Y))))) of role definition named rel_codomain % A new definition: (((eq ((fofType->(fofType->Prop))->(fofType->Prop))) rel_codomain) (fun (R:(fofType->(fofType->Prop))) (Y:fofType)=> ((ex fofType) (fun (X:fofType)=> ((R X) Y))))) % Defined: rel_codomain:=(fun (R:(fofType->(fofType->Prop))) (Y:fofType)=> ((ex fofType) (fun (X:fofType)=> ((R X) Y)))) % FOF formula (<kernel.Constant object at 0x247b5f0>, <kernel.DependentProduct object at 0x247b2d8>) of role type named rel_domain_decl % Using role type % Declaring rel_domain:((fofType->(fofType->Prop))->(fofType->Prop)) % FOF formula (((eq ((fofType->(fofType->Prop))->(fofType->Prop))) rel_domain) (fun (R:(fofType->(fofType->Prop))) (X:fofType)=> ((ex fofType) (fun (Y:fofType)=> ((R X) Y))))) of role definition named rel_domain % A new definition: (((eq ((fofType->(fofType->Prop))->(fofType->Prop))) rel_domain) (fun (R:(fofType->(fofType->Prop))) (X:fofType)=> ((ex fofType) (fun (Y:fofType)=> ((R X) Y))))) % Defined: rel_domain:=(fun (R:(fofType->(fofType->Prop))) (X:fofType)=> ((ex fofType) (fun (Y:fofType)=> ((R X) Y)))) % FOF formula (<kernel.Constant object at 0x247b2d8>, <kernel.DependentProduct object at 0x247b4d0>) of role type named rel_inverse_decl % Using role type % Declaring rel_inverse:((fofType->(fofType->Prop))->(fofType->(fofType->Prop))) % FOF formula (((eq ((fofType->(fofType->Prop))->(fofType->(fofType->Prop)))) rel_inverse) (fun (R:(fofType->(fofType->Prop))) (X:fofType) (Y:fofType)=> ((R Y) X))) of role definition named rel_inverse % A new definition: (((eq ((fofType->(fofType->Prop))->(fofType->(fofType->Prop)))) rel_inverse) (fun (R:(fofType->(fofType->Prop))) (X:fofType) (Y:fofType)=> ((R Y) X))) % Defined: rel_inverse:=(fun (R:(fofType->(fofType->Prop))) (X:fofType) (Y:fofType)=> ((R Y) X)) % FOF formula (<kernel.Constant object at 0x247b710>, <kernel.DependentProduct object at 0x247c998>) of role type named equiv_classes_decl % Using role type % Declaring equiv_classes:((fofType->(fofType->Prop))->((fofType->Prop)->Prop)) % FOF formula (((eq ((fofType->(fofType->Prop))->((fofType->Prop)->Prop))) equiv_classes) (fun (R:(fofType->(fofType->Prop))) (S1:(fofType->Prop))=> ((ex fofType) (fun (X:fofType)=> ((and (S1 X)) (forall (Y:fofType), ((iff (S1 Y)) ((R X) Y)))))))) of role definition named equiv_classes % A new definition: (((eq ((fofType->(fofType->Prop))->((fofType->Prop)->Prop))) equiv_classes) (fun (R:(fofType->(fofType->Prop))) (S1:(fofType->Prop))=> ((ex fofType) (fun (X:fofType)=> ((and (S1 X)) (forall (Y:fofType), ((iff (S1 Y)) ((R X) Y)))))))) % Defined: equiv_classes:=(fun (R:(fofType->(fofType->Prop))) (S1:(fofType->Prop))=> ((ex fofType) (fun (X:fofType)=> ((and (S1 X)) (forall (Y:fofType), ((iff (S1 Y)) ((R X) Y))))))) % FOF formula (<kernel.Constant object at 0x247b2d8>, <kernel.DependentProduct object at 0x247c6c8>) of role type named restrict_rel_codomain_decl % Using role type % Declaring restrict_rel_codomain:((fofType->(fofType->Prop))->((fofType->Prop)->(fofType->(fofType->Prop)))) % FOF formula (((eq ((fofType->(fofType->Prop))->((fofType->Prop)->(fofType->(fofType->Prop))))) restrict_rel_codomain) (fun (R:(fofType->(fofType->Prop))) (S:(fofType->Prop)) (X:fofType) (Y:fofType)=> ((and (S Y)) ((R X) Y)))) of role definition named restrict_rel_codomain % A new definition: (((eq ((fofType->(fofType->Prop))->((fofType->Prop)->(fofType->(fofType->Prop))))) restrict_rel_codomain) (fun (R:(fofType->(fofType->Prop))) (S:(fofType->Prop)) (X:fofType) (Y:fofType)=> ((and (S Y)) ((R X) Y)))) % Defined: restrict_rel_codomain:=(fun (R:(fofType->(fofType->Prop))) (S:(fofType->Prop)) (X:fofType) (Y:fofType)=> ((and (S Y)) ((R X) Y))) % FOF formula (<kernel.Constant object at 0x247b4d0>, <kernel.DependentProduct object at 0x247cab8>) of role type named rel_field_decl % Using role type % Declaring rel_field:((fofType->(fofType->Prop))->(fofType->Prop)) % FOF formula (((eq ((fofType->(fofType->Prop))->(fofType->Prop))) rel_field) (fun (R:(fofType->(fofType->Prop))) (X:fofType)=> ((or ((rel_domain R) X)) ((rel_codomain R) X)))) of role definition named rel_field % A new definition: (((eq ((fofType->(fofType->Prop))->(fofType->Prop))) rel_field) (fun (R:(fofType->(fofType->Prop))) (X:fofType)=> ((or ((rel_domain R) X)) ((rel_codomain R) X)))) % Defined: rel_field:=(fun (R:(fofType->(fofType->Prop))) (X:fofType)=> ((or ((rel_domain R) X)) ((rel_codomain R) X))) % FOF formula (<kernel.Constant object at 0x247b4d0>, <kernel.DependentProduct object at 0x247c6c8>) of role type named well_founded_decl % Using role type % Declaring well_founded:((fofType->(fofType->Prop))->Prop) % FOF formula (((eq ((fofType->(fofType->Prop))->Prop)) well_founded) (fun (R:(fofType->(fofType->Prop)))=> (forall (X:(fofType->Prop)) (Z:fofType), ((X Z)->((ex fofType) (fun (Y:fofType)=> ((and (X Y)) (forall (W:fofType), (((R Y) W)->((X W)->False)))))))))) of role definition named well_founded % A new definition: (((eq ((fofType->(fofType->Prop))->Prop)) well_founded) (fun (R:(fofType->(fofType->Prop)))=> (forall (X:(fofType->Prop)) (Z:fofType), ((X Z)->((ex fofType) (fun (Y:fofType)=> ((and (X Y)) (forall (W:fofType), (((R Y) W)->((X W)->False)))))))))) % Defined: well_founded:=(fun (R:(fofType->(fofType->Prop)))=> (forall (X:(fofType->Prop)) (Z:fofType), ((X Z)->((ex fofType) (fun (Y:fofType)=> ((and (X Y)) (forall (W:fofType), (((R Y) W)->((X W)->False))))))))) % FOF formula (<kernel.Constant object at 0x247b710>, <kernel.DependentProduct object at 0x247c1b8>) of role type named upwards_well_founded_decl % Using role type % Declaring upwards_well_founded:((fofType->(fofType->Prop))->Prop) % FOF formula (((eq ((fofType->(fofType->Prop))->Prop)) upwards_well_founded) (fun (R:(fofType->(fofType->Prop)))=> (forall (X:(fofType->Prop)) (Z:fofType), ((X Z)->((ex fofType) (fun (Y:fofType)=> ((and (X Y)) (forall (W:fofType), (((R Y) Y)->((X W)->False)))))))))) of role definition named upwards_well_founded % A new definition: (((eq ((fofType->(fofType->Prop))->Prop)) upwards_well_founded) (fun (R:(fofType->(fofType->Prop)))=> (forall (X:(fofType->Prop)) (Z:fofType), ((X Z)->((ex fofType) (fun (Y:fofType)=> ((and (X Y)) (forall (W:fofType), (((R Y) Y)->((X W)->False)))))))))) % Defined: upwards_well_founded:=(fun (R:(fofType->(fofType->Prop)))=> (forall (X:(fofType->Prop)) (Z:fofType), ((X Z)->((ex fofType) (fun (Y:fofType)=> ((and (X Y)) (forall (W:fofType), (((R Y) Y)->((X W)->False))))))))) % FOF formula (forall (R:(fofType->(fofType->Prop))) (Q:(fofType->(fofType->Prop))), (((sub_rel R) Q)->((sub_rel R) ((cartesian_product (fun (X:fofType)=> True)) (fun (X:fofType)=> True))))) of role conjecture named thm % Conjecture to prove = (forall (R:(fofType->(fofType->Prop))) (Q:(fofType->(fofType->Prop))), (((sub_rel R) Q)->((sub_rel R) ((cartesian_product (fun (X:fofType)=> True)) (fun (X:fofType)=> True))))):Prop % Parameter fofType_DUMMY:fofType. % We need to prove ['(forall (R:(fofType->(fofType->Prop))) (Q:(fofType->(fofType->Prop))), (((sub_rel R) Q)->((sub_rel R) ((cartesian_product (fun (X:fofType)=> True)) (fun (X:fofType)=> True)))))'] % Parameter fofType:Type. % Definition in:=(fun (X:fofType) (M:(fofType->Prop))=> (M X)):(fofType->((fofType->Prop)->Prop)). % Definition is_a:=(fun (X:fofType) (M:(fofType->Prop))=> (M X)):(fofType->((fofType->Prop)->Prop)). % Definition emptyset:=(fun (X:fofType)=> False):(fofType->Prop). % Definition unord_pair:=(fun (X:fofType) (Y:fofType) (U:fofType)=> ((or (((eq fofType) U) X)) (((eq fofType) U) Y))):(fofType->(fofType->(fofType->Prop))). % Definition singleton:=(fun (X:fofType) (U:fofType)=> (((eq fofType) U) X)):(fofType->(fofType->Prop)). % Definition union:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((or (X U)) (Y U))):((fofType->Prop)->((fofType->Prop)->(fofType->Prop))). % Definition excl_union:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((or ((and (X U)) ((Y U)->False))) ((and ((X U)->False)) (Y U)))):((fofType->Prop)->((fofType->Prop)->(fofType->Prop))). % Definition intersection:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((and (X U)) (Y U))):((fofType->Prop)->((fofType->Prop)->(fofType->Prop))). % Definition setminus:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType)=> ((and (X U)) ((Y U)->False))):((fofType->Prop)->((fofType->Prop)->(fofType->Prop))). % Definition complement:=(fun (X:(fofType->Prop)) (U:fofType)=> ((X U)->False)):((fofType->Prop)->(fofType->Prop)). % Definition disjoint:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> (((eq (fofType->Prop)) ((intersection X) Y)) emptyset)):((fofType->Prop)->((fofType->Prop)->Prop)). % Definition subset:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> (forall (U:fofType), ((X U)->(Y U)))):((fofType->Prop)->((fofType->Prop)->Prop)). % Definition meets:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> ((ex fofType) (fun (U:fofType)=> ((and (X U)) (Y U))))):((fofType->Prop)->((fofType->Prop)->Prop)). % Definition misses:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop))=> (((ex fofType) (fun (U:fofType)=> ((and (X U)) (Y U))))->False)):((fofType->Prop)->((fofType->Prop)->Prop)). % Definition cartesian_product:=(fun (X:(fofType->Prop)) (Y:(fofType->Prop)) (U:fofType) (V:fofType)=> ((and (X U)) (Y V))):((fofType->Prop)->((fofType->Prop)->(fofType->(fofType->Prop)))). % Definition pair_rel:=(fun (X:fofType) (Y:fofType) (U:fofType) (V:fofType)=> ((or (((eq fofType) U) X)) (((eq fofType) V) Y))):(fofType->(fofType->(fofType->(fofType->Prop)))). % Definition id_rel:=(fun (S:(fofType->Prop)) (X:fofType) (Y:fofType)=> ((and (S X)) (((eq fofType) X) Y))):((fofType->Prop)->(fofType->(fofType->Prop))). % Definition sub_rel:=(fun (R1:(fofType->(fofType->Prop))) (R2:(fofType->(fofType->Prop)))=> (forall (X:fofType) (Y:fofType), (((R1 X) Y)->((R2 X) Y)))):((fofType->(fofType->Prop))->((fofType->(fofType->Prop))->Prop)). % Definition is_rel_on:=(fun (R:(fofType->(fofType->Prop))) (A:(fofType->Prop)) (B:(fofType->Prop))=> (forall (X:fofType) (Y:fofType), (((R X) Y)->((and (A X)) (B Y))))):((fofType->(fofType->Prop))->((fofType->Prop)->((fofType->Prop)->Prop))). % Definition restrict_rel_domain:=(fun (R:(fofType->(fofType->Prop))) (S:(fofType->Prop)) (X:fofType) (Y:fofType)=> ((and (S X)) ((R X) Y))):((fofType->(fofType->Prop))->((fofType->Prop)->(fofType->(fofType->Prop)))). % Definition rel_diagonal:=(fun (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->Prop)). % Definition rel_composition:=(fun (R1:(fofType->(fofType->Prop))) (R2:(fofType->(fofType->Prop))) (X:fofType) (Z:fofType)=> ((ex fofType) (fun (Y:fofType)=> ((and ((R1 X) Y)) ((R2 Y) Z))))):((fofType->(fofType->Prop))->((fofType->(fofType->Prop))->(fofType->(fofType->Prop)))). % Definition reflexive:=(fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType), ((R X) X))):((fofType->(fofType->Prop))->Prop). % Definition irreflexive:=(fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType), (((R X) X)->False))):((fofType->(fofType->Prop))->Prop). % Definition symmetric:=(fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType) (Y:fofType), (((R X) Y)->((R Y) X)))):((fofType->(fofType->Prop))->Prop). % Definition transitive:=(fun (R:(fofType->(fofType->Prop)))=> (forall (X:fofType) (Y:fofType) (Z:fofType), (((and ((R X) Y)) ((R Y) Z))->((R X) Z)))):((fofType->(fofType->Prop))->Prop). % Definition equiv_rel:=(fun (R:(fofType->(fofType->Prop)))=> ((and ((and (reflexive R)) (symmetric R))) (transitive R))):((fofType->(fofType->Prop))->Prop). % Definition rel_codomain:=(fun (R:(fofType->(fofType->Prop))) (Y:fofType)=> ((ex fofType) (fun (X:fofType)=> ((R X) Y)))):((fofType->(fofType->Prop))->(fofType->Prop)). % Definition rel_domain:=(fun (R:(fofType->(fofType->Prop))) (X:fofType)=> ((ex fofType) (fun (Y:fofType)=> ((R X) Y)))):((fofType->(fofType->Prop))->(fofType->Prop)). % Definition rel_inverse:=(fun (R:(fofType->(fofType->Prop))) (X:fofType) (Y:fofType)=> ((R Y) X)):((fofType->(fofType->Prop))->(fofType->(fofType->Prop))). % Definition equiv_classes:=(fun (R:(fofType->(fofType->Prop))) (S1:(fofType->Prop))=> ((ex fofType) (fun (X:fofType)=> ((and (S1 X)) (forall (Y:fofType), ((iff (S1 Y)) ((R X) Y))))))):((fofType->(fofType->Prop))->((fofType->Prop)->Prop)). % Definition restrict_rel_codomain:=(fun (R:(fofType->(fofType->Prop))) (S:(fofType->Prop)) (X:fofType) (Y:fofType)=> ((and (S Y)) ((R X) Y))):((fofType->(fofType->Prop))->((fofType->Prop)->(fofType->(fofType->Prop)))). % Definition rel_field:=(fun (R:(fofType->(fofType->Prop))) (X:fofType)=> ((or ((rel_domain R) X)) ((rel_codomain R) X))):((fofType->(fofType->Prop))->(fofType->Prop)). % Definition well_founded:=(fun (R:(fofType->(fofType->Prop)))=> (forall (X:(fofType->Prop)) (Z:fofType), ((X Z)->((ex fofType) (fun (Y:fofType)=> ((and (X Y)) (forall (W:fofType), (((R Y) W)->((X W)->False))))))))):((fofType->(fofType->Prop))->Prop). % Definition upwards_well_founded:=(fun (R:(fofType->(fofType->Prop)))=> (forall (X:(fofType->Prop)) (Z:fofType), ((X Z)->((ex fofType) (fun (Y:fofType)=> ((and (X Y)) (forall (W:fofType), (((R Y) Y)->((X W)->False))))))))):((fofType->(fofType->Prop))->Prop). % Trying to prove (forall (R:(fofType->(fofType->Prop))) (Q:(fofType->(fofType->Prop))), (((sub_rel R) Q)->((sub_rel R) ((cartesian_product (fun (X:fofType)=> True)) (fun (X:fofType)=> True))))) % Found conj0000:=(conj000 I):((and True) True) % Found (conj000 I) as proof of (((rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (fun (x3:fofType) (x20:fofType)=> ((and ((fun (x300:fofType)=> True) x3)) ((fun (x300:fofType)=> True) x20))))))))) x0) y) % Found ((conj00 True) I) as proof of (((rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (fun (x3:fofType) (x20:fofType)=> ((and ((fun (x300:fofType)=> True) x3)) ((fun (x300:fofType)=> True) x20))))))))) x0) y) % Found (((fun (B:Prop)=> ((conj0 B) I)) True) I) as proof of (((rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (fun (x3:fofType) (x20:fofType)=> ((and ((fun (x300:fofType)=> True) x3)) ((fun (x300:fofType)=> True) x20))))))))) x0) y) % Found (((fun (B:Prop)=> (((conj True) B) I)) True) I) as proof of (((rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (fun (x3:fofType) (x20:fofType)=> ((and ((fun (x300:fofType)=> True) x3)) ((fun (x300:fofType)=> True) x20))))))))) x0) y) % Found (fun (x00:((R x0) y))=> (((fun (B:Prop)=> (((conj True) B) I)) True) I)) as proof of (((rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (fun (x3:fofType) (x20:fofType)=> ((and ((fun (x300:fofType)=> True) x3)) ((fun (x300:fofType)=> True) x20))))))))) x0) y) % Found (fun (y:fofType) (x00:((R x0) y))=> (((fun (B:Prop)=> (((conj True) B) I)) True) I)) as proof of (((R x0) y)->(((rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (fun (x3:fofType) (x20:fofType)=> ((and ((fun (x300:fofType)=> True) x3)) ((fun (x300:fofType)=> True) x20))))))))) x0) y)) % Found (fun (x0:fofType) (y:fofType) (x00:((R x0) y))=> (((fun (B:Prop)=> (((conj True) B) I)) True) I)) as proof of (forall (y:fofType), (((R x0) y)->(((rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (fun (x3:fofType) (x20:fofType)=> ((and ((fun (x300:fofType)=> True) x3)) ((fun (x300:fofType)=> True) x20))))))))) x0) y))) % Found (fun (x:((((subrelation fofType) fofType) R) Q)) (x0:fofType) (y:fofType) (x00:((R x0) y))=> (((fun (B:Prop)=> (((conj True) B) I)) True) I)) as proof of ((((subrelation fofType) fofType) R) (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (fun (x3:fofType) (x20:fofType)=> ((and ((fun (x300:fofType)=> True) x3)) ((fun (x300:fofType)=> True) x20)))))))))) % Found (fun (Q:(fofType->(fofType->Prop))) (x:((((subrelation fofType) fofType) R) Q)) (x0:fofType) (y:fofType) (x00:((R x0) y))=> (((fun (B:Prop)=> (((conj True) B) I)) True) I)) as proof of (((((subrelation fofType) fofType) R) Q)->((((subrelation fofType) fofType) R) (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (fun (x3:fofType) (x20:fofType)=> ((and ((fun (x300:fofType)=> True) x3)) ((fun (x300:fofType)=> True) x20))))))))))) % Found (fun (R:(fofType->(fofType->Prop))) (Q:(fofType->(fofType->Prop))) (x:((((subrelation fofType) fofType) R) Q)) (x0:fofType) (y:fofType) (x00:((R x0) y))=> (((fun (B:Prop)=> (((conj True) B) I)) True) I)) as proof of (forall (Q:(fofType->(fofType->Prop))), (((((subrelation fofType) fofType) R) Q)->((((subrelation fofType) fofType) R) (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (fun (x3:fofType) (x20:fofType)=> ((and ((fun (x300:fofType)=> True) x3)) ((fun (x300:fofType)=> True) x20)))))))))))) % Found (fun (R:(fofType->(fofType->Prop))) (Q:(fofType->(fofType->Prop))) (x:((((subrelation fofType) fofType) R) Q)) (x0:fofType) (y:fofType) (x00:((R x0) y))=> (((fun (B:Prop)=> (((conj True) B) I)) True) I)) as proof of (forall (R:(fofType->(fofType->Prop))) (Q:(fofType->(fofType->Prop))), (((((subrelation fofType) fofType) R) Q)->((((subrelation fofType) fofType) R) (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (rel_inverse (fun (x3:fofType) (x20:fofType)=> ((and ((fun (x300:fofType)=> True) x3)) ((fun (x300:fofType)=> True) x20)))))))))))) % Found (fun (R:(fofType->(fofType->Prop))) (Q:(fofType->(fofType->Prop))) (x:((((subrelation fofType) fofType) R) Q)) (x0:fofType) (y:fofType) (x00:((R x0) y))=> (((fun (B:Prop)=> (((conj True) B) I)) True) I)) as proof of (forall (R:(fofType->(fofType->Prop))) (Q:(fofType->(fofType->Prop))), (((sub_rel R) Q)->((sub_rel R) ((cartesian_product (fun (X:fofType)=> True)) (fun (X:fofType)=> True))))) % Got proof (fun (R:(fofType->(fofType->Prop))) (Q:(fofType->(fofType->Prop))) (x:((((subrelation fofType) fofType) R) Q)) (x0:fofType) (y:fofType) (x00:((R x0) y))=> (((fun (B:Prop)=> (((conj True) B) I)) True) I)) % Time elapsed = 0.645135s % node=24 cost=858.000000 depth=11 % :::::::::::::::::::::: % % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p % % SZS output start Proof for /export/starexec/sandbox/benchmark/theBenchmark.p % (fun (R:(fofType->(fofType->Prop))) (Q:(fofType->(fofType->Prop))) (x:((((subrelation fofType) fofType) R) Q)) (x0:fofType) (y:fofType) (x00:((R x0) y))=> (((fun (B:Prop)=> (((conj True) B) I)) True) I)) % % SZS output end Proof for /export/starexec/sandbox/benchmark/theBenchmark.p % EOF %------------------------------------------------------------------------------