↑ Up

DT2H2X---1.9.5.THM-Ref.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : DT2H2X---1.9.5
% Problem  : ITP152^2 : TPTP v9.2.1. Released v7.5.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300

% Computer : n004.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Wed Feb 25 08:55:58 AM UTC 2026

% Result   : Theorem 2.96s 1.67s
% Output   : Refutation 2.96s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.11  % Problem  : ITP152^2 : TPTP v9.2.1. Released v7.5.0.
% 0.00/0.12  % Command  : /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% 0.17/0.33  % Computer : n004.cluster.edu
% 0.17/0.33  % Model    : x86_64 x86_64
% 0.17/0.33  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.17/0.33  % Memory   : 8042.1875MB
% 0.17/0.33  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.17/0.33  % CPULimit : 300
% 0.17/0.33  % WCLimit  : 300
% 0.17/0.33  % DateTime : Tue Feb 24 08:27:56 EST 2026
% 0.17/0.34  % CPUTime  : 
% 0.17/0.34  Running /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% 0.19/0.45  ---- Original DTF file ---
% 0.19/0.45  thf(spec,logic,$$dhol).
% 0.19/0.45  %------------------------------------------------------------------------------
% 0.19/0.45  % File     : ITP152^2 : TPTP v9.2.1. Released v7.5.0.
% 0.19/0.45  % Domain   : Interactive Theorem Proving
% 0.19/0.45  % Problem  : Sledgehammer Preferences problem prob_107__6248646_1
% 0.19/0.45  % Version  : Especial.
% 0.19/0.45  % English  :
% 0.19/0.45  
% 0.19/0.45  % Refs     : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
% 0.19/0.45  %          : [Des21] Desharnais (2021), Email to Geoff Sutcliffe
% 0.19/0.45  % Source   : [Des21]
% 0.19/0.45  % Names    : Preferences/prob_107__6248646_1 [Des21]
% 0.19/0.45  
% 0.19/0.45  % Status   : Theorem
% 0.19/0.45  % Rating   : 0.67 v8.1.0, 0.25 v7.5.0
% 0.19/0.45  % Syntax   : Number of formulae    :  353 ( 137 unt;  62 typ;   0 def)
% 0.19/0.45  %            Number of atoms       :  704 ( 293 equ;   0 cnn)
% 0.19/0.45  %            Maximal formula atoms :    8 (   2 avg)
% 0.19/0.45  %            Number of connectives : 5539 (  68   ~;  13   |;  78   &;5111   @)
% 0.19/0.45  %                                         (   0 <=>; 269  =>;   0  <=;   0 <~>)
% 0.19/0.45  %            Maximal formula depth :   28 (   8 avg)
% 0.19/0.45  %            Number of types       :    2 (   1 usr)
% 0.19/0.45  %            Number of type conns  :  241 ( 241   >;   0   *;   0   +;   0  <<)
% 0.19/0.45  %            Number of symbols     :   64 (  61 usr;   6 con; 0-7 aty)
% 0.19/0.45  %            Number of variables   : 1315 (  49   ^;1164   !;  23   ?;1315   :)
% 0.19/0.45  %                                         (  79  !>;   0  ?*;   0  @-;   0  @+)
% 0.19/0.45  % SPC      : TH1_THM_EQU_NAR
% 0.19/0.45  
% 0.19/0.45  % Comments : This file was generated by Sledgehammer 2021-02-23 16:27:54.280
% 0.19/0.45  %------------------------------------------------------------------------------
% 0.19/0.45  % Could-be-implicit typings (4)
% 0.19/0.45  thf(ty_t_Product__Type_Oprod,type,
% 0.19/0.45      product_prod: $tType > $tType > $tType ).
% 0.19/0.45  
% 0.19/0.45  thf(ty_t_Multiset_Omultiset,type,
% 0.19/0.45      multiset: $tType > $tType ).
% 0.19/0.45  
% 0.19/0.45  thf(ty_t_Set_Oset,type,
% 0.19/0.45      set: $tType > $tType ).
% 0.19/0.45  
% 0.19/0.45  thf(ty_tf_a,type,
% 0.19/0.45      a: $tType ).
% 0.19/0.45  
% 0.19/0.45  % Explicit typings (58)
% 0.19/0.45  thf(sy_cl_Orderings_Opreorder,type,
% 0.19/0.45      preorder: 
% 0.19/0.45        !>[A: $tType] : $o ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_cl_HOL_Otype,type,
% 0.19/0.45      type: 
% 0.19/0.45        !>[A: $tType] : $o ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_cl_Groups_Oplus,type,
% 0.19/0.45      plus: 
% 0.19/0.45        !>[A: $tType] : $o ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_cl_Groups_Ozero,type,
% 0.19/0.45      zero: 
% 0.19/0.45        !>[A: $tType] : $o ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_cl_Groups_Ominus,type,
% 0.19/0.45      minus: 
% 0.19/0.45        !>[A: $tType] : $o ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_cl_Orderings_Oord,type,
% 0.19/0.45      ord: 
% 0.19/0.45        !>[A: $tType] : $o ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_cl_Orderings_Otop,type,
% 0.19/0.45      top: 
% 0.19/0.45        !>[A: $tType] : $o ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_cl_Orderings_Olinorder,type,
% 0.19/0.45      linorder: 
% 0.19/0.45        !>[A: $tType] : $o ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_cl_Groups_Oab__group__add,type,
% 0.19/0.45      ab_group_add: 
% 0.19/0.45        !>[A: $tType] : $o ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_cl_Groups_Ocomm__monoid__add,type,
% 0.19/0.45      comm_monoid_add: 
% 0.19/0.45        !>[A: $tType] : $o ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_cl_Real__Vector__Spaces_Oreal__vector,type,
% 0.19/0.45      real_V1076094709vector: 
% 0.19/0.45        !>[A: $tType] : $o ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_BNF__Cardinal__Order__Relation_OrelChain,type,
% 0.19/0.45      bNF_Ca1785829860lChain: 
% 0.19/0.45        !>[A: $tType,B: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > ( A > B ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Groups_Ominus__class_Ominus,type,
% 0.19/0.45      minus_minus: 
% 0.19/0.45        !>[A: $tType] : ( A > A > A ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Groups_Oplus__class_Oplus,type,
% 0.19/0.45      plus_plus: 
% 0.19/0.45        !>[A: $tType] : ( A > A > A ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Groups_Ozero__class_Ozero,type,
% 0.19/0.45      zero_zero: 
% 0.19/0.45        !>[A: $tType] : A ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Multiset_Oadd__mset,type,
% 0.19/0.45      add_mset: 
% 0.19/0.45        !>[A: $tType] : ( A > ( multiset @ A ) > ( multiset @ A ) ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Multiset_Ocomm__monoid__add_Osum__mset,type,
% 0.19/0.45      comm_monoid_sum_mset: 
% 0.19/0.45        !>[A: $tType] : ( ( A > A > A ) > A > ( multiset @ A ) > A ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Multiset_Ofold__mset,type,
% 0.19/0.45      fold_mset: 
% 0.19/0.45        !>[A: $tType,B: $tType] : ( ( A > B > B ) > B > ( multiset @ A ) > B ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Multiset_Ois__empty,type,
% 0.19/0.45      is_empty: 
% 0.19/0.45        !>[A: $tType] : ( ( multiset @ A ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Multiset_Omult,type,
% 0.19/0.45      mult: 
% 0.19/0.45        !>[A: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > ( set @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Multiset_Omult1,type,
% 0.19/0.45      mult1: 
% 0.19/0.45        !>[A: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > ( set @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Multiset_Omultp,type,
% 0.19/0.45      multp: 
% 0.19/0.45        !>[A: $tType] : ( ( A > A > $o ) > ( multiset @ A ) > ( multiset @ A ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Multiset_Oset__mset,type,
% 0.19/0.45      set_mset: 
% 0.19/0.45        !>[A: $tType] : ( ( multiset @ A ) > ( set @ A ) ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Order__Relation_Opreorder__on,type,
% 0.19/0.45      order_preorder_on: 
% 0.19/0.45        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Order__Relation_Ostrict__linear__order__on,type,
% 0.19/0.45      order_215145569der_on: 
% 0.19/0.45        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Orderings_Oord__class_Oless__eq,type,
% 0.19/0.45      ord_less_eq: 
% 0.19/0.45        !>[A: $tType] : ( A > A > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Orderings_Otop__class_Otop,type,
% 0.19/0.45      top_top: 
% 0.19/0.45        !>[A: $tType] : A ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Preferences__Mirabelle__stygcjuplb_Oat__least__as__good,type,
% 0.19/0.45      prefer310429814s_good: 
% 0.19/0.45        !>[A: $tType] : ( A > ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > ( set @ A ) ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Preferences__Mirabelle__stygcjuplb_Opreference,type,
% 0.19/0.45      prefer199794634erence: 
% 0.19/0.45        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Preferences__Mirabelle__stygcjuplb_Orational__preference,type,
% 0.19/0.45      prefer1997167224erence: 
% 0.19/0.45        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Preferences__Mirabelle__stygcjuplb_Orational__preference__axioms,type,
% 0.19/0.45      prefer1801827867axioms: 
% 0.19/0.45        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Product__Type_OPair,type,
% 0.19/0.45      product_Pair: 
% 0.19/0.45        !>[A: $tType,B: $tType] : ( A > B > ( product_prod @ A @ B ) ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Product__Type_Ocurry,type,
% 0.19/0.45      product_curry: 
% 0.19/0.45        !>[A: $tType,B: $tType,C: $tType] : ( ( ( product_prod @ A @ B ) > C ) > A > B > C ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Product__Type_Ointernal__case__prod,type,
% 0.19/0.45      produc2004651681e_prod: 
% 0.19/0.45        !>[A: $tType,B: $tType,C: $tType] : ( ( A > B > C ) > ( product_prod @ A @ B ) > C ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Product__Type_Omap__prod,type,
% 0.19/0.45      product_map_prod: 
% 0.19/0.45        !>[A: $tType,C: $tType,B: $tType,D: $tType] : ( ( A > C ) > ( B > D ) > ( product_prod @ A @ B ) > ( product_prod @ C @ D ) ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Product__Type_Oold_Obool_Orec__bool,type,
% 0.19/0.45      product_rec_bool: 
% 0.19/0.45        !>[T: $tType] : ( T > T > $o > T ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Product__Type_Oold_Oprod_Orec__prod,type,
% 0.19/0.45      product_rec_prod: 
% 0.19/0.45        !>[A: $tType,B: $tType,T: $tType] : ( ( A > B > T ) > ( product_prod @ A @ B ) > T ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Product__Type_Oprod_Ocase__prod,type,
% 0.19/0.45      product_case_prod: 
% 0.19/0.45        !>[A: $tType,B: $tType,C: $tType] : ( ( A > B > C ) > ( product_prod @ A @ B ) > C ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Product__Type_Oprod_Ofst,type,
% 0.19/0.45      product_fst: 
% 0.19/0.45        !>[A: $tType,B: $tType] : ( ( product_prod @ A @ B ) > A ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Product__Type_Oprod_Osnd,type,
% 0.19/0.45      product_snd: 
% 0.19/0.45        !>[A: $tType,B: $tType] : ( ( product_prod @ A @ B ) > B ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Product__Type_Oprod_Oswap,type,
% 0.19/0.45      product_swap: 
% 0.19/0.45        !>[A: $tType,B: $tType] : ( ( product_prod @ A @ B ) > ( product_prod @ B @ A ) ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Product__Type_Oscomp,type,
% 0.19/0.45      product_scomp: 
% 0.19/0.45        !>[A: $tType,B: $tType,C: $tType,D: $tType] : ( ( A > ( product_prod @ B @ C ) ) > ( B > C > D ) > A > D ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Relation_Oasym,type,
% 0.19/0.45      asym: 
% 0.19/0.45        !>[A: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Relation_Oinv__image,type,
% 0.19/0.45      inv_image: 
% 0.19/0.45        !>[B: $tType,A: $tType] : ( ( set @ ( product_prod @ B @ B ) ) > ( A > B ) > ( set @ ( product_prod @ A @ A ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Relation_Oinv__imagep,type,
% 0.19/0.45      inv_imagep: 
% 0.19/0.45        !>[B: $tType,A: $tType] : ( ( B > B > $o ) > ( A > B ) > A > A > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Relation_Oirrefl,type,
% 0.19/0.45      irrefl: 
% 0.19/0.45        !>[A: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Relation_Orefl__on,type,
% 0.19/0.45      refl_on: 
% 0.19/0.45        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Relation_Ototal__on,type,
% 0.19/0.45      total_on: 
% 0.19/0.45        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Relation_Otrans,type,
% 0.19/0.45      trans: 
% 0.19/0.45        !>[A: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Set_OCollect,type,
% 0.19/0.45      collect: 
% 0.19/0.45        !>[A: $tType] : ( ( A > $o ) > ( set @ A ) ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Set_Oimage,type,
% 0.19/0.45      image: 
% 0.19/0.45        !>[A: $tType,B: $tType] : ( ( A > B ) > ( set @ A ) > ( set @ B ) ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Wellfounded_Olex__prod,type,
% 0.19/0.45      lex_prod: 
% 0.19/0.45        !>[A: $tType,B: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > ( set @ ( product_prod @ B @ B ) ) > ( set @ ( product_prod @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_Wfrec_Osame__fst,type,
% 0.19/0.45      same_fst: 
% 0.19/0.45        !>[A: $tType,B: $tType] : ( ( A > $o ) > ( A > ( set @ ( product_prod @ B @ B ) ) ) > ( set @ ( product_prod @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_c_member,type,
% 0.19/0.45      member: 
% 0.19/0.45        !>[A: $tType] : ( A > ( set @ A ) > $o ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_v_carrier,type,
% 0.19/0.45      carrier: set @ a ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_v_relation,type,
% 0.19/0.45      relation: set @ ( product_prod @ a @ a ) ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_v_x,type,
% 0.19/0.45      x: a ).
% 0.19/0.45  
% 0.19/0.45  thf(sy_v_y,type,
% 0.19/0.45      y: a ).
% 0.19/0.45  
% 0.19/0.45  % Relevant facts (256)
% 0.19/0.45  thf(fact_0_indiff__trans,axiom,
% 0.19/0.45      ! [X: a,Y: a,Z: a] :
% 0.19/0.45        ( ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X @ Y ) @ relation )
% 0.19/0.45          & ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Y @ X ) @ relation ) )
% 0.19/0.45       => ( ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Y @ Z ) @ relation )
% 0.19/0.45            & ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Z @ Y ) @ relation ) )
% 0.19/0.45         => ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X @ Z ) @ relation )
% 0.19/0.45            & ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Z @ X ) @ relation ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % indiff_trans
% 0.19/0.45  thf(fact_1_strict__trans,axiom,
% 0.19/0.45      ! [X: a,Y: a,Z: a] :
% 0.19/0.45        ( ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X @ Y ) @ relation )
% 0.19/0.45          & ~ ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Y @ X ) @ relation ) )
% 0.19/0.45       => ( ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Y @ Z ) @ relation )
% 0.19/0.45            & ~ ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Z @ Y ) @ relation ) )
% 0.19/0.45         => ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X @ Z ) @ relation )
% 0.19/0.45            & ~ ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Z @ X ) @ relation ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % strict_trans
% 0.19/0.45  thf(fact_2_rational__preference__axioms,axiom,
% 0.19/0.45      prefer1997167224erence @ a @ carrier @ relation ).
% 0.19/0.45  
% 0.19/0.45  % rational_preference_axioms
% 0.19/0.45  thf(fact_3_compl,axiom,
% 0.19/0.45      ! [X2: a] :
% 0.19/0.45        ( ( member @ a @ X2 @ carrier )
% 0.19/0.45       => ! [Xa: a] :
% 0.19/0.45            ( ( member @ a @ Xa @ carrier )
% 0.19/0.45           => ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X2 @ Xa ) @ relation )
% 0.19/0.45              | ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Xa @ X2 ) @ relation ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % compl
% 0.19/0.45  thf(fact_4_not__outside,axiom,
% 0.19/0.45      ! [X: a,Y: a] :
% 0.19/0.45        ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X @ Y ) @ relation )
% 0.19/0.45       => ( member @ a @ X @ carrier ) ) ).
% 0.19/0.45  
% 0.19/0.45  % not_outside
% 0.19/0.45  thf(fact_5_strict__not__refl__weak,axiom,
% 0.19/0.45      ! [X: a,Y: a] :
% 0.19/0.45        ( ( ( member @ a @ X @ carrier )
% 0.19/0.45          & ( member @ a @ Y @ carrier ) )
% 0.19/0.45       => ( ( ~ ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Y @ X ) @ relation ) )
% 0.19/0.45          = ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X @ Y ) @ relation )
% 0.19/0.45            & ~ ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Y @ X ) @ relation ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % strict_not_refl_weak
% 0.19/0.45  thf(fact_6_preference__axioms,axiom,
% 0.19/0.45      prefer199794634erence @ a @ carrier @ relation ).
% 0.19/0.45  
% 0.19/0.45  % preference_axioms
% 0.19/0.45  thf(fact_7_trans__refl,axiom,
% 0.19/0.45      order_preorder_on @ a @ carrier @ relation ).
% 0.19/0.45  
% 0.19/0.45  % trans_refl
% 0.19/0.45  thf(fact_8_total,axiom,
% 0.19/0.45      total_on @ a @ carrier @ relation ).
% 0.19/0.45  
% 0.19/0.45  % total
% 0.19/0.45  thf(fact_9_reflexivity,axiom,
% 0.19/0.45      refl_on @ a @ carrier @ relation ).
% 0.19/0.45  
% 0.19/0.45  % reflexivity
% 0.19/0.45  thf(fact_10_prod_Oinject,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,X1: A,X22: B,Y1: A,Y2: B] :
% 0.19/0.45        ( ( ( product_Pair @ A @ B @ X1 @ X22 )
% 0.19/0.45          = ( product_Pair @ A @ B @ Y1 @ Y2 ) )
% 0.19/0.45        = ( ( X1 = Y1 )
% 0.19/0.45          & ( X22 = Y2 ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % prod.inject
% 0.19/0.45  thf(fact_11_old_Oprod_Oinject,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,A2: A,B2: B,A3: A,B3: B] :
% 0.19/0.45        ( ( ( product_Pair @ A @ B @ A2 @ B2 )
% 0.19/0.45          = ( product_Pair @ A @ B @ A3 @ B3 ) )
% 0.19/0.45        = ( ( A2 = A3 )
% 0.19/0.45          & ( B2 = B3 ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % old.prod.inject
% 0.19/0.45  thf(fact_12_transitivity,axiom,
% 0.19/0.45      trans @ a @ relation ).
% 0.19/0.45  
% 0.19/0.45  % transitivity
% 0.19/0.45  thf(fact_13_surj__pair,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,P: product_prod @ A @ B] :
% 0.19/0.45      ? [X3: A,Y3: B] :
% 0.19/0.45        ( P
% 0.19/0.45        = ( product_Pair @ A @ B @ X3 @ Y3 ) ) ).
% 0.19/0.45  
% 0.19/0.45  % surj_pair
% 0.19/0.45  thf(fact_14_prod__cases,axiom,
% 0.19/0.45      ! [B: $tType,A: $tType,P2: ( product_prod @ A @ B ) > $o,P: product_prod @ A @ B] :
% 0.19/0.45        ( ! [A4: A,B4: B] : ( P2 @ ( product_Pair @ A @ B @ A4 @ B4 ) )
% 0.19/0.45       => ( P2 @ P ) ) ).
% 0.19/0.45  
% 0.19/0.45  % prod_cases
% 0.19/0.45  thf(fact_15_Pair__inject,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,A2: A,B2: B,A3: A,B3: B] :
% 0.19/0.45        ( ( ( product_Pair @ A @ B @ A2 @ B2 )
% 0.19/0.45          = ( product_Pair @ A @ B @ A3 @ B3 ) )
% 0.19/0.45       => ~ ( ( A2 = A3 )
% 0.19/0.45           => ( B2 != B3 ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % Pair_inject
% 0.19/0.45  thf(fact_16_prod__cases3,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,C: $tType,Y: product_prod @ A @ ( product_prod @ B @ C )] :
% 0.19/0.45        ~ ! [A4: A,B4: B,C2: C] :
% 0.19/0.45            ( Y
% 0.19/0.45           != ( product_Pair @ A @ ( product_prod @ B @ C ) @ A4 @ ( product_Pair @ B @ C @ B4 @ C2 ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % prod_cases3
% 0.19/0.45  thf(fact_17_prod__cases4,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,C: $tType,D: $tType,Y: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) )] :
% 0.19/0.45        ~ ! [A4: A,B4: B,C2: C,D2: D] :
% 0.19/0.45            ( Y
% 0.19/0.45           != ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ D ) @ B4 @ ( product_Pair @ C @ D @ C2 @ D2 ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % prod_cases4
% 0.19/0.45  thf(fact_18_prod__cases5,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,C: $tType,D: $tType,E: $tType,Y: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) )] :
% 0.19/0.45        ~ ! [A4: A,B4: B,C2: C,D2: D,E2: E] :
% 0.19/0.45            ( Y
% 0.19/0.45           != ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ E ) @ C2 @ ( product_Pair @ D @ E @ D2 @ E2 ) ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % prod_cases5
% 0.19/0.45  thf(fact_19_rational__preference_Oaxioms_I1_J,axiom,
% 0.19/0.45      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ( prefer1997167224erence @ A @ Carrier @ Relation )
% 0.19/0.45       => ( prefer199794634erence @ A @ Carrier @ Relation ) ) ).
% 0.19/0.45  
% 0.19/0.45  % rational_preference.axioms(1)
% 0.19/0.45  thf(fact_20_preference_Otrans__refl,axiom,
% 0.19/0.45      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ( prefer199794634erence @ A @ Carrier @ Relation )
% 0.19/0.45       => ( order_preorder_on @ A @ Carrier @ Relation ) ) ).
% 0.19/0.45  
% 0.19/0.45  % preference.trans_refl
% 0.19/0.45  thf(fact_21_preference_Oreflexivity,axiom,
% 0.19/0.45      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ( prefer199794634erence @ A @ Carrier @ Relation )
% 0.19/0.45       => ( refl_on @ A @ Carrier @ Relation ) ) ).
% 0.19/0.45  
% 0.19/0.45  % preference.reflexivity
% 0.19/0.45  thf(fact_22_preference_Otransitivity,axiom,
% 0.19/0.45      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ( prefer199794634erence @ A @ Carrier @ Relation )
% 0.19/0.45       => ( trans @ A @ Relation ) ) ).
% 0.19/0.45  
% 0.19/0.45  % preference.transitivity
% 0.19/0.45  thf(fact_23_rational__preference_Ototal,axiom,
% 0.19/0.45      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ( prefer1997167224erence @ A @ Carrier @ Relation )
% 0.19/0.45       => ( total_on @ A @ Carrier @ Relation ) ) ).
% 0.19/0.45  
% 0.19/0.45  % rational_preference.total
% 0.19/0.45  thf(fact_24_preference_Ointro,axiom,
% 0.19/0.45      ! [A: $tType,Relation: set @ ( product_prod @ A @ A ),Carrier: set @ A] :
% 0.19/0.45        ( ! [X3: A,Y3: A] :
% 0.19/0.45            ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Y3 ) @ Relation )
% 0.19/0.45           => ( member @ A @ X3 @ Carrier ) )
% 0.19/0.45       => ( ! [X3: A,Y3: A] :
% 0.19/0.45              ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Y3 ) @ Relation )
% 0.19/0.45             => ( member @ A @ Y3 @ Carrier ) )
% 0.19/0.45         => ( ( order_preorder_on @ A @ Carrier @ Relation )
% 0.19/0.45           => ( prefer199794634erence @ A @ Carrier @ Relation ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % preference.intro
% 0.19/0.45  thf(fact_25_preference__def,axiom,
% 0.19/0.45      ! [A: $tType] :
% 0.19/0.45        ( ( prefer199794634erence @ A )
% 0.19/0.45        = ( ^ [Carrier2: set @ A,Relation2: set @ ( product_prod @ A @ A )] :
% 0.19/0.45              ( ! [X4: A,Y4: A] :
% 0.19/0.45                  ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Y4 ) @ Relation2 )
% 0.19/0.45                 => ( member @ A @ X4 @ Carrier2 ) )
% 0.19/0.45              & ! [X4: A,Y4: A] :
% 0.19/0.45                  ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Y4 ) @ Relation2 )
% 0.19/0.45                 => ( member @ A @ Y4 @ Carrier2 ) )
% 0.19/0.45              & ( order_preorder_on @ A @ Carrier2 @ Relation2 ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % preference_def
% 0.19/0.45  thf(fact_26_preference_Oindiff__trans,axiom,
% 0.19/0.45      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A ),X: A,Y: A,Z: A] :
% 0.19/0.45        ( ( prefer199794634erence @ A @ Carrier @ Relation )
% 0.19/0.45       => ( ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ Relation )
% 0.19/0.45            & ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ X ) @ Relation ) )
% 0.19/0.45         => ( ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ Z ) @ Relation )
% 0.19/0.45              & ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Z @ Y ) @ Relation ) )
% 0.19/0.45           => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Z ) @ Relation )
% 0.19/0.45              & ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Z @ X ) @ Relation ) ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % preference.indiff_trans
% 0.19/0.45  thf(fact_27_preference_Onot__outside,axiom,
% 0.19/0.45      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A ),X: A,Y: A] :
% 0.19/0.45        ( ( prefer199794634erence @ A @ Carrier @ Relation )
% 0.19/0.45       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ Relation )
% 0.19/0.45         => ( member @ A @ X @ Carrier ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % preference.not_outside
% 0.19/0.45  thf(fact_28_rational__preference_Ostrict__not__refl__weak,axiom,
% 0.19/0.45      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A ),X: A,Y: A] :
% 0.19/0.45        ( ( prefer1997167224erence @ A @ Carrier @ Relation )
% 0.19/0.45       => ( ( ( member @ A @ X @ Carrier )
% 0.19/0.45            & ( member @ A @ Y @ Carrier ) )
% 0.19/0.45         => ( ( ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ X ) @ Relation ) )
% 0.19/0.45            = ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ Relation )
% 0.19/0.45              & ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ X ) @ Relation ) ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % rational_preference.strict_not_refl_weak
% 0.19/0.45  thf(fact_29_rational__preference_Ostrict__trans,axiom,
% 0.19/0.45      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A ),X: A,Y: A,Z: A] :
% 0.19/0.45        ( ( prefer1997167224erence @ A @ Carrier @ Relation )
% 0.19/0.45       => ( ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ Relation )
% 0.19/0.45            & ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ X ) @ Relation ) )
% 0.19/0.45         => ( ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ Z ) @ Relation )
% 0.19/0.45              & ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Z @ Y ) @ Relation ) )
% 0.19/0.45           => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Z ) @ Relation )
% 0.19/0.45              & ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Z @ X ) @ Relation ) ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % rational_preference.strict_trans
% 0.19/0.45  thf(fact_30_rational__preference_Ocompl,axiom,
% 0.19/0.45      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ( prefer1997167224erence @ A @ Carrier @ Relation )
% 0.19/0.45       => ! [X2: A] :
% 0.19/0.45            ( ( member @ A @ X2 @ Carrier )
% 0.19/0.45           => ! [Xa: A] :
% 0.19/0.45                ( ( member @ A @ Xa @ Carrier )
% 0.19/0.45               => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X2 @ Xa ) @ Relation )
% 0.19/0.45                  | ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Xa @ X2 ) @ Relation ) ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % rational_preference.compl
% 0.19/0.45  thf(fact_31_old_Oprod_Oinducts,axiom,
% 0.19/0.45      ! [B: $tType,A: $tType,P2: ( product_prod @ A @ B ) > $o,Prod: product_prod @ A @ B] :
% 0.19/0.45        ( ! [A4: A,B4: B] : ( P2 @ ( product_Pair @ A @ B @ A4 @ B4 ) )
% 0.19/0.45       => ( P2 @ Prod ) ) ).
% 0.19/0.45  
% 0.19/0.45  % old.prod.inducts
% 0.19/0.45  thf(fact_32_old_Oprod_Oexhaust,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,Y: product_prod @ A @ B] :
% 0.19/0.45        ~ ! [A4: A,B4: B] :
% 0.19/0.45            ( Y
% 0.19/0.45           != ( product_Pair @ A @ B @ A4 @ B4 ) ) ).
% 0.19/0.45  
% 0.19/0.45  % old.prod.exhaust
% 0.19/0.45  thf(fact_33_prod__induct7,axiom,
% 0.19/0.45      ! [G: $tType,F: $tType,E: $tType,D: $tType,C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) ) ) > $o,X: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) )] :
% 0.19/0.45        ( ! [A4: A,B4: B,C2: C,D2: D,E2: E,F2: F,G2: G] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) @ C2 @ ( product_Pair @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) @ D2 @ ( product_Pair @ E @ ( product_prod @ F @ G ) @ E2 @ ( product_Pair @ F @ G @ F2 @ G2 ) ) ) ) ) ) )
% 0.19/0.45       => ( P2 @ X ) ) ).
% 0.19/0.45  
% 0.19/0.45  % prod_induct7
% 0.19/0.45  thf(fact_34_prod__induct6,axiom,
% 0.19/0.45      ! [F: $tType,E: $tType,D: $tType,C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) ) ) > $o,X: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) )] :
% 0.19/0.45        ( ! [A4: A,B4: B,C2: C,D2: D,E2: E,F2: F] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) @ C2 @ ( product_Pair @ D @ ( product_prod @ E @ F ) @ D2 @ ( product_Pair @ E @ F @ E2 @ F2 ) ) ) ) ) )
% 0.19/0.45       => ( P2 @ X ) ) ).
% 0.19/0.45  
% 0.19/0.45  % prod_induct6
% 0.19/0.45  thf(fact_35_prod__induct5,axiom,
% 0.19/0.45      ! [E: $tType,D: $tType,C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) ) ) > $o,X: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) )] :
% 0.19/0.45        ( ! [A4: A,B4: B,C2: C,D2: D,E2: E] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ E ) @ C2 @ ( product_Pair @ D @ E @ D2 @ E2 ) ) ) ) )
% 0.19/0.45       => ( P2 @ X ) ) ).
% 0.19/0.45  
% 0.19/0.45  % prod_induct5
% 0.19/0.45  thf(fact_36_prod__induct4,axiom,
% 0.19/0.45      ! [D: $tType,C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) ) ) > $o,X: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) )] :
% 0.19/0.45        ( ! [A4: A,B4: B,C2: C,D2: D] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ D ) @ B4 @ ( product_Pair @ C @ D @ C2 @ D2 ) ) ) )
% 0.19/0.45       => ( P2 @ X ) ) ).
% 0.19/0.45  
% 0.19/0.45  % prod_induct4
% 0.19/0.45  thf(fact_37_prod__induct3,axiom,
% 0.19/0.45      ! [C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ C ) ) > $o,X: product_prod @ A @ ( product_prod @ B @ C )] :
% 0.19/0.45        ( ! [A4: A,B4: B,C2: C] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ C ) @ A4 @ ( product_Pair @ B @ C @ B4 @ C2 ) ) )
% 0.19/0.45       => ( P2 @ X ) ) ).
% 0.19/0.45  
% 0.19/0.45  % prod_induct3
% 0.19/0.45  thf(fact_38_prod__cases7,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,C: $tType,D: $tType,E: $tType,F: $tType,G: $tType,Y: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) )] :
% 0.19/0.45        ~ ! [A4: A,B4: B,C2: C,D2: D,E2: E,F2: F,G2: G] :
% 0.19/0.45            ( Y
% 0.19/0.45           != ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) @ C2 @ ( product_Pair @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) @ D2 @ ( product_Pair @ E @ ( product_prod @ F @ G ) @ E2 @ ( product_Pair @ F @ G @ F2 @ G2 ) ) ) ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % prod_cases7
% 0.19/0.45  thf(fact_39_prod__cases6,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,C: $tType,D: $tType,E: $tType,F: $tType,Y: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) )] :
% 0.19/0.45        ~ ! [A4: A,B4: B,C2: C,D2: D,E2: E,F2: F] :
% 0.19/0.45            ( Y
% 0.19/0.45           != ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) @ C2 @ ( product_Pair @ D @ ( product_prod @ E @ F ) @ D2 @ ( product_Pair @ E @ F @ E2 @ F2 ) ) ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % prod_cases6
% 0.19/0.45  thf(fact_40_preorder__on__def,axiom,
% 0.19/0.45      ! [A: $tType] :
% 0.19/0.45        ( ( order_preorder_on @ A )
% 0.19/0.45        = ( ^ [A5: set @ A,R: set @ ( product_prod @ A @ A )] :
% 0.19/0.45              ( ( refl_on @ A @ A5 @ R )
% 0.19/0.45              & ( trans @ A @ R ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % preorder_on_def
% 0.19/0.45  thf(fact_41_old_Oprod_Orec,axiom,
% 0.19/0.45      ! [A: $tType,T: $tType,B: $tType,F1: A > B > T,A2: A,B2: B] :
% 0.19/0.45        ( ( product_rec_prod @ A @ B @ T @ F1 @ ( product_Pair @ A @ B @ A2 @ B2 ) )
% 0.19/0.45        = ( F1 @ A2 @ B2 ) ) ).
% 0.19/0.45  
% 0.19/0.45  % old.prod.rec
% 0.19/0.45  thf(fact_42_total__on__def,axiom,
% 0.19/0.45      ! [A: $tType] :
% 0.19/0.45        ( ( total_on @ A )
% 0.19/0.45        = ( ^ [A5: set @ A,R: set @ ( product_prod @ A @ A )] :
% 0.19/0.45            ! [X4: A] :
% 0.19/0.45              ( ( member @ A @ X4 @ A5 )
% 0.19/0.45             => ! [Y4: A] :
% 0.19/0.45                  ( ( member @ A @ Y4 @ A5 )
% 0.19/0.45                 => ( ( X4 != Y4 )
% 0.19/0.45                   => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Y4 ) @ R )
% 0.19/0.45                      | ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y4 @ X4 ) @ R ) ) ) ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % total_on_def
% 0.19/0.45  thf(fact_43_total__onI,axiom,
% 0.19/0.45      ! [A: $tType,A6: set @ A,R2: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ! [X3: A,Y3: A] :
% 0.19/0.45            ( ( member @ A @ X3 @ A6 )
% 0.19/0.45           => ( ( member @ A @ Y3 @ A6 )
% 0.19/0.45             => ( ( X3 != Y3 )
% 0.19/0.45               => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Y3 ) @ R2 )
% 0.19/0.45                  | ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y3 @ X3 ) @ R2 ) ) ) ) )
% 0.19/0.45       => ( total_on @ A @ A6 @ R2 ) ) ).
% 0.19/0.45  
% 0.19/0.45  % total_onI
% 0.19/0.45  thf(fact_44_refl__on__domain,axiom,
% 0.19/0.45      ! [A: $tType,A6: set @ A,R2: set @ ( product_prod @ A @ A ),A2: A,B2: A] :
% 0.19/0.45        ( ( refl_on @ A @ A6 @ R2 )
% 0.19/0.45       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A2 @ B2 ) @ R2 )
% 0.19/0.45         => ( ( member @ A @ A2 @ A6 )
% 0.19/0.45            & ( member @ A @ B2 @ A6 ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % refl_on_domain
% 0.19/0.45  thf(fact_45_mem__Collect__eq,axiom,
% 0.19/0.45      ! [A: $tType,A2: A,P2: A > $o] :
% 0.19/0.45        ( ( member @ A @ A2 @ ( collect @ A @ P2 ) )
% 0.19/0.45        = ( P2 @ A2 ) ) ).
% 0.19/0.45  
% 0.19/0.45  % mem_Collect_eq
% 0.19/0.45  thf(fact_46_Collect__mem__eq,axiom,
% 0.19/0.45      ! [A: $tType,A6: set @ A] :
% 0.19/0.45        ( ( collect @ A
% 0.19/0.45          @ ^ [X4: A] : ( member @ A @ X4 @ A6 ) )
% 0.19/0.45        = A6 ) ).
% 0.19/0.45  
% 0.19/0.45  % Collect_mem_eq
% 0.19/0.45  thf(fact_47_Collect__cong,axiom,
% 0.19/0.45      ! [A: $tType,P2: A > $o,Q: A > $o] :
% 0.19/0.45        ( ! [X3: A] :
% 0.19/0.45            ( ( P2 @ X3 )
% 0.19/0.45            = ( Q @ X3 ) )
% 0.19/0.45       => ( ( collect @ A @ P2 )
% 0.19/0.45          = ( collect @ A @ Q ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % Collect_cong
% 0.19/0.45  thf(fact_48_ext,axiom,
% 0.19/0.45      ! [B: $tType,A: $tType,F3: A > B,G3: A > B] :
% 0.19/0.45        ( ! [X3: A] :
% 0.19/0.45            ( ( F3 @ X3 )
% 0.19/0.45            = ( G3 @ X3 ) )
% 0.19/0.45       => ( F3 = G3 ) ) ).
% 0.19/0.45  
% 0.19/0.45  % ext
% 0.19/0.45  thf(fact_49_refl__onD2,axiom,
% 0.19/0.45      ! [A: $tType,A6: set @ A,R2: set @ ( product_prod @ A @ A ),X: A,Y: A] :
% 0.19/0.45        ( ( refl_on @ A @ A6 @ R2 )
% 0.19/0.45       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ R2 )
% 0.19/0.45         => ( member @ A @ Y @ A6 ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % refl_onD2
% 0.19/0.45  thf(fact_50_refl__onD1,axiom,
% 0.19/0.45      ! [A: $tType,A6: set @ A,R2: set @ ( product_prod @ A @ A ),X: A,Y: A] :
% 0.19/0.45        ( ( refl_on @ A @ A6 @ R2 )
% 0.19/0.45       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ R2 )
% 0.19/0.45         => ( member @ A @ X @ A6 ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % refl_onD1
% 0.19/0.45  thf(fact_51_refl__onD,axiom,
% 0.19/0.45      ! [A: $tType,A6: set @ A,R2: set @ ( product_prod @ A @ A ),A2: A] :
% 0.19/0.45        ( ( refl_on @ A @ A6 @ R2 )
% 0.19/0.45       => ( ( member @ A @ A2 @ A6 )
% 0.19/0.45         => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A2 @ A2 ) @ R2 ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % refl_onD
% 0.19/0.45  thf(fact_52_trans__def,axiom,
% 0.19/0.45      ! [A: $tType] :
% 0.19/0.45        ( ( trans @ A )
% 0.19/0.45        = ( ^ [R: set @ ( product_prod @ A @ A )] :
% 0.19/0.45            ! [X4: A,Y4: A,Z2: A] :
% 0.19/0.45              ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Y4 ) @ R )
% 0.19/0.45             => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y4 @ Z2 ) @ R )
% 0.19/0.45               => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Z2 ) @ R ) ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % trans_def
% 0.19/0.45  thf(fact_53_transI,axiom,
% 0.19/0.45      ! [A: $tType,R2: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ! [X3: A,Y3: A,Z3: A] :
% 0.19/0.45            ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Y3 ) @ R2 )
% 0.19/0.45           => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y3 @ Z3 ) @ R2 )
% 0.19/0.45             => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Z3 ) @ R2 ) ) )
% 0.19/0.45       => ( trans @ A @ R2 ) ) ).
% 0.19/0.45  
% 0.19/0.45  % transI
% 0.19/0.45  thf(fact_54_transD,axiom,
% 0.19/0.45      ! [A: $tType,R2: set @ ( product_prod @ A @ A ),X: A,Y: A,Z: A] :
% 0.19/0.45        ( ( trans @ A @ R2 )
% 0.19/0.45       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ R2 )
% 0.19/0.45         => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ Z ) @ R2 )
% 0.19/0.45           => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Z ) @ R2 ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % transD
% 0.19/0.45  thf(fact_55_transE,axiom,
% 0.19/0.45      ! [A: $tType,R2: set @ ( product_prod @ A @ A ),X: A,Y: A,Z: A] :
% 0.19/0.45        ( ( trans @ A @ R2 )
% 0.19/0.45       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ R2 )
% 0.19/0.45         => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ Z ) @ R2 )
% 0.19/0.45           => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Z ) @ R2 ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % transE
% 0.19/0.45  thf(fact_56_rational__preference_Ointro,axiom,
% 0.19/0.45      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ( prefer199794634erence @ A @ Carrier @ Relation )
% 0.19/0.45       => ( ( prefer1801827867axioms @ A @ Carrier @ Relation )
% 0.19/0.45         => ( prefer1997167224erence @ A @ Carrier @ Relation ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % rational_preference.intro
% 0.19/0.45  thf(fact_57_rational__preference__def,axiom,
% 0.19/0.45      ! [A: $tType] :
% 0.19/0.45        ( ( prefer1997167224erence @ A )
% 0.19/0.45        = ( ^ [Carrier2: set @ A,Relation2: set @ ( product_prod @ A @ A )] :
% 0.19/0.45              ( ( prefer199794634erence @ A @ Carrier2 @ Relation2 )
% 0.19/0.45              & ( prefer1801827867axioms @ A @ Carrier2 @ Relation2 ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % rational_preference_def
% 0.19/0.45  thf(fact_58_internal__case__prod__conv,axiom,
% 0.19/0.45      ! [B: $tType,A: $tType,C: $tType,C3: B > C > A,A2: B,B2: C] :
% 0.19/0.45        ( ( produc2004651681e_prod @ B @ C @ A @ C3 @ ( product_Pair @ B @ C @ A2 @ B2 ) )
% 0.19/0.45        = ( C3 @ A2 @ B2 ) ) ).
% 0.19/0.45  
% 0.19/0.45  % internal_case_prod_conv
% 0.19/0.45  thf(fact_59_rational__preference_Oaxioms_I2_J,axiom,
% 0.19/0.45      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ( prefer1997167224erence @ A @ Carrier @ Relation )
% 0.19/0.45       => ( prefer1801827867axioms @ A @ Carrier @ Relation ) ) ).
% 0.19/0.45  
% 0.19/0.45  % rational_preference.axioms(2)
% 0.19/0.45  thf(fact_60_rational__preference__axioms_Ointro,axiom,
% 0.19/0.45      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ( total_on @ A @ Carrier @ Relation )
% 0.19/0.45       => ( prefer1801827867axioms @ A @ Carrier @ Relation ) ) ).
% 0.19/0.45  
% 0.19/0.45  % rational_preference_axioms.intro
% 0.19/0.45  thf(fact_61_rational__preference__axioms__def,axiom,
% 0.19/0.45      ! [A: $tType] :
% 0.19/0.45        ( ( prefer1801827867axioms @ A )
% 0.19/0.45        = ( total_on @ A ) ) ).
% 0.19/0.45  
% 0.19/0.45  % rational_preference_axioms_def
% 0.19/0.45  thf(fact_62_ssubst__Pair__rhs,axiom,
% 0.19/0.45      ! [B: $tType,A: $tType,R2: A,S: B,R3: set @ ( product_prod @ A @ B ),S2: B] :
% 0.19/0.45        ( ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ R2 @ S ) @ R3 )
% 0.19/0.45       => ( ( S2 = S )
% 0.19/0.45         => ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ R2 @ S2 ) @ R3 ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % ssubst_Pair_rhs
% 0.19/0.45  thf(fact_63_at__lst__asgd__ge,axiom,
% 0.19/0.45      ! [A: $tType,X: A,Y: A,B5: set @ A,Pr: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ( member @ A @ X @ ( prefer310429814s_good @ A @ Y @ B5 @ Pr ) )
% 0.19/0.45       => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ Pr ) ) ).
% 0.19/0.45  
% 0.19/0.45  % at_lst_asgd_ge
% 0.19/0.45  thf(fact_64_at__least__as__goodD,axiom,
% 0.19/0.45      ! [A: $tType,Z: A,Y: A,B5: set @ A,Pr: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ( member @ A @ Z @ ( prefer310429814s_good @ A @ Y @ B5 @ Pr ) )
% 0.19/0.45       => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Z @ Y ) @ Pr ) ) ).
% 0.19/0.45  
% 0.19/0.45  % at_least_as_goodD
% 0.19/0.45  thf(fact_65_curry__conv,axiom,
% 0.19/0.45      ! [A: $tType,C: $tType,B: $tType] :
% 0.19/0.45        ( ( product_curry @ B @ C @ A )
% 0.19/0.45        = ( ^ [F4: ( product_prod @ B @ C ) > A,A7: B,B6: C] : ( F4 @ ( product_Pair @ B @ C @ A7 @ B6 ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % curry_conv
% 0.19/0.45  thf(fact_66_in__inv__imagep,axiom,
% 0.19/0.45      ! [B: $tType,A: $tType] :
% 0.19/0.45        ( ( inv_imagep @ A @ B )
% 0.19/0.45        = ( ^ [R: A > A > $o,F4: B > A,X4: B,Y4: B] : ( R @ ( F4 @ X4 ) @ ( F4 @ Y4 ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % in_inv_imagep
% 0.19/0.45  thf(fact_67_curryI,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,F3: ( product_prod @ A @ B ) > $o,A2: A,B2: B] :
% 0.19/0.45        ( ( F3 @ ( product_Pair @ A @ B @ A2 @ B2 ) )
% 0.19/0.45       => ( product_curry @ A @ B @ $o @ F3 @ A2 @ B2 ) ) ).
% 0.19/0.45  
% 0.19/0.45  % curryI
% 0.19/0.45  thf(fact_68_in__inv__image,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,X: A,Y: A,R2: set @ ( product_prod @ B @ B ),F3: A > B] :
% 0.19/0.45        ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ ( inv_image @ B @ A @ R2 @ F3 ) )
% 0.19/0.45        = ( member @ ( product_prod @ B @ B ) @ ( product_Pair @ B @ B @ ( F3 @ X ) @ ( F3 @ Y ) ) @ R2 ) ) ).
% 0.19/0.45  
% 0.19/0.45  % in_inv_image
% 0.19/0.45  thf(fact_69_strict__linear__order__on__def,axiom,
% 0.19/0.45      ! [A: $tType] :
% 0.19/0.45        ( ( order_215145569der_on @ A )
% 0.19/0.45        = ( ^ [A5: set @ A,R: set @ ( product_prod @ A @ A )] :
% 0.19/0.45              ( ( trans @ A @ R )
% 0.19/0.45              & ( irrefl @ A @ R )
% 0.19/0.45              & ( total_on @ A @ A5 @ R ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % strict_linear_order_on_def
% 0.19/0.45  thf(fact_70_swap__simp,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,X: B,Y: A] :
% 0.19/0.45        ( ( product_swap @ B @ A @ ( product_Pair @ B @ A @ X @ Y ) )
% 0.19/0.45        = ( product_Pair @ A @ B @ Y @ X ) ) ).
% 0.19/0.45  
% 0.19/0.45  % swap_simp
% 0.19/0.45  thf(fact_71_internal__case__prod__def,axiom,
% 0.19/0.45      ! [C: $tType,B: $tType,A: $tType] :
% 0.19/0.45        ( ( produc2004651681e_prod @ A @ B @ C )
% 0.19/0.45        = ( product_case_prod @ A @ B @ C ) ) ).
% 0.19/0.45  
% 0.19/0.45  % internal_case_prod_def
% 0.19/0.45  thf(fact_72_swap__swap,axiom,
% 0.19/0.45      ! [B: $tType,A: $tType,P: product_prod @ A @ B] :
% 0.19/0.45        ( ( product_swap @ B @ A @ ( product_swap @ A @ B @ P ) )
% 0.19/0.45        = P ) ).
% 0.19/0.45  
% 0.19/0.45  % swap_swap
% 0.19/0.45  thf(fact_73_case__prod__curry,axiom,
% 0.19/0.45      ! [C: $tType,B: $tType,A: $tType,F3: ( product_prod @ A @ B ) > C] :
% 0.19/0.45        ( ( product_case_prod @ A @ B @ C @ ( product_curry @ A @ B @ C @ F3 ) )
% 0.19/0.45        = F3 ) ).
% 0.19/0.45  
% 0.19/0.45  % case_prod_curry
% 0.19/0.45  thf(fact_74_curry__case__prod,axiom,
% 0.19/0.45      ! [C: $tType,B: $tType,A: $tType,F3: A > B > C] :
% 0.19/0.45        ( ( product_curry @ A @ B @ C @ ( product_case_prod @ A @ B @ C @ F3 ) )
% 0.19/0.45        = F3 ) ).
% 0.19/0.45  
% 0.19/0.45  % curry_case_prod
% 0.19/0.45  thf(fact_75_mem__case__prodE,axiom,
% 0.19/0.45      ! [B: $tType,A: $tType,C: $tType,Z: A,C3: B > C > ( set @ A ),P: product_prod @ B @ C] :
% 0.19/0.45        ( ( member @ A @ Z @ ( product_case_prod @ B @ C @ ( set @ A ) @ C3 @ P ) )
% 0.19/0.45       => ~ ! [X3: B,Y3: C] :
% 0.19/0.45              ( ( P
% 0.19/0.45                = ( product_Pair @ B @ C @ X3 @ Y3 ) )
% 0.19/0.45             => ~ ( member @ A @ Z @ ( C3 @ X3 @ Y3 ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % mem_case_prodE
% 0.19/0.45  thf(fact_76_old_Oprod_Ocase,axiom,
% 0.19/0.45      ! [A: $tType,C: $tType,B: $tType,F3: A > B > C,X1: A,X22: B] :
% 0.19/0.45        ( ( product_case_prod @ A @ B @ C @ F3 @ ( product_Pair @ A @ B @ X1 @ X22 ) )
% 0.19/0.45        = ( F3 @ X1 @ X22 ) ) ).
% 0.19/0.45  
% 0.19/0.45  % old.prod.case
% 0.19/0.45  thf(fact_77_irreflI,axiom,
% 0.19/0.45      ! [A: $tType,R3: set @ ( product_prod @ A @ A )] :
% 0.19/0.45        ( ! [A4: A] :
% 0.19/0.45            ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A4 @ A4 ) @ R3 )
% 0.19/0.45       => ( irrefl @ A @ R3 ) ) ).
% 0.19/0.45  
% 0.19/0.45  % irreflI
% 0.19/0.45  thf(fact_78_irrefl__def,axiom,
% 0.19/0.45      ! [A: $tType] :
% 0.19/0.45        ( ( irrefl @ A )
% 0.19/0.45        = ( ^ [R: set @ ( product_prod @ A @ A )] :
% 0.19/0.45            ! [A7: A] :
% 0.19/0.45              ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A7 @ A7 ) @ R ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % irrefl_def
% 0.19/0.45  thf(fact_79_curryD,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,F3: ( product_prod @ A @ B ) > $o,A2: A,B2: B] :
% 0.19/0.45        ( ( product_curry @ A @ B @ $o @ F3 @ A2 @ B2 )
% 0.19/0.45       => ( F3 @ ( product_Pair @ A @ B @ A2 @ B2 ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % curryD
% 0.19/0.45  thf(fact_80_curryE,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,F3: ( product_prod @ A @ B ) > $o,A2: A,B2: B] :
% 0.19/0.45        ( ( product_curry @ A @ B @ $o @ F3 @ A2 @ B2 )
% 0.19/0.45       => ( F3 @ ( product_Pair @ A @ B @ A2 @ B2 ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % curryE
% 0.19/0.45  thf(fact_81_trans__inv__image,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,R2: set @ ( product_prod @ A @ A ),F3: B > A] :
% 0.19/0.45        ( ( trans @ A @ R2 )
% 0.19/0.45       => ( trans @ B @ ( inv_image @ A @ B @ R2 @ F3 ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % trans_inv_image
% 0.19/0.45  thf(fact_82_split__cong,axiom,
% 0.19/0.45      ! [C: $tType,B: $tType,A: $tType,Q2: product_prod @ A @ B,F3: A > B > C,G3: A > B > C,P: product_prod @ A @ B] :
% 0.19/0.45        ( ! [X3: A,Y3: B] :
% 0.19/0.45            ( ( ( product_Pair @ A @ B @ X3 @ Y3 )
% 0.19/0.45              = Q2 )
% 0.19/0.45           => ( ( F3 @ X3 @ Y3 )
% 0.19/0.45              = ( G3 @ X3 @ Y3 ) ) )
% 0.19/0.45       => ( ( P = Q2 )
% 0.19/0.45         => ( ( product_case_prod @ A @ B @ C @ F3 @ P )
% 0.19/0.45            = ( product_case_prod @ A @ B @ C @ G3 @ Q2 ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % split_cong
% 0.19/0.45  thf(fact_83_pair__in__swap__image,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,Y: A,X: B,A6: set @ ( product_prod @ B @ A )] :
% 0.19/0.45        ( ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ Y @ X ) @ ( image @ ( product_prod @ B @ A ) @ ( product_prod @ A @ B ) @ ( product_swap @ B @ A ) @ A6 ) )
% 0.19/0.45        = ( member @ ( product_prod @ B @ A ) @ ( product_Pair @ B @ A @ X @ Y ) @ A6 ) ) ).
% 0.19/0.45  
% 0.19/0.45  % pair_in_swap_image
% 0.19/0.45  thf(fact_84_scomp__apply,axiom,
% 0.19/0.45      ! [A: $tType,D: $tType,C: $tType,B: $tType] :
% 0.19/0.45        ( ( product_scomp @ B @ C @ D @ A )
% 0.19/0.45        = ( ^ [F4: B > ( product_prod @ C @ D ),G4: C > D > A,X4: B] : ( product_case_prod @ C @ D @ A @ G4 @ ( F4 @ X4 ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % scomp_apply
% 0.19/0.45  thf(fact_85_multp__iff,axiom,
% 0.19/0.45      ! [A: $tType,R3: set @ ( product_prod @ A @ A ),P2: A > A > $o,N: multiset @ A,M: multiset @ A] :
% 0.19/0.45        ( ( irrefl @ A @ R3 )
% 0.19/0.45       => ( ( trans @ A @ R3 )
% 0.19/0.45         => ( ! [X3: A,Y3: A] :
% 0.19/0.45                ( ( P2 @ X3 @ Y3 )
% 0.19/0.45                = ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Y3 ) @ R3 ) )
% 0.19/0.45           => ( ( multp @ A @ P2 @ N @ M )
% 0.19/0.45              = ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ N @ M ) @ ( mult @ A @ R3 ) ) ) ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % multp_iff
% 0.19/0.45  thf(fact_86_asym__inv__image,axiom,
% 0.19/0.45      ! [A: $tType,B: $tType,R3: set @ ( product_prod @ A @ A ),F3: B > A] :
% 0.19/0.45        ( ( asym @ A @ R3 )
% 0.19/0.45       => ( asym @ B @ ( inv_image @ A @ B @ R3 @ F3 ) ) ) ).
% 0.19/0.45  
% 0.19/0.45  % asym_inv_image
% 0.19/0.45  thf(fact_87_old_Obool_Osimps_I5_J,axiom,
% 0.19/0.45      ! [T: $tType,F1: T,F22: T] :
% 0.19/0.45        ( ( product_rec_bool @ T @ F1 @ F22 @ $true )
% 0.19/0.45        = F1 ) ).
% 0.19/0.45  
% 0.19/0.45  % old.bool.simps(5)
% 0.19/0.45  thf(fact_88_old_Obool_Osimps_I6_J,axiom,
% 0.19/0.45      ! [T: $tType,F1: T,F22: T] :
% 0.19/0.45        ( ( product_rec_bool @ T @ F1 @ F22 @ $false )
% 0.19/0.45        = F22 ) ).
% 0.19/0.45  
% 0.19/0.45  % old.bool.simps(6)
% 0.19/0.45  thf(fact_89_scomp__Pair,axiom,
% 0.19/0.45      ! [C: $tType,B: $tType,A: $tType,X: A > ( product_prod @ B @ C )] :
% 0.19/0.45        ( ( product_scomp @ A @ B @ C @ ( product_prod @ B @ C ) @ X @ ( product_Pair @ B @ C ) )
% 0.29/0.45        = X ) ).
% 0.29/0.45  
% 0.29/0.45  % scomp_Pair
% 0.29/0.45  thf(fact_90_asym_Oinducts,axiom,
% 0.29/0.45      ! [A: $tType,X: set @ ( product_prod @ A @ A ),P2: ( set @ ( product_prod @ A @ A ) ) > $o] :
% 0.29/0.45        ( ( asym @ A @ X )
% 0.29/0.45       => ( ! [R4: set @ ( product_prod @ A @ A )] :
% 0.29/0.45              ( ! [A8: A,B7: A] :
% 0.29/0.45                  ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A8 @ B7 ) @ R4 )
% 0.29/0.45                 => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ B7 @ A8 ) @ R4 ) )
% 0.29/0.45             => ( P2 @ R4 ) )
% 0.29/0.45         => ( P2 @ X ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % asym.inducts
% 0.29/0.45  thf(fact_91_asym_Ointros,axiom,
% 0.29/0.45      ! [A: $tType,R3: set @ ( product_prod @ A @ A )] :
% 0.29/0.45        ( ! [A4: A,B4: A] :
% 0.29/0.45            ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A4 @ B4 ) @ R3 )
% 0.29/0.45           => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ B4 @ A4 ) @ R3 ) )
% 0.29/0.45       => ( asym @ A @ R3 ) ) ).
% 0.29/0.45  
% 0.29/0.45  % asym.intros
% 0.29/0.45  thf(fact_92_asym_Osimps,axiom,
% 0.29/0.45      ! [A: $tType] :
% 0.29/0.45        ( ( asym @ A )
% 0.29/0.45        = ( ^ [A7: set @ ( product_prod @ A @ A )] :
% 0.29/0.45            ? [R5: set @ ( product_prod @ A @ A )] :
% 0.29/0.45              ( ( A7 = R5 )
% 0.29/0.45              & ! [X4: A,Y4: A] :
% 0.29/0.45                  ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Y4 ) @ R5 )
% 0.29/0.45                 => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y4 @ X4 ) @ R5 ) ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % asym.simps
% 0.29/0.45  thf(fact_93_asym_Ocases,axiom,
% 0.29/0.45      ! [A: $tType,A2: set @ ( product_prod @ A @ A )] :
% 0.29/0.45        ( ( asym @ A @ A2 )
% 0.29/0.45       => ! [A8: A,B7: A] :
% 0.29/0.45            ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A8 @ B7 ) @ A2 )
% 0.29/0.45           => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ B7 @ A8 ) @ A2 ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % asym.cases
% 0.29/0.45  thf(fact_94_asym__iff,axiom,
% 0.29/0.45      ! [A: $tType] :
% 0.29/0.45        ( ( asym @ A )
% 0.29/0.45        = ( ^ [R5: set @ ( product_prod @ A @ A )] :
% 0.29/0.45            ! [X4: A,Y4: A] :
% 0.29/0.45              ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Y4 ) @ R5 )
% 0.29/0.45             => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y4 @ X4 ) @ R5 ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % asym_iff
% 0.29/0.45  thf(fact_95_asymD,axiom,
% 0.29/0.45      ! [A: $tType,R3: set @ ( product_prod @ A @ A ),X: A,Y: A] :
% 0.29/0.45        ( ( asym @ A @ R3 )
% 0.29/0.45       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ R3 )
% 0.29/0.45         => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ X ) @ R3 ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % asymD
% 0.29/0.45  thf(fact_96_Pair__scomp,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,C: $tType,X: C,F3: C > A > B] :
% 0.29/0.45        ( ( product_scomp @ A @ C @ A @ B @ ( product_Pair @ C @ A @ X ) @ F3 )
% 0.29/0.45        = ( F3 @ X ) ) ).
% 0.29/0.45  
% 0.29/0.45  % Pair_scomp
% 0.29/0.45  thf(fact_97_scomp__def,axiom,
% 0.29/0.45      ! [D: $tType,C: $tType,B: $tType,A: $tType] :
% 0.29/0.45        ( ( product_scomp @ A @ B @ C @ D )
% 0.29/0.45        = ( ^ [F4: A > ( product_prod @ B @ C ),G4: B > C > D,X4: A] : ( product_case_prod @ B @ C @ D @ G4 @ ( F4 @ X4 ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % scomp_def
% 0.29/0.45  thf(fact_98_image__eqI,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,B2: A,F3: B > A,X: B,A6: set @ B] :
% 0.29/0.45        ( ( B2
% 0.29/0.45          = ( F3 @ X ) )
% 0.29/0.45       => ( ( member @ B @ X @ A6 )
% 0.29/0.45         => ( member @ A @ B2 @ ( image @ B @ A @ F3 @ A6 ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % image_eqI
% 0.29/0.45  thf(fact_99_mult__cancel,axiom,
% 0.29/0.45      ! [A: $tType,S: set @ ( product_prod @ A @ A ),X5: multiset @ A,Z4: multiset @ A,Y5: multiset @ A] :
% 0.29/0.45        ( ( trans @ A @ S )
% 0.29/0.45       => ( ( irrefl @ A @ S )
% 0.29/0.45         => ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ X5 @ Z4 ) @ ( plus_plus @ ( multiset @ A ) @ Y5 @ Z4 ) ) @ ( mult @ A @ S ) )
% 0.29/0.45            = ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ X5 @ Y5 ) @ ( mult @ A @ S ) ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % mult_cancel
% 0.29/0.45  thf(fact_100_mult__cancel__add__mset,axiom,
% 0.29/0.45      ! [A: $tType,S: set @ ( product_prod @ A @ A ),Uu: A,X5: multiset @ A,Y5: multiset @ A] :
% 0.29/0.45        ( ( trans @ A @ S )
% 0.29/0.45       => ( ( irrefl @ A @ S )
% 0.29/0.45         => ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ ( add_mset @ A @ Uu @ X5 ) @ ( add_mset @ A @ Uu @ Y5 ) ) @ ( mult @ A @ S ) )
% 0.29/0.45            = ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ X5 @ Y5 ) @ ( mult @ A @ S ) ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % mult_cancel_add_mset
% 0.29/0.45  thf(fact_101_surj__swap,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType] :
% 0.29/0.45        ( ( image @ ( product_prod @ B @ A ) @ ( product_prod @ A @ B ) @ ( product_swap @ B @ A ) @ ( top_top @ ( set @ ( product_prod @ B @ A ) ) ) )
% 0.29/0.45        = ( top_top @ ( set @ ( product_prod @ A @ B ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % surj_swap
% 0.29/0.45  thf(fact_102_imageI,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,X: A,A6: set @ A,F3: A > B] :
% 0.29/0.45        ( ( member @ A @ X @ A6 )
% 0.29/0.45       => ( member @ B @ ( F3 @ X ) @ ( image @ A @ B @ F3 @ A6 ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % imageI
% 0.29/0.45  thf(fact_103_image__iff,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,Z: A,F3: B > A,A6: set @ B] :
% 0.29/0.45        ( ( member @ A @ Z @ ( image @ B @ A @ F3 @ A6 ) )
% 0.29/0.45        = ( ? [X4: B] :
% 0.29/0.45              ( ( member @ B @ X4 @ A6 )
% 0.29/0.45              & ( Z
% 0.29/0.45                = ( F3 @ X4 ) ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % image_iff
% 0.29/0.45  thf(fact_104_add__mset__add__mset__same__iff,axiom,
% 0.29/0.45      ! [A: $tType,A2: A,A6: multiset @ A,B5: multiset @ A] :
% 0.29/0.45        ( ( ( add_mset @ A @ A2 @ A6 )
% 0.29/0.45          = ( add_mset @ A @ A2 @ B5 ) )
% 0.29/0.45        = ( A6 = B5 ) ) ).
% 0.29/0.45  
% 0.29/0.45  % add_mset_add_mset_same_iff
% 0.29/0.45  thf(fact_105_multi__self__add__other__not__self,axiom,
% 0.29/0.45      ! [A: $tType,M: multiset @ A,X: A] :
% 0.29/0.45        ( M
% 0.29/0.45       != ( add_mset @ A @ X @ M ) ) ).
% 0.29/0.45  
% 0.29/0.45  % multi_self_add_other_not_self
% 0.29/0.45  thf(fact_106_union__mset__add__mset__left,axiom,
% 0.29/0.45      ! [A: $tType,A2: A,A6: multiset @ A,B5: multiset @ A] :
% 0.29/0.45        ( ( plus_plus @ ( multiset @ A ) @ ( add_mset @ A @ A2 @ A6 ) @ B5 )
% 0.29/0.45        = ( add_mset @ A @ A2 @ ( plus_plus @ ( multiset @ A ) @ A6 @ B5 ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % union_mset_add_mset_left
% 0.29/0.45  thf(fact_107_union__mset__add__mset__right,axiom,
% 0.29/0.45      ! [A: $tType,A6: multiset @ A,A2: A,B5: multiset @ A] :
% 0.29/0.45        ( ( plus_plus @ ( multiset @ A ) @ A6 @ ( add_mset @ A @ A2 @ B5 ) )
% 0.29/0.45        = ( add_mset @ A @ A2 @ ( plus_plus @ ( multiset @ A ) @ A6 @ B5 ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % union_mset_add_mset_right
% 0.29/0.45  thf(fact_108_rangeI,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,F3: B > A,X: B] : ( member @ A @ ( F3 @ X ) @ ( image @ B @ A @ F3 @ ( top_top @ ( set @ B ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % rangeI
% 0.29/0.45  thf(fact_109_range__eqI,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,B2: A,F3: B > A,X: B] :
% 0.29/0.45        ( ( B2
% 0.29/0.45          = ( F3 @ X ) )
% 0.29/0.45       => ( member @ A @ B2 @ ( image @ B @ A @ F3 @ ( top_top @ ( set @ B ) ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % range_eqI
% 0.29/0.45  thf(fact_110_union__assoc,axiom,
% 0.29/0.45      ! [A: $tType,M: multiset @ A,N: multiset @ A,K: multiset @ A] :
% 0.29/0.45        ( ( plus_plus @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ M @ N ) @ K )
% 0.29/0.45        = ( plus_plus @ ( multiset @ A ) @ M @ ( plus_plus @ ( multiset @ A ) @ N @ K ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % union_assoc
% 0.29/0.45  thf(fact_111_union__lcomm,axiom,
% 0.29/0.45      ! [A: $tType,M: multiset @ A,N: multiset @ A,K: multiset @ A] :
% 0.29/0.45        ( ( plus_plus @ ( multiset @ A ) @ M @ ( plus_plus @ ( multiset @ A ) @ N @ K ) )
% 0.29/0.45        = ( plus_plus @ ( multiset @ A ) @ N @ ( plus_plus @ ( multiset @ A ) @ M @ K ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % union_lcomm
% 0.29/0.45  thf(fact_112_union__commute,axiom,
% 0.29/0.45      ! [A: $tType] :
% 0.29/0.45        ( ( plus_plus @ ( multiset @ A ) )
% 0.29/0.45        = ( ^ [M2: multiset @ A,N2: multiset @ A] : ( plus_plus @ ( multiset @ A ) @ N2 @ M2 ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % union_commute
% 0.29/0.45  thf(fact_113_add__eq__conv__ex,axiom,
% 0.29/0.45      ! [A: $tType,A2: A,M: multiset @ A,B2: A,N: multiset @ A] :
% 0.29/0.45        ( ( ( add_mset @ A @ A2 @ M )
% 0.29/0.45          = ( add_mset @ A @ B2 @ N ) )
% 0.29/0.45        = ( ( ( M = N )
% 0.29/0.45            & ( A2 = B2 ) )
% 0.29/0.45          | ? [K2: multiset @ A] :
% 0.29/0.45              ( ( M
% 0.29/0.45                = ( add_mset @ A @ B2 @ K2 ) )
% 0.29/0.45              & ( N
% 0.29/0.45                = ( add_mset @ A @ A2 @ K2 ) ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % add_eq_conv_ex
% 0.29/0.45  thf(fact_114_add__mset__commute,axiom,
% 0.29/0.45      ! [A: $tType,X: A,Y: A,M: multiset @ A] :
% 0.29/0.45        ( ( add_mset @ A @ X @ ( add_mset @ A @ Y @ M ) )
% 0.29/0.45        = ( add_mset @ A @ Y @ ( add_mset @ A @ X @ M ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % add_mset_commute
% 0.29/0.45  thf(fact_115_union__left__cancel,axiom,
% 0.29/0.45      ! [A: $tType,K: multiset @ A,M: multiset @ A,N: multiset @ A] :
% 0.29/0.45        ( ( ( plus_plus @ ( multiset @ A ) @ K @ M )
% 0.29/0.45          = ( plus_plus @ ( multiset @ A ) @ K @ N ) )
% 0.29/0.45        = ( M = N ) ) ).
% 0.29/0.45  
% 0.29/0.45  % union_left_cancel
% 0.29/0.45  thf(fact_116_union__right__cancel,axiom,
% 0.29/0.45      ! [A: $tType,M: multiset @ A,K: multiset @ A,N: multiset @ A] :
% 0.29/0.45        ( ( ( plus_plus @ ( multiset @ A ) @ M @ K )
% 0.29/0.45          = ( plus_plus @ ( multiset @ A ) @ N @ K ) )
% 0.29/0.45        = ( M = N ) ) ).
% 0.29/0.45  
% 0.29/0.45  % union_right_cancel
% 0.29/0.45  thf(fact_117_multi__union__self__other__eq,axiom,
% 0.29/0.45      ! [A: $tType,A6: multiset @ A,X5: multiset @ A,Y5: multiset @ A] :
% 0.29/0.45        ( ( ( plus_plus @ ( multiset @ A ) @ A6 @ X5 )
% 0.29/0.45          = ( plus_plus @ ( multiset @ A ) @ A6 @ Y5 ) )
% 0.29/0.45       => ( X5 = Y5 ) ) ).
% 0.29/0.45  
% 0.29/0.45  % multi_union_self_other_eq
% 0.29/0.45  thf(fact_118_rev__image__eqI,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,X: A,A6: set @ A,B2: B,F3: A > B] :
% 0.29/0.45        ( ( member @ A @ X @ A6 )
% 0.29/0.45       => ( ( B2
% 0.29/0.45            = ( F3 @ X ) )
% 0.29/0.45         => ( member @ B @ B2 @ ( image @ A @ B @ F3 @ A6 ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % rev_image_eqI
% 0.29/0.45  thf(fact_119_ball__imageD,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,F3: B > A,A6: set @ B,P2: A > $o] :
% 0.29/0.45        ( ! [X3: A] :
% 0.29/0.45            ( ( member @ A @ X3 @ ( image @ B @ A @ F3 @ A6 ) )
% 0.29/0.45           => ( P2 @ X3 ) )
% 0.29/0.45       => ! [X2: B] :
% 0.29/0.45            ( ( member @ B @ X2 @ A6 )
% 0.29/0.45           => ( P2 @ ( F3 @ X2 ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % ball_imageD
% 0.29/0.45  thf(fact_120_image__cong,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,M: set @ A,N: set @ A,F3: A > B,G3: A > B] :
% 0.29/0.45        ( ( M = N )
% 0.29/0.45       => ( ! [X3: A] :
% 0.29/0.45              ( ( member @ A @ X3 @ N )
% 0.29/0.45             => ( ( F3 @ X3 )
% 0.29/0.45                = ( G3 @ X3 ) ) )
% 0.29/0.45         => ( ( image @ A @ B @ F3 @ M )
% 0.29/0.45            = ( image @ A @ B @ G3 @ N ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % image_cong
% 0.29/0.45  thf(fact_121_bex__imageD,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,F3: B > A,A6: set @ B,P2: A > $o] :
% 0.29/0.45        ( ? [X2: A] :
% 0.29/0.45            ( ( member @ A @ X2 @ ( image @ B @ A @ F3 @ A6 ) )
% 0.29/0.45            & ( P2 @ X2 ) )
% 0.29/0.45       => ? [X3: B] :
% 0.29/0.45            ( ( member @ B @ X3 @ A6 )
% 0.29/0.45            & ( P2 @ ( F3 @ X3 ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % bex_imageD
% 0.29/0.45  thf(fact_122_surj__plus,axiom,
% 0.29/0.45      ! [A: $tType] :
% 0.29/0.45        ( ( ab_group_add @ A )
% 0.29/0.45       => ! [A2: A] :
% 0.29/0.45            ( ( image @ A @ A @ ( plus_plus @ A @ A2 ) @ ( top_top @ ( set @ A ) ) )
% 0.29/0.45            = ( top_top @ ( set @ A ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % surj_plus
% 0.29/0.45  thf(fact_123_add__Pair,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType] :
% 0.29/0.45        ( ( ( plus @ B )
% 0.29/0.45          & ( plus @ A ) )
% 0.29/0.45       => ! [A2: A,B2: B,C3: A,D3: B] :
% 0.29/0.45            ( ( plus_plus @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ A2 @ B2 ) @ ( product_Pair @ A @ B @ C3 @ D3 ) )
% 0.29/0.45            = ( product_Pair @ A @ B @ ( plus_plus @ A @ A2 @ C3 ) @ ( plus_plus @ B @ B2 @ D3 ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % add_Pair
% 0.29/0.45  thf(fact_124_top__prod__def,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType] :
% 0.29/0.45        ( ( ( top @ B )
% 0.29/0.45          & ( top @ A ) )
% 0.29/0.45       => ( ( top_top @ ( product_prod @ A @ B ) )
% 0.29/0.45          = ( product_Pair @ A @ B @ ( top_top @ A ) @ ( top_top @ B ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % top_prod_def
% 0.29/0.45  thf(fact_125_surjD,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,F3: B > A,Y: A] :
% 0.29/0.45        ( ( ( image @ B @ A @ F3 @ ( top_top @ ( set @ B ) ) )
% 0.29/0.45          = ( top_top @ ( set @ A ) ) )
% 0.29/0.45       => ? [X3: B] :
% 0.29/0.45            ( Y
% 0.29/0.45            = ( F3 @ X3 ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % surjD
% 0.29/0.45  thf(fact_126_surjE,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,F3: B > A,Y: A] :
% 0.29/0.45        ( ( ( image @ B @ A @ F3 @ ( top_top @ ( set @ B ) ) )
% 0.29/0.45          = ( top_top @ ( set @ A ) ) )
% 0.29/0.45       => ~ ! [X3: B] :
% 0.29/0.45              ( Y
% 0.29/0.45             != ( F3 @ X3 ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % surjE
% 0.29/0.45  thf(fact_127_top__empty__eq,axiom,
% 0.29/0.45      ! [A: $tType] :
% 0.29/0.45        ( ( top_top @ ( A > $o ) )
% 0.29/0.45        = ( ^ [X4: A] : ( member @ A @ X4 @ ( top_top @ ( set @ A ) ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % top_empty_eq
% 0.29/0.45  thf(fact_128_surj__def,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,F3: B > A] :
% 0.29/0.45        ( ( ( image @ B @ A @ F3 @ ( top_top @ ( set @ B ) ) )
% 0.29/0.45          = ( top_top @ ( set @ A ) ) )
% 0.29/0.45        = ( ! [Y4: A] :
% 0.29/0.45            ? [X4: B] :
% 0.29/0.45              ( Y4
% 0.29/0.45              = ( F3 @ X4 ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % surj_def
% 0.29/0.45  thf(fact_129_surjI,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,G3: B > A,F3: A > B] :
% 0.29/0.45        ( ! [X3: A] :
% 0.29/0.45            ( ( G3 @ ( F3 @ X3 ) )
% 0.29/0.45            = X3 )
% 0.29/0.45       => ( ( image @ B @ A @ G3 @ ( top_top @ ( set @ B ) ) )
% 0.29/0.45          = ( top_top @ ( set @ A ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % surjI
% 0.29/0.45  thf(fact_130_map__prod__surj,axiom,
% 0.29/0.45      ! [A: $tType,C: $tType,D: $tType,B: $tType,F3: A > B,G3: C > D] :
% 0.29/0.45        ( ( ( image @ A @ B @ F3 @ ( top_top @ ( set @ A ) ) )
% 0.29/0.45          = ( top_top @ ( set @ B ) ) )
% 0.29/0.45       => ( ( ( image @ C @ D @ G3 @ ( top_top @ ( set @ C ) ) )
% 0.29/0.45            = ( top_top @ ( set @ D ) ) )
% 0.29/0.45         => ( ( image @ ( product_prod @ A @ C ) @ ( product_prod @ B @ D ) @ ( product_map_prod @ A @ B @ C @ D @ F3 @ G3 ) @ ( top_top @ ( set @ ( product_prod @ A @ C ) ) ) )
% 0.29/0.45            = ( top_top @ ( set @ ( product_prod @ B @ D ) ) ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % map_prod_surj
% 0.29/0.45  thf(fact_131_total__lex__prod,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,R2: set @ ( product_prod @ A @ A ),S: set @ ( product_prod @ B @ B )] :
% 0.29/0.45        ( ( total_on @ A @ ( top_top @ ( set @ A ) ) @ R2 )
% 0.29/0.45       => ( ( total_on @ B @ ( top_top @ ( set @ B ) ) @ S )
% 0.29/0.45         => ( total_on @ ( product_prod @ A @ B ) @ ( top_top @ ( set @ ( product_prod @ A @ B ) ) ) @ ( lex_prod @ A @ B @ R2 @ S ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % total_lex_prod
% 0.29/0.45  thf(fact_132_range__fst,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType] :
% 0.29/0.45        ( ( image @ ( product_prod @ A @ B ) @ A @ ( product_fst @ A @ B ) @ ( top_top @ ( set @ ( product_prod @ A @ B ) ) ) )
% 0.29/0.45        = ( top_top @ ( set @ A ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % range_fst
% 0.29/0.45  thf(fact_133_range__snd,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType] :
% 0.29/0.45        ( ( image @ ( product_prod @ B @ A ) @ A @ ( product_snd @ B @ A ) @ ( top_top @ ( set @ ( product_prod @ B @ A ) ) ) )
% 0.29/0.45        = ( top_top @ ( set @ A ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % range_snd
% 0.29/0.45  thf(fact_134_map__prod__simp,axiom,
% 0.29/0.45      ! [C: $tType,A: $tType,B: $tType,D: $tType,F3: C > A,G3: D > B,A2: C,B2: D] :
% 0.29/0.45        ( ( product_map_prod @ C @ A @ D @ B @ F3 @ G3 @ ( product_Pair @ C @ D @ A2 @ B2 ) )
% 0.29/0.45        = ( product_Pair @ A @ B @ ( F3 @ A2 ) @ ( G3 @ B2 ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % map_prod_simp
% 0.29/0.45  thf(fact_135_fst__map__prod,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,D: $tType,C: $tType,F3: C > A,G3: D > B,X: product_prod @ C @ D] :
% 0.29/0.45        ( ( product_fst @ A @ B @ ( product_map_prod @ C @ A @ D @ B @ F3 @ G3 @ X ) )
% 0.29/0.45        = ( F3 @ ( product_fst @ C @ D @ X ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % fst_map_prod
% 0.29/0.45  thf(fact_136_snd__map__prod,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,D: $tType,C: $tType,F3: C > B,G3: D > A,X: product_prod @ C @ D] :
% 0.29/0.45        ( ( product_snd @ B @ A @ ( product_map_prod @ C @ B @ D @ A @ F3 @ G3 @ X ) )
% 0.29/0.45        = ( G3 @ ( product_snd @ C @ D @ X ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % snd_map_prod
% 0.29/0.45  thf(fact_137_in__lex__prod,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,A2: A,B2: B,A3: A,B3: B,R2: set @ ( product_prod @ A @ A ),S: set @ ( product_prod @ B @ B )] :
% 0.29/0.45        ( ( member @ ( product_prod @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) ) @ ( product_Pair @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ A2 @ B2 ) @ ( product_Pair @ A @ B @ A3 @ B3 ) ) @ ( lex_prod @ A @ B @ R2 @ S ) )
% 0.29/0.45        = ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A2 @ A3 ) @ R2 )
% 0.29/0.45          | ( ( A2 = A3 )
% 0.29/0.45            & ( member @ ( product_prod @ B @ B ) @ ( product_Pair @ B @ B @ B2 @ B3 ) @ S ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % in_lex_prod
% 0.29/0.45  thf(fact_138_trans__lex__prod,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,R1: set @ ( product_prod @ A @ A ),R22: set @ ( product_prod @ B @ B )] :
% 0.29/0.45        ( ( trans @ A @ R1 )
% 0.29/0.45       => ( ( trans @ B @ R22 )
% 0.29/0.45         => ( trans @ ( product_prod @ A @ B ) @ ( lex_prod @ A @ B @ R1 @ R22 ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % trans_lex_prod
% 0.29/0.45  thf(fact_139_prod_Ocollapse,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,Prod: product_prod @ A @ B] :
% 0.29/0.45        ( ( product_Pair @ A @ B @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) )
% 0.29/0.45        = Prod ) ).
% 0.29/0.45  
% 0.29/0.45  % prod.collapse
% 0.29/0.45  thf(fact_140_snd__swap,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,X: product_prod @ A @ B] :
% 0.29/0.45        ( ( product_snd @ B @ A @ ( product_swap @ A @ B @ X ) )
% 0.29/0.45        = ( product_fst @ A @ B @ X ) ) ).
% 0.29/0.45  
% 0.29/0.45  % snd_swap
% 0.29/0.45  thf(fact_141_fst__swap,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,X: product_prod @ B @ A] :
% 0.29/0.45        ( ( product_fst @ A @ B @ ( product_swap @ B @ A @ X ) )
% 0.29/0.45        = ( product_snd @ B @ A @ X ) ) ).
% 0.29/0.45  
% 0.29/0.45  % fst_swap
% 0.29/0.45  thf(fact_142_map__prod__imageI,axiom,
% 0.29/0.45      ! [D: $tType,C: $tType,B: $tType,A: $tType,A2: A,B2: B,R3: set @ ( product_prod @ A @ B ),F3: A > C,G3: B > D] :
% 0.29/0.45        ( ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ A2 @ B2 ) @ R3 )
% 0.29/0.45       => ( member @ ( product_prod @ C @ D ) @ ( product_Pair @ C @ D @ ( F3 @ A2 ) @ ( G3 @ B2 ) ) @ ( image @ ( product_prod @ A @ B ) @ ( product_prod @ C @ D ) @ ( product_map_prod @ A @ C @ B @ D @ F3 @ G3 ) @ R3 ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % map_prod_imageI
% 0.29/0.45  thf(fact_143_asym__lex__prod,axiom,
% 0.29/0.45      ! [A: $tType,B: $tType,R3: set @ ( product_prod @ A @ A ),S3: set @ ( product_prod @ B @ B )] :
% 0.29/0.45        ( ( asym @ A @ R3 )
% 0.29/0.45       => ( ( asym @ B @ S3 )
% 0.29/0.45         => ( asym @ ( product_prod @ A @ B ) @ ( lex_prod @ A @ B @ R3 @ S3 ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % asym_lex_prod
% 0.29/0.45  thf(fact_144_case__prod__beta,axiom,
% 0.29/0.45      ! [A: $tType,C: $tType,B: $tType] :
% 0.29/0.45        ( ( product_case_prod @ B @ C @ A )
% 0.29/0.45        = ( ^ [F4: B > C > A,P3: product_prod @ B @ C] : ( F4 @ ( product_fst @ B @ C @ P3 ) @ ( product_snd @ B @ C @ P3 ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % case_prod_beta
% 0.29/0.45  thf(fact_145_prod_Ocase__eq__if,axiom,
% 0.29/0.45      ! [C: $tType,B: $tType,A: $tType] :
% 0.29/0.45        ( ( product_case_prod @ A @ B @ C )
% 0.29/0.45        = ( ^ [F4: A > B > C,Prod2: product_prod @ A @ B] : ( F4 @ ( product_fst @ A @ B @ Prod2 ) @ ( product_snd @ A @ B @ Prod2 ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % prod.case_eq_if
% 0.29/0.45  thf(fact_146_Product__Type_OCollect__case__prodD,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,X: product_prod @ A @ B,A6: A > B > $o] :
% 0.29/0.45        ( ( member @ ( product_prod @ A @ B ) @ X @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ A6 ) ) )
% 0.29/0.45       => ( A6 @ ( product_fst @ A @ B @ X ) @ ( product_snd @ A @ B @ X ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % Product_Type.Collect_case_prodD
% 0.29/0.45  thf(fact_147_prod_Oexhaust__sel,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,Prod: product_prod @ A @ B] :
% 0.29/0.45        ( Prod
% 0.29/0.45        = ( product_Pair @ A @ B @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % prod.exhaust_sel
% 0.29/0.45  thf(fact_148_surjective__pairing,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,T2: product_prod @ A @ B] :
% 0.29/0.45        ( T2
% 0.29/0.45        = ( product_Pair @ A @ B @ ( product_fst @ A @ B @ T2 ) @ ( product_snd @ A @ B @ T2 ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % surjective_pairing
% 0.29/0.45  thf(fact_149_prod_Osplit__sel,axiom,
% 0.29/0.45      ! [C: $tType,B: $tType,A: $tType,P2: C > $o,F3: A > B > C,Prod: product_prod @ A @ B] :
% 0.29/0.45        ( ( P2 @ ( product_case_prod @ A @ B @ C @ F3 @ Prod ) )
% 0.29/0.45        = ( ( Prod
% 0.29/0.45            = ( product_Pair @ A @ B @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) )
% 0.29/0.45         => ( P2 @ ( F3 @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % prod.split_sel
% 0.29/0.45  thf(fact_150_prod_Osplit__sel__asm,axiom,
% 0.29/0.45      ! [C: $tType,B: $tType,A: $tType,P2: C > $o,F3: A > B > C,Prod: product_prod @ A @ B] :
% 0.29/0.45        ( ( P2 @ ( product_case_prod @ A @ B @ C @ F3 @ Prod ) )
% 0.29/0.45        = ( ~ ( ( Prod
% 0.29/0.45                = ( product_Pair @ A @ B @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) )
% 0.29/0.45              & ~ ( P2 @ ( F3 @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) ) ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % prod.split_sel_asm
% 0.29/0.45  thf(fact_151_prod__eqI,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,P: product_prod @ A @ B,Q2: product_prod @ A @ B] :
% 0.29/0.45        ( ( ( product_fst @ A @ B @ P )
% 0.29/0.45          = ( product_fst @ A @ B @ Q2 ) )
% 0.29/0.45       => ( ( ( product_snd @ A @ B @ P )
% 0.29/0.45            = ( product_snd @ A @ B @ Q2 ) )
% 0.29/0.45         => ( P = Q2 ) ) ) ).
% 0.29/0.45  
% 0.29/0.45  % prod_eqI
% 0.29/0.45  thf(fact_152_prod_Oexpand,axiom,
% 0.29/0.45      ! [B: $tType,A: $tType,Prod: product_prod @ A @ B,Prod3: product_prod @ A @ B] :
% 0.29/0.46        ( ( ( ( product_fst @ A @ B @ Prod )
% 0.29/0.46            = ( product_fst @ A @ B @ Prod3 ) )
% 0.29/0.46          & ( ( product_snd @ A @ B @ Prod )
% 0.29/0.46            = ( product_snd @ A @ B @ Prod3 ) ) )
% 0.29/0.46       => ( Prod = Prod3 ) ) ).
% 0.29/0.46  
% 0.29/0.46  % prod.expand
% 0.29/0.46  thf(fact_153_prod__eq__iff,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType] :
% 0.29/0.46        ( ( ^ [Y6: product_prod @ A @ B,Z5: product_prod @ A @ B] : ( Y6 = Z5 ) )
% 0.29/0.46        = ( ^ [S4: product_prod @ A @ B,T3: product_prod @ A @ B] :
% 0.29/0.46              ( ( ( product_fst @ A @ B @ S4 )
% 0.29/0.46                = ( product_fst @ A @ B @ T3 ) )
% 0.29/0.46              & ( ( product_snd @ A @ B @ S4 )
% 0.29/0.46                = ( product_snd @ A @ B @ T3 ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % prod_eq_iff
% 0.29/0.46  thf(fact_154_fst__conv,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,X1: A,X22: B] :
% 0.29/0.46        ( ( product_fst @ A @ B @ ( product_Pair @ A @ B @ X1 @ X22 ) )
% 0.29/0.46        = X1 ) ).
% 0.29/0.46  
% 0.29/0.46  % fst_conv
% 0.29/0.46  thf(fact_155_fst__eqD,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,X: A,Y: B,A2: A] :
% 0.29/0.46        ( ( ( product_fst @ A @ B @ ( product_Pair @ A @ B @ X @ Y ) )
% 0.29/0.46          = A2 )
% 0.29/0.46       => ( X = A2 ) ) ).
% 0.29/0.46  
% 0.29/0.46  % fst_eqD
% 0.29/0.46  thf(fact_156_snd__conv,axiom,
% 0.29/0.46      ! [Aa: $tType,A: $tType,X1: Aa,X22: A] :
% 0.29/0.46        ( ( product_snd @ Aa @ A @ ( product_Pair @ Aa @ A @ X1 @ X22 ) )
% 0.29/0.46        = X22 ) ).
% 0.29/0.46  
% 0.29/0.46  % snd_conv
% 0.29/0.46  thf(fact_157_snd__eqD,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,X: B,Y: A,A2: A] :
% 0.29/0.46        ( ( ( product_snd @ B @ A @ ( product_Pair @ B @ A @ X @ Y ) )
% 0.29/0.46          = A2 )
% 0.29/0.46       => ( Y = A2 ) ) ).
% 0.29/0.46  
% 0.29/0.46  % snd_eqD
% 0.29/0.46  thf(fact_158_prod_Oswap__def,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType] :
% 0.29/0.46        ( ( product_swap @ A @ B )
% 0.29/0.46        = ( ^ [P3: product_prod @ A @ B] : ( product_Pair @ B @ A @ ( product_snd @ A @ B @ P3 ) @ ( product_fst @ A @ B @ P3 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % prod.swap_def
% 0.29/0.46  thf(fact_159_plus__prod__def,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType] :
% 0.29/0.46        ( ( ( plus @ A )
% 0.29/0.46          & ( plus @ B ) )
% 0.29/0.46       => ( ( plus_plus @ ( product_prod @ A @ B ) )
% 0.29/0.46          = ( ^ [X4: product_prod @ A @ B,Y4: product_prod @ A @ B] : ( product_Pair @ A @ B @ ( plus_plus @ A @ ( product_fst @ A @ B @ X4 ) @ ( product_fst @ A @ B @ Y4 ) ) @ ( plus_plus @ B @ ( product_snd @ A @ B @ X4 ) @ ( product_snd @ A @ B @ Y4 ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % plus_prod_def
% 0.29/0.46  thf(fact_160_prod__fun__imageE,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,D: $tType,C: $tType,C3: product_prod @ A @ B,F3: C > A,G3: D > B,R3: set @ ( product_prod @ C @ D )] :
% 0.29/0.46        ( ( member @ ( product_prod @ A @ B ) @ C3 @ ( image @ ( product_prod @ C @ D ) @ ( product_prod @ A @ B ) @ ( product_map_prod @ C @ A @ D @ B @ F3 @ G3 ) @ R3 ) )
% 0.29/0.46       => ~ ! [X3: C,Y3: D] :
% 0.29/0.46              ( ( C3
% 0.29/0.46                = ( product_Pair @ A @ B @ ( F3 @ X3 ) @ ( G3 @ Y3 ) ) )
% 0.29/0.46             => ~ ( member @ ( product_prod @ C @ D ) @ ( product_Pair @ C @ D @ X3 @ Y3 ) @ R3 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % prod_fun_imageE
% 0.29/0.46  thf(fact_161_exI__realizer,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,P2: A > B > $o,Y: A,X: B] :
% 0.29/0.46        ( ( P2 @ Y @ X )
% 0.29/0.46       => ( P2 @ ( product_snd @ B @ A @ ( product_Pair @ B @ A @ X @ Y ) ) @ ( product_fst @ B @ A @ ( product_Pair @ B @ A @ X @ Y ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % exI_realizer
% 0.29/0.46  thf(fact_162_conjI__realizer,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType,P2: A > $o,P: A,Q: B > $o,Q2: B] :
% 0.29/0.46        ( ( P2 @ P )
% 0.29/0.46       => ( ( Q @ Q2 )
% 0.29/0.46         => ( ( P2 @ ( product_fst @ A @ B @ ( product_Pair @ A @ B @ P @ Q2 ) ) )
% 0.29/0.46            & ( Q @ ( product_snd @ A @ B @ ( product_Pair @ A @ B @ P @ Q2 ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % conjI_realizer
% 0.29/0.46  thf(fact_163_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,P2: A > B > $o,X: A,Y: B,A2: product_prod @ A @ B] :
% 0.29/0.46        ( ( P2 @ X @ Y )
% 0.29/0.46       => ( ( A2
% 0.29/0.46            = ( product_Pair @ A @ B @ X @ Y ) )
% 0.29/0.46         => ( P2 @ ( product_fst @ A @ B @ A2 ) @ ( product_snd @ A @ B @ A2 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % BNF_Greatest_Fixpoint.subst_Pair
% 0.29/0.46  thf(fact_164_sndI,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType,X: product_prod @ A @ B,Y: A,Z: B] :
% 0.29/0.46        ( ( X
% 0.29/0.46          = ( product_Pair @ A @ B @ Y @ Z ) )
% 0.29/0.46       => ( ( product_snd @ A @ B @ X )
% 0.29/0.46          = Z ) ) ).
% 0.29/0.46  
% 0.29/0.46  % sndI
% 0.29/0.46  thf(fact_165_fstI,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,X: product_prod @ A @ B,Y: A,Z: B] :
% 0.29/0.46        ( ( X
% 0.29/0.46          = ( product_Pair @ A @ B @ Y @ Z ) )
% 0.29/0.46       => ( ( product_fst @ A @ B @ X )
% 0.29/0.46          = Y ) ) ).
% 0.29/0.46  
% 0.29/0.46  % fstI
% 0.29/0.46  thf(fact_166_eq__snd__iff,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType,B2: A,P: product_prod @ B @ A] :
% 0.29/0.46        ( ( B2
% 0.29/0.46          = ( product_snd @ B @ A @ P ) )
% 0.29/0.46        = ( ? [A7: B] :
% 0.29/0.46              ( P
% 0.29/0.46              = ( product_Pair @ B @ A @ A7 @ B2 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % eq_snd_iff
% 0.29/0.46  thf(fact_167_eq__fst__iff,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType,A2: A,P: product_prod @ A @ B] :
% 0.29/0.46        ( ( A2
% 0.29/0.46          = ( product_fst @ A @ B @ P ) )
% 0.29/0.46        = ( ? [B6: B] :
% 0.29/0.46              ( P
% 0.29/0.46              = ( product_Pair @ A @ B @ A2 @ B6 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % eq_fst_iff
% 0.29/0.46  thf(fact_168_Collect__split__mono__strong,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,X5: set @ A,A6: set @ ( product_prod @ A @ B ),Y5: set @ B,P2: A > B > $o,Q: A > B > $o] :
% 0.29/0.46        ( ( X5
% 0.29/0.46          = ( image @ ( product_prod @ A @ B ) @ A @ ( product_fst @ A @ B ) @ A6 ) )
% 0.29/0.46       => ( ( Y5
% 0.29/0.46            = ( image @ ( product_prod @ A @ B ) @ B @ ( product_snd @ A @ B ) @ A6 ) )
% 0.29/0.46         => ( ! [X3: A] :
% 0.29/0.46                ( ( member @ A @ X3 @ X5 )
% 0.29/0.46               => ! [Xa2: B] :
% 0.29/0.46                    ( ( member @ B @ Xa2 @ Y5 )
% 0.29/0.46                   => ( ( P2 @ X3 @ Xa2 )
% 0.29/0.46                     => ( Q @ X3 @ Xa2 ) ) ) )
% 0.29/0.46           => ( ( ord_less_eq @ ( set @ ( product_prod @ A @ B ) ) @ A6 @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ P2 ) ) )
% 0.29/0.46             => ( ord_less_eq @ ( set @ ( product_prod @ A @ B ) ) @ A6 @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ Q ) ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % Collect_split_mono_strong
% 0.29/0.46  thf(fact_169_Pair__le,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType] :
% 0.29/0.46        ( ( ( ord @ B )
% 0.29/0.46          & ( ord @ A ) )
% 0.29/0.46       => ! [A2: A,B2: B,C3: A,D3: B] :
% 0.29/0.46            ( ( ord_less_eq @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ A2 @ B2 ) @ ( product_Pair @ A @ B @ C3 @ D3 ) )
% 0.29/0.46            = ( ( ord_less_eq @ A @ A2 @ C3 )
% 0.29/0.46              & ( ord_less_eq @ B @ B2 @ D3 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % Pair_le
% 0.29/0.46  thf(fact_170_subrelI,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,R2: set @ ( product_prod @ A @ B ),S: set @ ( product_prod @ A @ B )] :
% 0.29/0.46        ( ! [X3: A,Y3: B] :
% 0.29/0.46            ( ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ X3 @ Y3 ) @ R2 )
% 0.29/0.46           => ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ X3 @ Y3 ) @ S ) )
% 0.29/0.46       => ( ord_less_eq @ ( set @ ( product_prod @ A @ B ) ) @ R2 @ S ) ) ).
% 0.29/0.46  
% 0.29/0.46  % subrelI
% 0.29/0.46  thf(fact_171_Pair__mono,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType] :
% 0.29/0.46        ( ( ( ord @ B )
% 0.29/0.46          & ( ord @ A ) )
% 0.29/0.46       => ! [X: A,X6: A,Y: B,Y7: B] :
% 0.29/0.46            ( ( ord_less_eq @ A @ X @ X6 )
% 0.29/0.46           => ( ( ord_less_eq @ B @ Y @ Y7 )
% 0.29/0.46             => ( ord_less_eq @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ X @ Y ) @ ( product_Pair @ A @ B @ X6 @ Y7 ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % Pair_mono
% 0.29/0.46  thf(fact_172_mono__mult,axiom,
% 0.29/0.46      ! [A: $tType,R2: set @ ( product_prod @ A @ A ),R6: set @ ( product_prod @ A @ A )] :
% 0.29/0.46        ( ( ord_less_eq @ ( set @ ( product_prod @ A @ A ) ) @ R2 @ R6 )
% 0.29/0.46       => ( ord_less_eq @ ( set @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) ) @ ( mult @ A @ R2 ) @ ( mult @ A @ R6 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % mono_mult
% 0.29/0.46  thf(fact_173_image__mono,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,A6: set @ A,B5: set @ A,F3: A > B] :
% 0.29/0.46        ( ( ord_less_eq @ ( set @ A ) @ A6 @ B5 )
% 0.29/0.46       => ( ord_less_eq @ ( set @ B ) @ ( image @ A @ B @ F3 @ A6 ) @ ( image @ A @ B @ F3 @ B5 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % image_mono
% 0.29/0.46  thf(fact_174_image__subsetI,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType,A6: set @ A,F3: A > B,B5: set @ B] :
% 0.29/0.46        ( ! [X3: A] :
% 0.29/0.46            ( ( member @ A @ X3 @ A6 )
% 0.29/0.46           => ( member @ B @ ( F3 @ X3 ) @ B5 ) )
% 0.29/0.46       => ( ord_less_eq @ ( set @ B ) @ ( image @ A @ B @ F3 @ A6 ) @ B5 ) ) ).
% 0.29/0.46  
% 0.29/0.46  % image_subsetI
% 0.29/0.46  thf(fact_175_subset__imageE,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType,B5: set @ A,F3: B > A,A6: set @ B] :
% 0.29/0.46        ( ( ord_less_eq @ ( set @ A ) @ B5 @ ( image @ B @ A @ F3 @ A6 ) )
% 0.29/0.46       => ~ ! [C4: set @ B] :
% 0.29/0.46              ( ( ord_less_eq @ ( set @ B ) @ C4 @ A6 )
% 0.29/0.46             => ( B5
% 0.29/0.46               != ( image @ B @ A @ F3 @ C4 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % subset_imageE
% 0.29/0.46  thf(fact_176_image__subset__iff,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType,F3: B > A,A6: set @ B,B5: set @ A] :
% 0.29/0.46        ( ( ord_less_eq @ ( set @ A ) @ ( image @ B @ A @ F3 @ A6 ) @ B5 )
% 0.29/0.46        = ( ! [X4: B] :
% 0.29/0.46              ( ( member @ B @ X4 @ A6 )
% 0.29/0.46             => ( member @ A @ ( F3 @ X4 ) @ B5 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % image_subset_iff
% 0.29/0.46  thf(fact_177_subset__image__iff,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType,B5: set @ A,F3: B > A,A6: set @ B] :
% 0.29/0.46        ( ( ord_less_eq @ ( set @ A ) @ B5 @ ( image @ B @ A @ F3 @ A6 ) )
% 0.29/0.46        = ( ? [AA: set @ B] :
% 0.29/0.46              ( ( ord_less_eq @ ( set @ B ) @ AA @ A6 )
% 0.29/0.46              & ( B5
% 0.29/0.46                = ( image @ B @ A @ F3 @ AA ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % subset_image_iff
% 0.29/0.46  thf(fact_178_subset__translation__eq,axiom,
% 0.29/0.46      ! [A: $tType] :
% 0.29/0.46        ( ( real_V1076094709vector @ A )
% 0.29/0.46       => ! [A2: A,S: set @ A,T2: set @ A] :
% 0.29/0.46            ( ( ord_less_eq @ ( set @ A ) @ ( image @ A @ A @ ( plus_plus @ A @ A2 ) @ S ) @ ( image @ A @ A @ ( plus_plus @ A @ A2 ) @ T2 ) )
% 0.29/0.46            = ( ord_less_eq @ ( set @ A ) @ S @ T2 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % subset_translation_eq
% 0.29/0.46  thf(fact_179_range__subsetD,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,F3: B > A,B5: set @ A,I: B] :
% 0.29/0.46        ( ( ord_less_eq @ ( set @ A ) @ ( image @ B @ A @ F3 @ ( top_top @ ( set @ B ) ) ) @ B5 )
% 0.29/0.46       => ( member @ A @ ( F3 @ I ) @ B5 ) ) ).
% 0.29/0.46  
% 0.29/0.46  % range_subsetD
% 0.29/0.46  thf(fact_180_all__subset__image,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType,F3: B > A,A6: set @ B,P2: ( set @ A ) > $o] :
% 0.29/0.46        ( ( ! [B8: set @ A] :
% 0.29/0.46              ( ( ord_less_eq @ ( set @ A ) @ B8 @ ( image @ B @ A @ F3 @ A6 ) )
% 0.29/0.46             => ( P2 @ B8 ) ) )
% 0.29/0.46        = ( ! [B8: set @ B] :
% 0.29/0.46              ( ( ord_less_eq @ ( set @ B ) @ B8 @ A6 )
% 0.29/0.46             => ( P2 @ ( image @ B @ A @ F3 @ B8 ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % all_subset_image
% 0.29/0.46  thf(fact_181_Collect__case__prod__mono,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,A6: A > B > $o,B5: A > B > $o] :
% 0.29/0.46        ( ( ord_less_eq @ ( A > B > $o ) @ A6 @ B5 )
% 0.29/0.46       => ( ord_less_eq @ ( set @ ( product_prod @ A @ B ) ) @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ A6 ) ) @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ B5 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % Collect_case_prod_mono
% 0.29/0.46  thf(fact_182_mono__mult1,axiom,
% 0.29/0.46      ! [A: $tType,R2: set @ ( product_prod @ A @ A ),R6: set @ ( product_prod @ A @ A )] :
% 0.29/0.46        ( ( ord_less_eq @ ( set @ ( product_prod @ A @ A ) ) @ R2 @ R6 )
% 0.29/0.46       => ( ord_less_eq @ ( set @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) ) @ ( mult1 @ A @ R2 ) @ ( mult1 @ A @ R6 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % mono_mult1
% 0.29/0.46  thf(fact_183_same__fstI,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,P2: A > $o,X: A,Y7: B,Y: B,R3: A > ( set @ ( product_prod @ B @ B ) )] :
% 0.29/0.46        ( ( P2 @ X )
% 0.29/0.46       => ( ( member @ ( product_prod @ B @ B ) @ ( product_Pair @ B @ B @ Y7 @ Y ) @ ( R3 @ X ) )
% 0.29/0.46         => ( member @ ( product_prod @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) ) @ ( product_Pair @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ X @ Y7 ) @ ( product_Pair @ A @ B @ X @ Y ) ) @ ( same_fst @ A @ B @ P2 @ R3 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % same_fstI
% 0.29/0.46  thf(fact_184_relChain__def,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType] :
% 0.29/0.46        ( ( ord @ B )
% 0.29/0.46       => ( ( bNF_Ca1785829860lChain @ A @ B )
% 0.29/0.46          = ( ^ [R: set @ ( product_prod @ A @ A ),As: A > B] :
% 0.29/0.46              ! [I2: A,J: A] :
% 0.29/0.46                ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ I2 @ J ) @ R )
% 0.29/0.46               => ( ord_less_eq @ B @ ( As @ I2 ) @ ( As @ J ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % relChain_def
% 0.29/0.46  thf(fact_185_mult1__union,axiom,
% 0.29/0.46      ! [A: $tType,B5: multiset @ A,D4: multiset @ A,R2: set @ ( product_prod @ A @ A ),C5: multiset @ A] :
% 0.29/0.46        ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ B5 @ D4 ) @ ( mult1 @ A @ R2 ) )
% 0.29/0.46       => ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ C5 @ B5 ) @ ( plus_plus @ ( multiset @ A ) @ C5 @ D4 ) ) @ ( mult1 @ A @ R2 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % mult1_union
% 0.29/0.46  thf(fact_186_mult1E,axiom,
% 0.29/0.46      ! [A: $tType,N: multiset @ A,M: multiset @ A,R2: set @ ( product_prod @ A @ A )] :
% 0.29/0.46        ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ N @ M ) @ ( mult1 @ A @ R2 ) )
% 0.29/0.46       => ~ ! [A4: A,M0: multiset @ A] :
% 0.29/0.46              ( ( M
% 0.29/0.46                = ( add_mset @ A @ A4 @ M0 ) )
% 0.29/0.46             => ! [K3: multiset @ A] :
% 0.29/0.46                  ( ( N
% 0.29/0.46                    = ( plus_plus @ ( multiset @ A ) @ M0 @ K3 ) )
% 0.29/0.46                 => ~ ! [B7: A] :
% 0.29/0.46                        ( ( member @ A @ B7 @ ( set_mset @ A @ K3 ) )
% 0.29/0.46                       => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ B7 @ A4 ) @ R2 ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % mult1E
% 0.29/0.46  thf(fact_187_mult1I,axiom,
% 0.29/0.46      ! [A: $tType,M: multiset @ A,A2: A,M02: multiset @ A,N: multiset @ A,K: multiset @ A,R2: set @ ( product_prod @ A @ A )] :
% 0.29/0.46        ( ( M
% 0.29/0.46          = ( add_mset @ A @ A2 @ M02 ) )
% 0.29/0.46       => ( ( N
% 0.29/0.46            = ( plus_plus @ ( multiset @ A ) @ M02 @ K ) )
% 0.29/0.46         => ( ! [B4: A] :
% 0.29/0.46                ( ( member @ A @ B4 @ ( set_mset @ A @ K ) )
% 0.29/0.46               => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ B4 @ A2 ) @ R2 ) )
% 0.29/0.46           => ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ N @ M ) @ ( mult1 @ A @ R2 ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % mult1I
% 0.29/0.46  thf(fact_188_less__add,axiom,
% 0.29/0.46      ! [A: $tType,N: multiset @ A,A2: A,M02: multiset @ A,R2: set @ ( product_prod @ A @ A )] :
% 0.29/0.46        ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ N @ ( add_mset @ A @ A2 @ M02 ) ) @ ( mult1 @ A @ R2 ) )
% 0.29/0.46       => ( ? [M3: multiset @ A] :
% 0.29/0.46              ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ M3 @ M02 ) @ ( mult1 @ A @ R2 ) )
% 0.29/0.46              & ( N
% 0.29/0.46                = ( add_mset @ A @ A2 @ M3 ) ) )
% 0.29/0.46          | ? [K3: multiset @ A] :
% 0.29/0.46              ( ! [B7: A] :
% 0.29/0.46                  ( ( member @ A @ B7 @ ( set_mset @ A @ K3 ) )
% 0.29/0.46                 => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ B7 @ A2 ) @ R2 ) )
% 0.29/0.46              & ( N
% 0.29/0.46                = ( plus_plus @ ( multiset @ A ) @ M02 @ K3 ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % less_add
% 0.29/0.46  thf(fact_189_mset__add,axiom,
% 0.29/0.46      ! [A: $tType,A2: A,A6: multiset @ A] :
% 0.29/0.46        ( ( member @ A @ A2 @ ( set_mset @ A @ A6 ) )
% 0.29/0.46       => ~ ! [B9: multiset @ A] :
% 0.29/0.46              ( A6
% 0.29/0.46             != ( add_mset @ A @ A2 @ B9 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % mset_add
% 0.29/0.46  thf(fact_190_multi__member__split,axiom,
% 0.29/0.46      ! [A: $tType,X: A,M: multiset @ A] :
% 0.29/0.46        ( ( member @ A @ X @ ( set_mset @ A @ M ) )
% 0.29/0.46       => ? [A9: multiset @ A] :
% 0.29/0.46            ( M
% 0.29/0.46            = ( add_mset @ A @ X @ A9 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % multi_member_split
% 0.29/0.46  thf(fact_191_insert__noteq__member,axiom,
% 0.29/0.46      ! [A: $tType,B2: A,B5: multiset @ A,C3: A,C5: multiset @ A] :
% 0.29/0.46        ( ( ( add_mset @ A @ B2 @ B5 )
% 0.29/0.46          = ( add_mset @ A @ C3 @ C5 ) )
% 0.29/0.46       => ( ( B2 != C3 )
% 0.29/0.46         => ( member @ A @ C3 @ ( set_mset @ A @ B5 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % insert_noteq_member
% 0.29/0.46  thf(fact_192_union__single__eq__member,axiom,
% 0.29/0.46      ! [A: $tType,X: A,M: multiset @ A,N: multiset @ A] :
% 0.29/0.46        ( ( ( add_mset @ A @ X @ M )
% 0.29/0.46          = N )
% 0.29/0.46       => ( member @ A @ X @ ( set_mset @ A @ N ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % union_single_eq_member
% 0.29/0.46  thf(fact_193_union__iff,axiom,
% 0.29/0.46      ! [A: $tType,A2: A,A6: multiset @ A,B5: multiset @ A] :
% 0.29/0.46        ( ( member @ A @ A2 @ ( set_mset @ A @ ( plus_plus @ ( multiset @ A ) @ A6 @ B5 ) ) )
% 0.29/0.46        = ( ( member @ A @ A2 @ ( set_mset @ A @ A6 ) )
% 0.29/0.46          | ( member @ A @ A2 @ ( set_mset @ A @ B5 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % union_iff
% 0.29/0.46  thf(fact_194_mult__implies__one__step,axiom,
% 0.29/0.46      ! [A: $tType,R2: set @ ( product_prod @ A @ A ),M: multiset @ A,N: multiset @ A] :
% 0.29/0.46        ( ( trans @ A @ R2 )
% 0.29/0.46       => ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ M @ N ) @ ( mult @ A @ R2 ) )
% 0.29/0.46         => ? [I3: multiset @ A,J2: multiset @ A] :
% 0.29/0.46              ( ( N
% 0.29/0.46                = ( plus_plus @ ( multiset @ A ) @ I3 @ J2 ) )
% 0.29/0.46              & ? [K3: multiset @ A] :
% 0.29/0.46                  ( ( M
% 0.29/0.46                    = ( plus_plus @ ( multiset @ A ) @ I3 @ K3 ) )
% 0.29/0.46                  & ( J2
% 0.29/0.46                   != ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46                  & ! [X2: A] :
% 0.29/0.46                      ( ( member @ A @ X2 @ ( set_mset @ A @ K3 ) )
% 0.29/0.46                     => ? [Xa2: A] :
% 0.29/0.46                          ( ( member @ A @ Xa2 @ ( set_mset @ A @ J2 ) )
% 0.29/0.46                          & ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X2 @ Xa2 ) @ R2 ) ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % mult_implies_one_step
% 0.29/0.46  thf(fact_195_one__step__implies__mult,axiom,
% 0.29/0.46      ! [A: $tType,J3: multiset @ A,K: multiset @ A,R2: set @ ( product_prod @ A @ A ),I4: multiset @ A] :
% 0.29/0.46        ( ( J3
% 0.29/0.46         != ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46       => ( ! [X3: A] :
% 0.29/0.46              ( ( member @ A @ X3 @ ( set_mset @ A @ K ) )
% 0.29/0.46             => ? [Xa: A] :
% 0.29/0.46                  ( ( member @ A @ Xa @ ( set_mset @ A @ J3 ) )
% 0.29/0.46                  & ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Xa ) @ R2 ) ) )
% 0.29/0.46         => ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ I4 @ K ) @ ( plus_plus @ ( multiset @ A ) @ I4 @ J3 ) ) @ ( mult @ A @ R2 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % one_step_implies_mult
% 0.29/0.46  thf(fact_196_subset__mset_Ozero__eq__add__iff__both__eq__0,axiom,
% 0.29/0.46      ! [A: $tType,X: multiset @ A,Y: multiset @ A] :
% 0.29/0.46        ( ( ( zero_zero @ ( multiset @ A ) )
% 0.29/0.46          = ( plus_plus @ ( multiset @ A ) @ X @ Y ) )
% 0.29/0.46        = ( ( X
% 0.29/0.46            = ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46          & ( Y
% 0.29/0.46            = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % subset_mset.zero_eq_add_iff_both_eq_0
% 0.29/0.46  thf(fact_197_subset__mset_Oadd__eq__0__iff__both__eq__0,axiom,
% 0.29/0.46      ! [A: $tType,X: multiset @ A,Y: multiset @ A] :
% 0.29/0.46        ( ( ( plus_plus @ ( multiset @ A ) @ X @ Y )
% 0.29/0.46          = ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46        = ( ( X
% 0.29/0.46            = ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46          & ( Y
% 0.29/0.46            = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % subset_mset.add_eq_0_iff_both_eq_0
% 0.29/0.46  thf(fact_198_union__eq__empty,axiom,
% 0.29/0.46      ! [A: $tType,M: multiset @ A,N: multiset @ A] :
% 0.29/0.46        ( ( ( plus_plus @ ( multiset @ A ) @ M @ N )
% 0.29/0.46          = ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46        = ( ( M
% 0.29/0.46            = ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46          & ( N
% 0.29/0.46            = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % union_eq_empty
% 0.29/0.46  thf(fact_199_empty__eq__union,axiom,
% 0.29/0.46      ! [A: $tType,M: multiset @ A,N: multiset @ A] :
% 0.29/0.46        ( ( ( zero_zero @ ( multiset @ A ) )
% 0.29/0.46          = ( plus_plus @ ( multiset @ A ) @ M @ N ) )
% 0.29/0.46        = ( ( M
% 0.29/0.46            = ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46          & ( N
% 0.29/0.46            = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % empty_eq_union
% 0.29/0.46  thf(fact_200_add__mset__eq__singleton__iff,axiom,
% 0.29/0.46      ! [A: $tType,X: A,M: multiset @ A,Y: A] :
% 0.29/0.46        ( ( ( add_mset @ A @ X @ M )
% 0.29/0.46          = ( add_mset @ A @ Y @ ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46        = ( ( M
% 0.29/0.46            = ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46          & ( X = Y ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % add_mset_eq_singleton_iff
% 0.29/0.46  thf(fact_201_single__eq__add__mset,axiom,
% 0.29/0.46      ! [A: $tType,A2: A,B2: A,M: multiset @ A] :
% 0.29/0.46        ( ( ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46          = ( add_mset @ A @ B2 @ M ) )
% 0.29/0.46        = ( ( B2 = A2 )
% 0.29/0.46          & ( M
% 0.29/0.46            = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % single_eq_add_mset
% 0.29/0.46  thf(fact_202_add__mset__eq__single,axiom,
% 0.29/0.46      ! [A: $tType,B2: A,M: multiset @ A,A2: A] :
% 0.29/0.46        ( ( ( add_mset @ A @ B2 @ M )
% 0.29/0.46          = ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46        = ( ( B2 = A2 )
% 0.29/0.46          & ( M
% 0.29/0.46            = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % add_mset_eq_single
% 0.29/0.46  thf(fact_203_single__eq__single,axiom,
% 0.29/0.46      ! [A: $tType,A2: A,B2: A] :
% 0.29/0.46        ( ( ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46          = ( add_mset @ A @ B2 @ ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46        = ( A2 = B2 ) ) ).
% 0.29/0.46  
% 0.29/0.46  % single_eq_single
% 0.29/0.46  thf(fact_204_image__add__0,axiom,
% 0.29/0.46      ! [A: $tType] :
% 0.29/0.46        ( ( comm_monoid_add @ A )
% 0.29/0.46       => ! [S3: set @ A] :
% 0.29/0.46            ( ( image @ A @ A @ ( plus_plus @ A @ ( zero_zero @ A ) ) @ S3 )
% 0.29/0.46            = S3 ) ) ).
% 0.29/0.46  
% 0.29/0.46  % image_add_0
% 0.29/0.46  thf(fact_205_multiset__nonemptyE,axiom,
% 0.29/0.46      ! [A: $tType,A6: multiset @ A] :
% 0.29/0.46        ( ( A6
% 0.29/0.46         != ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46       => ~ ! [X3: A] :
% 0.29/0.46              ~ ( member @ A @ X3 @ ( set_mset @ A @ A6 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % multiset_nonemptyE
% 0.29/0.46  thf(fact_206_zero__prod__def,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType] :
% 0.29/0.46        ( ( ( zero @ B )
% 0.29/0.46          & ( zero @ A ) )
% 0.29/0.46       => ( ( zero_zero @ ( product_prod @ A @ B ) )
% 0.29/0.46          = ( product_Pair @ A @ B @ ( zero_zero @ A ) @ ( zero_zero @ B ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % zero_prod_def
% 0.29/0.46  thf(fact_207_empty__neutral_I1_J,axiom,
% 0.29/0.46      ! [A: $tType,X: multiset @ A] :
% 0.29/0.46        ( ( plus_plus @ ( multiset @ A ) @ ( zero_zero @ ( multiset @ A ) ) @ X )
% 0.29/0.46        = X ) ).
% 0.29/0.46  
% 0.29/0.46  % empty_neutral(1)
% 0.29/0.46  thf(fact_208_empty__neutral_I2_J,axiom,
% 0.29/0.46      ! [A: $tType,X: multiset @ A] :
% 0.29/0.46        ( ( plus_plus @ ( multiset @ A ) @ X @ ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46        = X ) ).
% 0.29/0.46  
% 0.29/0.46  % empty_neutral(2)
% 0.29/0.46  thf(fact_209_multi__nonempty__split,axiom,
% 0.29/0.46      ! [A: $tType,M: multiset @ A] :
% 0.29/0.46        ( ( M
% 0.29/0.46         != ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46       => ? [A9: multiset @ A,A4: A] :
% 0.29/0.46            ( M
% 0.29/0.46            = ( add_mset @ A @ A4 @ A9 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % multi_nonempty_split
% 0.29/0.46  thf(fact_210_empty__not__add__mset,axiom,
% 0.29/0.46      ! [A: $tType,A2: A,A6: multiset @ A] :
% 0.29/0.46        ( ( zero_zero @ ( multiset @ A ) )
% 0.29/0.46       != ( add_mset @ A @ A2 @ A6 ) ) ).
% 0.29/0.46  
% 0.29/0.46  % empty_not_add_mset
% 0.29/0.46  thf(fact_211_multiset__induct2,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType,P2: ( multiset @ A ) > ( multiset @ B ) > $o,M: multiset @ A,N: multiset @ B] :
% 0.29/0.46        ( ( P2 @ ( zero_zero @ ( multiset @ A ) ) @ ( zero_zero @ ( multiset @ B ) ) )
% 0.29/0.46       => ( ! [A4: A,M3: multiset @ A,N3: multiset @ B] :
% 0.29/0.46              ( ( P2 @ M3 @ N3 )
% 0.29/0.46             => ( P2 @ ( add_mset @ A @ A4 @ M3 ) @ N3 ) )
% 0.29/0.46         => ( ! [A4: B,M3: multiset @ A,N3: multiset @ B] :
% 0.29/0.46                ( ( P2 @ M3 @ N3 )
% 0.29/0.46               => ( P2 @ M3 @ ( add_mset @ B @ A4 @ N3 ) ) )
% 0.29/0.46           => ( P2 @ M @ N ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % multiset_induct2
% 0.29/0.46  thf(fact_212_multiset__induct,axiom,
% 0.29/0.46      ! [A: $tType,P2: ( multiset @ A ) > $o,M: multiset @ A] :
% 0.29/0.46        ( ( P2 @ ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46       => ( ! [X3: A,M3: multiset @ A] :
% 0.29/0.46              ( ( P2 @ M3 )
% 0.29/0.46             => ( P2 @ ( add_mset @ A @ X3 @ M3 ) ) )
% 0.29/0.46         => ( P2 @ M ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % multiset_induct
% 0.29/0.46  thf(fact_213_multiset__cases,axiom,
% 0.29/0.46      ! [A: $tType,M: multiset @ A] :
% 0.29/0.46        ( ( M
% 0.29/0.46         != ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46       => ~ ! [X3: A,N3: multiset @ A] :
% 0.29/0.46              ( M
% 0.29/0.46             != ( add_mset @ A @ X3 @ N3 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % multiset_cases
% 0.29/0.46  thf(fact_214_single__is__union,axiom,
% 0.29/0.46      ! [A: $tType,A2: A,M: multiset @ A,N: multiset @ A] :
% 0.29/0.46        ( ( ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46          = ( plus_plus @ ( multiset @ A ) @ M @ N ) )
% 0.29/0.46        = ( ( ( ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46              = M )
% 0.29/0.46            & ( N
% 0.29/0.46              = ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46          | ( ( M
% 0.29/0.46              = ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46            & ( ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46              = N ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % single_is_union
% 0.29/0.46  thf(fact_215_union__is__single,axiom,
% 0.29/0.46      ! [A: $tType,M: multiset @ A,N: multiset @ A,A2: A] :
% 0.29/0.46        ( ( ( plus_plus @ ( multiset @ A ) @ M @ N )
% 0.29/0.46          = ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46        = ( ( ( M
% 0.29/0.46              = ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46            & ( N
% 0.29/0.46              = ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46          | ( ( M
% 0.29/0.46              = ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46            & ( N
% 0.29/0.46              = ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % union_is_single
% 0.29/0.46  thf(fact_216_add__mset__add__single,axiom,
% 0.29/0.46      ! [A: $tType] :
% 0.29/0.46        ( ( add_mset @ A )
% 0.29/0.46        = ( ^ [A7: A,A5: multiset @ A] : ( plus_plus @ ( multiset @ A ) @ A5 @ ( add_mset @ A @ A7 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % add_mset_add_single
% 0.29/0.46  thf(fact_217_multi__member__last,axiom,
% 0.29/0.46      ! [A: $tType,X: A] : ( member @ A @ X @ ( set_mset @ A @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % multi_member_last
% 0.29/0.46  thf(fact_218_not__less__empty,axiom,
% 0.29/0.46      ! [A: $tType,M: multiset @ A,R2: set @ ( product_prod @ A @ A )] :
% 0.29/0.46        ~ ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ M @ ( zero_zero @ ( multiset @ A ) ) ) @ ( mult1 @ A @ R2 ) ) ).
% 0.29/0.46  
% 0.29/0.46  % not_less_empty
% 0.29/0.46  thf(fact_219_multiset__induct__max,axiom,
% 0.29/0.46      ! [A: $tType] :
% 0.29/0.46        ( ( linorder @ A )
% 0.29/0.46       => ! [P2: ( multiset @ A ) > $o,M: multiset @ A] :
% 0.29/0.46            ( ( P2 @ ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46           => ( ! [X3: A,M3: multiset @ A] :
% 0.29/0.46                  ( ( P2 @ M3 )
% 0.29/0.46                 => ( ! [Xa: A] :
% 0.29/0.46                        ( ( member @ A @ Xa @ ( set_mset @ A @ M3 ) )
% 0.29/0.46                       => ( ord_less_eq @ A @ Xa @ X3 ) )
% 0.29/0.46                   => ( P2 @ ( add_mset @ A @ X3 @ M3 ) ) ) )
% 0.29/0.46             => ( P2 @ M ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % multiset_induct_max
% 0.29/0.46  thf(fact_220_multiset__induct__min,axiom,
% 0.29/0.46      ! [A: $tType] :
% 0.29/0.46        ( ( linorder @ A )
% 0.29/0.46       => ! [P2: ( multiset @ A ) > $o,M: multiset @ A] :
% 0.29/0.46            ( ( P2 @ ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46           => ( ! [X3: A,M3: multiset @ A] :
% 0.29/0.46                  ( ( P2 @ M3 )
% 0.29/0.46                 => ( ! [Xa: A] :
% 0.29/0.46                        ( ( member @ A @ Xa @ ( set_mset @ A @ M3 ) )
% 0.29/0.46                       => ( ord_less_eq @ A @ X3 @ Xa ) )
% 0.29/0.46                   => ( P2 @ ( add_mset @ A @ X3 @ M3 ) ) ) )
% 0.29/0.46             => ( P2 @ M ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % multiset_induct_min
% 0.29/0.46  thf(fact_221_multi__member__skip,axiom,
% 0.29/0.46      ! [A: $tType,X: A,XS: multiset @ A,Y: A] :
% 0.29/0.46        ( ( member @ A @ X @ ( set_mset @ A @ XS ) )
% 0.29/0.46       => ( member @ A @ X @ ( set_mset @ A @ ( plus_plus @ ( multiset @ A ) @ ( add_mset @ A @ Y @ ( zero_zero @ ( multiset @ A ) ) ) @ XS ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % multi_member_skip
% 0.29/0.46  thf(fact_222_multi__member__this,axiom,
% 0.29/0.46      ! [A: $tType,X: A,XS: multiset @ A] : ( member @ A @ X @ ( set_mset @ A @ ( plus_plus @ ( multiset @ A ) @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) @ XS ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % multi_member_this
% 0.29/0.46  thf(fact_223_Multiset_Ois__empty__def,axiom,
% 0.29/0.46      ! [A: $tType] :
% 0.29/0.46        ( ( is_empty @ A )
% 0.29/0.46        = ( ^ [A5: multiset @ A] :
% 0.29/0.46              ( A5
% 0.29/0.46              = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % Multiset.is_empty_def
% 0.29/0.46  thf(fact_224_subset__mset_Osum__mset__0__iff,axiom,
% 0.29/0.46      ! [A: $tType,M: multiset @ ( multiset @ A )] :
% 0.29/0.46        ( ( ( comm_monoid_sum_mset @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) ) @ ( zero_zero @ ( multiset @ A ) ) @ M )
% 0.29/0.46          = ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46        = ( ! [X4: multiset @ A] :
% 0.29/0.46              ( ( member @ ( multiset @ A ) @ X4 @ ( set_mset @ ( multiset @ A ) @ M ) )
% 0.29/0.46             => ( X4
% 0.29/0.46                = ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % subset_mset.sum_mset_0_iff
% 0.29/0.46  thf(fact_225_comm__monoid__add_Osum__mset_Ocong,axiom,
% 0.29/0.46      ! [A: $tType] :
% 0.29/0.46        ( ( comm_monoid_sum_mset @ A )
% 0.29/0.46        = ( comm_monoid_sum_mset @ A ) ) ).
% 0.29/0.46  
% 0.29/0.46  % comm_monoid_add.sum_mset.cong
% 0.29/0.46  thf(fact_226_in__mset__fold__plus__iff,axiom,
% 0.29/0.46      ! [A: $tType,X: A,M: multiset @ A,NN: multiset @ ( multiset @ A )] :
% 0.29/0.46        ( ( member @ A @ X @ ( set_mset @ A @ ( fold_mset @ ( multiset @ A ) @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) ) @ M @ NN ) ) )
% 0.29/0.46        = ( ( member @ A @ X @ ( set_mset @ A @ M ) )
% 0.29/0.46          | ? [N2: multiset @ A] :
% 0.29/0.46              ( ( member @ ( multiset @ A ) @ N2 @ ( set_mset @ ( multiset @ A ) @ NN ) )
% 0.29/0.46              & ( member @ A @ X @ ( set_mset @ A @ N2 ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % in_mset_fold_plus_iff
% 0.29/0.46  thf(fact_227_insert__DiffM2,axiom,
% 0.29/0.46      ! [A: $tType,X: A,M: multiset @ A] :
% 0.29/0.46        ( ( member @ A @ X @ ( set_mset @ A @ M ) )
% 0.29/0.46       => ( ( plus_plus @ ( multiset @ A ) @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) ) @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46          = M ) ) ).
% 0.29/0.46  
% 0.29/0.46  % insert_DiffM2
% 0.29/0.46  thf(fact_228_diff__Pair,axiom,
% 0.29/0.46      ! [A: $tType,B: $tType] :
% 0.29/0.46        ( ( ( minus @ B )
% 0.29/0.46          & ( minus @ A ) )
% 0.29/0.46       => ! [A2: A,B2: B,C3: A,D3: B] :
% 0.29/0.46            ( ( minus_minus @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ A2 @ B2 ) @ ( product_Pair @ A @ B @ C3 @ D3 ) )
% 0.29/0.46            = ( product_Pair @ A @ B @ ( minus_minus @ A @ A2 @ C3 ) @ ( minus_minus @ B @ B2 @ D3 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % diff_Pair
% 0.29/0.46  thf(fact_229_diff__diff__add__mset,axiom,
% 0.29/0.46      ! [A: $tType,M: multiset @ A,N: multiset @ A,P2: multiset @ A] :
% 0.29/0.46        ( ( minus_minus @ ( multiset @ A ) @ ( minus_minus @ ( multiset @ A ) @ M @ N ) @ P2 )
% 0.29/0.46        = ( minus_minus @ ( multiset @ A ) @ M @ ( plus_plus @ ( multiset @ A ) @ N @ P2 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % diff_diff_add_mset
% 0.29/0.46  thf(fact_230_fold__mset__empty,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType,F3: B > A > A,S: A] :
% 0.29/0.46        ( ( fold_mset @ B @ A @ F3 @ S @ ( zero_zero @ ( multiset @ B ) ) )
% 0.29/0.46        = S ) ).
% 0.29/0.46  
% 0.29/0.46  % fold_mset_empty
% 0.29/0.46  thf(fact_231_add__mset__remove__trivial,axiom,
% 0.29/0.46      ! [A: $tType,X: A,M: multiset @ A] :
% 0.29/0.46        ( ( minus_minus @ ( multiset @ A ) @ ( add_mset @ A @ X @ M ) @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46        = M ) ).
% 0.29/0.46  
% 0.29/0.46  % add_mset_remove_trivial
% 0.29/0.46  thf(fact_232_diff__add__mset__swap,axiom,
% 0.29/0.46      ! [A: $tType,B2: A,A6: multiset @ A,M: multiset @ A] :
% 0.29/0.46        ( ~ ( member @ A @ B2 @ ( set_mset @ A @ A6 ) )
% 0.29/0.46       => ( ( minus_minus @ ( multiset @ A ) @ ( add_mset @ A @ B2 @ M ) @ A6 )
% 0.29/0.46          = ( add_mset @ A @ B2 @ ( minus_minus @ ( multiset @ A ) @ M @ A6 ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % diff_add_mset_swap
% 0.29/0.46  thf(fact_233_insert__DiffM,axiom,
% 0.29/0.46      ! [A: $tType,X: A,M: multiset @ A] :
% 0.29/0.46        ( ( member @ A @ X @ ( set_mset @ A @ M ) )
% 0.29/0.46       => ( ( add_mset @ A @ X @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) ) )
% 0.29/0.46          = M ) ) ).
% 0.29/0.46  
% 0.29/0.46  % insert_DiffM
% 0.29/0.46  thf(fact_234_diff__union__swap2,axiom,
% 0.29/0.46      ! [A: $tType,Y: A,M: multiset @ A,X: A] :
% 0.29/0.46        ( ( member @ A @ Y @ ( set_mset @ A @ M ) )
% 0.29/0.46       => ( ( minus_minus @ ( multiset @ A ) @ ( add_mset @ A @ X @ M ) @ ( add_mset @ A @ Y @ ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46          = ( add_mset @ A @ X @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ Y @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % diff_union_swap2
% 0.29/0.46  thf(fact_235_diff__empty,axiom,
% 0.29/0.46      ! [A: $tType,M: multiset @ A] :
% 0.29/0.46        ( ( ( minus_minus @ ( multiset @ A ) @ M @ ( zero_zero @ ( multiset @ A ) ) )
% 0.29/0.46          = M )
% 0.29/0.46        & ( ( minus_minus @ ( multiset @ A ) @ ( zero_zero @ ( multiset @ A ) ) @ M )
% 0.29/0.46          = ( zero_zero @ ( multiset @ A ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % diff_empty
% 0.29/0.46  thf(fact_236_Multiset_Odiff__cancel,axiom,
% 0.29/0.46      ! [A: $tType,A6: multiset @ A] :
% 0.29/0.46        ( ( minus_minus @ ( multiset @ A ) @ A6 @ A6 )
% 0.29/0.46        = ( zero_zero @ ( multiset @ A ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % Multiset.diff_cancel
% 0.29/0.46  thf(fact_237_union__single__eq__diff,axiom,
% 0.29/0.46      ! [A: $tType,X: A,M: multiset @ A,N: multiset @ A] :
% 0.29/0.46        ( ( ( add_mset @ A @ X @ M )
% 0.29/0.46          = N )
% 0.29/0.46       => ( M
% 0.29/0.46          = ( minus_minus @ ( multiset @ A ) @ N @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % union_single_eq_diff
% 0.29/0.46  thf(fact_238_add__eq__conv__diff,axiom,
% 0.29/0.46      ! [A: $tType,A2: A,M: multiset @ A,B2: A,N: multiset @ A] :
% 0.29/0.46        ( ( ( add_mset @ A @ A2 @ M )
% 0.29/0.46          = ( add_mset @ A @ B2 @ N ) )
% 0.29/0.46        = ( ( ( M = N )
% 0.29/0.46            & ( A2 = B2 ) )
% 0.29/0.46          | ( ( M
% 0.29/0.46              = ( add_mset @ A @ B2 @ ( minus_minus @ ( multiset @ A ) @ N @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) )
% 0.29/0.46            & ( N
% 0.29/0.46              = ( add_mset @ A @ A2 @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ B2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % add_eq_conv_diff
% 0.29/0.46  thf(fact_239_diff__union__swap,axiom,
% 0.29/0.46      ! [A: $tType,A2: A,B2: A,M: multiset @ A] :
% 0.29/0.46        ( ( A2 != B2 )
% 0.29/0.46       => ( ( add_mset @ A @ B2 @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) )
% 0.29/0.46          = ( minus_minus @ ( multiset @ A ) @ ( add_mset @ A @ B2 @ M ) @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % diff_union_swap
% 0.29/0.46  thf(fact_240_in__diffD,axiom,
% 0.29/0.46      ! [A: $tType,A2: A,M: multiset @ A,N: multiset @ A] :
% 0.29/0.46        ( ( member @ A @ A2 @ ( set_mset @ A @ ( minus_minus @ ( multiset @ A ) @ M @ N ) ) )
% 0.29/0.46       => ( member @ A @ A2 @ ( set_mset @ A @ M ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % in_diffD
% 0.29/0.46  thf(fact_241_minus__prod__def,axiom,
% 0.29/0.46      ! [B: $tType,A: $tType] :
% 0.29/0.46        ( ( ( minus @ A )
% 0.29/0.46          & ( minus @ B ) )
% 0.29/0.46       => ( ( minus_minus @ ( product_prod @ A @ B ) )
% 0.29/0.46          = ( ^ [X4: product_prod @ A @ B,Y4: product_prod @ A @ B] : ( product_Pair @ A @ B @ ( minus_minus @ A @ ( product_fst @ A @ B @ X4 ) @ ( product_fst @ A @ B @ Y4 ) ) @ ( minus_minus @ B @ ( product_snd @ A @ B @ X4 ) @ ( product_snd @ A @ B @ Y4 ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % minus_prod_def
% 0.29/0.46  thf(fact_242_diff__union__cancelR,axiom,
% 0.29/0.46      ! [A: $tType,M: multiset @ A,N: multiset @ A] :
% 0.29/0.46        ( ( minus_minus @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ M @ N ) @ N )
% 0.29/0.46        = M ) ).
% 0.29/0.46  
% 0.29/0.46  % diff_union_cancelR
% 0.29/0.46  thf(fact_243_diff__union__cancelL,axiom,
% 0.29/0.46      ! [A: $tType,N: multiset @ A,M: multiset @ A] :
% 0.29/0.46        ( ( minus_minus @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ N @ M ) @ N )
% 0.29/0.46        = M ) ).
% 0.29/0.46  
% 0.29/0.46  % diff_union_cancelL
% 0.29/0.46  thf(fact_244_Multiset_Odiff__add,axiom,
% 0.29/0.46      ! [A: $tType,M: multiset @ A,N: multiset @ A,Q: multiset @ A] :
% 0.29/0.46        ( ( minus_minus @ ( multiset @ A ) @ M @ ( plus_plus @ ( multiset @ A ) @ N @ Q ) )
% 0.29/0.46        = ( minus_minus @ ( multiset @ A ) @ ( minus_minus @ ( multiset @ A ) @ M @ N ) @ Q ) ) ).
% 0.29/0.46  
% 0.29/0.46  % Multiset.diff_add
% 0.29/0.46  thf(fact_245_add__mset__diff__bothsides,axiom,
% 0.29/0.46      ! [A: $tType,A2: A,M: multiset @ A,A6: multiset @ A] :
% 0.29/0.46        ( ( minus_minus @ ( multiset @ A ) @ ( add_mset @ A @ A2 @ M ) @ ( add_mset @ A @ A2 @ A6 ) )
% 0.29/0.46        = ( minus_minus @ ( multiset @ A ) @ M @ A6 ) ) ).
% 0.29/0.46  
% 0.29/0.46  % add_mset_diff_bothsides
% 0.29/0.46  thf(fact_246_Multiset_Odiff__right__commute,axiom,
% 0.29/0.46      ! [A: $tType,M: multiset @ A,N: multiset @ A,Q: multiset @ A] :
% 0.29/0.46        ( ( minus_minus @ ( multiset @ A ) @ ( minus_minus @ ( multiset @ A ) @ M @ N ) @ Q )
% 0.29/0.46        = ( minus_minus @ ( multiset @ A ) @ ( minus_minus @ ( multiset @ A ) @ M @ Q ) @ N ) ) ).
% 0.29/0.46  
% 0.29/0.46  % Multiset.diff_right_commute
% 0.29/0.46  thf(fact_247_union__fold__mset__add__mset,axiom,
% 0.29/0.46      ! [A: $tType] :
% 0.29/0.46        ( ( plus_plus @ ( multiset @ A ) )
% 0.29/0.46        = ( fold_mset @ A @ ( multiset @ A ) @ ( add_mset @ A ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % union_fold_mset_add_mset
% 0.29/0.46  thf(fact_248_diff__single__trivial,axiom,
% 0.29/0.46      ! [A: $tType,X: A,M: multiset @ A] :
% 0.29/0.46        ( ~ ( member @ A @ X @ ( set_mset @ A @ M ) )
% 0.29/0.46       => ( ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46          = M ) ) ).
% 0.29/0.46  
% 0.29/0.46  % diff_single_trivial
% 0.29/0.46  thf(fact_249_diff__single__eq__union,axiom,
% 0.29/0.46      ! [A: $tType,X: A,M: multiset @ A,N: multiset @ A] :
% 0.29/0.46        ( ( member @ A @ X @ ( set_mset @ A @ M ) )
% 0.29/0.46       => ( ( ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46            = N )
% 0.29/0.46          = ( M
% 0.29/0.46            = ( add_mset @ A @ X @ N ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % diff_single_eq_union
% 0.29/0.46  thf(fact_250_multi__drop__mem__not__eq,axiom,
% 0.29/0.46      ! [A: $tType,C3: A,B5: multiset @ A] :
% 0.29/0.46        ( ( member @ A @ C3 @ ( set_mset @ A @ B5 ) )
% 0.29/0.46       => ( ( minus_minus @ ( multiset @ A ) @ B5 @ ( add_mset @ A @ C3 @ ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46         != B5 ) ) ).
% 0.29/0.46  
% 0.29/0.46  % multi_drop_mem_not_eq
% 0.29/0.46  thf(fact_251_add__mset__remove__trivial__If,axiom,
% 0.29/0.46      ! [A: $tType,A2: A,N: multiset @ A] :
% 0.29/0.46        ( ( ( member @ A @ A2 @ ( set_mset @ A @ N ) )
% 0.29/0.46         => ( ( add_mset @ A @ A2 @ ( minus_minus @ ( multiset @ A ) @ N @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) )
% 0.29/0.46            = N ) )
% 0.29/0.46        & ( ~ ( member @ A @ A2 @ ( set_mset @ A @ N ) )
% 0.29/0.46         => ( ( add_mset @ A @ A2 @ ( minus_minus @ ( multiset @ A ) @ N @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) )
% 0.29/0.46            = ( add_mset @ A @ A2 @ N ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % add_mset_remove_trivial_If
% 0.29/0.46  thf(fact_252_add__mset__remove__trivial__eq,axiom,
% 0.29/0.46      ! [A: $tType,N: multiset @ A,A2: A] :
% 0.29/0.46        ( ( N
% 0.29/0.46          = ( add_mset @ A @ A2 @ ( minus_minus @ ( multiset @ A ) @ N @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) )
% 0.29/0.46        = ( member @ A @ A2 @ ( set_mset @ A @ N ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % add_mset_remove_trivial_eq
% 0.29/0.46  thf(fact_253_multiset__add__sub__el__shuffle,axiom,
% 0.29/0.46      ! [A: $tType,C3: A,B5: multiset @ A,B2: A] :
% 0.29/0.46        ( ( member @ A @ C3 @ ( set_mset @ A @ B5 ) )
% 0.29/0.46       => ( ( B2 != C3 )
% 0.29/0.46         => ( ( add_mset @ A @ B2 @ ( minus_minus @ ( multiset @ A ) @ B5 @ ( add_mset @ A @ C3 @ ( zero_zero @ ( multiset @ A ) ) ) ) )
% 0.29/0.46            = ( minus_minus @ ( multiset @ A ) @ ( add_mset @ A @ B2 @ B5 ) @ ( add_mset @ A @ C3 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % multiset_add_sub_el_shuffle
% 0.29/0.46  thf(fact_254_more__than__one__mset__mset__diff,axiom,
% 0.29/0.46      ! [A: $tType,A2: A,M: multiset @ A] :
% 0.29/0.46        ( ( member @ A @ A2 @ ( set_mset @ A @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) )
% 0.29/0.46       => ( ( set_mset @ A @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) )
% 0.29/0.46          = ( set_mset @ A @ M ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % more_than_one_mset_mset_diff
% 0.29/0.46  thf(fact_255_diff__union__single__conv,axiom,
% 0.29/0.46      ! [A: $tType,A2: A,J3: multiset @ A,I4: multiset @ A] :
% 0.29/0.46        ( ( member @ A @ A2 @ ( set_mset @ A @ J3 ) )
% 0.29/0.46       => ( ( minus_minus @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ I4 @ J3 ) @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) )
% 0.29/0.46          = ( plus_plus @ ( multiset @ A ) @ I4 @ ( minus_minus @ ( multiset @ A ) @ J3 @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % diff_union_single_conv
% 0.29/0.46  
% 0.29/0.46  % Type constructors (31)
% 0.29/0.46  thf(tcon_Product__Type_Oprod___Orderings_Opreorder,axiom,
% 0.29/0.46      ! [A10: $tType,A11: $tType] :
% 0.29/0.46        ( ( ( preorder @ A10 )
% 0.29/0.46          & ( preorder @ A11 ) )
% 0.29/0.46       => ( preorder @ ( product_prod @ A10 @ A11 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Multiset_Omultiset___Orderings_Opreorder_1,axiom,
% 0.29/0.46      ! [A10: $tType] :
% 0.29/0.46        ( ( preorder @ A10 )
% 0.29/0.46       => ( preorder @ ( multiset @ A10 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_HOL_Obool___Orderings_Opreorder_2,axiom,
% 0.29/0.46      preorder @ $o ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Set_Oset___Orderings_Opreorder_3,axiom,
% 0.29/0.46      ! [A10: $tType] : ( preorder @ ( set @ A10 ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_fun___Orderings_Opreorder_4,axiom,
% 0.29/0.46      ! [A10: $tType,A11: $tType] :
% 0.29/0.46        ( ( preorder @ A11 )
% 0.29/0.46       => ( preorder @ ( A10 > A11 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_fun___Orderings_Otop,axiom,
% 0.29/0.46      ! [A10: $tType,A11: $tType] :
% 0.29/0.46        ( ( top @ A11 )
% 0.29/0.46       => ( top @ ( A10 > A11 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_fun___Orderings_Oord,axiom,
% 0.29/0.46      ! [A10: $tType,A11: $tType] :
% 0.29/0.46        ( ( ord @ A11 )
% 0.29/0.46       => ( ord @ ( A10 > A11 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_fun___Groups_Ominus,axiom,
% 0.29/0.46      ! [A10: $tType,A11: $tType] :
% 0.29/0.46        ( ( minus @ A11 )
% 0.29/0.46       => ( minus @ ( A10 > A11 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Set_Oset___Groups_Ocomm__monoid__add,axiom,
% 0.29/0.46      ! [A10: $tType] :
% 0.29/0.46        ( ( comm_monoid_add @ A10 )
% 0.29/0.46       => ( comm_monoid_add @ ( set @ A10 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Set_Oset___Orderings_Otop_5,axiom,
% 0.29/0.46      ! [A10: $tType] : ( top @ ( set @ A10 ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Set_Oset___Orderings_Oord_6,axiom,
% 0.29/0.46      ! [A10: $tType] : ( ord @ ( set @ A10 ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Set_Oset___Groups_Ominus_7,axiom,
% 0.29/0.46      ! [A10: $tType] : ( minus @ ( set @ A10 ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Set_Oset___Groups_Ozero,axiom,
% 0.29/0.46      ! [A10: $tType] :
% 0.29/0.46        ( ( zero @ A10 )
% 0.29/0.46       => ( zero @ ( set @ A10 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Set_Oset___Groups_Oplus,axiom,
% 0.29/0.46      ! [A10: $tType] :
% 0.29/0.46        ( ( plus @ A10 )
% 0.29/0.46       => ( plus @ ( set @ A10 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_HOL_Obool___Orderings_Olinorder,axiom,
% 0.29/0.46      linorder @ $o ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_HOL_Obool___Orderings_Otop_8,axiom,
% 0.29/0.46      top @ $o ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_HOL_Obool___Orderings_Oord_9,axiom,
% 0.29/0.46      ord @ $o ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_HOL_Obool___Groups_Ominus_10,axiom,
% 0.29/0.46      minus @ $o ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Multiset_Omultiset___Groups_Ocomm__monoid__add_11,axiom,
% 0.29/0.46      ! [A10: $tType] : ( comm_monoid_add @ ( multiset @ A10 ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Multiset_Omultiset___Orderings_Oord_12,axiom,
% 0.29/0.46      ! [A10: $tType] :
% 0.29/0.46        ( ( preorder @ A10 )
% 0.29/0.46       => ( ord @ ( multiset @ A10 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Multiset_Omultiset___Groups_Ominus_13,axiom,
% 0.29/0.46      ! [A10: $tType] : ( minus @ ( multiset @ A10 ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Multiset_Omultiset___Groups_Ozero_14,axiom,
% 0.29/0.46      ! [A10: $tType] : ( zero @ ( multiset @ A10 ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Multiset_Omultiset___Groups_Oplus_15,axiom,
% 0.29/0.46      ! [A10: $tType] : ( plus @ ( multiset @ A10 ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Product__Type_Oprod___Real__Vector__Spaces_Oreal__vector,axiom,
% 0.29/0.46      ! [A10: $tType,A11: $tType] :
% 0.29/0.46        ( ( ( real_V1076094709vector @ A10 )
% 0.29/0.46          & ( real_V1076094709vector @ A11 ) )
% 0.29/0.46       => ( real_V1076094709vector @ ( product_prod @ A10 @ A11 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Product__Type_Oprod___Groups_Ocomm__monoid__add_16,axiom,
% 0.29/0.46      ! [A10: $tType,A11: $tType] :
% 0.29/0.46        ( ( ( comm_monoid_add @ A10 )
% 0.29/0.46          & ( comm_monoid_add @ A11 ) )
% 0.29/0.46       => ( comm_monoid_add @ ( product_prod @ A10 @ A11 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Product__Type_Oprod___Groups_Oab__group__add,axiom,
% 0.29/0.46      ! [A10: $tType,A11: $tType] :
% 0.29/0.46        ( ( ( ab_group_add @ A10 )
% 0.29/0.46          & ( ab_group_add @ A11 ) )
% 0.29/0.46       => ( ab_group_add @ ( product_prod @ A10 @ A11 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Product__Type_Oprod___Orderings_Otop_17,axiom,
% 0.29/0.46      ! [A10: $tType,A11: $tType] :
% 0.29/0.46        ( ( ( top @ A10 )
% 0.29/0.46          & ( top @ A11 ) )
% 0.29/0.46       => ( top @ ( product_prod @ A10 @ A11 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Product__Type_Oprod___Orderings_Oord_18,axiom,
% 0.29/0.46      ! [A10: $tType,A11: $tType] :
% 0.29/0.46        ( ( ( ord @ A10 )
% 0.29/0.46          & ( ord @ A11 ) )
% 0.29/0.46       => ( ord @ ( product_prod @ A10 @ A11 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Product__Type_Oprod___Groups_Ominus_19,axiom,
% 0.29/0.46      ! [A10: $tType,A11: $tType] :
% 0.29/0.46        ( ( ( minus @ A10 )
% 0.29/0.46          & ( minus @ A11 ) )
% 0.29/0.46       => ( minus @ ( product_prod @ A10 @ A11 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Product__Type_Oprod___Groups_Ozero_20,axiom,
% 0.29/0.46      ! [A10: $tType,A11: $tType] :
% 0.29/0.46        ( ( ( zero @ A10 )
% 0.29/0.46          & ( zero @ A11 ) )
% 0.29/0.46       => ( zero @ ( product_prod @ A10 @ A11 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  thf(tcon_Product__Type_Oprod___Groups_Oplus_21,axiom,
% 0.29/0.46      ! [A10: $tType,A11: $tType] :
% 0.29/0.46        ( ( ( plus @ A10 )
% 0.29/0.46          & ( plus @ A11 ) )
% 0.29/0.46       => ( plus @ ( product_prod @ A10 @ A11 ) ) ) ).
% 0.29/0.46  
% 0.29/0.46  % Conjectures (4)
% 0.29/0.46  thf(conj_0,hypothesis,
% 0.29/0.46      member @ a @ x @ carrier ).
% 0.29/0.46  
% 0.29/0.46  thf(conj_1,hypothesis,
% 0.29/0.46      member @ a @ y @ carrier ).
% 0.29/0.46  
% 0.29/0.46  thf(conj_2,hypothesis,
% 0.29/0.46      x != y ).
% 0.29/0.46  
% 0.29/0.46  thf(conj_3,conjecture,
% 0.29/0.46      ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ x @ y ) @ relation )
% 0.29/0.46      | ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ y @ x ) @ relation ) ) ).
% 0.29/0.46  
% 0.29/0.46  %------------------------------------------------------------------------------
% 0.29/0.46  ------------------------
% 2.87/1.54  ---- Embedded in THF ---
% 2.87/1.54  %%% This output was generated by embedproblem, version 1.9.5 (library version 1.9).
% 2.87/1.54  %%% Generated on Tue Feb 24 08:27:57 EST 2026
% 2.87/1.54  %%% using '$$dhol' embedding, version 1.3.0.
% 2.87/1.54  %%% Logic specification used:
% 2.87/1.54  %%% thf(spec, logic, $$dhol).
% 2.87/1.54  
% 2.87/1.54  % SZS output start ListOfTHF for /export/starexec/sandbox2/tmp/tmp.E8SE4n1R5p/DTF2DTF9149.p
% 2.87/1.54  thf(ty_t_Product__Type_Oprod, type, product_prod: ($tType > ($tType > $tType))).
% 2.87/1.54  thf(ty_t_Multiset_Omultiset, type, multiset: ($tType > $tType)).
% 2.87/1.54  thf(ty_t_Set_Oset, type, set: ($tType > $tType)).
% 2.87/1.54  thf(ty_tf_a, type, a: $tType).
% 2.87/1.54  thf(sy_cl_Orderings_Opreorder, type, preorder: (!> [A:$tType]: ($o))).
% 2.87/1.54  thf(sy_cl_HOL_Otype, type, type: (!> [A:$tType]: ($o))).
% 2.87/1.54  thf(sy_cl_Groups_Oplus, type, plus: (!> [A:$tType]: ($o))).
% 2.87/1.54  thf(sy_cl_Groups_Ozero, type, zero: (!> [A:$tType]: ($o))).
% 2.87/1.54  thf(sy_cl_Groups_Ominus, type, minus: (!> [A:$tType]: ($o))).
% 2.87/1.54  thf(sy_cl_Orderings_Oord, type, ord: (!> [A:$tType]: ($o))).
% 2.87/1.54  thf(sy_cl_Orderings_Otop, type, top: (!> [A:$tType]: ($o))).
% 2.87/1.54  thf(sy_cl_Orderings_Olinorder, type, linorder: (!> [A:$tType]: ($o))).
% 2.87/1.54  thf(sy_cl_Groups_Oab__group__add, type, ab_group_add: (!> [A:$tType]: ($o))).
% 2.87/1.54  thf(sy_cl_Groups_Ocomm__monoid__add, type, comm_monoid_add: (!> [A:$tType]: ($o))).
% 2.87/1.54  thf(sy_cl_Real__Vector__Spaces_Oreal__vector, type, real_V1076094709vector: (!> [A:$tType]: ($o))).
% 2.87/1.54  thf(sy_c_BNF__Cardinal__Order__Relation_OrelChain, type, bNF_Ca1785829860lChain: (!> [A:$tType,B:$tType]: (((set @ ((product_prod @ A) @ A)) > ((A > B) > $o))))).
% 2.87/1.54  thf(sy_c_Groups_Ominus__class_Ominus, type, minus_minus: (!> [A:$tType]: ((A > (A > A))))).
% 2.87/1.54  thf(sy_c_Groups_Oplus__class_Oplus, type, plus_plus: (!> [A:$tType]: ((A > (A > A))))).
% 2.87/1.54  thf(sy_c_Groups_Ozero__class_Ozero, type, zero_zero: (!> [A:$tType]: (A))).
% 2.87/1.54  thf(sy_c_Multiset_Oadd__mset, type, add_mset: (!> [A:$tType]: ((A > ((multiset @ A) > (multiset @ A)))))).
% 2.87/1.54  thf(sy_c_Multiset_Ocomm__monoid__add_Osum__mset, type, comm_monoid_sum_mset: (!> [A:$tType]: (((A > (A > A)) > (A > ((multiset @ A) > A)))))).
% 2.87/1.54  thf(sy_c_Multiset_Ofold__mset, type, fold_mset: (!> [A:$tType,B:$tType]: (((A > (B > B)) > (B > ((multiset @ A) > B)))))).
% 2.87/1.54  thf(sy_c_Multiset_Ois__empty, type, is_empty: (!> [A:$tType]: (((multiset @ A) > $o)))).
% 2.87/1.54  thf(sy_c_Multiset_Omult, type, mult: (!> [A:$tType]: (((set @ ((product_prod @ A) @ A)) > (set @ ((product_prod @ (multiset @ A)) @ (multiset @ A))))))).
% 2.87/1.54  thf(sy_c_Multiset_Omult1, type, mult1: (!> [A:$tType]: (((set @ ((product_prod @ A) @ A)) > (set @ ((product_prod @ (multiset @ A)) @ (multiset @ A))))))).
% 2.87/1.54  thf(sy_c_Multiset_Omultp, type, multp: (!> [A:$tType]: (((A > (A > $o)) > ((multiset @ A) > ((multiset @ A) > $o)))))).
% 2.87/1.54  thf(sy_c_Multiset_Oset__mset, type, set_mset: (!> [A:$tType]: (((multiset @ A) > (set @ A))))).
% 2.87/1.54  thf(sy_c_Order__Relation_Opreorder__on, type, order_preorder_on: (!> [A:$tType]: (((set @ A) > ((set @ ((product_prod @ A) @ A)) > $o))))).
% 2.87/1.54  thf(sy_c_Order__Relation_Ostrict__linear__order__on, type, order_215145569der_on: (!> [A:$tType]: (((set @ A) > ((set @ ((product_prod @ A) @ A)) > $o))))).
% 2.87/1.54  thf(sy_c_Orderings_Oord__class_Oless__eq, type, ord_less_eq: (!> [A:$tType]: ((A > (A > $o))))).
% 2.87/1.54  thf(sy_c_Orderings_Otop__class_Otop, type, top_top: (!> [A:$tType]: (A))).
% 2.87/1.54  thf(sy_c_Preferences__Mirabelle__stygcjuplb_Oat__least__as__good, type, prefer310429814s_good: (!> [A:$tType]: ((A > ((set @ A) > ((set @ ((product_prod @ A) @ A)) > (set @ A))))))).
% 2.87/1.54  thf(sy_c_Preferences__Mirabelle__stygcjuplb_Opreference, type, prefer199794634erence: (!> [A:$tType]: (((set @ A) > ((set @ ((product_prod @ A) @ A)) > $o))))).
% 2.87/1.54  thf(sy_c_Preferences__Mirabelle__stygcjuplb_Orational__preference, type, prefer1997167224erence: (!> [A:$tType]: (((set @ A) > ((set @ ((product_prod @ A) @ A)) > $o))))).
% 2.87/1.54  thf(sy_c_Preferences__Mirabelle__stygcjuplb_Orational__preference__axioms, type, prefer1801827867axioms: (!> [A:$tType]: (((set @ A) > ((set @ ((product_prod @ A) @ A)) > $o))))).
% 2.87/1.54  thf(sy_c_Product__Type_OPair, type, product_Pair: (!> [A:$tType,B:$tType]: ((A > (B > ((product_prod @ A) @ B)))))).
% 2.87/1.54  thf(sy_c_Product__Type_Ocurry, type, product_curry: (!> [A:$tType,B:$tType,C:$tType]: (((((product_prod @ A) @ B) > C) > (A > (B > C)))))).
% 2.87/1.54  thf(sy_c_Product__Type_Ointernal__case__prod, type, produc2004651681e_prod: (!> [A:$tType,B:$tType,C:$tType]: (((A > (B > C)) > (((product_prod @ A) @ B) > C))))).
% 2.87/1.54  thf(sy_c_Product__Type_Omap__prod, type, product_map_prod: (!> [A:$tType,C:$tType,B:$tType,D:$tType]: (((A > C) > ((B > D) > (((product_prod @ A) @ B) > ((product_prod @ C) @ D))))))).
% 2.87/1.54  thf(sy_c_Product__Type_Oold_Obool_Orec__bool, type, product_rec_bool: (!> [T:$tType]: ((T > (T > ($o > T)))))).
% 2.87/1.54  thf(sy_c_Product__Type_Oold_Oprod_Orec__prod, type, product_rec_prod: (!> [A:$tType,B:$tType,T:$tType]: (((A > (B > T)) > (((product_prod @ A) @ B) > T))))).
% 2.87/1.54  thf(sy_c_Product__Type_Oprod_Ocase__prod, type, product_case_prod: (!> [A:$tType,B:$tType,C:$tType]: (((A > (B > C)) > (((product_prod @ A) @ B) > C))))).
% 2.87/1.54  thf(sy_c_Product__Type_Oprod_Ofst, type, product_fst: (!> [A:$tType,B:$tType]: ((((product_prod @ A) @ B) > A)))).
% 2.87/1.54  thf(sy_c_Product__Type_Oprod_Osnd, type, product_snd: (!> [A:$tType,B:$tType]: ((((product_prod @ A) @ B) > B)))).
% 2.87/1.54  thf(sy_c_Product__Type_Oprod_Oswap, type, product_swap: (!> [A:$tType,B:$tType]: ((((product_prod @ A) @ B) > ((product_prod @ B) @ A))))).
% 2.87/1.54  thf(sy_c_Product__Type_Oscomp, type, product_scomp: (!> [A:$tType,B:$tType,C:$tType,D:$tType]: (((A > ((product_prod @ B) @ C)) > ((B > (C > D)) > (A > D)))))).
% 2.87/1.54  thf(sy_c_Relation_Oasym, type, asym: (!> [A:$tType]: (((set @ ((product_prod @ A) @ A)) > $o)))).
% 2.87/1.54  thf(sy_c_Relation_Oinv__image, type, inv_image: (!> [B:$tType,A:$tType]: (((set @ ((product_prod @ B) @ B)) > ((A > B) > (set @ ((product_prod @ A) @ A))))))).
% 2.87/1.54  thf(sy_c_Relation_Oinv__imagep, type, inv_imagep: (!> [B:$tType,A:$tType]: (((B > (B > $o)) > ((A > B) > (A > (A > $o))))))).
% 2.87/1.54  thf(sy_c_Relation_Oirrefl, type, irrefl: (!> [A:$tType]: (((set @ ((product_prod @ A) @ A)) > $o)))).
% 2.87/1.54  thf(sy_c_Relation_Orefl__on, type, refl_on: (!> [A:$tType]: (((set @ A) > ((set @ ((product_prod @ A) @ A)) > $o))))).
% 2.87/1.54  thf(sy_c_Relation_Ototal__on, type, total_on: (!> [A:$tType]: (((set @ A) > ((set @ ((product_prod @ A) @ A)) > $o))))).
% 2.87/1.54  thf(sy_c_Relation_Otrans, type, trans: (!> [A:$tType]: (((set @ ((product_prod @ A) @ A)) > $o)))).
% 2.87/1.54  thf(sy_c_Set_OCollect, type, collect: (!> [A:$tType]: (((A > $o) > (set @ A))))).
% 2.87/1.54  thf(sy_c_Set_Oimage, type, image: (!> [A:$tType,B:$tType]: (((A > B) > ((set @ A) > (set @ B)))))).
% 2.87/1.54  thf(sy_c_Wellfounded_Olex__prod, type, lex_prod: (!> [A:$tType,B:$tType]: (((set @ ((product_prod @ A) @ A)) > ((set @ ((product_prod @ B) @ B)) > (set @ ((product_prod @ ((product_prod @ A) @ B)) @ ((product_prod @ A) @ B)))))))).
% 2.87/1.54  thf(sy_c_Wfrec_Osame__fst, type, same_fst: (!> [A:$tType,B:$tType]: (((A > $o) > ((A > (set @ ((product_prod @ B) @ B))) > (set @ ((product_prod @ ((product_prod @ A) @ B)) @ ((product_prod @ A) @ B)))))))).
% 2.87/1.54  thf(sy_c_member, type, member: (!> [A:$tType]: ((A > ((set @ A) > $o))))).
% 2.87/1.54  thf(sy_v_carrier, type, carrier: (set @ a)).
% 2.87/1.54  thf(sy_v_relation, type, relation: (set @ ((product_prod @ a) @ a))).
% 2.87/1.54  thf(sy_v_x, type, x: a).
% 2.87/1.54  thf(sy_v_y, type, y: a).
% 2.87/1.54  thf(fact_0_indiff__trans, axiom, (! [X:a,Y:a,Z:a]: ((((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ X) @ Y)) @ relation) & (((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ Y) @ X)) @ relation)) => (((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ Y) @ Z)) @ relation) & (((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ Z) @ Y)) @ relation)) => ((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ X) @ Z)) @ relation) & (((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ Z) @ X)) @ relation))))))).
% 2.87/1.54  thf(fact_1_strict__trans, axiom, (! [X:a,Y:a,Z:a]: ((((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ X) @ Y)) @ relation) & (~ ((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ Y) @ X)) @ relation)))) => (((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ Y) @ Z)) @ relation) & (~ ((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ Z) @ Y)) @ relation)))) => ((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ X) @ Z)) @ relation) & (~ ((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ Z) @ X)) @ relation))))))))).
% 2.87/1.54  thf(fact_2_rational__preference__axioms, axiom, (((prefer1997167224erence @ a) @ carrier) @ relation)).
% 2.87/1.54  thf(fact_3_compl, axiom, (! [X2:a]: (((((member @ a) @ X2) @ carrier) => (! [Xa:a]: (((((member @ a) @ Xa) @ carrier) => ((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ X2) @ Xa)) @ relation) | (((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ Xa) @ X2)) @ relation))))))))).
% 2.87/1.54  thf(fact_4_not__outside, axiom, (! [X:a,Y:a]: (((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ X) @ Y)) @ relation) => (((member @ a) @ X) @ carrier))))).
% 2.87/1.54  thf(fact_5_strict__not__refl__weak, axiom, (! [X:a,Y:a]: ((((((member @ a) @ X) @ carrier) & (((member @ a) @ Y) @ carrier)) => ((~ ((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ Y) @ X)) @ relation))) = ((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ X) @ Y)) @ relation) & (~ ((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ Y) @ X)) @ relation))))))))).
% 2.87/1.54  thf(fact_6_preference__axioms, axiom, (((prefer199794634erence @ a) @ carrier) @ relation)).
% 2.87/1.54  thf(fact_7_trans__refl, axiom, (((order_preorder_on @ a) @ carrier) @ relation)).
% 2.87/1.54  thf(fact_8_total, axiom, (((total_on @ a) @ carrier) @ relation)).
% 2.87/1.54  thf(fact_9_reflexivity, axiom, (((refl_on @ a) @ carrier) @ relation)).
% 2.87/1.54  thf(fact_10_prod_Oinject, axiom, (! [A:$tType,B:$tType,X1:A,X22:B,Y1:A,Y2:B]: (((((((product_Pair @ A) @ B) @ X1) @ X22) = ((((product_Pair @ A) @ B) @ Y1) @ Y2)) = ((X1 = Y1) & (X22 = Y2)))))).
% 2.87/1.54  thf(fact_11_old_Oprod_Oinject, axiom, (! [A:$tType,B:$tType,A2:A,B2:B,A3:A,B3:B]: (((((((product_Pair @ A) @ B) @ A2) @ B2) = ((((product_Pair @ A) @ B) @ A3) @ B3)) = ((A2 = A3) & (B2 = B3)))))).
% 2.87/1.54  thf(fact_12_transitivity, axiom, ((trans @ a) @ relation)).
% 2.87/1.54  thf(fact_13_surj__pair, axiom, (! [A:$tType,B:$tType,P:((product_prod @ A) @ B)]: ((? [X3:A,Y3:B]: ((P = ((((product_Pair @ A) @ B) @ X3) @ Y3))))))).
% 2.87/1.54  thf(fact_14_prod__cases, axiom, (! [B:$tType,A:$tType,P2:(((product_prod @ A) @ B) > $o),P:((product_prod @ A) @ B)]: (((! [A4:A,B4:B]: ((P2 @ ((((product_Pair @ A) @ B) @ A4) @ B4)))) => (P2 @ P))))).
% 2.87/1.54  thf(fact_15_Pair__inject, axiom, (! [A:$tType,B:$tType,A2:A,B2:B,A3:A,B3:B]: (((((((product_Pair @ A) @ B) @ A2) @ B2) = ((((product_Pair @ A) @ B) @ A3) @ B3)) => (~ (((A2 = A3) => (B2 != B3)))))))).
% 2.87/1.54  thf(fact_16_prod__cases3, axiom, (! [A:$tType,B:$tType,C:$tType,Y:((product_prod @ A) @ ((product_prod @ B) @ C))]: ((~ ((! [A4:A,B4:B,C2:C]: ((Y != ((((product_Pair @ A) @ ((product_prod @ B) @ C)) @ A4) @ ((((product_Pair @ B) @ C) @ B4) @ C2)))))))))).
% 2.87/1.54  thf(fact_17_prod__cases4, axiom, (! [A:$tType,B:$tType,C:$tType,D:$tType,Y:((product_prod @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ D)))]: ((~ ((! [A4:A,B4:B,C2:C,D2:D]: ((Y != ((((product_Pair @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ D))) @ A4) @ ((((product_Pair @ B) @ ((product_prod @ C) @ D)) @ B4) @ ((((product_Pair @ C) @ D) @ C2) @ D2))))))))))).
% 2.87/1.54  thf(fact_18_prod__cases5, axiom, (! [A:$tType,B:$tType,C:$tType,D:$tType,E:$tType,Y:((product_prod @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ E))))]: ((~ ((! [A4:A,B4:B,C2:C,D2:D,E2:E]: ((Y != ((((product_Pair @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ E)))) @ A4) @ ((((product_Pair @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ E))) @ B4) @ ((((product_Pair @ C) @ ((product_prod @ D) @ E)) @ C2) @ ((((product_Pair @ D) @ E) @ D2) @ E2)))))))))))).
% 2.87/1.54  thf(fact_19_rational__preference_Oaxioms_I1_J, axiom, (! [A:$tType,Carrier:(set @ A),Relation:(set @ ((product_prod @ A) @ A))]: (((((prefer1997167224erence @ A) @ Carrier) @ Relation) => (((prefer199794634erence @ A) @ Carrier) @ Relation))))).
% 2.87/1.54  thf(fact_20_preference_Otrans__refl, axiom, (! [A:$tType,Carrier:(set @ A),Relation:(set @ ((product_prod @ A) @ A))]: (((((prefer199794634erence @ A) @ Carrier) @ Relation) => (((order_preorder_on @ A) @ Carrier) @ Relation))))).
% 2.87/1.54  thf(fact_21_preference_Oreflexivity, axiom, (! [A:$tType,Carrier:(set @ A),Relation:(set @ ((product_prod @ A) @ A))]: (((((prefer199794634erence @ A) @ Carrier) @ Relation) => (((refl_on @ A) @ Carrier) @ Relation))))).
% 2.87/1.54  thf(fact_22_preference_Otransitivity, axiom, (! [A:$tType,Carrier:(set @ A),Relation:(set @ ((product_prod @ A) @ A))]: (((((prefer199794634erence @ A) @ Carrier) @ Relation) => ((trans @ A) @ Relation))))).
% 2.87/1.54  thf(fact_23_rational__preference_Ototal, axiom, (! [A:$tType,Carrier:(set @ A),Relation:(set @ ((product_prod @ A) @ A))]: (((((prefer1997167224erence @ A) @ Carrier) @ Relation) => (((total_on @ A) @ Carrier) @ Relation))))).
% 2.87/1.54  thf(fact_24_preference_Ointro, axiom, (! [A:$tType,Relation:(set @ ((product_prod @ A) @ A)),Carrier:(set @ A)]: (((! [X3:A,Y3:A]: (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X3) @ Y3)) @ Relation) => (((member @ A) @ X3) @ Carrier)))) => ((! [X3:A,Y3:A]: (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X3) @ Y3)) @ Relation) => (((member @ A) @ Y3) @ Carrier)))) => ((((order_preorder_on @ A) @ Carrier) @ Relation) => (((prefer199794634erence @ A) @ Carrier) @ Relation))))))).
% 2.87/1.54  thf(fact_25_preference__def, axiom, (! [A:$tType]: (((prefer199794634erence @ A) = (^ [Carrier2:(set @ A),Relation2:(set @ ((product_prod @ A) @ A))]: (((! [X4:A,Y4:A]: (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X4) @ Y4)) @ Relation2) => (((member @ A) @ X4) @ Carrier2)))) & ((! [X4:A,Y4:A]: (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X4) @ Y4)) @ Relation2) => (((member @ A) @ Y4) @ Carrier2)))) & (((order_preorder_on @ A) @ Carrier2) @ Relation2))))))))).
% 2.87/1.54  thf(fact_26_preference_Oindiff__trans, axiom, (! [A:$tType,Carrier:(set @ A),Relation:(set @ ((product_prod @ A) @ A)),X:A,Y:A,Z:A]: (((((prefer199794634erence @ A) @ Carrier) @ Relation) => (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Y)) @ Relation) & (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y) @ X)) @ Relation)) => (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y) @ Z)) @ Relation) & (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Z) @ Y)) @ Relation)) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Z)) @ Relation) & (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Z) @ X)) @ Relation)))))))).
% 2.87/1.54  thf(fact_27_preference_Onot__outside, axiom, (! [A:$tType,Carrier:(set @ A),Relation:(set @ ((product_prod @ A) @ A)),X:A,Y:A]: (((((prefer199794634erence @ A) @ Carrier) @ Relation) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Y)) @ Relation) => (((member @ A) @ X) @ Carrier)))))).
% 2.87/1.54  thf(fact_28_rational__preference_Ostrict__not__refl__weak, axiom, (! [A:$tType,Carrier:(set @ A),Relation:(set @ ((product_prod @ A) @ A)),X:A,Y:A]: (((((prefer1997167224erence @ A) @ Carrier) @ Relation) => (((((member @ A) @ X) @ Carrier) & (((member @ A) @ Y) @ Carrier)) => ((~ ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y) @ X)) @ Relation))) = ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Y)) @ Relation) & (~ ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y) @ X)) @ Relation)))))))))).
% 2.87/1.54  thf(fact_29_rational__preference_Ostrict__trans, axiom, (! [A:$tType,Carrier:(set @ A),Relation:(set @ ((product_prod @ A) @ A)),X:A,Y:A,Z:A]: (((((prefer1997167224erence @ A) @ Carrier) @ Relation) => (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Y)) @ Relation) & (~ ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y) @ X)) @ Relation)))) => (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y) @ Z)) @ Relation) & (~ ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Z) @ Y)) @ Relation)))) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Z)) @ Relation) & (~ ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Z) @ X)) @ Relation)))))))))).
% 2.87/1.54  thf(fact_30_rational__preference_Ocompl, axiom, (! [A:$tType,Carrier:(set @ A),Relation:(set @ ((product_prod @ A) @ A))]: (((((prefer1997167224erence @ A) @ Carrier) @ Relation) => (! [X2:A]: (((((member @ A) @ X2) @ Carrier) => (! [Xa:A]: (((((member @ A) @ Xa) @ Carrier) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X2) @ Xa)) @ Relation) | (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Xa) @ X2)) @ Relation)))))))))))).
% 2.87/1.54  thf(fact_31_old_Oprod_Oinducts, axiom, (! [B:$tType,A:$tType,P2:(((product_prod @ A) @ B) > $o),Prod:((product_prod @ A) @ B)]: (((! [A4:A,B4:B]: ((P2 @ ((((product_Pair @ A) @ B) @ A4) @ B4)))) => (P2 @ Prod))))).
% 2.87/1.54  thf(fact_32_old_Oprod_Oexhaust, axiom, (! [A:$tType,B:$tType,Y:((product_prod @ A) @ B)]: ((~ ((! [A4:A,B4:B]: ((Y != ((((product_Pair @ A) @ B) @ A4) @ B4))))))))).
% 2.87/1.54  thf(fact_33_prod__induct7, axiom, (! [G:$tType,F:$tType,E:$tType,D:$tType,C:$tType,B:$tType,A:$tType,P2:(((product_prod @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ ((product_prod @ F) @ G)))))) > $o),X:((product_prod @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ ((product_prod @ F) @ G))))))]: (((! [A4:A,B4:B,C2:C,D2:D,E2:E,F2:F,G2:G]: ((P2 @ ((((product_Pair @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ ((product_prod @ F) @ G)))))) @ A4) @ ((((product_Pair @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ ((product_prod @ F) @ G))))) @ B4) @ ((((product_Pair @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ ((product_prod @ F) @ G)))) @ C2) @ ((((product_Pair @ D) @ ((product_prod @ E) @ ((product_prod @ F) @ G))) @ D2) @ ((((product_Pair @ E) @ ((product_prod @ F) @ G)) @ E2) @ ((((product_Pair @ F) @ G) @ F2) @ G2))))))))) => (P2 @ X))))).
% 2.87/1.54  thf(fact_34_prod__induct6, axiom, (! [F:$tType,E:$tType,D:$tType,C:$tType,B:$tType,A:$tType,P2:(((product_prod @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ F))))) > $o),X:((product_prod @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ F)))))]: (((! [A4:A,B4:B,C2:C,D2:D,E2:E,F2:F]: ((P2 @ ((((product_Pair @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ F))))) @ A4) @ ((((product_Pair @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ F)))) @ B4) @ ((((product_Pair @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ F))) @ C2) @ ((((product_Pair @ D) @ ((product_prod @ E) @ F)) @ D2) @ ((((product_Pair @ E) @ F) @ E2) @ F2)))))))) => (P2 @ X))))).
% 2.87/1.54  thf(fact_35_prod__induct5, axiom, (! [E:$tType,D:$tType,C:$tType,B:$tType,A:$tType,P2:(((product_prod @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ E)))) > $o),X:((product_prod @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ E))))]: (((! [A4:A,B4:B,C2:C,D2:D,E2:E]: ((P2 @ ((((product_Pair @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ E)))) @ A4) @ ((((product_Pair @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ E))) @ B4) @ ((((product_Pair @ C) @ ((product_prod @ D) @ E)) @ C2) @ ((((product_Pair @ D) @ E) @ D2) @ E2))))))) => (P2 @ X))))).
% 2.87/1.54  thf(fact_36_prod__induct4, axiom, (! [D:$tType,C:$tType,B:$tType,A:$tType,P2:(((product_prod @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ D))) > $o),X:((product_prod @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ D)))]: (((! [A4:A,B4:B,C2:C,D2:D]: ((P2 @ ((((product_Pair @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ D))) @ A4) @ ((((product_Pair @ B) @ ((product_prod @ C) @ D)) @ B4) @ ((((product_Pair @ C) @ D) @ C2) @ D2)))))) => (P2 @ X))))).
% 2.87/1.54  thf(fact_37_prod__induct3, axiom, (! [C:$tType,B:$tType,A:$tType,P2:(((product_prod @ A) @ ((product_prod @ B) @ C)) > $o),X:((product_prod @ A) @ ((product_prod @ B) @ C))]: (((! [A4:A,B4:B,C2:C]: ((P2 @ ((((product_Pair @ A) @ ((product_prod @ B) @ C)) @ A4) @ ((((product_Pair @ B) @ C) @ B4) @ C2))))) => (P2 @ X))))).
% 2.87/1.54  thf(fact_38_prod__cases7, axiom, (! [A:$tType,B:$tType,C:$tType,D:$tType,E:$tType,F:$tType,G:$tType,Y:((product_prod @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ ((product_prod @ F) @ G))))))]: ((~ ((! [A4:A,B4:B,C2:C,D2:D,E2:E,F2:F,G2:G]: ((Y != ((((product_Pair @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ ((product_prod @ F) @ G)))))) @ A4) @ ((((product_Pair @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ ((product_prod @ F) @ G))))) @ B4) @ ((((product_Pair @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ ((product_prod @ F) @ G)))) @ C2) @ ((((product_Pair @ D) @ ((product_prod @ E) @ ((product_prod @ F) @ G))) @ D2) @ ((((product_Pair @ E) @ ((product_prod @ F) @ G)) @ E2) @ ((((product_Pair @ F) @ G) @ F2) @ G2)))))))))))))).
% 2.87/1.54  thf(fact_39_prod__cases6, axiom, (! [A:$tType,B:$tType,C:$tType,D:$tType,E:$tType,F:$tType,Y:((product_prod @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ F)))))]: ((~ ((! [A4:A,B4:B,C2:C,D2:D,E2:E,F2:F]: ((Y != ((((product_Pair @ A) @ ((product_prod @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ F))))) @ A4) @ ((((product_Pair @ B) @ ((product_prod @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ F)))) @ B4) @ ((((product_Pair @ C) @ ((product_prod @ D) @ ((product_prod @ E) @ F))) @ C2) @ ((((product_Pair @ D) @ ((product_prod @ E) @ F)) @ D2) @ ((((product_Pair @ E) @ F) @ E2) @ F2))))))))))))).
% 2.87/1.54  thf(fact_40_preorder__on__def, axiom, (! [A:$tType]: (((order_preorder_on @ A) = (^ [A5:(set @ A),R:(set @ ((product_prod @ A) @ A))]: (((((refl_on @ A) @ A5) @ R) & ((trans @ A) @ R)))))))).
% 2.87/1.54  thf(fact_41_old_Oprod_Orec, axiom, (! [A:$tType,T:$tType,B:$tType,F1:(A > (B > T)),A2:A,B2:B]: (((((((product_rec_prod @ A) @ B) @ T) @ F1) @ ((((product_Pair @ A) @ B) @ A2) @ B2)) = ((F1 @ A2) @ B2))))).
% 2.87/1.54  thf(fact_42_total__on__def, axiom, (! [A:$tType]: (((total_on @ A) = (^ [A5:(set @ A),R:(set @ ((product_prod @ A) @ A))]: ((! [X4:A]: (((((member @ A) @ X4) @ A5) => (! [Y4:A]: (((((member @ A) @ Y4) @ A5) => ((X4 != Y4) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X4) @ Y4)) @ R) | (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y4) @ X4)) @ R))))))))))))))).
% 2.87/1.54  thf(fact_43_total__onI, axiom, (! [A:$tType,A6:(set @ A),R2:(set @ ((product_prod @ A) @ A))]: (((! [X3:A,Y3:A]: (((((member @ A) @ X3) @ A6) => ((((member @ A) @ Y3) @ A6) => ((X3 != Y3) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X3) @ Y3)) @ R2) | (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y3) @ X3)) @ R2))))))) => (((total_on @ A) @ A6) @ R2))))).
% 2.87/1.54  thf(fact_44_refl__on__domain, axiom, (! [A:$tType,A6:(set @ A),R2:(set @ ((product_prod @ A) @ A)),A2:A,B2:A]: (((((refl_on @ A) @ A6) @ R2) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ A2) @ B2)) @ R2) => ((((member @ A) @ A2) @ A6) & (((member @ A) @ B2) @ A6))))))).
% 2.87/1.54  thf(fact_45_mem__Collect__eq, axiom, (! [A:$tType,A2:A,P2:(A > $o)]: (((((member @ A) @ A2) @ ((collect @ A) @ P2)) = (P2 @ A2))))).
% 2.87/1.54  thf(fact_46_Collect__mem__eq, axiom, (! [A:$tType,A6:(set @ A)]: ((((collect @ A) @ (^ [X4:A]: ((((member @ A) @ X4) @ A6)))) = A6)))).
% 2.87/1.54  thf(fact_47_Collect__cong, axiom, (! [A:$tType,P2:(A > $o),Q:(A > $o)]: (((! [X3:A]: (((P2 @ X3) = (Q @ X3)))) => (((collect @ A) @ P2) = ((collect @ A) @ Q)))))).
% 2.87/1.54  thf(fact_48_ext, axiom, (! [B:$tType,A:$tType,F3:(A > B),G3:(A > B)]: (((! [X3:A]: (((F3 @ X3) = (G3 @ X3)))) => (F3 = G3))))).
% 2.87/1.54  thf(fact_49_refl__onD2, axiom, (! [A:$tType,A6:(set @ A),R2:(set @ ((product_prod @ A) @ A)),X:A,Y:A]: (((((refl_on @ A) @ A6) @ R2) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Y)) @ R2) => (((member @ A) @ Y) @ A6)))))).
% 2.87/1.54  thf(fact_50_refl__onD1, axiom, (! [A:$tType,A6:(set @ A),R2:(set @ ((product_prod @ A) @ A)),X:A,Y:A]: (((((refl_on @ A) @ A6) @ R2) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Y)) @ R2) => (((member @ A) @ X) @ A6)))))).
% 2.87/1.54  thf(fact_51_refl__onD, axiom, (! [A:$tType,A6:(set @ A),R2:(set @ ((product_prod @ A) @ A)),A2:A]: (((((refl_on @ A) @ A6) @ R2) => ((((member @ A) @ A2) @ A6) => (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ A2) @ A2)) @ R2)))))).
% 2.87/1.54  thf(fact_52_trans__def, axiom, (! [A:$tType]: (((trans @ A) = (^ [R:(set @ ((product_prod @ A) @ A))]: ((! [X4:A,Y4:A,Z2:A]: (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X4) @ Y4)) @ R) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y4) @ Z2)) @ R) => (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X4) @ Z2)) @ R))))))))))).
% 2.87/1.54  thf(fact_53_transI, axiom, (! [A:$tType,R2:(set @ ((product_prod @ A) @ A))]: (((! [X3:A,Y3:A,Z3:A]: (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X3) @ Y3)) @ R2) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y3) @ Z3)) @ R2) => (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X3) @ Z3)) @ R2))))) => ((trans @ A) @ R2))))).
% 2.87/1.54  thf(fact_54_transD, axiom, (! [A:$tType,R2:(set @ ((product_prod @ A) @ A)),X:A,Y:A,Z:A]: ((((trans @ A) @ R2) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Y)) @ R2) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y) @ Z)) @ R2) => (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Z)) @ R2))))))).
% 2.87/1.54  thf(fact_55_transE, axiom, (! [A:$tType,R2:(set @ ((product_prod @ A) @ A)),X:A,Y:A,Z:A]: ((((trans @ A) @ R2) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Y)) @ R2) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y) @ Z)) @ R2) => (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Z)) @ R2))))))).
% 2.87/1.54  thf(fact_56_rational__preference_Ointro, axiom, (! [A:$tType,Carrier:(set @ A),Relation:(set @ ((product_prod @ A) @ A))]: (((((prefer199794634erence @ A) @ Carrier) @ Relation) => ((((prefer1801827867axioms @ A) @ Carrier) @ Relation) => (((prefer1997167224erence @ A) @ Carrier) @ Relation)))))).
% 2.87/1.54  thf(fact_57_rational__preference__def, axiom, (! [A:$tType]: (((prefer1997167224erence @ A) = (^ [Carrier2:(set @ A),Relation2:(set @ ((product_prod @ A) @ A))]: (((((prefer199794634erence @ A) @ Carrier2) @ Relation2) & (((prefer1801827867axioms @ A) @ Carrier2) @ Relation2)))))))).
% 2.87/1.54  thf(fact_58_internal__case__prod__conv, axiom, (! [B:$tType,A:$tType,C:$tType,C3:(B > (C > A)),A2:B,B2:C]: (((((((produc2004651681e_prod @ B) @ C) @ A) @ C3) @ ((((product_Pair @ B) @ C) @ A2) @ B2)) = ((C3 @ A2) @ B2))))).
% 2.87/1.54  thf(fact_59_rational__preference_Oaxioms_I2_J, axiom, (! [A:$tType,Carrier:(set @ A),Relation:(set @ ((product_prod @ A) @ A))]: (((((prefer1997167224erence @ A) @ Carrier) @ Relation) => (((prefer1801827867axioms @ A) @ Carrier) @ Relation))))).
% 2.87/1.54  thf(fact_60_rational__preference__axioms_Ointro, axiom, (! [A:$tType,Carrier:(set @ A),Relation:(set @ ((product_prod @ A) @ A))]: (((((total_on @ A) @ Carrier) @ Relation) => (((prefer1801827867axioms @ A) @ Carrier) @ Relation))))).
% 2.87/1.54  thf(fact_61_rational__preference__axioms__def, axiom, (! [A:$tType]: (((prefer1801827867axioms @ A) = (total_on @ A))))).
% 2.87/1.54  thf(fact_62_ssubst__Pair__rhs, axiom, (! [B:$tType,A:$tType,R2:A,S:B,R3:(set @ ((product_prod @ A) @ B)),S2:B]: (((((member @ ((product_prod @ A) @ B)) @ ((((product_Pair @ A) @ B) @ R2) @ S)) @ R3) => ((S2 = S) => (((member @ ((product_prod @ A) @ B)) @ ((((product_Pair @ A) @ B) @ R2) @ S2)) @ R3)))))).
% 2.87/1.54  thf(fact_63_at__lst__asgd__ge, axiom, (! [A:$tType,X:A,Y:A,B5:(set @ A),Pr:(set @ ((product_prod @ A) @ A))]: (((((member @ A) @ X) @ ((((prefer310429814s_good @ A) @ Y) @ B5) @ Pr)) => (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Y)) @ Pr))))).
% 2.87/1.54  thf(fact_64_at__least__as__goodD, axiom, (! [A:$tType,Z:A,Y:A,B5:(set @ A),Pr:(set @ ((product_prod @ A) @ A))]: (((((member @ A) @ Z) @ ((((prefer310429814s_good @ A) @ Y) @ B5) @ Pr)) => (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Z) @ Y)) @ Pr))))).
% 2.87/1.54  thf(fact_65_curry__conv, axiom, (! [A:$tType,C:$tType,B:$tType]: (((((product_curry @ B) @ C) @ A) = (^ [F4:(((product_prod @ B) @ C) > A),A7:B,B6:C]: ((F4 @ ((((product_Pair @ B) @ C) @ A7) @ B6)))))))).
% 2.87/1.54  thf(fact_66_in__inv__imagep, axiom, (! [B:$tType,A:$tType]: ((((inv_imagep @ A) @ B) = (^ [R:(A > (A > $o)),F4:(B > A),X4:B,Y4:B]: (((R @ (F4 @ X4)) @ (F4 @ Y4)))))))).
% 2.87/1.54  thf(fact_67_curryI, axiom, (! [A:$tType,B:$tType,F3:(((product_prod @ A) @ B) > $o),A2:A,B2:B]: (((F3 @ ((((product_Pair @ A) @ B) @ A2) @ B2)) => ((((((product_curry @ A) @ B) @ $o) @ F3) @ A2) @ B2))))).
% 2.87/1.54  thf(fact_68_in__inv__image, axiom, (! [A:$tType,B:$tType,X:A,Y:A,R2:(set @ ((product_prod @ B) @ B)),F3:(A > B)]: (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Y)) @ ((((inv_image @ B) @ A) @ R2) @ F3)) = (((member @ ((product_prod @ B) @ B)) @ ((((product_Pair @ B) @ B) @ (F3 @ X)) @ (F3 @ Y))) @ R2))))).
% 2.87/1.54  thf(fact_69_strict__linear__order__on__def, axiom, (! [A:$tType]: (((order_215145569der_on @ A) = (^ [A5:(set @ A),R:(set @ ((product_prod @ A) @ A))]: ((((trans @ A) @ R) & (((irrefl @ A) @ R) & (((total_on @ A) @ A5) @ R))))))))).
% 2.87/1.54  thf(fact_70_swap__simp, axiom, (! [A:$tType,B:$tType,X:B,Y:A]: (((((product_swap @ B) @ A) @ ((((product_Pair @ B) @ A) @ X) @ Y)) = ((((product_Pair @ A) @ B) @ Y) @ X))))).
% 2.87/1.54  thf(fact_71_internal__case__prod__def, axiom, (! [C:$tType,B:$tType,A:$tType]: (((((produc2004651681e_prod @ A) @ B) @ C) = (((product_case_prod @ A) @ B) @ C))))).
% 2.87/1.54  thf(fact_72_swap__swap, axiom, (! [B:$tType,A:$tType,P:((product_prod @ A) @ B)]: (((((product_swap @ B) @ A) @ (((product_swap @ A) @ B) @ P)) = P)))).
% 2.87/1.54  thf(fact_73_case__prod__curry, axiom, (! [C:$tType,B:$tType,A:$tType,F3:(((product_prod @ A) @ B) > C)]: ((((((product_case_prod @ A) @ B) @ C) @ ((((product_curry @ A) @ B) @ C) @ F3)) = F3)))).
% 2.87/1.54  thf(fact_74_curry__case__prod, axiom, (! [C:$tType,B:$tType,A:$tType,F3:(A > (B > C))]: ((((((product_curry @ A) @ B) @ C) @ ((((product_case_prod @ A) @ B) @ C) @ F3)) = F3)))).
% 2.87/1.54  thf(fact_75_mem__case__prodE, axiom, (! [B:$tType,A:$tType,C:$tType,Z:A,C3:(B > (C > (set @ A))),P:((product_prod @ B) @ C)]: (((((member @ A) @ Z) @ (((((product_case_prod @ B) @ C) @ (set @ A)) @ C3) @ P)) => (~ ((! [X3:B,Y3:C]: (((P = ((((product_Pair @ B) @ C) @ X3) @ Y3)) => (~ ((((member @ A) @ Z) @ ((C3 @ X3) @ Y3))))))))))))).
% 2.87/1.54  thf(fact_76_old_Oprod_Ocase, axiom, (! [A:$tType,C:$tType,B:$tType,F3:(A > (B > C)),X1:A,X22:B]: (((((((product_case_prod @ A) @ B) @ C) @ F3) @ ((((product_Pair @ A) @ B) @ X1) @ X22)) = ((F3 @ X1) @ X22))))).
% 2.87/1.54  thf(fact_77_irreflI, axiom, (! [A:$tType,R3:(set @ ((product_prod @ A) @ A))]: (((! [A4:A]: ((~ ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ A4) @ A4)) @ R3))))) => ((irrefl @ A) @ R3))))).
% 2.87/1.54  thf(fact_78_irrefl__def, axiom, (! [A:$tType]: (((irrefl @ A) = (^ [R:(set @ ((product_prod @ A) @ A))]: ((! [A7:A]: ((~ ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ A7) @ A7)) @ R))))))))))).
% 2.87/1.54  thf(fact_79_curryD, axiom, (! [A:$tType,B:$tType,F3:(((product_prod @ A) @ B) > $o),A2:A,B2:B]: ((((((((product_curry @ A) @ B) @ $o) @ F3) @ A2) @ B2) => (F3 @ ((((product_Pair @ A) @ B) @ A2) @ B2)))))).
% 2.87/1.54  thf(fact_80_curryE, axiom, (! [A:$tType,B:$tType,F3:(((product_prod @ A) @ B) > $o),A2:A,B2:B]: ((((((((product_curry @ A) @ B) @ $o) @ F3) @ A2) @ B2) => (F3 @ ((((product_Pair @ A) @ B) @ A2) @ B2)))))).
% 2.87/1.54  thf(fact_81_trans__inv__image, axiom, (! [A:$tType,B:$tType,R2:(set @ ((product_prod @ A) @ A)),F3:(B > A)]: ((((trans @ A) @ R2) => ((trans @ B) @ ((((inv_image @ A) @ B) @ R2) @ F3)))))).
% 2.87/1.54  thf(fact_82_split__cong, axiom, (! [C:$tType,B:$tType,A:$tType,Q2:((product_prod @ A) @ B),F3:(A > (B > C)),G3:(A > (B > C)),P:((product_prod @ A) @ B)]: (((! [X3:A,Y3:B]: (((((((product_Pair @ A) @ B) @ X3) @ Y3) = Q2) => (((F3 @ X3) @ Y3) = ((G3 @ X3) @ Y3))))) => ((P = Q2) => ((((((product_case_prod @ A) @ B) @ C) @ F3) @ P) = (((((product_case_prod @ A) @ B) @ C) @ G3) @ Q2))))))).
% 2.87/1.54  thf(fact_83_pair__in__swap__image, axiom, (! [A:$tType,B:$tType,Y:A,X:B,A6:(set @ ((product_prod @ B) @ A))]: (((((member @ ((product_prod @ A) @ B)) @ ((((product_Pair @ A) @ B) @ Y) @ X)) @ ((((image @ ((product_prod @ B) @ A)) @ ((product_prod @ A) @ B)) @ ((product_swap @ B) @ A)) @ A6)) = (((member @ ((product_prod @ B) @ A)) @ ((((product_Pair @ B) @ A) @ X) @ Y)) @ A6))))).
% 2.87/1.54  thf(fact_84_scomp__apply, axiom, (! [A:$tType,D:$tType,C:$tType,B:$tType]: ((((((product_scomp @ B) @ C) @ D) @ A) = (^ [F4:(B > ((product_prod @ C) @ D)),G4:(C > (D > A)),X4:B]: ((((((product_case_prod @ C) @ D) @ A) @ G4) @ (F4 @ X4)))))))).
% 2.87/1.54  thf(fact_85_multp__iff, axiom, (! [A:$tType,R3:(set @ ((product_prod @ A) @ A)),P2:(A > (A > $o)),N:(multiset @ A),M:(multiset @ A)]: ((((irrefl @ A) @ R3) => (((trans @ A) @ R3) => ((! [X3:A,Y3:A]: ((((P2 @ X3) @ Y3) = (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X3) @ Y3)) @ R3)))) => (((((multp @ A) @ P2) @ N) @ M) = (((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ N) @ M)) @ ((mult @ A) @ R3))))))))).
% 2.87/1.54  thf(fact_86_asym__inv__image, axiom, (! [A:$tType,B:$tType,R3:(set @ ((product_prod @ A) @ A)),F3:(B > A)]: ((((asym @ A) @ R3) => ((asym @ B) @ ((((inv_image @ A) @ B) @ R3) @ F3)))))).
% 2.87/1.54  thf(fact_87_old_Obool_Osimps_I5_J, axiom, (! [T:$tType,F1:T,F22:T]: ((((((product_rec_bool @ T) @ F1) @ F22) @ $true) = F1)))).
% 2.87/1.54  thf(fact_88_old_Obool_Osimps_I6_J, axiom, (! [T:$tType,F1:T,F22:T]: ((((((product_rec_bool @ T) @ F1) @ F22) @ $false) = F22)))).
% 2.87/1.54  thf(fact_89_scomp__Pair, axiom, (! [C:$tType,B:$tType,A:$tType,X:(A > ((product_prod @ B) @ C))]: ((((((((product_scomp @ A) @ B) @ C) @ ((product_prod @ B) @ C)) @ X) @ ((product_Pair @ B) @ C)) = X)))).
% 2.87/1.54  thf(fact_90_asym_Oinducts, axiom, (! [A:$tType,X:(set @ ((product_prod @ A) @ A)),P2:((set @ ((product_prod @ A) @ A)) > $o)]: ((((asym @ A) @ X) => ((! [R4:(set @ ((product_prod @ A) @ A))]: (((! [A8:A,B7:A]: (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ A8) @ B7)) @ R4) => (~ ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ B7) @ A8)) @ R4)))))) => (P2 @ R4)))) => (P2 @ X)))))).
% 2.87/1.54  thf(fact_91_asym_Ointros, axiom, (! [A:$tType,R3:(set @ ((product_prod @ A) @ A))]: (((! [A4:A,B4:A]: (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ A4) @ B4)) @ R3) => (~ ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ B4) @ A4)) @ R3)))))) => ((asym @ A) @ R3))))).
% 2.87/1.54  thf(fact_92_asym_Osimps, axiom, (! [A:$tType]: (((asym @ A) = (^ [A7:(set @ ((product_prod @ A) @ A))]: ((? [R5:(set @ ((product_prod @ A) @ A))]: (((A7 = R5) & (! [X4:A,Y4:A]: (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X4) @ Y4)) @ R5) => (~ ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y4) @ X4)) @ R5))))))))))))))).
% 2.87/1.54  thf(fact_93_asym_Ocases, axiom, (! [A:$tType,A2:(set @ ((product_prod @ A) @ A))]: ((((asym @ A) @ A2) => (! [A8:A,B7:A]: (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ A8) @ B7)) @ A2) => (~ ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ B7) @ A8)) @ A2)))))))))).
% 2.87/1.54  thf(fact_94_asym__iff, axiom, (! [A:$tType]: (((asym @ A) = (^ [R5:(set @ ((product_prod @ A) @ A))]: ((! [X4:A,Y4:A]: (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X4) @ Y4)) @ R5) => (~ ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y4) @ X4)) @ R5)))))))))))).
% 2.87/1.54  thf(fact_95_asymD, axiom, (! [A:$tType,R3:(set @ ((product_prod @ A) @ A)),X:A,Y:A]: ((((asym @ A) @ R3) => ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X) @ Y)) @ R3) => (~ ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ Y) @ X)) @ R3)))))))).
% 2.87/1.54  thf(fact_96_Pair__scomp, axiom, (! [A:$tType,B:$tType,C:$tType,X:C,F3:(C > (A > B))]: ((((((((product_scomp @ A) @ C) @ A) @ B) @ (((product_Pair @ C) @ A) @ X)) @ F3) = (F3 @ X))))).
% 2.87/1.54  thf(fact_97_scomp__def, axiom, (! [D:$tType,C:$tType,B:$tType,A:$tType]: ((((((product_scomp @ A) @ B) @ C) @ D) = (^ [F4:(A > ((product_prod @ B) @ C)),G4:(B > (C > D)),X4:A]: ((((((product_case_prod @ B) @ C) @ D) @ G4) @ (F4 @ X4)))))))).
% 2.87/1.54  thf(fact_98_image__eqI, axiom, (! [A:$tType,B:$tType,B2:A,F3:(B > A),X:B,A6:(set @ B)]: (((B2 = (F3 @ X)) => ((((member @ B) @ X) @ A6) => (((member @ A) @ B2) @ ((((image @ B) @ A) @ F3) @ A6))))))).
% 2.87/1.54  thf(fact_99_mult__cancel, axiom, (! [A:$tType,S:(set @ ((product_prod @ A) @ A)),X5:(multiset @ A),Z4:(multiset @ A),Y5:(multiset @ A)]: ((((trans @ A) @ S) => (((irrefl @ A) @ S) => ((((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ (((plus_plus @ (multiset @ A)) @ X5) @ Z4)) @ (((plus_plus @ (multiset @ A)) @ Y5) @ Z4))) @ ((mult @ A) @ S)) = (((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ X5) @ Y5)) @ ((mult @ A) @ S)))))))).
% 2.87/1.54  thf(fact_100_mult__cancel__add__mset, axiom, (! [A:$tType,S:(set @ ((product_prod @ A) @ A)),Uu:A,X5:(multiset @ A),Y5:(multiset @ A)]: ((((trans @ A) @ S) => (((irrefl @ A) @ S) => ((((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ (((add_mset @ A) @ Uu) @ X5)) @ (((add_mset @ A) @ Uu) @ Y5))) @ ((mult @ A) @ S)) = (((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ X5) @ Y5)) @ ((mult @ A) @ S)))))))).
% 2.87/1.54  thf(fact_101_surj__swap, axiom, (! [B:$tType,A:$tType]: ((((((image @ ((product_prod @ B) @ A)) @ ((product_prod @ A) @ B)) @ ((product_swap @ B) @ A)) @ (top_top @ (set @ ((product_prod @ B) @ A)))) = (top_top @ (set @ ((product_prod @ A) @ B))))))).
% 2.87/1.54  thf(fact_102_imageI, axiom, (! [B:$tType,A:$tType,X:A,A6:(set @ A),F3:(A > B)]: (((((member @ A) @ X) @ A6) => (((member @ B) @ (F3 @ X)) @ ((((image @ A) @ B) @ F3) @ A6)))))).
% 2.87/1.54  thf(fact_103_image__iff, axiom, (! [A:$tType,B:$tType,Z:A,F3:(B > A),A6:(set @ B)]: (((((member @ A) @ Z) @ ((((image @ B) @ A) @ F3) @ A6)) = (? [X4:B]: (((((member @ B) @ X4) @ A6) & (Z = (F3 @ X4))))))))).
% 2.87/1.54  thf(fact_104_add__mset__add__mset__same__iff, axiom, (! [A:$tType,A2:A,A6:(multiset @ A),B5:(multiset @ A)]: ((((((add_mset @ A) @ A2) @ A6) = (((add_mset @ A) @ A2) @ B5)) = (A6 = B5))))).
% 2.87/1.54  thf(fact_105_multi__self__add__other__not__self, axiom, (! [A:$tType,M:(multiset @ A),X:A]: ((M != (((add_mset @ A) @ X) @ M))))).
% 2.87/1.54  thf(fact_106_union__mset__add__mset__left, axiom, (! [A:$tType,A2:A,A6:(multiset @ A),B5:(multiset @ A)]: (((((plus_plus @ (multiset @ A)) @ (((add_mset @ A) @ A2) @ A6)) @ B5) = (((add_mset @ A) @ A2) @ (((plus_plus @ (multiset @ A)) @ A6) @ B5)))))).
% 2.87/1.54  thf(fact_107_union__mset__add__mset__right, axiom, (! [A:$tType,A6:(multiset @ A),A2:A,B5:(multiset @ A)]: (((((plus_plus @ (multiset @ A)) @ A6) @ (((add_mset @ A) @ A2) @ B5)) = (((add_mset @ A) @ A2) @ (((plus_plus @ (multiset @ A)) @ A6) @ B5)))))).
% 2.87/1.54  thf(fact_108_rangeI, axiom, (! [A:$tType,B:$tType,F3:(B > A),X:B]: ((((member @ A) @ (F3 @ X)) @ ((((image @ B) @ A) @ F3) @ (top_top @ (set @ B))))))).
% 2.87/1.54  thf(fact_109_range__eqI, axiom, (! [A:$tType,B:$tType,B2:A,F3:(B > A),X:B]: (((B2 = (F3 @ X)) => (((member @ A) @ B2) @ ((((image @ B) @ A) @ F3) @ (top_top @ (set @ B)))))))).
% 2.87/1.54  thf(fact_110_union__assoc, axiom, (! [A:$tType,M:(multiset @ A),N:(multiset @ A),K:(multiset @ A)]: (((((plus_plus @ (multiset @ A)) @ (((plus_plus @ (multiset @ A)) @ M) @ N)) @ K) = (((plus_plus @ (multiset @ A)) @ M) @ (((plus_plus @ (multiset @ A)) @ N) @ K)))))).
% 2.87/1.54  thf(fact_111_union__lcomm, axiom, (! [A:$tType,M:(multiset @ A),N:(multiset @ A),K:(multiset @ A)]: (((((plus_plus @ (multiset @ A)) @ M) @ (((plus_plus @ (multiset @ A)) @ N) @ K)) = (((plus_plus @ (multiset @ A)) @ N) @ (((plus_plus @ (multiset @ A)) @ M) @ K)))))).
% 2.87/1.54  thf(fact_112_union__commute, axiom, (! [A:$tType]: (((plus_plus @ (multiset @ A)) = (^ [M2:(multiset @ A),N2:(multiset @ A)]: ((((plus_plus @ (multiset @ A)) @ N2) @ M2))))))).
% 2.87/1.54  thf(fact_113_add__eq__conv__ex, axiom, (! [A:$tType,A2:A,M:(multiset @ A),B2:A,N:(multiset @ A)]: ((((((add_mset @ A) @ A2) @ M) = (((add_mset @ A) @ B2) @ N)) = (((M = N) & (A2 = B2)) | (? [K2:(multiset @ A)]: (((M = (((add_mset @ A) @ B2) @ K2)) & (N = (((add_mset @ A) @ A2) @ K2)))))))))).
% 2.87/1.54  thf(fact_114_add__mset__commute, axiom, (! [A:$tType,X:A,Y:A,M:(multiset @ A)]: (((((add_mset @ A) @ X) @ (((add_mset @ A) @ Y) @ M)) = (((add_mset @ A) @ Y) @ (((add_mset @ A) @ X) @ M)))))).
% 2.87/1.54  thf(fact_115_union__left__cancel, axiom, (! [A:$tType,K:(multiset @ A),M:(multiset @ A),N:(multiset @ A)]: ((((((plus_plus @ (multiset @ A)) @ K) @ M) = (((plus_plus @ (multiset @ A)) @ K) @ N)) = (M = N))))).
% 2.87/1.54  thf(fact_116_union__right__cancel, axiom, (! [A:$tType,M:(multiset @ A),K:(multiset @ A),N:(multiset @ A)]: ((((((plus_plus @ (multiset @ A)) @ M) @ K) = (((plus_plus @ (multiset @ A)) @ N) @ K)) = (M = N))))).
% 2.87/1.54  thf(fact_117_multi__union__self__other__eq, axiom, (! [A:$tType,A6:(multiset @ A),X5:(multiset @ A),Y5:(multiset @ A)]: ((((((plus_plus @ (multiset @ A)) @ A6) @ X5) = (((plus_plus @ (multiset @ A)) @ A6) @ Y5)) => (X5 = Y5))))).
% 2.87/1.54  thf(fact_118_rev__image__eqI, axiom, (! [B:$tType,A:$tType,X:A,A6:(set @ A),B2:B,F3:(A > B)]: (((((member @ A) @ X) @ A6) => ((B2 = (F3 @ X)) => (((member @ B) @ B2) @ ((((image @ A) @ B) @ F3) @ A6))))))).
% 2.87/1.54  thf(fact_119_ball__imageD, axiom, (! [A:$tType,B:$tType,F3:(B > A),A6:(set @ B),P2:(A > $o)]: (((! [X3:A]: (((((member @ A) @ X3) @ ((((image @ B) @ A) @ F3) @ A6)) => (P2 @ X3)))) => (! [X2:B]: (((((member @ B) @ X2) @ A6) => (P2 @ (F3 @ X2))))))))).
% 2.87/1.54  thf(fact_120_image__cong, axiom, (! [B:$tType,A:$tType,M:(set @ A),N:(set @ A),F3:(A > B),G3:(A > B)]: (((M = N) => ((! [X3:A]: (((((member @ A) @ X3) @ N) => ((F3 @ X3) = (G3 @ X3))))) => (((((image @ A) @ B) @ F3) @ M) = ((((image @ A) @ B) @ G3) @ N))))))).
% 2.87/1.54  thf(fact_121_bex__imageD, axiom, (! [A:$tType,B:$tType,F3:(B > A),A6:(set @ B),P2:(A > $o)]: (((? [X2:A]: (((((member @ A) @ X2) @ ((((image @ B) @ A) @ F3) @ A6)) & (P2 @ X2)))) => (? [X3:B]: (((((member @ B) @ X3) @ A6) & (P2 @ (F3 @ X3))))))))).
% 2.87/1.54  thf(fact_122_surj__plus, axiom, (! [A:$tType]: (((ab_group_add @ A) => (! [A2:A]: ((((((image @ A) @ A) @ ((plus_plus @ A) @ A2)) @ (top_top @ (set @ A))) = (top_top @ (set @ A))))))))).
% 2.87/1.54  thf(fact_123_add__Pair, axiom, (! [A:$tType,B:$tType]: ((((plus @ B) & (plus @ A)) => (! [A2:A,B2:B,C3:A,D3:B]: (((((plus_plus @ ((product_prod @ A) @ B)) @ ((((product_Pair @ A) @ B) @ A2) @ B2)) @ ((((product_Pair @ A) @ B) @ C3) @ D3)) = ((((product_Pair @ A) @ B) @ (((plus_plus @ A) @ A2) @ C3)) @ (((plus_plus @ B) @ B2) @ D3))))))))).
% 2.87/1.54  thf(fact_124_top__prod__def, axiom, (! [A:$tType,B:$tType]: ((((top @ B) & (top @ A)) => ((top_top @ ((product_prod @ A) @ B)) = ((((product_Pair @ A) @ B) @ (top_top @ A)) @ (top_top @ B))))))).
% 2.87/1.54  thf(fact_125_surjD, axiom, (! [A:$tType,B:$tType,F3:(B > A),Y:A]: (((((((image @ B) @ A) @ F3) @ (top_top @ (set @ B))) = (top_top @ (set @ A))) => (? [X3:B]: ((Y = (F3 @ X3)))))))).
% 2.87/1.54  thf(fact_126_surjE, axiom, (! [A:$tType,B:$tType,F3:(B > A),Y:A]: (((((((image @ B) @ A) @ F3) @ (top_top @ (set @ B))) = (top_top @ (set @ A))) => (~ ((! [X3:B]: ((Y != (F3 @ X3)))))))))).
% 2.87/1.54  thf(fact_127_top__empty__eq, axiom, (! [A:$tType]: (((top_top @ (A > $o)) = (^ [X4:A]: ((((member @ A) @ X4) @ (top_top @ (set @ A))))))))).
% 2.87/1.54  thf(fact_128_surj__def, axiom, (! [B:$tType,A:$tType,F3:(B > A)]: (((((((image @ B) @ A) @ F3) @ (top_top @ (set @ B))) = (top_top @ (set @ A))) = (! [Y4:A]: ((? [X4:B]: ((Y4 = (F3 @ X4)))))))))).
% 2.87/1.54  thf(fact_129_surjI, axiom, (! [B:$tType,A:$tType,G3:(B > A),F3:(A > B)]: (((! [X3:A]: (((G3 @ (F3 @ X3)) = X3))) => (((((image @ B) @ A) @ G3) @ (top_top @ (set @ B))) = (top_top @ (set @ A))))))).
% 2.87/1.54  thf(fact_130_map__prod__surj, axiom, (! [A:$tType,C:$tType,D:$tType,B:$tType,F3:(A > B),G3:(C > D)]: (((((((image @ A) @ B) @ F3) @ (top_top @ (set @ A))) = (top_top @ (set @ B))) => ((((((image @ C) @ D) @ G3) @ (top_top @ (set @ C))) = (top_top @ (set @ D))) => (((((image @ ((product_prod @ A) @ C)) @ ((product_prod @ B) @ D)) @ ((((((product_map_prod @ A) @ B) @ C) @ D) @ F3) @ G3)) @ (top_top @ (set @ ((product_prod @ A) @ C)))) = (top_top @ (set @ ((product_prod @ B) @ D))))))))).
% 2.87/1.54  thf(fact_131_total__lex__prod, axiom, (! [A:$tType,B:$tType,R2:(set @ ((product_prod @ A) @ A)),S:(set @ ((product_prod @ B) @ B))]: (((((total_on @ A) @ (top_top @ (set @ A))) @ R2) => ((((total_on @ B) @ (top_top @ (set @ B))) @ S) => (((total_on @ ((product_prod @ A) @ B)) @ (top_top @ (set @ ((product_prod @ A) @ B)))) @ ((((lex_prod @ A) @ B) @ R2) @ S))))))).
% 2.87/1.54  thf(fact_132_range__fst, axiom, (! [B:$tType,A:$tType]: ((((((image @ ((product_prod @ A) @ B)) @ A) @ ((product_fst @ A) @ B)) @ (top_top @ (set @ ((product_prod @ A) @ B)))) = (top_top @ (set @ A)))))).
% 2.87/1.54  thf(fact_133_range__snd, axiom, (! [B:$tType,A:$tType]: ((((((image @ ((product_prod @ B) @ A)) @ A) @ ((product_snd @ B) @ A)) @ (top_top @ (set @ ((product_prod @ B) @ A)))) = (top_top @ (set @ A)))))).
% 2.87/1.54  thf(fact_134_map__prod__simp, axiom, (! [C:$tType,A:$tType,B:$tType,D:$tType,F3:(C > A),G3:(D > B),A2:C,B2:D]: (((((((((product_map_prod @ C) @ A) @ D) @ B) @ F3) @ G3) @ ((((product_Pair @ C) @ D) @ A2) @ B2)) = ((((product_Pair @ A) @ B) @ (F3 @ A2)) @ (G3 @ B2)))))).
% 2.87/1.54  thf(fact_135_fst__map__prod, axiom, (! [B:$tType,A:$tType,D:$tType,C:$tType,F3:(C > A),G3:(D > B),X:((product_prod @ C) @ D)]: (((((product_fst @ A) @ B) @ (((((((product_map_prod @ C) @ A) @ D) @ B) @ F3) @ G3) @ X)) = (F3 @ (((product_fst @ C) @ D) @ X)))))).
% 2.87/1.54  thf(fact_136_snd__map__prod, axiom, (! [B:$tType,A:$tType,D:$tType,C:$tType,F3:(C > B),G3:(D > A),X:((product_prod @ C) @ D)]: (((((product_snd @ B) @ A) @ (((((((product_map_prod @ C) @ B) @ D) @ A) @ F3) @ G3) @ X)) = (G3 @ (((product_snd @ C) @ D) @ X)))))).
% 2.87/1.54  thf(fact_137_in__lex__prod, axiom, (! [A:$tType,B:$tType,A2:A,B2:B,A3:A,B3:B,R2:(set @ ((product_prod @ A) @ A)),S:(set @ ((product_prod @ B) @ B))]: (((((member @ ((product_prod @ ((product_prod @ A) @ B)) @ ((product_prod @ A) @ B))) @ ((((product_Pair @ ((product_prod @ A) @ B)) @ ((product_prod @ A) @ B)) @ ((((product_Pair @ A) @ B) @ A2) @ B2)) @ ((((product_Pair @ A) @ B) @ A3) @ B3))) @ ((((lex_prod @ A) @ B) @ R2) @ S)) = ((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ A2) @ A3)) @ R2) | ((A2 = A3) & (((member @ ((product_prod @ B) @ B)) @ ((((product_Pair @ B) @ B) @ B2) @ B3)) @ S))))))).
% 2.87/1.54  thf(fact_138_trans__lex__prod, axiom, (! [A:$tType,B:$tType,R1:(set @ ((product_prod @ A) @ A)),R22:(set @ ((product_prod @ B) @ B))]: ((((trans @ A) @ R1) => (((trans @ B) @ R22) => ((trans @ ((product_prod @ A) @ B)) @ ((((lex_prod @ A) @ B) @ R1) @ R22))))))).
% 2.87/1.54  thf(fact_139_prod_Ocollapse, axiom, (! [B:$tType,A:$tType,Prod:((product_prod @ A) @ B)]: ((((((product_Pair @ A) @ B) @ (((product_fst @ A) @ B) @ Prod)) @ (((product_snd @ A) @ B) @ Prod)) = Prod)))).
% 2.87/1.54  thf(fact_140_snd__swap, axiom, (! [B:$tType,A:$tType,X:((product_prod @ A) @ B)]: (((((product_snd @ B) @ A) @ (((product_swap @ A) @ B) @ X)) = (((product_fst @ A) @ B) @ X))))).
% 2.87/1.54  thf(fact_141_fst__swap, axiom, (! [A:$tType,B:$tType,X:((product_prod @ B) @ A)]: (((((product_fst @ A) @ B) @ (((product_swap @ B) @ A) @ X)) = (((product_snd @ B) @ A) @ X))))).
% 2.87/1.54  thf(fact_142_map__prod__imageI, axiom, (! [D:$tType,C:$tType,B:$tType,A:$tType,A2:A,B2:B,R3:(set @ ((product_prod @ A) @ B)),F3:(A > C),G3:(B > D)]: (((((member @ ((product_prod @ A) @ B)) @ ((((product_Pair @ A) @ B) @ A2) @ B2)) @ R3) => (((member @ ((product_prod @ C) @ D)) @ ((((product_Pair @ C) @ D) @ (F3 @ A2)) @ (G3 @ B2))) @ ((((image @ ((product_prod @ A) @ B)) @ ((product_prod @ C) @ D)) @ ((((((product_map_prod @ A) @ C) @ B) @ D) @ F3) @ G3)) @ R3)))))).
% 2.87/1.54  thf(fact_143_asym__lex__prod, axiom, (! [A:$tType,B:$tType,R3:(set @ ((product_prod @ A) @ A)),S3:(set @ ((product_prod @ B) @ B))]: ((((asym @ A) @ R3) => (((asym @ B) @ S3) => ((asym @ ((product_prod @ A) @ B)) @ ((((lex_prod @ A) @ B) @ R3) @ S3))))))).
% 2.87/1.54  thf(fact_144_case__prod__beta, axiom, (! [A:$tType,C:$tType,B:$tType]: (((((product_case_prod @ B) @ C) @ A) = (^ [F4:(B > (C > A)),P3:((product_prod @ B) @ C)]: (((F4 @ (((product_fst @ B) @ C) @ P3)) @ (((product_snd @ B) @ C) @ P3)))))))).
% 2.87/1.54  thf(fact_145_prod_Ocase__eq__if, axiom, (! [C:$tType,B:$tType,A:$tType]: (((((product_case_prod @ A) @ B) @ C) = (^ [F4:(A > (B > C)),Prod2:((product_prod @ A) @ B)]: (((F4 @ (((product_fst @ A) @ B) @ Prod2)) @ (((product_snd @ A) @ B) @ Prod2)))))))).
% 2.87/1.54  thf(fact_146_Product__Type_OCollect__case__prodD, axiom, (! [B:$tType,A:$tType,X:((product_prod @ A) @ B),A6:(A > (B > $o))]: (((((member @ ((product_prod @ A) @ B)) @ X) @ ((collect @ ((product_prod @ A) @ B)) @ ((((product_case_prod @ A) @ B) @ $o) @ A6))) => ((A6 @ (((product_fst @ A) @ B) @ X)) @ (((product_snd @ A) @ B) @ X)))))).
% 2.87/1.54  thf(fact_147_prod_Oexhaust__sel, axiom, (! [B:$tType,A:$tType,Prod:((product_prod @ A) @ B)]: ((Prod = ((((product_Pair @ A) @ B) @ (((product_fst @ A) @ B) @ Prod)) @ (((product_snd @ A) @ B) @ Prod)))))).
% 2.87/1.54  thf(fact_148_surjective__pairing, axiom, (! [B:$tType,A:$tType,T2:((product_prod @ A) @ B)]: ((T2 = ((((product_Pair @ A) @ B) @ (((product_fst @ A) @ B) @ T2)) @ (((product_snd @ A) @ B) @ T2)))))).
% 2.87/1.54  thf(fact_149_prod_Osplit__sel, axiom, (! [C:$tType,B:$tType,A:$tType,P2:(C > $o),F3:(A > (B > C)),Prod:((product_prod @ A) @ B)]: (((P2 @ (((((product_case_prod @ A) @ B) @ C) @ F3) @ Prod)) = ((Prod = ((((product_Pair @ A) @ B) @ (((product_fst @ A) @ B) @ Prod)) @ (((product_snd @ A) @ B) @ Prod))) => (P2 @ ((F3 @ (((product_fst @ A) @ B) @ Prod)) @ (((product_snd @ A) @ B) @ Prod)))))))).
% 2.87/1.54  thf(fact_150_prod_Osplit__sel__asm, axiom, (! [C:$tType,B:$tType,A:$tType,P2:(C > $o),F3:(A > (B > C)),Prod:((product_prod @ A) @ B)]: (((P2 @ (((((product_case_prod @ A) @ B) @ C) @ F3) @ Prod)) = (~ (((Prod = ((((product_Pair @ A) @ B) @ (((product_fst @ A) @ B) @ Prod)) @ (((product_snd @ A) @ B) @ Prod))) & (~ ((P2 @ ((F3 @ (((product_fst @ A) @ B) @ Prod)) @ (((product_snd @ A) @ B) @ Prod)))))))))))).
% 2.87/1.54  thf(fact_151_prod__eqI, axiom, (! [B:$tType,A:$tType,P:((product_prod @ A) @ B),Q2:((product_prod @ A) @ B)]: ((((((product_fst @ A) @ B) @ P) = (((product_fst @ A) @ B) @ Q2)) => (((((product_snd @ A) @ B) @ P) = (((product_snd @ A) @ B) @ Q2)) => (P = Q2)))))).
% 2.87/1.54  thf(fact_152_prod_Oexpand, axiom, (! [B:$tType,A:$tType,Prod:((product_prod @ A) @ B),Prod3:((product_prod @ A) @ B)]: (((((((product_fst @ A) @ B) @ Prod) = (((product_fst @ A) @ B) @ Prod3)) & ((((product_snd @ A) @ B) @ Prod) = (((product_snd @ A) @ B) @ Prod3))) => (Prod = Prod3))))).
% 2.87/1.54  thf(fact_153_prod__eq__iff, axiom, (! [B:$tType,A:$tType]: (((^ [Y6:((product_prod @ A) @ B),Z5:((product_prod @ A) @ B)]: ((Y6 = Z5))) = (^ [S4:((product_prod @ A) @ B),T3:((product_prod @ A) @ B)]: ((((((product_fst @ A) @ B) @ S4) = (((product_fst @ A) @ B) @ T3)) & ((((product_snd @ A) @ B) @ S4) = (((product_snd @ A) @ B) @ T3))))))))).
% 2.87/1.54  thf(fact_154_fst__conv, axiom, (! [B:$tType,A:$tType,X1:A,X22:B]: (((((product_fst @ A) @ B) @ ((((product_Pair @ A) @ B) @ X1) @ X22)) = X1)))).
% 2.87/1.54  thf(fact_155_fst__eqD, axiom, (! [B:$tType,A:$tType,X:A,Y:B,A2:A]: ((((((product_fst @ A) @ B) @ ((((product_Pair @ A) @ B) @ X) @ Y)) = A2) => (X = A2))))).
% 2.87/1.54  thf(fact_156_snd__conv, axiom, (! [Aa:$tType,A:$tType,X1:Aa,X22:A]: (((((product_snd @ Aa) @ A) @ ((((product_Pair @ Aa) @ A) @ X1) @ X22)) = X22)))).
% 2.87/1.54  thf(fact_157_snd__eqD, axiom, (! [B:$tType,A:$tType,X:B,Y:A,A2:A]: ((((((product_snd @ B) @ A) @ ((((product_Pair @ B) @ A) @ X) @ Y)) = A2) => (Y = A2))))).
% 2.87/1.54  thf(fact_158_prod_Oswap__def, axiom, (! [B:$tType,A:$tType]: ((((product_swap @ A) @ B) = (^ [P3:((product_prod @ A) @ B)]: (((((product_Pair @ B) @ A) @ (((product_snd @ A) @ B) @ P3)) @ (((product_fst @ A) @ B) @ P3)))))))).
% 2.87/1.54  thf(fact_159_plus__prod__def, axiom, (! [B:$tType,A:$tType]: ((((plus @ A) & (plus @ B)) => ((plus_plus @ ((product_prod @ A) @ B)) = (^ [X4:((product_prod @ A) @ B),Y4:((product_prod @ A) @ B)]: (((((product_Pair @ A) @ B) @ (((plus_plus @ A) @ (((product_fst @ A) @ B) @ X4)) @ (((product_fst @ A) @ B) @ Y4))) @ (((plus_plus @ B) @ (((product_snd @ A) @ B) @ X4)) @ (((product_snd @ A) @ B) @ Y4)))))))))).
% 2.87/1.54  thf(fact_160_prod__fun__imageE, axiom, (! [B:$tType,A:$tType,D:$tType,C:$tType,C3:((product_prod @ A) @ B),F3:(C > A),G3:(D > B),R3:(set @ ((product_prod @ C) @ D))]: (((((member @ ((product_prod @ A) @ B)) @ C3) @ ((((image @ ((product_prod @ C) @ D)) @ ((product_prod @ A) @ B)) @ ((((((product_map_prod @ C) @ A) @ D) @ B) @ F3) @ G3)) @ R3)) => (~ ((! [X3:C,Y3:D]: (((C3 = ((((product_Pair @ A) @ B) @ (F3 @ X3)) @ (G3 @ Y3))) => (~ ((((member @ ((product_prod @ C) @ D)) @ ((((product_Pair @ C) @ D) @ X3) @ Y3)) @ R3)))))))))))).
% 2.87/1.54  thf(fact_161_exI__realizer, axiom, (! [B:$tType,A:$tType,P2:(A > (B > $o)),Y:A,X:B]: ((((P2 @ Y) @ X) => ((P2 @ (((product_snd @ B) @ A) @ ((((product_Pair @ B) @ A) @ X) @ Y))) @ (((product_fst @ B) @ A) @ ((((product_Pair @ B) @ A) @ X) @ Y))))))).
% 2.87/1.54  thf(fact_162_conjI__realizer, axiom, (! [A:$tType,B:$tType,P2:(A > $o),P:A,Q:(B > $o),Q2:B]: (((P2 @ P) => ((Q @ Q2) => ((P2 @ (((product_fst @ A) @ B) @ ((((product_Pair @ A) @ B) @ P) @ Q2))) & (Q @ (((product_snd @ A) @ B) @ ((((product_Pair @ A) @ B) @ P) @ Q2))))))))).
% 2.87/1.54  thf(fact_163_BNF__Greatest__Fixpoint_Osubst__Pair, axiom, (! [B:$tType,A:$tType,P2:(A > (B > $o)),X:A,Y:B,A2:((product_prod @ A) @ B)]: ((((P2 @ X) @ Y) => ((A2 = ((((product_Pair @ A) @ B) @ X) @ Y)) => ((P2 @ (((product_fst @ A) @ B) @ A2)) @ (((product_snd @ A) @ B) @ A2))))))).
% 2.87/1.54  thf(fact_164_sndI, axiom, (! [A:$tType,B:$tType,X:((product_prod @ A) @ B),Y:A,Z:B]: (((X = ((((product_Pair @ A) @ B) @ Y) @ Z)) => ((((product_snd @ A) @ B) @ X) = Z))))).
% 2.87/1.54  thf(fact_165_fstI, axiom, (! [B:$tType,A:$tType,X:((product_prod @ A) @ B),Y:A,Z:B]: (((X = ((((product_Pair @ A) @ B) @ Y) @ Z)) => ((((product_fst @ A) @ B) @ X) = Y))))).
% 2.87/1.54  thf(fact_166_eq__snd__iff, axiom, (! [A:$tType,B:$tType,B2:A,P:((product_prod @ B) @ A)]: (((B2 = (((product_snd @ B) @ A) @ P)) = (? [A7:B]: ((P = ((((product_Pair @ B) @ A) @ A7) @ B2)))))))).
% 2.87/1.54  thf(fact_167_eq__fst__iff, axiom, (! [A:$tType,B:$tType,A2:A,P:((product_prod @ A) @ B)]: (((A2 = (((product_fst @ A) @ B) @ P)) = (? [B6:B]: ((P = ((((product_Pair @ A) @ B) @ A2) @ B6)))))))).
% 2.87/1.54  thf(fact_168_Collect__split__mono__strong, axiom, (! [B:$tType,A:$tType,X5:(set @ A),A6:(set @ ((product_prod @ A) @ B)),Y5:(set @ B),P2:(A > (B > $o)),Q:(A > (B > $o))]: (((X5 = ((((image @ ((product_prod @ A) @ B)) @ A) @ ((product_fst @ A) @ B)) @ A6)) => ((Y5 = ((((image @ ((product_prod @ A) @ B)) @ B) @ ((product_snd @ A) @ B)) @ A6)) => ((! [X3:A]: (((((member @ A) @ X3) @ X5) => (! [Xa2:B]: (((((member @ B) @ Xa2) @ Y5) => (((P2 @ X3) @ Xa2) => ((Q @ X3) @ Xa2)))))))) => ((((ord_less_eq @ (set @ ((product_prod @ A) @ B))) @ A6) @ ((collect @ ((product_prod @ A) @ B)) @ ((((product_case_prod @ A) @ B) @ $o) @ P2))) => (((ord_less_eq @ (set @ ((product_prod @ A) @ B))) @ A6) @ ((collect @ ((product_prod @ A) @ B)) @ ((((product_case_prod @ A) @ B) @ $o) @ Q)))))))))).
% 2.87/1.54  thf(fact_169_Pair__le, axiom, (! [A:$tType,B:$tType]: ((((ord @ B) & (ord @ A)) => (! [A2:A,B2:B,C3:A,D3:B]: (((((ord_less_eq @ ((product_prod @ A) @ B)) @ ((((product_Pair @ A) @ B) @ A2) @ B2)) @ ((((product_Pair @ A) @ B) @ C3) @ D3)) = ((((ord_less_eq @ A) @ A2) @ C3) & (((ord_less_eq @ B) @ B2) @ D3))))))))).
% 2.87/1.54  thf(fact_170_subrelI, axiom, (! [B:$tType,A:$tType,R2:(set @ ((product_prod @ A) @ B)),S:(set @ ((product_prod @ A) @ B))]: (((! [X3:A,Y3:B]: (((((member @ ((product_prod @ A) @ B)) @ ((((product_Pair @ A) @ B) @ X3) @ Y3)) @ R2) => (((member @ ((product_prod @ A) @ B)) @ ((((product_Pair @ A) @ B) @ X3) @ Y3)) @ S)))) => (((ord_less_eq @ (set @ ((product_prod @ A) @ B))) @ R2) @ S))))).
% 2.87/1.54  thf(fact_171_Pair__mono, axiom, (! [A:$tType,B:$tType]: ((((ord @ B) & (ord @ A)) => (! [X:A,X6:A,Y:B,Y7:B]: (((((ord_less_eq @ A) @ X) @ X6) => ((((ord_less_eq @ B) @ Y) @ Y7) => (((ord_less_eq @ ((product_prod @ A) @ B)) @ ((((product_Pair @ A) @ B) @ X) @ Y)) @ ((((product_Pair @ A) @ B) @ X6) @ Y7)))))))))).
% 2.87/1.54  thf(fact_172_mono__mult, axiom, (! [A:$tType,R2:(set @ ((product_prod @ A) @ A)),R6:(set @ ((product_prod @ A) @ A))]: (((((ord_less_eq @ (set @ ((product_prod @ A) @ A))) @ R2) @ R6) => (((ord_less_eq @ (set @ ((product_prod @ (multiset @ A)) @ (multiset @ A)))) @ ((mult @ A) @ R2)) @ ((mult @ A) @ R6)))))).
% 2.87/1.54  thf(fact_173_image__mono, axiom, (! [B:$tType,A:$tType,A6:(set @ A),B5:(set @ A),F3:(A > B)]: (((((ord_less_eq @ (set @ A)) @ A6) @ B5) => (((ord_less_eq @ (set @ B)) @ ((((image @ A) @ B) @ F3) @ A6)) @ ((((image @ A) @ B) @ F3) @ B5)))))).
% 2.87/1.54  thf(fact_174_image__subsetI, axiom, (! [A:$tType,B:$tType,A6:(set @ A),F3:(A > B),B5:(set @ B)]: (((! [X3:A]: (((((member @ A) @ X3) @ A6) => (((member @ B) @ (F3 @ X3)) @ B5)))) => (((ord_less_eq @ (set @ B)) @ ((((image @ A) @ B) @ F3) @ A6)) @ B5))))).
% 2.87/1.54  thf(fact_175_subset__imageE, axiom, (! [A:$tType,B:$tType,B5:(set @ A),F3:(B > A),A6:(set @ B)]: (((((ord_less_eq @ (set @ A)) @ B5) @ ((((image @ B) @ A) @ F3) @ A6)) => (~ ((! [C4:(set @ B)]: (((((ord_less_eq @ (set @ B)) @ C4) @ A6) => (B5 != ((((image @ B) @ A) @ F3) @ C4))))))))))).
% 2.87/1.54  thf(fact_176_image__subset__iff, axiom, (! [A:$tType,B:$tType,F3:(B > A),A6:(set @ B),B5:(set @ A)]: (((((ord_less_eq @ (set @ A)) @ ((((image @ B) @ A) @ F3) @ A6)) @ B5) = (! [X4:B]: (((((member @ B) @ X4) @ A6) => (((member @ A) @ (F3 @ X4)) @ B5)))))))).
% 2.87/1.54  thf(fact_177_subset__image__iff, axiom, (! [A:$tType,B:$tType,B5:(set @ A),F3:(B > A),A6:(set @ B)]: (((((ord_less_eq @ (set @ A)) @ B5) @ ((((image @ B) @ A) @ F3) @ A6)) = (? [AA:(set @ B)]: (((((ord_less_eq @ (set @ B)) @ AA) @ A6) & (B5 = ((((image @ B) @ A) @ F3) @ AA))))))))).
% 2.87/1.54  thf(fact_178_subset__translation__eq, axiom, (! [A:$tType]: (((real_V1076094709vector @ A) => (! [A2:A,S:(set @ A),T2:(set @ A)]: (((((ord_less_eq @ (set @ A)) @ ((((image @ A) @ A) @ ((plus_plus @ A) @ A2)) @ S)) @ ((((image @ A) @ A) @ ((plus_plus @ A) @ A2)) @ T2)) = (((ord_less_eq @ (set @ A)) @ S) @ T2)))))))).
% 2.87/1.54  thf(fact_179_range__subsetD, axiom, (! [B:$tType,A:$tType,F3:(B > A),B5:(set @ A),I:B]: (((((ord_less_eq @ (set @ A)) @ ((((image @ B) @ A) @ F3) @ (top_top @ (set @ B)))) @ B5) => (((member @ A) @ (F3 @ I)) @ B5))))).
% 2.87/1.54  thf(fact_180_all__subset__image, axiom, (! [A:$tType,B:$tType,F3:(B > A),A6:(set @ B),P2:((set @ A) > $o)]: (((! [B8:(set @ A)]: (((((ord_less_eq @ (set @ A)) @ B8) @ ((((image @ B) @ A) @ F3) @ A6)) => (P2 @ B8)))) = (! [B8:(set @ B)]: (((((ord_less_eq @ (set @ B)) @ B8) @ A6) => (P2 @ ((((image @ B) @ A) @ F3) @ B8))))))))).
% 2.87/1.54  thf(fact_181_Collect__case__prod__mono, axiom, (! [B:$tType,A:$tType,A6:(A > (B > $o)),B5:(A > (B > $o))]: (((((ord_less_eq @ (A > (B > $o))) @ A6) @ B5) => (((ord_less_eq @ (set @ ((product_prod @ A) @ B))) @ ((collect @ ((product_prod @ A) @ B)) @ ((((product_case_prod @ A) @ B) @ $o) @ A6))) @ ((collect @ ((product_prod @ A) @ B)) @ ((((product_case_prod @ A) @ B) @ $o) @ B5))))))).
% 2.87/1.54  thf(fact_182_mono__mult1, axiom, (! [A:$tType,R2:(set @ ((product_prod @ A) @ A)),R6:(set @ ((product_prod @ A) @ A))]: (((((ord_less_eq @ (set @ ((product_prod @ A) @ A))) @ R2) @ R6) => (((ord_less_eq @ (set @ ((product_prod @ (multiset @ A)) @ (multiset @ A)))) @ ((mult1 @ A) @ R2)) @ ((mult1 @ A) @ R6)))))).
% 2.87/1.54  thf(fact_183_same__fstI, axiom, (! [B:$tType,A:$tType,P2:(A > $o),X:A,Y7:B,Y:B,R3:(A > (set @ ((product_prod @ B) @ B)))]: (((P2 @ X) => ((((member @ ((product_prod @ B) @ B)) @ ((((product_Pair @ B) @ B) @ Y7) @ Y)) @ (R3 @ X)) => (((member @ ((product_prod @ ((product_prod @ A) @ B)) @ ((product_prod @ A) @ B))) @ ((((product_Pair @ ((product_prod @ A) @ B)) @ ((product_prod @ A) @ B)) @ ((((product_Pair @ A) @ B) @ X) @ Y7)) @ ((((product_Pair @ A) @ B) @ X) @ Y))) @ ((((same_fst @ A) @ B) @ P2) @ R3))))))).
% 2.87/1.54  thf(fact_184_relChain__def, axiom, (! [B:$tType,A:$tType]: (((ord @ B) => (((bNF_Ca1785829860lChain @ A) @ B) = (^ [R:(set @ ((product_prod @ A) @ A)),As:(A > B)]: ((! [I2:A,J:A]: (((((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ I2) @ J)) @ R) => (((ord_less_eq @ B) @ (As @ I2)) @ (As @ J)))))))))))).
% 2.87/1.54  thf(fact_185_mult1__union, axiom, (! [A:$tType,B5:(multiset @ A),D4:(multiset @ A),R2:(set @ ((product_prod @ A) @ A)),C5:(multiset @ A)]: (((((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ B5) @ D4)) @ ((mult1 @ A) @ R2)) => (((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ (((plus_plus @ (multiset @ A)) @ C5) @ B5)) @ (((plus_plus @ (multiset @ A)) @ C5) @ D4))) @ ((mult1 @ A) @ R2)))))).
% 2.87/1.54  thf(fact_186_mult1E, axiom, (! [A:$tType,N:(multiset @ A),M:(multiset @ A),R2:(set @ ((product_prod @ A) @ A))]: (((((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ N) @ M)) @ ((mult1 @ A) @ R2)) => (~ ((! [A4:A,M0:(multiset @ A)]: (((M = (((add_mset @ A) @ A4) @ M0)) => (! [K3:(multiset @ A)]: (((N = (((plus_plus @ (multiset @ A)) @ M0) @ K3)) => (~ ((! [B7:A]: (((((member @ A) @ B7) @ ((set_mset @ A) @ K3)) => (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ B7) @ A4)) @ R2)))))))))))))))))).
% 2.87/1.54  thf(fact_187_mult1I, axiom, (! [A:$tType,M:(multiset @ A),A2:A,M02:(multiset @ A),N:(multiset @ A),K:(multiset @ A),R2:(set @ ((product_prod @ A) @ A))]: (((M = (((add_mset @ A) @ A2) @ M02)) => ((N = (((plus_plus @ (multiset @ A)) @ M02) @ K)) => ((! [B4:A]: (((((member @ A) @ B4) @ ((set_mset @ A) @ K)) => (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ B4) @ A2)) @ R2)))) => (((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ N) @ M)) @ ((mult1 @ A) @ R2)))))))).
% 2.87/1.54  thf(fact_188_less__add, axiom, (! [A:$tType,N:(multiset @ A),A2:A,M02:(multiset @ A),R2:(set @ ((product_prod @ A) @ A))]: (((((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ N) @ (((add_mset @ A) @ A2) @ M02))) @ ((mult1 @ A) @ R2)) => ((? [M3:(multiset @ A)]: (((((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ M3) @ M02)) @ ((mult1 @ A) @ R2)) & (N = (((add_mset @ A) @ A2) @ M3))))) | (? [K3:(multiset @ A)]: (((! [B7:A]: (((((member @ A) @ B7) @ ((set_mset @ A) @ K3)) => (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ B7) @ A2)) @ R2)))) & (N = (((plus_plus @ (multiset @ A)) @ M02) @ K3)))))))))).
% 2.87/1.54  thf(fact_189_mset__add, axiom, (! [A:$tType,A2:A,A6:(multiset @ A)]: (((((member @ A) @ A2) @ ((set_mset @ A) @ A6)) => (~ ((! [B9:(multiset @ A)]: ((A6 != (((add_mset @ A) @ A2) @ B9)))))))))).
% 2.87/1.54  thf(fact_190_multi__member__split, axiom, (! [A:$tType,X:A,M:(multiset @ A)]: (((((member @ A) @ X) @ ((set_mset @ A) @ M)) => (? [A9:(multiset @ A)]: ((M = (((add_mset @ A) @ X) @ A9)))))))).
% 2.87/1.54  thf(fact_191_insert__noteq__member, axiom, (! [A:$tType,B2:A,B5:(multiset @ A),C3:A,C5:(multiset @ A)]: ((((((add_mset @ A) @ B2) @ B5) = (((add_mset @ A) @ C3) @ C5)) => ((B2 != C3) => (((member @ A) @ C3) @ ((set_mset @ A) @ B5))))))).
% 2.87/1.54  thf(fact_192_union__single__eq__member, axiom, (! [A:$tType,X:A,M:(multiset @ A),N:(multiset @ A)]: ((((((add_mset @ A) @ X) @ M) = N) => (((member @ A) @ X) @ ((set_mset @ A) @ N)))))).
% 2.87/1.54  thf(fact_193_union__iff, axiom, (! [A:$tType,A2:A,A6:(multiset @ A),B5:(multiset @ A)]: (((((member @ A) @ A2) @ ((set_mset @ A) @ (((plus_plus @ (multiset @ A)) @ A6) @ B5))) = ((((member @ A) @ A2) @ ((set_mset @ A) @ A6)) | (((member @ A) @ A2) @ ((set_mset @ A) @ B5))))))).
% 2.87/1.54  thf(fact_194_mult__implies__one__step, axiom, (! [A:$tType,R2:(set @ ((product_prod @ A) @ A)),M:(multiset @ A),N:(multiset @ A)]: ((((trans @ A) @ R2) => ((((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ M) @ N)) @ ((mult @ A) @ R2)) => (? [I3:(multiset @ A),J2:(multiset @ A)]: (((N = (((plus_plus @ (multiset @ A)) @ I3) @ J2)) & (? [K3:(multiset @ A)]: (((M = (((plus_plus @ (multiset @ A)) @ I3) @ K3)) & ((J2 != (zero_zero @ (multiset @ A))) & (! [X2:A]: (((((member @ A) @ X2) @ ((set_mset @ A) @ K3)) => (? [Xa2:A]: (((((member @ A) @ Xa2) @ ((set_mset @ A) @ J2)) & (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X2) @ Xa2)) @ R2))))))))))))))))))).
% 2.87/1.54  thf(fact_195_one__step__implies__mult, axiom, (! [A:$tType,J3:(multiset @ A),K:(multiset @ A),R2:(set @ ((product_prod @ A) @ A)),I4:(multiset @ A)]: (((J3 != (zero_zero @ (multiset @ A))) => ((! [X3:A]: (((((member @ A) @ X3) @ ((set_mset @ A) @ K)) => (? [Xa:A]: (((((member @ A) @ Xa) @ ((set_mset @ A) @ J3)) & (((member @ ((product_prod @ A) @ A)) @ ((((product_Pair @ A) @ A) @ X3) @ Xa)) @ R2))))))) => (((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ (((plus_plus @ (multiset @ A)) @ I4) @ K)) @ (((plus_plus @ (multiset @ A)) @ I4) @ J3))) @ ((mult @ A) @ R2))))))).
% 2.87/1.54  thf(fact_196_subset__mset_Ozero__eq__add__iff__both__eq__0, axiom, (! [A:$tType,X:(multiset @ A),Y:(multiset @ A)]: ((((zero_zero @ (multiset @ A)) = (((plus_plus @ (multiset @ A)) @ X) @ Y)) = ((X = (zero_zero @ (multiset @ A))) & (Y = (zero_zero @ (multiset @ A)))))))).
% 2.87/1.54  thf(fact_197_subset__mset_Oadd__eq__0__iff__both__eq__0, axiom, (! [A:$tType,X:(multiset @ A),Y:(multiset @ A)]: ((((((plus_plus @ (multiset @ A)) @ X) @ Y) = (zero_zero @ (multiset @ A))) = ((X = (zero_zero @ (multiset @ A))) & (Y = (zero_zero @ (multiset @ A)))))))).
% 2.87/1.54  thf(fact_198_union__eq__empty, axiom, (! [A:$tType,M:(multiset @ A),N:(multiset @ A)]: ((((((plus_plus @ (multiset @ A)) @ M) @ N) = (zero_zero @ (multiset @ A))) = ((M = (zero_zero @ (multiset @ A))) & (N = (zero_zero @ (multiset @ A)))))))).
% 2.87/1.54  thf(fact_199_empty__eq__union, axiom, (! [A:$tType,M:(multiset @ A),N:(multiset @ A)]: ((((zero_zero @ (multiset @ A)) = (((plus_plus @ (multiset @ A)) @ M) @ N)) = ((M = (zero_zero @ (multiset @ A))) & (N = (zero_zero @ (multiset @ A)))))))).
% 2.87/1.54  thf(fact_200_add__mset__eq__singleton__iff, axiom, (! [A:$tType,X:A,M:(multiset @ A),Y:A]: ((((((add_mset @ A) @ X) @ M) = (((add_mset @ A) @ Y) @ (zero_zero @ (multiset @ A)))) = ((M = (zero_zero @ (multiset @ A))) & (X = Y)))))).
% 2.87/1.54  thf(fact_201_single__eq__add__mset, axiom, (! [A:$tType,A2:A,B2:A,M:(multiset @ A)]: ((((((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A))) = (((add_mset @ A) @ B2) @ M)) = ((B2 = A2) & (M = (zero_zero @ (multiset @ A)))))))).
% 2.87/1.54  thf(fact_202_add__mset__eq__single, axiom, (! [A:$tType,B2:A,M:(multiset @ A),A2:A]: ((((((add_mset @ A) @ B2) @ M) = (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A)))) = ((B2 = A2) & (M = (zero_zero @ (multiset @ A)))))))).
% 2.87/1.54  thf(fact_203_single__eq__single, axiom, (! [A:$tType,A2:A,B2:A]: ((((((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A))) = (((add_mset @ A) @ B2) @ (zero_zero @ (multiset @ A)))) = (A2 = B2))))).
% 2.87/1.54  thf(fact_204_image__add__0, axiom, (! [A:$tType]: (((comm_monoid_add @ A) => (! [S3:(set @ A)]: ((((((image @ A) @ A) @ ((plus_plus @ A) @ (zero_zero @ A))) @ S3) = S3))))))).
% 2.87/1.54  thf(fact_205_multiset__nonemptyE, axiom, (! [A:$tType,A6:(multiset @ A)]: (((A6 != (zero_zero @ (multiset @ A))) => (~ ((! [X3:A]: ((~ ((((member @ A) @ X3) @ ((set_mset @ A) @ A6)))))))))))).
% 2.87/1.54  thf(fact_206_zero__prod__def, axiom, (! [A:$tType,B:$tType]: ((((zero @ B) & (zero @ A)) => ((zero_zero @ ((product_prod @ A) @ B)) = ((((product_Pair @ A) @ B) @ (zero_zero @ A)) @ (zero_zero @ B))))))).
% 2.87/1.54  thf(fact_207_empty__neutral_I1_J, axiom, (! [A:$tType,X:(multiset @ A)]: (((((plus_plus @ (multiset @ A)) @ (zero_zero @ (multiset @ A))) @ X) = X)))).
% 2.87/1.54  thf(fact_208_empty__neutral_I2_J, axiom, (! [A:$tType,X:(multiset @ A)]: (((((plus_plus @ (multiset @ A)) @ X) @ (zero_zero @ (multiset @ A))) = X)))).
% 2.87/1.54  thf(fact_209_multi__nonempty__split, axiom, (! [A:$tType,M:(multiset @ A)]: (((M != (zero_zero @ (multiset @ A))) => (? [A9:(multiset @ A),A4:A]: ((M = (((add_mset @ A) @ A4) @ A9)))))))).
% 2.87/1.54  thf(fact_210_empty__not__add__mset, axiom, (! [A:$tType,A2:A,A6:(multiset @ A)]: (((zero_zero @ (multiset @ A)) != (((add_mset @ A) @ A2) @ A6))))).
% 2.87/1.54  thf(fact_211_multiset__induct2, axiom, (! [A:$tType,B:$tType,P2:((multiset @ A) > ((multiset @ B) > $o)),M:(multiset @ A),N:(multiset @ B)]: ((((P2 @ (zero_zero @ (multiset @ A))) @ (zero_zero @ (multiset @ B))) => ((! [A4:A,M3:(multiset @ A),N3:(multiset @ B)]: ((((P2 @ M3) @ N3) => ((P2 @ (((add_mset @ A) @ A4) @ M3)) @ N3)))) => ((! [A4:B,M3:(multiset @ A),N3:(multiset @ B)]: ((((P2 @ M3) @ N3) => ((P2 @ M3) @ (((add_mset @ B) @ A4) @ N3))))) => ((P2 @ M) @ N))))))).
% 2.87/1.54  thf(fact_212_multiset__induct, axiom, (! [A:$tType,P2:((multiset @ A) > $o),M:(multiset @ A)]: (((P2 @ (zero_zero @ (multiset @ A))) => ((! [X3:A,M3:(multiset @ A)]: (((P2 @ M3) => (P2 @ (((add_mset @ A) @ X3) @ M3))))) => (P2 @ M)))))).
% 2.87/1.54  thf(fact_213_multiset__cases, axiom, (! [A:$tType,M:(multiset @ A)]: (((M != (zero_zero @ (multiset @ A))) => (~ ((! [X3:A,N3:(multiset @ A)]: ((M != (((add_mset @ A) @ X3) @ N3)))))))))).
% 2.87/1.54  thf(fact_214_single__is__union, axiom, (! [A:$tType,A2:A,M:(multiset @ A),N:(multiset @ A)]: ((((((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A))) = (((plus_plus @ (multiset @ A)) @ M) @ N)) = ((((((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A))) = M) & (N = (zero_zero @ (multiset @ A)))) | ((M = (zero_zero @ (multiset @ A))) & ((((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A))) = N))))))).
% 2.87/1.54  thf(fact_215_union__is__single, axiom, (! [A:$tType,M:(multiset @ A),N:(multiset @ A),A2:A]: ((((((plus_plus @ (multiset @ A)) @ M) @ N) = (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A)))) = (((M = (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A)))) & (N = (zero_zero @ (multiset @ A)))) | ((M = (zero_zero @ (multiset @ A))) & (N = (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A)))))))))).
% 2.87/1.54  thf(fact_216_add__mset__add__single, axiom, (! [A:$tType]: (((add_mset @ A) = (^ [A7:A,A5:(multiset @ A)]: ((((plus_plus @ (multiset @ A)) @ A5) @ (((add_mset @ A) @ A7) @ (zero_zero @ (multiset @ A)))))))))).
% 2.87/1.54  thf(fact_217_multi__member__last, axiom, (! [A:$tType,X:A]: ((((member @ A) @ X) @ ((set_mset @ A) @ (((add_mset @ A) @ X) @ (zero_zero @ (multiset @ A)))))))).
% 2.87/1.54  thf(fact_218_not__less__empty, axiom, (! [A:$tType,M:(multiset @ A),R2:(set @ ((product_prod @ A) @ A))]: ((~ ((((member @ ((product_prod @ (multiset @ A)) @ (multiset @ A))) @ ((((product_Pair @ (multiset @ A)) @ (multiset @ A)) @ M) @ (zero_zero @ (multiset @ A)))) @ ((mult1 @ A) @ R2))))))).
% 2.87/1.54  thf(fact_219_multiset__induct__max, axiom, (! [A:$tType]: (((linorder @ A) => (! [P2:((multiset @ A) > $o),M:(multiset @ A)]: (((P2 @ (zero_zero @ (multiset @ A))) => ((! [X3:A,M3:(multiset @ A)]: (((P2 @ M3) => ((! [Xa:A]: (((((member @ A) @ Xa) @ ((set_mset @ A) @ M3)) => (((ord_less_eq @ A) @ Xa) @ X3)))) => (P2 @ (((add_mset @ A) @ X3) @ M3)))))) => (P2 @ M))))))))).
% 2.87/1.54  thf(fact_220_multiset__induct__min, axiom, (! [A:$tType]: (((linorder @ A) => (! [P2:((multiset @ A) > $o),M:(multiset @ A)]: (((P2 @ (zero_zero @ (multiset @ A))) => ((! [X3:A,M3:(multiset @ A)]: (((P2 @ M3) => ((! [Xa:A]: (((((member @ A) @ Xa) @ ((set_mset @ A) @ M3)) => (((ord_less_eq @ A) @ X3) @ Xa)))) => (P2 @ (((add_mset @ A) @ X3) @ M3)))))) => (P2 @ M))))))))).
% 2.87/1.54  thf(fact_221_multi__member__skip, axiom, (! [A:$tType,X:A,XS:(multiset @ A),Y:A]: (((((member @ A) @ X) @ ((set_mset @ A) @ XS)) => (((member @ A) @ X) @ ((set_mset @ A) @ (((plus_plus @ (multiset @ A)) @ (((add_mset @ A) @ Y) @ (zero_zero @ (multiset @ A)))) @ XS))))))).
% 2.87/1.54  thf(fact_222_multi__member__this, axiom, (! [A:$tType,X:A,XS:(multiset @ A)]: ((((member @ A) @ X) @ ((set_mset @ A) @ (((plus_plus @ (multiset @ A)) @ (((add_mset @ A) @ X) @ (zero_zero @ (multiset @ A)))) @ XS)))))).
% 2.87/1.54  thf(fact_223_Multiset_Ois__empty__def, axiom, (! [A:$tType]: (((is_empty @ A) = (^ [A5:(multiset @ A)]: ((A5 = (zero_zero @ (multiset @ A))))))))).
% 2.87/1.54  thf(fact_224_subset__mset_Osum__mset__0__iff, axiom, (! [A:$tType,M:(multiset @ (multiset @ A))]: (((((((comm_monoid_sum_mset @ (multiset @ A)) @ (plus_plus @ (multiset @ A))) @ (zero_zero @ (multiset @ A))) @ M) = (zero_zero @ (multiset @ A))) = (! [X4:(multiset @ A)]: (((((member @ (multiset @ A)) @ X4) @ ((set_mset @ (multiset @ A)) @ M)) => (X4 = (zero_zero @ (multiset @ A)))))))))).
% 2.87/1.54  thf(fact_225_comm__monoid__add_Osum__mset_Ocong, axiom, (! [A:$tType]: (((comm_monoid_sum_mset @ A) = (comm_monoid_sum_mset @ A))))).
% 2.87/1.54  thf(fact_226_in__mset__fold__plus__iff, axiom, (! [A:$tType,X:A,M:(multiset @ A),NN:(multiset @ (multiset @ A))]: (((((member @ A) @ X) @ ((set_mset @ A) @ (((((fold_mset @ (multiset @ A)) @ (multiset @ A)) @ (plus_plus @ (multiset @ A))) @ M) @ NN))) = ((((member @ A) @ X) @ ((set_mset @ A) @ M)) | (? [N2:(multiset @ A)]: (((((member @ (multiset @ A)) @ N2) @ ((set_mset @ (multiset @ A)) @ NN)) & (((member @ A) @ X) @ ((set_mset @ A) @ N2)))))))))).
% 2.87/1.54  thf(fact_227_insert__DiffM2, axiom, (! [A:$tType,X:A,M:(multiset @ A)]: (((((member @ A) @ X) @ ((set_mset @ A) @ M)) => ((((plus_plus @ (multiset @ A)) @ (((minus_minus @ (multiset @ A)) @ M) @ (((add_mset @ A) @ X) @ (zero_zero @ (multiset @ A))))) @ (((add_mset @ A) @ X) @ (zero_zero @ (multiset @ A)))) = M))))).
% 2.87/1.54  thf(fact_228_diff__Pair, axiom, (! [A:$tType,B:$tType]: ((((minus @ B) & (minus @ A)) => (! [A2:A,B2:B,C3:A,D3:B]: (((((minus_minus @ ((product_prod @ A) @ B)) @ ((((product_Pair @ A) @ B) @ A2) @ B2)) @ ((((product_Pair @ A) @ B) @ C3) @ D3)) = ((((product_Pair @ A) @ B) @ (((minus_minus @ A) @ A2) @ C3)) @ (((minus_minus @ B) @ B2) @ D3))))))))).
% 2.87/1.54  thf(fact_229_diff__diff__add__mset, axiom, (! [A:$tType,M:(multiset @ A),N:(multiset @ A),P2:(multiset @ A)]: (((((minus_minus @ (multiset @ A)) @ (((minus_minus @ (multiset @ A)) @ M) @ N)) @ P2) = (((minus_minus @ (multiset @ A)) @ M) @ (((plus_plus @ (multiset @ A)) @ N) @ P2)))))).
% 2.87/1.54  thf(fact_230_fold__mset__empty, axiom, (! [B:$tType,A:$tType,F3:(B > (A > A)),S:A]: (((((((fold_mset @ B) @ A) @ F3) @ S) @ (zero_zero @ (multiset @ B))) = S)))).
% 2.87/1.54  thf(fact_231_add__mset__remove__trivial, axiom, (! [A:$tType,X:A,M:(multiset @ A)]: (((((minus_minus @ (multiset @ A)) @ (((add_mset @ A) @ X) @ M)) @ (((add_mset @ A) @ X) @ (zero_zero @ (multiset @ A)))) = M)))).
% 2.87/1.54  thf(fact_232_diff__add__mset__swap, axiom, (! [A:$tType,B2:A,A6:(multiset @ A),M:(multiset @ A)]: (((~ ((((member @ A) @ B2) @ ((set_mset @ A) @ A6)))) => ((((minus_minus @ (multiset @ A)) @ (((add_mset @ A) @ B2) @ M)) @ A6) = (((add_mset @ A) @ B2) @ (((minus_minus @ (multiset @ A)) @ M) @ A6))))))).
% 2.87/1.54  thf(fact_233_insert__DiffM, axiom, (! [A:$tType,X:A,M:(multiset @ A)]: (((((member @ A) @ X) @ ((set_mset @ A) @ M)) => ((((add_mset @ A) @ X) @ (((minus_minus @ (multiset @ A)) @ M) @ (((add_mset @ A) @ X) @ (zero_zero @ (multiset @ A))))) = M))))).
% 2.87/1.54  thf(fact_234_diff__union__swap2, axiom, (! [A:$tType,Y:A,M:(multiset @ A),X:A]: (((((member @ A) @ Y) @ ((set_mset @ A) @ M)) => ((((minus_minus @ (multiset @ A)) @ (((add_mset @ A) @ X) @ M)) @ (((add_mset @ A) @ Y) @ (zero_zero @ (multiset @ A)))) = (((add_mset @ A) @ X) @ (((minus_minus @ (multiset @ A)) @ M) @ (((add_mset @ A) @ Y) @ (zero_zero @ (multiset @ A)))))))))).
% 2.87/1.54  thf(fact_235_diff__empty, axiom, (! [A:$tType,M:(multiset @ A)]: ((((((minus_minus @ (multiset @ A)) @ M) @ (zero_zero @ (multiset @ A))) = M) & ((((minus_minus @ (multiset @ A)) @ (zero_zero @ (multiset @ A))) @ M) = (zero_zero @ (multiset @ A))))))).
% 2.87/1.54  thf(fact_236_Multiset_Odiff__cancel, axiom, (! [A:$tType,A6:(multiset @ A)]: (((((minus_minus @ (multiset @ A)) @ A6) @ A6) = (zero_zero @ (multiset @ A)))))).
% 2.87/1.54  thf(fact_237_union__single__eq__diff, axiom, (! [A:$tType,X:A,M:(multiset @ A),N:(multiset @ A)]: ((((((add_mset @ A) @ X) @ M) = N) => (M = (((minus_minus @ (multiset @ A)) @ N) @ (((add_mset @ A) @ X) @ (zero_zero @ (multiset @ A))))))))).
% 2.87/1.54  thf(fact_238_add__eq__conv__diff, axiom, (! [A:$tType,A2:A,M:(multiset @ A),B2:A,N:(multiset @ A)]: ((((((add_mset @ A) @ A2) @ M) = (((add_mset @ A) @ B2) @ N)) = (((M = N) & (A2 = B2)) | ((M = (((add_mset @ A) @ B2) @ (((minus_minus @ (multiset @ A)) @ N) @ (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A)))))) & (N = (((add_mset @ A) @ A2) @ (((minus_minus @ (multiset @ A)) @ M) @ (((add_mset @ A) @ B2) @ (zero_zero @ (multiset @ A)))))))))))).
% 2.87/1.54  thf(fact_239_diff__union__swap, axiom, (! [A:$tType,A2:A,B2:A,M:(multiset @ A)]: (((A2 != B2) => ((((add_mset @ A) @ B2) @ (((minus_minus @ (multiset @ A)) @ M) @ (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A))))) = (((minus_minus @ (multiset @ A)) @ (((add_mset @ A) @ B2) @ M)) @ (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A))))))))).
% 2.87/1.54  thf(fact_240_in__diffD, axiom, (! [A:$tType,A2:A,M:(multiset @ A),N:(multiset @ A)]: (((((member @ A) @ A2) @ ((set_mset @ A) @ (((minus_minus @ (multiset @ A)) @ M) @ N))) => (((member @ A) @ A2) @ ((set_mset @ A) @ M)))))).
% 2.87/1.54  thf(fact_241_minus__prod__def, axiom, (! [B:$tType,A:$tType]: ((((minus @ A) & (minus @ B)) => ((minus_minus @ ((product_prod @ A) @ B)) = (^ [X4:((product_prod @ A) @ B),Y4:((product_prod @ A) @ B)]: (((((product_Pair @ A) @ B) @ (((minus_minus @ A) @ (((product_fst @ A) @ B) @ X4)) @ (((product_fst @ A) @ B) @ Y4))) @ (((minus_minus @ B) @ (((product_snd @ A) @ B) @ X4)) @ (((product_snd @ A) @ B) @ Y4)))))))))).
% 2.87/1.54  thf(fact_242_diff__union__cancelR, axiom, (! [A:$tType,M:(multiset @ A),N:(multiset @ A)]: (((((minus_minus @ (multiset @ A)) @ (((plus_plus @ (multiset @ A)) @ M) @ N)) @ N) = M)))).
% 2.87/1.54  thf(fact_243_diff__union__cancelL, axiom, (! [A:$tType,N:(multiset @ A),M:(multiset @ A)]: (((((minus_minus @ (multiset @ A)) @ (((plus_plus @ (multiset @ A)) @ N) @ M)) @ N) = M)))).
% 2.87/1.54  thf(fact_244_Multiset_Odiff__add, axiom, (! [A:$tType,M:(multiset @ A),N:(multiset @ A),Q:(multiset @ A)]: (((((minus_minus @ (multiset @ A)) @ M) @ (((plus_plus @ (multiset @ A)) @ N) @ Q)) = (((minus_minus @ (multiset @ A)) @ (((minus_minus @ (multiset @ A)) @ M) @ N)) @ Q))))).
% 2.87/1.54  thf(fact_245_add__mset__diff__bothsides, axiom, (! [A:$tType,A2:A,M:(multiset @ A),A6:(multiset @ A)]: (((((minus_minus @ (multiset @ A)) @ (((add_mset @ A) @ A2) @ M)) @ (((add_mset @ A) @ A2) @ A6)) = (((minus_minus @ (multiset @ A)) @ M) @ A6))))).
% 2.87/1.54  thf(fact_246_Multiset_Odiff__right__commute, axiom, (! [A:$tType,M:(multiset @ A),N:(multiset @ A),Q:(multiset @ A)]: (((((minus_minus @ (multiset @ A)) @ (((minus_minus @ (multiset @ A)) @ M) @ N)) @ Q) = (((minus_minus @ (multiset @ A)) @ (((minus_minus @ (multiset @ A)) @ M) @ Q)) @ N))))).
% 2.87/1.54  thf(fact_247_union__fold__mset__add__mset, axiom, (! [A:$tType]: (((plus_plus @ (multiset @ A)) = (((fold_mset @ A) @ (multiset @ A)) @ (add_mset @ A)))))).
% 2.87/1.54  thf(fact_248_diff__single__trivial, axiom, (! [A:$tType,X:A,M:(multiset @ A)]: (((~ ((((member @ A) @ X) @ ((set_mset @ A) @ M)))) => ((((minus_minus @ (multiset @ A)) @ M) @ (((add_mset @ A) @ X) @ (zero_zero @ (multiset @ A)))) = M))))).
% 2.87/1.54  thf(fact_249_diff__single__eq__union, axiom, (! [A:$tType,X:A,M:(multiset @ A),N:(multiset @ A)]: (((((member @ A) @ X) @ ((set_mset @ A) @ M)) => (((((minus_minus @ (multiset @ A)) @ M) @ (((add_mset @ A) @ X) @ (zero_zero @ (multiset @ A)))) = N) = (M = (((add_mset @ A) @ X) @ N))))))).
% 2.87/1.54  thf(fact_250_multi__drop__mem__not__eq, axiom, (! [A:$tType,C3:A,B5:(multiset @ A)]: (((((member @ A) @ C3) @ ((set_mset @ A) @ B5)) => ((((minus_minus @ (multiset @ A)) @ B5) @ (((add_mset @ A) @ C3) @ (zero_zero @ (multiset @ A)))) != B5))))).
% 2.87/1.54  thf(fact_251_add__mset__remove__trivial__If, axiom, (! [A:$tType,A2:A,N:(multiset @ A)]: ((((((member @ A) @ A2) @ ((set_mset @ A) @ N)) => ((((add_mset @ A) @ A2) @ (((minus_minus @ (multiset @ A)) @ N) @ (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A))))) = N)) & ((~ ((((member @ A) @ A2) @ ((set_mset @ A) @ N)))) => ((((add_mset @ A) @ A2) @ (((minus_minus @ (multiset @ A)) @ N) @ (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A))))) = (((add_mset @ A) @ A2) @ N))))))).
% 2.87/1.54  thf(fact_252_add__mset__remove__trivial__eq, axiom, (! [A:$tType,N:(multiset @ A),A2:A]: (((N = (((add_mset @ A) @ A2) @ (((minus_minus @ (multiset @ A)) @ N) @ (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A)))))) = (((member @ A) @ A2) @ ((set_mset @ A) @ N)))))).
% 2.87/1.54  thf(fact_253_multiset__add__sub__el__shuffle, axiom, (! [A:$tType,C3:A,B5:(multiset @ A),B2:A]: (((((member @ A) @ C3) @ ((set_mset @ A) @ B5)) => ((B2 != C3) => ((((add_mset @ A) @ B2) @ (((minus_minus @ (multiset @ A)) @ B5) @ (((add_mset @ A) @ C3) @ (zero_zero @ (multiset @ A))))) = (((minus_minus @ (multiset @ A)) @ (((add_mset @ A) @ B2) @ B5)) @ (((add_mset @ A) @ C3) @ (zero_zero @ (multiset @ A)))))))))).
% 2.87/1.54  thf(fact_254_more__than__one__mset__mset__diff, axiom, (! [A:$tType,A2:A,M:(multiset @ A)]: (((((member @ A) @ A2) @ ((set_mset @ A) @ (((minus_minus @ (multiset @ A)) @ M) @ (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A)))))) => (((set_mset @ A) @ (((minus_minus @ (multiset @ A)) @ M) @ (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A))))) = ((set_mset @ A) @ M)))))).
% 2.87/1.54  thf(fact_255_diff__union__single__conv, axiom, (! [A:$tType,A2:A,J3:(multiset @ A),I4:(multiset @ A)]: (((((member @ A) @ A2) @ ((set_mset @ A) @ J3)) => ((((minus_minus @ (multiset @ A)) @ (((plus_plus @ (multiset @ A)) @ I4) @ J3)) @ (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A)))) = (((plus_plus @ (multiset @ A)) @ I4) @ (((minus_minus @ (multiset @ A)) @ J3) @ (((add_mset @ A) @ A2) @ (zero_zero @ (multiset @ A)))))))))).
% 2.87/1.54  thf(tcon_Product__Type_Oprod___Orderings_Opreorder, axiom, (! [A10:$tType,A11:$tType]: ((((preorder @ A10) & (preorder @ A11)) => (preorder @ ((product_prod @ A10) @ A11)))))).
% 2.87/1.54  thf(tcon_Multiset_Omultiset___Orderings_Opreorder_1, axiom, (! [A10:$tType]: (((preorder @ A10) => (preorder @ (multiset @ A10)))))).
% 2.87/1.54  thf(tcon_HOL_Obool___Orderings_Opreorder_2, axiom, (preorder @ $o)).
% 2.87/1.54  thf(tcon_Set_Oset___Orderings_Opreorder_3, axiom, (! [A10:$tType]: ((preorder @ (set @ A10))))).
% 2.87/1.54  thf(tcon_fun___Orderings_Opreorder_4, axiom, (! [A10:$tType,A11:$tType]: (((preorder @ A11) => (preorder @ (A10 > A11)))))).
% 2.87/1.54  thf(tcon_fun___Orderings_Otop, axiom, (! [A10:$tType,A11:$tType]: (((top @ A11) => (top @ (A10 > A11)))))).
% 2.87/1.54  thf(tcon_fun___Orderings_Oord, axiom, (! [A10:$tType,A11:$tType]: (((ord @ A11) => (ord @ (A10 > A11)))))).
% 2.87/1.54  thf(tcon_fun___Groups_Ominus, axiom, (! [A10:$tType,A11:$tType]: (((minus @ A11) => (minus @ (A10 > A11)))))).
% 2.87/1.54  thf(tcon_Set_Oset___Groups_Ocomm__monoid__add, axiom, (! [A10:$tType]: (((comm_monoid_add @ A10) => (comm_monoid_add @ (set @ A10)))))).
% 2.87/1.54  thf(tcon_Set_Oset___Orderings_Otop_5, axiom, (! [A10:$tType]: ((top @ (set @ A10))))).
% 2.87/1.54  thf(tcon_Set_Oset___Orderings_Oord_6, axiom, (! [A10:$tType]: ((ord @ (set @ A10))))).
% 2.87/1.54  thf(tcon_Set_Oset___Groups_Ominus_7, axiom, (! [A10:$tType]: ((minus @ (set @ A10))))).
% 2.87/1.54  thf(tcon_Set_Oset___Groups_Ozero, axiom, (! [A10:$tType]: (((zero @ A10) => (zero @ (set @ A10)))))).
% 2.87/1.54  thf(tcon_Set_Oset___Groups_Oplus, axiom, (! [A10:$tType]: (((plus @ A10) => (plus @ (set @ A10)))))).
% 2.87/1.54  thf(tcon_HOL_Obool___Orderings_Olinorder, axiom, (linorder @ $o)).
% 2.87/1.54  thf(tcon_HOL_Obool___Orderings_Otop_8, axiom, (top @ $o)).
% 2.87/1.54  thf(tcon_HOL_Obool___Orderings_Oord_9, axiom, (ord @ $o)).
% 2.87/1.54  thf(tcon_HOL_Obool___Groups_Ominus_10, axiom, (minus @ $o)).
% 2.87/1.54  thf(tcon_Multiset_Omultiset___Groups_Ocomm__monoid__add_11, axiom, (! [A10:$tType]: ((comm_monoid_add @ (multiset @ A10))))).
% 2.87/1.54  thf(tcon_Multiset_Omultiset___Orderings_Oord_12, axiom, (! [A10:$tType]: (((preorder @ A10) => (ord @ (multiset @ A10)))))).
% 2.87/1.54  thf(tcon_Multiset_Omultiset___Groups_Ominus_13, axiom, (! [A10:$tType]: ((minus @ (multiset @ A10))))).
% 2.87/1.54  thf(tcon_Multiset_Omultiset___Groups_Ozero_14, axiom, (! [A10:$tType]: ((zero @ (multiset @ A10))))).
% 2.87/1.54  thf(tcon_Multiset_Omultiset___Groups_Oplus_15, axiom, (! [A10:$tType]: ((plus @ (multiset @ A10))))).
% 2.87/1.54  thf(tcon_Product__Type_Oprod___Real__Vector__Spaces_Oreal__vector, axiom, (! [A10:$tType,A11:$tType]: ((((real_V1076094709vector @ A10) & (real_V1076094709vector @ A11)) => (real_V1076094709vector @ ((product_prod @ A10) @ A11)))))).
% 2.87/1.54  thf(tcon_Product__Type_Oprod___Groups_Ocomm__monoid__add_16, axiom, (! [A10:$tType,A11:$tType]: ((((comm_monoid_add @ A10) & (comm_monoid_add @ A11)) => (comm_monoid_add @ ((product_prod @ A10) @ A11)))))).
% 2.87/1.54  thf(tcon_Product__Type_Oprod___Groups_Oab__group__add, axiom, (! [A10:$tType,A11:$tType]: ((((ab_group_add @ A10) & (ab_group_add @ A11)) => (ab_group_add @ ((product_prod @ A10) @ A11)))))).
% 2.87/1.54  thf(tcon_Product__Type_Oprod___Orderings_Otop_17, axiom, (! [A10:$tType,A11:$tType]: ((((top @ A10) & (top @ A11)) => (top @ ((product_prod @ A10) @ A11)))))).
% 2.87/1.54  thf(tcon_Product__Type_Oprod___Orderings_Oord_18, axiom, (! [A10:$tType,A11:$tType]: ((((ord @ A10) & (ord @ A11)) => (ord @ ((product_prod @ A10) @ A11)))))).
% 2.87/1.54  thf(tcon_Product__Type_Oprod___Groups_Ominus_19, axiom, (! [A10:$tType,A11:$tType]: ((((minus @ A10) & (minus @ A11)) => (minus @ ((product_prod @ A10) @ A11)))))).
% 2.87/1.54  thf(tcon_Product__Type_Oprod___Groups_Ozero_20, axiom, (! [A10:$tType,A11:$tType]: ((((zero @ A10) & (zero @ A11)) => (zero @ ((product_prod @ A10) @ A11)))))).
% 2.87/1.54  thf(tcon_Product__Type_Oprod___Groups_Oplus_21, axiom, (! [A10:$tType,A11:$tType]: ((((plus @ A10) & (plus @ A11)) => (plus @ ((product_prod @ A10) @ A11)))))).
% 2.87/1.54  thf(conj_0, hypothesis, (((member @ a) @ x) @ carrier)).
% 2.87/1.54  thf(conj_1, hypothesis, (((member @ a) @ y) @ carrier)).
% 2.87/1.54  thf(conj_2, hypothesis, (x != y)).
% 2.87/1.54  thf(conj_3, conjecture, ((((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ x) @ y)) @ relation) | (((member @ ((product_prod @ a) @ a)) @ ((((product_Pair @ a) @ a) @ y) @ x)) @ relation))).
% 2.87/1.54  % SZS output end ListOfTHF for /export/starexec/sandbox2/tmp/tmp.E8SE4n1R5p/DTF2DTF9149.p
% 2.87/1.54  ------------------------
% 2.96/1.60  ---- Cleaned THF ---
% 2.96/1.60  thf(ty_t_Product__Type_Oprod,type,
% 2.96/1.60      product_prod: $tType > $tType > $tType ).
% 2.96/1.60  
% 2.96/1.60  thf(ty_t_Multiset_Omultiset,type,
% 2.96/1.60      multiset: $tType > $tType ).
% 2.96/1.60  
% 2.96/1.60  thf(ty_t_Set_Oset,type,
% 2.96/1.60      set: $tType > $tType ).
% 2.96/1.60  
% 2.96/1.60  thf(ty_tf_a,type,
% 2.96/1.60      a: $tType ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_cl_Orderings_Opreorder,type,
% 2.96/1.60      preorder: 
% 2.96/1.60        !>[A: $tType] : $o ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_cl_HOL_Otype,type,
% 2.96/1.60      type: 
% 2.96/1.60        !>[A: $tType] : $o ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_cl_Groups_Oplus,type,
% 2.96/1.60      plus: 
% 2.96/1.60        !>[A: $tType] : $o ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_cl_Groups_Ozero,type,
% 2.96/1.60      zero: 
% 2.96/1.60        !>[A: $tType] : $o ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_cl_Groups_Ominus,type,
% 2.96/1.60      minus: 
% 2.96/1.60        !>[A: $tType] : $o ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_cl_Orderings_Oord,type,
% 2.96/1.60      ord: 
% 2.96/1.60        !>[A: $tType] : $o ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_cl_Orderings_Otop,type,
% 2.96/1.60      top: 
% 2.96/1.60        !>[A: $tType] : $o ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_cl_Orderings_Olinorder,type,
% 2.96/1.60      linorder: 
% 2.96/1.60        !>[A: $tType] : $o ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_cl_Groups_Oab__group__add,type,
% 2.96/1.60      ab_group_add: 
% 2.96/1.60        !>[A: $tType] : $o ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_cl_Groups_Ocomm__monoid__add,type,
% 2.96/1.60      comm_monoid_add: 
% 2.96/1.60        !>[A: $tType] : $o ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_cl_Real__Vector__Spaces_Oreal__vector,type,
% 2.96/1.60      real_V1076094709vector: 
% 2.96/1.60        !>[A: $tType] : $o ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_BNF__Cardinal__Order__Relation_OrelChain,type,
% 2.96/1.60      bNF_Ca1785829860lChain: 
% 2.96/1.60        !>[A: $tType,B: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > ( A > B ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Groups_Ominus__class_Ominus,type,
% 2.96/1.60      minus_minus: 
% 2.96/1.60        !>[A: $tType] : ( A > A > A ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Groups_Oplus__class_Oplus,type,
% 2.96/1.60      plus_plus: 
% 2.96/1.60        !>[A: $tType] : ( A > A > A ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Groups_Ozero__class_Ozero,type,
% 2.96/1.60      zero_zero: 
% 2.96/1.60        !>[A: $tType] : A ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Multiset_Oadd__mset,type,
% 2.96/1.60      add_mset: 
% 2.96/1.60        !>[A: $tType] : ( A > ( multiset @ A ) > ( multiset @ A ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Multiset_Ocomm__monoid__add_Osum__mset,type,
% 2.96/1.60      comm_monoid_sum_mset: 
% 2.96/1.60        !>[A: $tType] : ( ( A > A > A ) > A > ( multiset @ A ) > A ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Multiset_Ofold__mset,type,
% 2.96/1.60      fold_mset: 
% 2.96/1.60        !>[A: $tType,B: $tType] : ( ( A > B > B ) > B > ( multiset @ A ) > B ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Multiset_Ois__empty,type,
% 2.96/1.60      is_empty: 
% 2.96/1.60        !>[A: $tType] : ( ( multiset @ A ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Multiset_Omult,type,
% 2.96/1.60      mult: 
% 2.96/1.60        !>[A: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > ( set @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Multiset_Omult1,type,
% 2.96/1.60      mult1: 
% 2.96/1.60        !>[A: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > ( set @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Multiset_Omultp,type,
% 2.96/1.60      multp: 
% 2.96/1.60        !>[A: $tType] : ( ( A > A > $o ) > ( multiset @ A ) > ( multiset @ A ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Multiset_Oset__mset,type,
% 2.96/1.60      set_mset: 
% 2.96/1.60        !>[A: $tType] : ( ( multiset @ A ) > ( set @ A ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Order__Relation_Opreorder__on,type,
% 2.96/1.60      order_preorder_on: 
% 2.96/1.60        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Order__Relation_Ostrict__linear__order__on,type,
% 2.96/1.60      order_215145569der_on: 
% 2.96/1.60        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Orderings_Oord__class_Oless__eq,type,
% 2.96/1.60      ord_less_eq: 
% 2.96/1.60        !>[A: $tType] : ( A > A > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Orderings_Otop__class_Otop,type,
% 2.96/1.60      top_top: 
% 2.96/1.60        !>[A: $tType] : A ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Preferences__Mirabelle__stygcjuplb_Oat__least__as__good,type,
% 2.96/1.60      prefer310429814s_good: 
% 2.96/1.60        !>[A: $tType] : ( A > ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > ( set @ A ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Preferences__Mirabelle__stygcjuplb_Opreference,type,
% 2.96/1.60      prefer199794634erence: 
% 2.96/1.60        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Preferences__Mirabelle__stygcjuplb_Orational__preference,type,
% 2.96/1.60      prefer1997167224erence: 
% 2.96/1.60        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Preferences__Mirabelle__stygcjuplb_Orational__preference__axioms,type,
% 2.96/1.60      prefer1801827867axioms: 
% 2.96/1.60        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Product__Type_OPair,type,
% 2.96/1.60      product_Pair: 
% 2.96/1.60        !>[A: $tType,B: $tType] : ( A > B > ( product_prod @ A @ B ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Product__Type_Ocurry,type,
% 2.96/1.60      product_curry: 
% 2.96/1.60        !>[A: $tType,B: $tType,C: $tType] : ( ( ( product_prod @ A @ B ) > C ) > A > B > C ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Product__Type_Ointernal__case__prod,type,
% 2.96/1.60      produc2004651681e_prod: 
% 2.96/1.60        !>[A: $tType,B: $tType,C: $tType] : ( ( A > B > C ) > ( product_prod @ A @ B ) > C ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Product__Type_Omap__prod,type,
% 2.96/1.60      product_map_prod: 
% 2.96/1.60        !>[A: $tType,C: $tType,B: $tType,D: $tType] : ( ( A > C ) > ( B > D ) > ( product_prod @ A @ B ) > ( product_prod @ C @ D ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Product__Type_Oold_Obool_Orec__bool,type,
% 2.96/1.60      product_rec_bool: 
% 2.96/1.60        !>[T: $tType] : ( T > T > $o > T ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Product__Type_Oold_Oprod_Orec__prod,type,
% 2.96/1.60      product_rec_prod: 
% 2.96/1.60        !>[A: $tType,B: $tType,T: $tType] : ( ( A > B > T ) > ( product_prod @ A @ B ) > T ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Product__Type_Oprod_Ocase__prod,type,
% 2.96/1.60      product_case_prod: 
% 2.96/1.60        !>[A: $tType,B: $tType,C: $tType] : ( ( A > B > C ) > ( product_prod @ A @ B ) > C ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Product__Type_Oprod_Ofst,type,
% 2.96/1.60      product_fst: 
% 2.96/1.60        !>[A: $tType,B: $tType] : ( ( product_prod @ A @ B ) > A ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Product__Type_Oprod_Osnd,type,
% 2.96/1.60      product_snd: 
% 2.96/1.60        !>[A: $tType,B: $tType] : ( ( product_prod @ A @ B ) > B ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Product__Type_Oprod_Oswap,type,
% 2.96/1.60      product_swap: 
% 2.96/1.60        !>[A: $tType,B: $tType] : ( ( product_prod @ A @ B ) > ( product_prod @ B @ A ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Product__Type_Oscomp,type,
% 2.96/1.60      product_scomp: 
% 2.96/1.60        !>[A: $tType,B: $tType,C: $tType,D: $tType] : ( ( A > ( product_prod @ B @ C ) ) > ( B > C > D ) > A > D ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Relation_Oasym,type,
% 2.96/1.60      asym: 
% 2.96/1.60        !>[A: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Relation_Oinv__image,type,
% 2.96/1.60      inv_image: 
% 2.96/1.60        !>[B: $tType,A: $tType] : ( ( set @ ( product_prod @ B @ B ) ) > ( A > B ) > ( set @ ( product_prod @ A @ A ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Relation_Oinv__imagep,type,
% 2.96/1.60      inv_imagep: 
% 2.96/1.60        !>[B: $tType,A: $tType] : ( ( B > B > $o ) > ( A > B ) > A > A > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Relation_Oirrefl,type,
% 2.96/1.60      irrefl: 
% 2.96/1.60        !>[A: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Relation_Orefl__on,type,
% 2.96/1.60      refl_on: 
% 2.96/1.60        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Relation_Ototal__on,type,
% 2.96/1.60      total_on: 
% 2.96/1.60        !>[A: $tType] : ( ( set @ A ) > ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Relation_Otrans,type,
% 2.96/1.60      trans: 
% 2.96/1.60        !>[A: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Set_OCollect,type,
% 2.96/1.60      collect: 
% 2.96/1.60        !>[A: $tType] : ( ( A > $o ) > ( set @ A ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Set_Oimage,type,
% 2.96/1.60      image: 
% 2.96/1.60        !>[A: $tType,B: $tType] : ( ( A > B ) > ( set @ A ) > ( set @ B ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Wellfounded_Olex__prod,type,
% 2.96/1.60      lex_prod: 
% 2.96/1.60        !>[A: $tType,B: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > ( set @ ( product_prod @ B @ B ) ) > ( set @ ( product_prod @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_Wfrec_Osame__fst,type,
% 2.96/1.60      same_fst: 
% 2.96/1.60        !>[A: $tType,B: $tType] : ( ( A > $o ) > ( A > ( set @ ( product_prod @ B @ B ) ) ) > ( set @ ( product_prod @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_c_member,type,
% 2.96/1.60      member: 
% 2.96/1.60        !>[A: $tType] : ( A > ( set @ A ) > $o ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_v_carrier,type,
% 2.96/1.60      carrier: set @ a ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_v_relation,type,
% 2.96/1.60      relation: set @ ( product_prod @ a @ a ) ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_v_x,type,
% 2.96/1.60      x: a ).
% 2.96/1.60  
% 2.96/1.60  thf(sy_v_y,type,
% 2.96/1.60      y: a ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_0_indiff__trans,axiom,
% 2.96/1.60      ! [X: a,Y: a,Z: a] :
% 2.96/1.60        ( ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X @ Y ) @ relation )
% 2.96/1.60          & ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Y @ X ) @ relation ) )
% 2.96/1.60       => ( ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Y @ Z ) @ relation )
% 2.96/1.60            & ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Z @ Y ) @ relation ) )
% 2.96/1.60         => ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X @ Z ) @ relation )
% 2.96/1.60            & ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Z @ X ) @ relation ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_1_strict__trans,axiom,
% 2.96/1.60      ! [X: a,Y: a,Z: a] :
% 2.96/1.60        ( ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X @ Y ) @ relation )
% 2.96/1.60          & ~ ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Y @ X ) @ relation ) )
% 2.96/1.60       => ( ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Y @ Z ) @ relation )
% 2.96/1.60            & ~ ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Z @ Y ) @ relation ) )
% 2.96/1.60         => ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X @ Z ) @ relation )
% 2.96/1.60            & ~ ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Z @ X ) @ relation ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_2_rational__preference__axioms,axiom,
% 2.96/1.60      prefer1997167224erence @ a @ carrier @ relation ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_3_compl,axiom,
% 2.96/1.60      ! [X2: a] :
% 2.96/1.60        ( ( member @ a @ X2 @ carrier )
% 2.96/1.60       => ! [Xa: a] :
% 2.96/1.60            ( ( member @ a @ Xa @ carrier )
% 2.96/1.60           => ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X2 @ Xa ) @ relation )
% 2.96/1.60              | ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Xa @ X2 ) @ relation ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_4_not__outside,axiom,
% 2.96/1.60      ! [X: a,Y: a] :
% 2.96/1.60        ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X @ Y ) @ relation )
% 2.96/1.60       => ( member @ a @ X @ carrier ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_5_strict__not__refl__weak,axiom,
% 2.96/1.60      ! [X: a,Y: a] :
% 2.96/1.60        ( ( ( member @ a @ X @ carrier )
% 2.96/1.60          & ( member @ a @ Y @ carrier ) )
% 2.96/1.60       => ( ( ~ ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Y @ X ) @ relation ) )
% 2.96/1.60          = ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ X @ Y ) @ relation )
% 2.96/1.60            & ~ ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ Y @ X ) @ relation ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_6_preference__axioms,axiom,
% 2.96/1.60      prefer199794634erence @ a @ carrier @ relation ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_7_trans__refl,axiom,
% 2.96/1.60      order_preorder_on @ a @ carrier @ relation ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_8_total,axiom,
% 2.96/1.60      total_on @ a @ carrier @ relation ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_9_reflexivity,axiom,
% 2.96/1.60      refl_on @ a @ carrier @ relation ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_10_prod_Oinject,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,X1: A,X22: B,Y1: A,Y2: B] :
% 2.96/1.60        ( ( ( product_Pair @ A @ B @ X1 @ X22 )
% 2.96/1.60          = ( product_Pair @ A @ B @ Y1 @ Y2 ) )
% 2.96/1.60        = ( ( X1 = Y1 )
% 2.96/1.60          & ( X22 = Y2 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_11_old_Oprod_Oinject,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,A2: A,B2: B,A3: A,B3: B] :
% 2.96/1.60        ( ( ( product_Pair @ A @ B @ A2 @ B2 )
% 2.96/1.60          = ( product_Pair @ A @ B @ A3 @ B3 ) )
% 2.96/1.60        = ( ( A2 = A3 )
% 2.96/1.60          & ( B2 = B3 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_12_transitivity,axiom,
% 2.96/1.60      trans @ a @ relation ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_13_surj__pair,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,P: product_prod @ A @ B] :
% 2.96/1.60      ? [X3: A,Y3: B] :
% 2.96/1.60        ( P
% 2.96/1.60        = ( product_Pair @ A @ B @ X3 @ Y3 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_14_prod__cases,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,P2: ( product_prod @ A @ B ) > $o,P: product_prod @ A @ B] :
% 2.96/1.60        ( ! [A4: A,B4: B] : ( P2 @ ( product_Pair @ A @ B @ A4 @ B4 ) )
% 2.96/1.60       => ( P2 @ P ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_15_Pair__inject,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,A2: A,B2: B,A3: A,B3: B] :
% 2.96/1.60        ( ( ( product_Pair @ A @ B @ A2 @ B2 )
% 2.96/1.60          = ( product_Pair @ A @ B @ A3 @ B3 ) )
% 2.96/1.60       => ~ ( ( A2 = A3 )
% 2.96/1.60           => ( B2 != B3 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_16_prod__cases3,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,C: $tType,Y: product_prod @ A @ ( product_prod @ B @ C )] :
% 2.96/1.60        ~ ! [A4: A,B4: B,C2: C] :
% 2.96/1.60            ( Y
% 2.96/1.60           != ( product_Pair @ A @ ( product_prod @ B @ C ) @ A4 @ ( product_Pair @ B @ C @ B4 @ C2 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_17_prod__cases4,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,C: $tType,D: $tType,Y: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) )] :
% 2.96/1.60        ~ ! [A4: A,B4: B,C2: C,D2: D] :
% 2.96/1.60            ( Y
% 2.96/1.60           != ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ D ) @ B4 @ ( product_Pair @ C @ D @ C2 @ D2 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_18_prod__cases5,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,C: $tType,D: $tType,E: $tType,Y: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) )] :
% 2.96/1.60        ~ ! [A4: A,B4: B,C2: C,D2: D,E2: E] :
% 2.96/1.60            ( Y
% 2.96/1.60           != ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ E ) @ C2 @ ( product_Pair @ D @ E @ D2 @ E2 ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_19_rational__preference_Oaxioms_I1_J,axiom,
% 2.96/1.60      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( prefer1997167224erence @ A @ Carrier @ Relation )
% 2.96/1.60       => ( prefer199794634erence @ A @ Carrier @ Relation ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_20_preference_Otrans__refl,axiom,
% 2.96/1.60      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( prefer199794634erence @ A @ Carrier @ Relation )
% 2.96/1.60       => ( order_preorder_on @ A @ Carrier @ Relation ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_21_preference_Oreflexivity,axiom,
% 2.96/1.60      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( prefer199794634erence @ A @ Carrier @ Relation )
% 2.96/1.60       => ( refl_on @ A @ Carrier @ Relation ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_22_preference_Otransitivity,axiom,
% 2.96/1.60      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( prefer199794634erence @ A @ Carrier @ Relation )
% 2.96/1.60       => ( trans @ A @ Relation ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_23_rational__preference_Ototal,axiom,
% 2.96/1.60      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( prefer1997167224erence @ A @ Carrier @ Relation )
% 2.96/1.60       => ( total_on @ A @ Carrier @ Relation ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_24_preference_Ointro,axiom,
% 2.96/1.60      ! [A: $tType,Relation: set @ ( product_prod @ A @ A ),Carrier: set @ A] :
% 2.96/1.60        ( ! [X3: A,Y3: A] :
% 2.96/1.60            ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Y3 ) @ Relation )
% 2.96/1.60           => ( member @ A @ X3 @ Carrier ) )
% 2.96/1.60       => ( ! [X3: A,Y3: A] :
% 2.96/1.60              ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Y3 ) @ Relation )
% 2.96/1.60             => ( member @ A @ Y3 @ Carrier ) )
% 2.96/1.60         => ( ( order_preorder_on @ A @ Carrier @ Relation )
% 2.96/1.60           => ( prefer199794634erence @ A @ Carrier @ Relation ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_25_preference__def,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( prefer199794634erence @ A )
% 2.96/1.60        = ( ^ [Carrier2: set @ A,Relation2: set @ ( product_prod @ A @ A )] :
% 2.96/1.60              ( ! [X4: A,Y4: A] :
% 2.96/1.60                  ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Y4 ) @ Relation2 )
% 2.96/1.60                 => ( member @ A @ X4 @ Carrier2 ) )
% 2.96/1.60              & ! [X4: A,Y4: A] :
% 2.96/1.60                  ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Y4 ) @ Relation2 )
% 2.96/1.60                 => ( member @ A @ Y4 @ Carrier2 ) )
% 2.96/1.60              & ( order_preorder_on @ A @ Carrier2 @ Relation2 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_26_preference_Oindiff__trans,axiom,
% 2.96/1.60      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A ),X: A,Y: A,Z: A] :
% 2.96/1.60        ( ( prefer199794634erence @ A @ Carrier @ Relation )
% 2.96/1.60       => ( ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ Relation )
% 2.96/1.60            & ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ X ) @ Relation ) )
% 2.96/1.60         => ( ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ Z ) @ Relation )
% 2.96/1.60              & ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Z @ Y ) @ Relation ) )
% 2.96/1.60           => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Z ) @ Relation )
% 2.96/1.60              & ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Z @ X ) @ Relation ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_27_preference_Onot__outside,axiom,
% 2.96/1.60      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A ),X: A,Y: A] :
% 2.96/1.60        ( ( prefer199794634erence @ A @ Carrier @ Relation )
% 2.96/1.60       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ Relation )
% 2.96/1.60         => ( member @ A @ X @ Carrier ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_28_rational__preference_Ostrict__not__refl__weak,axiom,
% 2.96/1.60      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A ),X: A,Y: A] :
% 2.96/1.60        ( ( prefer1997167224erence @ A @ Carrier @ Relation )
% 2.96/1.60       => ( ( ( member @ A @ X @ Carrier )
% 2.96/1.60            & ( member @ A @ Y @ Carrier ) )
% 2.96/1.60         => ( ( ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ X ) @ Relation ) )
% 2.96/1.60            = ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ Relation )
% 2.96/1.60              & ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ X ) @ Relation ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_29_rational__preference_Ostrict__trans,axiom,
% 2.96/1.60      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A ),X: A,Y: A,Z: A] :
% 2.96/1.60        ( ( prefer1997167224erence @ A @ Carrier @ Relation )
% 2.96/1.60       => ( ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ Relation )
% 2.96/1.60            & ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ X ) @ Relation ) )
% 2.96/1.60         => ( ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ Z ) @ Relation )
% 2.96/1.60              & ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Z @ Y ) @ Relation ) )
% 2.96/1.60           => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Z ) @ Relation )
% 2.96/1.60              & ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Z @ X ) @ Relation ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_30_rational__preference_Ocompl,axiom,
% 2.96/1.60      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( prefer1997167224erence @ A @ Carrier @ Relation )
% 2.96/1.60       => ! [X2: A] :
% 2.96/1.60            ( ( member @ A @ X2 @ Carrier )
% 2.96/1.60           => ! [Xa: A] :
% 2.96/1.60                ( ( member @ A @ Xa @ Carrier )
% 2.96/1.60               => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X2 @ Xa ) @ Relation )
% 2.96/1.60                  | ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Xa @ X2 ) @ Relation ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_31_old_Oprod_Oinducts,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,P2: ( product_prod @ A @ B ) > $o,Prod: product_prod @ A @ B] :
% 2.96/1.60        ( ! [A4: A,B4: B] : ( P2 @ ( product_Pair @ A @ B @ A4 @ B4 ) )
% 2.96/1.60       => ( P2 @ Prod ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_32_old_Oprod_Oexhaust,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,Y: product_prod @ A @ B] :
% 2.96/1.60        ~ ! [A4: A,B4: B] :
% 2.96/1.60            ( Y
% 2.96/1.60           != ( product_Pair @ A @ B @ A4 @ B4 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_33_prod__induct7,axiom,
% 2.96/1.60      ! [G: $tType,F: $tType,E: $tType,D: $tType,C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) ) ) > $o,X: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) )] :
% 2.96/1.60        ( ! [A4: A,B4: B,C2: C,D2: D,E2: E,F2: F,G2: G] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) @ C2 @ ( product_Pair @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) @ D2 @ ( product_Pair @ E @ ( product_prod @ F @ G ) @ E2 @ ( product_Pair @ F @ G @ F2 @ G2 ) ) ) ) ) ) )
% 2.96/1.60       => ( P2 @ X ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_34_prod__induct6,axiom,
% 2.96/1.60      ! [F: $tType,E: $tType,D: $tType,C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) ) ) > $o,X: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) )] :
% 2.96/1.60        ( ! [A4: A,B4: B,C2: C,D2: D,E2: E,F2: F] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) @ C2 @ ( product_Pair @ D @ ( product_prod @ E @ F ) @ D2 @ ( product_Pair @ E @ F @ E2 @ F2 ) ) ) ) ) )
% 2.96/1.60       => ( P2 @ X ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_35_prod__induct5,axiom,
% 2.96/1.60      ! [E: $tType,D: $tType,C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) ) ) > $o,X: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) )] :
% 2.96/1.60        ( ! [A4: A,B4: B,C2: C,D2: D,E2: E] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ E ) @ C2 @ ( product_Pair @ D @ E @ D2 @ E2 ) ) ) ) )
% 2.96/1.60       => ( P2 @ X ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_36_prod__induct4,axiom,
% 2.96/1.60      ! [D: $tType,C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) ) ) > $o,X: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) )] :
% 2.96/1.60        ( ! [A4: A,B4: B,C2: C,D2: D] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ D ) @ B4 @ ( product_Pair @ C @ D @ C2 @ D2 ) ) ) )
% 2.96/1.60       => ( P2 @ X ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_37_prod__induct3,axiom,
% 2.96/1.60      ! [C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ C ) ) > $o,X: product_prod @ A @ ( product_prod @ B @ C )] :
% 2.96/1.60        ( ! [A4: A,B4: B,C2: C] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ C ) @ A4 @ ( product_Pair @ B @ C @ B4 @ C2 ) ) )
% 2.96/1.60       => ( P2 @ X ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_38_prod__cases7,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,C: $tType,D: $tType,E: $tType,F: $tType,G: $tType,Y: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) )] :
% 2.96/1.60        ~ ! [A4: A,B4: B,C2: C,D2: D,E2: E,F2: F,G2: G] :
% 2.96/1.60            ( Y
% 2.96/1.60           != ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) ) @ C2 @ ( product_Pair @ D @ ( product_prod @ E @ ( product_prod @ F @ G ) ) @ D2 @ ( product_Pair @ E @ ( product_prod @ F @ G ) @ E2 @ ( product_Pair @ F @ G @ F2 @ G2 ) ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_39_prod__cases6,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,C: $tType,D: $tType,E: $tType,F: $tType,Y: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) )] :
% 2.96/1.60        ~ ! [A4: A,B4: B,C2: C,D2: D,E2: E,F2: F] :
% 2.96/1.60            ( Y
% 2.96/1.60           != ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ ( product_prod @ E @ F ) ) @ C2 @ ( product_Pair @ D @ ( product_prod @ E @ F ) @ D2 @ ( product_Pair @ E @ F @ E2 @ F2 ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_40_preorder__on__def,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( order_preorder_on @ A )
% 2.96/1.60        = ( ^ [A5: set @ A,R: set @ ( product_prod @ A @ A )] :
% 2.96/1.60              ( ( refl_on @ A @ A5 @ R )
% 2.96/1.60              & ( trans @ A @ R ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_41_old_Oprod_Orec,axiom,
% 2.96/1.60      ! [A: $tType,T: $tType,B: $tType,F1: A > B > T,A2: A,B2: B] :
% 2.96/1.60        ( ( product_rec_prod @ A @ B @ T @ F1 @ ( product_Pair @ A @ B @ A2 @ B2 ) )
% 2.96/1.60        = ( F1 @ A2 @ B2 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_42_total__on__def,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( total_on @ A )
% 2.96/1.60        = ( ^ [A5: set @ A,R: set @ ( product_prod @ A @ A )] :
% 2.96/1.60            ! [X4: A] :
% 2.96/1.60              ( ( member @ A @ X4 @ A5 )
% 2.96/1.60             => ! [Y4: A] :
% 2.96/1.60                  ( ( member @ A @ Y4 @ A5 )
% 2.96/1.60                 => ( ( X4 != Y4 )
% 2.96/1.60                   => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Y4 ) @ R )
% 2.96/1.60                      | ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y4 @ X4 ) @ R ) ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_43_total__onI,axiom,
% 2.96/1.60      ! [A: $tType,A6: set @ A,R2: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ! [X3: A,Y3: A] :
% 2.96/1.60            ( ( member @ A @ X3 @ A6 )
% 2.96/1.60           => ( ( member @ A @ Y3 @ A6 )
% 2.96/1.60             => ( ( X3 != Y3 )
% 2.96/1.60               => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Y3 ) @ R2 )
% 2.96/1.60                  | ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y3 @ X3 ) @ R2 ) ) ) ) )
% 2.96/1.60       => ( total_on @ A @ A6 @ R2 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_44_refl__on__domain,axiom,
% 2.96/1.60      ! [A: $tType,A6: set @ A,R2: set @ ( product_prod @ A @ A ),A2: A,B2: A] :
% 2.96/1.60        ( ( refl_on @ A @ A6 @ R2 )
% 2.96/1.60       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A2 @ B2 ) @ R2 )
% 2.96/1.60         => ( ( member @ A @ A2 @ A6 )
% 2.96/1.60            & ( member @ A @ B2 @ A6 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_45_mem__Collect__eq,axiom,
% 2.96/1.60      ! [A: $tType,A2: A,P2: A > $o] :
% 2.96/1.60        ( ( member @ A @ A2 @ ( collect @ A @ P2 ) )
% 2.96/1.60        = ( P2 @ A2 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_46_Collect__mem__eq,axiom,
% 2.96/1.60      ! [A: $tType,A6: set @ A] :
% 2.96/1.60        ( ( collect @ A
% 2.96/1.60          @ ^ [X4: A] : ( member @ A @ X4 @ A6 ) )
% 2.96/1.60        = A6 ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_47_Collect__cong,axiom,
% 2.96/1.60      ! [A: $tType,P2: A > $o,Q: A > $o] :
% 2.96/1.60        ( ! [X3: A] :
% 2.96/1.60            ( ( P2 @ X3 )
% 2.96/1.60            = ( Q @ X3 ) )
% 2.96/1.60       => ( ( collect @ A @ P2 )
% 2.96/1.60          = ( collect @ A @ Q ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_48_ext,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,F3: A > B,G3: A > B] :
% 2.96/1.60        ( ! [X3: A] :
% 2.96/1.60            ( ( F3 @ X3 )
% 2.96/1.60            = ( G3 @ X3 ) )
% 2.96/1.60       => ( F3 = G3 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_49_refl__onD2,axiom,
% 2.96/1.60      ! [A: $tType,A6: set @ A,R2: set @ ( product_prod @ A @ A ),X: A,Y: A] :
% 2.96/1.60        ( ( refl_on @ A @ A6 @ R2 )
% 2.96/1.60       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ R2 )
% 2.96/1.60         => ( member @ A @ Y @ A6 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_50_refl__onD1,axiom,
% 2.96/1.60      ! [A: $tType,A6: set @ A,R2: set @ ( product_prod @ A @ A ),X: A,Y: A] :
% 2.96/1.60        ( ( refl_on @ A @ A6 @ R2 )
% 2.96/1.60       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ R2 )
% 2.96/1.60         => ( member @ A @ X @ A6 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_51_refl__onD,axiom,
% 2.96/1.60      ! [A: $tType,A6: set @ A,R2: set @ ( product_prod @ A @ A ),A2: A] :
% 2.96/1.60        ( ( refl_on @ A @ A6 @ R2 )
% 2.96/1.60       => ( ( member @ A @ A2 @ A6 )
% 2.96/1.60         => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A2 @ A2 ) @ R2 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_52_trans__def,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( trans @ A )
% 2.96/1.60        = ( ^ [R: set @ ( product_prod @ A @ A )] :
% 2.96/1.60            ! [X4: A,Y4: A,Z2: A] :
% 2.96/1.60              ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Y4 ) @ R )
% 2.96/1.60             => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y4 @ Z2 ) @ R )
% 2.96/1.60               => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Z2 ) @ R ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_53_transI,axiom,
% 2.96/1.60      ! [A: $tType,R2: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ! [X3: A,Y3: A,Z3: A] :
% 2.96/1.60            ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Y3 ) @ R2 )
% 2.96/1.60           => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y3 @ Z3 ) @ R2 )
% 2.96/1.60             => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Z3 ) @ R2 ) ) )
% 2.96/1.60       => ( trans @ A @ R2 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_54_transD,axiom,
% 2.96/1.60      ! [A: $tType,R2: set @ ( product_prod @ A @ A ),X: A,Y: A,Z: A] :
% 2.96/1.60        ( ( trans @ A @ R2 )
% 2.96/1.60       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ R2 )
% 2.96/1.60         => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ Z ) @ R2 )
% 2.96/1.60           => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Z ) @ R2 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_55_transE,axiom,
% 2.96/1.60      ! [A: $tType,R2: set @ ( product_prod @ A @ A ),X: A,Y: A,Z: A] :
% 2.96/1.60        ( ( trans @ A @ R2 )
% 2.96/1.60       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ R2 )
% 2.96/1.60         => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ Z ) @ R2 )
% 2.96/1.60           => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Z ) @ R2 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_56_rational__preference_Ointro,axiom,
% 2.96/1.60      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( prefer199794634erence @ A @ Carrier @ Relation )
% 2.96/1.60       => ( ( prefer1801827867axioms @ A @ Carrier @ Relation )
% 2.96/1.60         => ( prefer1997167224erence @ A @ Carrier @ Relation ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_57_rational__preference__def,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( prefer1997167224erence @ A )
% 2.96/1.60        = ( ^ [Carrier2: set @ A,Relation2: set @ ( product_prod @ A @ A )] :
% 2.96/1.60              ( ( prefer199794634erence @ A @ Carrier2 @ Relation2 )
% 2.96/1.60              & ( prefer1801827867axioms @ A @ Carrier2 @ Relation2 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_58_internal__case__prod__conv,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,C: $tType,C3: B > C > A,A2: B,B2: C] :
% 2.96/1.60        ( ( produc2004651681e_prod @ B @ C @ A @ C3 @ ( product_Pair @ B @ C @ A2 @ B2 ) )
% 2.96/1.60        = ( C3 @ A2 @ B2 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_59_rational__preference_Oaxioms_I2_J,axiom,
% 2.96/1.60      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( prefer1997167224erence @ A @ Carrier @ Relation )
% 2.96/1.60       => ( prefer1801827867axioms @ A @ Carrier @ Relation ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_60_rational__preference__axioms_Ointro,axiom,
% 2.96/1.60      ! [A: $tType,Carrier: set @ A,Relation: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( total_on @ A @ Carrier @ Relation )
% 2.96/1.60       => ( prefer1801827867axioms @ A @ Carrier @ Relation ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_61_rational__preference__axioms__def,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( prefer1801827867axioms @ A )
% 2.96/1.60        = ( total_on @ A ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_62_ssubst__Pair__rhs,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,R2: A,S: B,R3: set @ ( product_prod @ A @ B ),S2: B] :
% 2.96/1.60        ( ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ R2 @ S ) @ R3 )
% 2.96/1.60       => ( ( S2 = S )
% 2.96/1.60         => ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ R2 @ S2 ) @ R3 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_63_at__lst__asgd__ge,axiom,
% 2.96/1.60      ! [A: $tType,X: A,Y: A,B5: set @ A,Pr: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( member @ A @ X @ ( prefer310429814s_good @ A @ Y @ B5 @ Pr ) )
% 2.96/1.60       => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ Pr ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_64_at__least__as__goodD,axiom,
% 2.96/1.60      ! [A: $tType,Z: A,Y: A,B5: set @ A,Pr: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( member @ A @ Z @ ( prefer310429814s_good @ A @ Y @ B5 @ Pr ) )
% 2.96/1.60       => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Z @ Y ) @ Pr ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_65_curry__conv,axiom,
% 2.96/1.60      ! [A: $tType,C: $tType,B: $tType] :
% 2.96/1.60        ( ( product_curry @ B @ C @ A )
% 2.96/1.60        = ( ^ [F4: ( product_prod @ B @ C ) > A,A7: B,B6: C] : ( F4 @ ( product_Pair @ B @ C @ A7 @ B6 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_66_in__inv__imagep,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType] :
% 2.96/1.60        ( ( inv_imagep @ A @ B )
% 2.96/1.60        = ( ^ [R: A > A > $o,F4: B > A,X4: B,Y4: B] : ( R @ ( F4 @ X4 ) @ ( F4 @ Y4 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_67_curryI,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,F3: ( product_prod @ A @ B ) > $o,A2: A,B2: B] :
% 2.96/1.60        ( ( F3 @ ( product_Pair @ A @ B @ A2 @ B2 ) )
% 2.96/1.60       => ( product_curry @ A @ B @ $o @ F3 @ A2 @ B2 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_68_in__inv__image,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,X: A,Y: A,R2: set @ ( product_prod @ B @ B ),F3: A > B] :
% 2.96/1.60        ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ ( inv_image @ B @ A @ R2 @ F3 ) )
% 2.96/1.60        = ( member @ ( product_prod @ B @ B ) @ ( product_Pair @ B @ B @ ( F3 @ X ) @ ( F3 @ Y ) ) @ R2 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_69_strict__linear__order__on__def,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( order_215145569der_on @ A )
% 2.96/1.60        = ( ^ [A5: set @ A,R: set @ ( product_prod @ A @ A )] :
% 2.96/1.60              ( ( trans @ A @ R )
% 2.96/1.60              & ( irrefl @ A @ R )
% 2.96/1.60              & ( total_on @ A @ A5 @ R ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_70_swap__simp,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,X: B,Y: A] :
% 2.96/1.60        ( ( product_swap @ B @ A @ ( product_Pair @ B @ A @ X @ Y ) )
% 2.96/1.60        = ( product_Pair @ A @ B @ Y @ X ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_71_internal__case__prod__def,axiom,
% 2.96/1.60      ! [C: $tType,B: $tType,A: $tType] :
% 2.96/1.60        ( ( produc2004651681e_prod @ A @ B @ C )
% 2.96/1.60        = ( product_case_prod @ A @ B @ C ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_72_swap__swap,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,P: product_prod @ A @ B] :
% 2.96/1.60        ( ( product_swap @ B @ A @ ( product_swap @ A @ B @ P ) )
% 2.96/1.60        = P ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_73_case__prod__curry,axiom,
% 2.96/1.60      ! [C: $tType,B: $tType,A: $tType,F3: ( product_prod @ A @ B ) > C] :
% 2.96/1.60        ( ( product_case_prod @ A @ B @ C @ ( product_curry @ A @ B @ C @ F3 ) )
% 2.96/1.60        = F3 ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_74_curry__case__prod,axiom,
% 2.96/1.60      ! [C: $tType,B: $tType,A: $tType,F3: A > B > C] :
% 2.96/1.60        ( ( product_curry @ A @ B @ C @ ( product_case_prod @ A @ B @ C @ F3 ) )
% 2.96/1.60        = F3 ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_75_mem__case__prodE,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,C: $tType,Z: A,C3: B > C > ( set @ A ),P: product_prod @ B @ C] :
% 2.96/1.60        ( ( member @ A @ Z @ ( product_case_prod @ B @ C @ ( set @ A ) @ C3 @ P ) )
% 2.96/1.60       => ~ ! [X3: B,Y3: C] :
% 2.96/1.60              ( ( P
% 2.96/1.60                = ( product_Pair @ B @ C @ X3 @ Y3 ) )
% 2.96/1.60             => ~ ( member @ A @ Z @ ( C3 @ X3 @ Y3 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_76_old_Oprod_Ocase,axiom,
% 2.96/1.60      ! [A: $tType,C: $tType,B: $tType,F3: A > B > C,X1: A,X22: B] :
% 2.96/1.60        ( ( product_case_prod @ A @ B @ C @ F3 @ ( product_Pair @ A @ B @ X1 @ X22 ) )
% 2.96/1.60        = ( F3 @ X1 @ X22 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_77_irreflI,axiom,
% 2.96/1.60      ! [A: $tType,R3: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ! [A4: A] :
% 2.96/1.60            ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A4 @ A4 ) @ R3 )
% 2.96/1.60       => ( irrefl @ A @ R3 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_78_irrefl__def,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( irrefl @ A )
% 2.96/1.60        = ( ^ [R: set @ ( product_prod @ A @ A )] :
% 2.96/1.60            ! [A7: A] :
% 2.96/1.60              ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A7 @ A7 ) @ R ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_79_curryD,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,F3: ( product_prod @ A @ B ) > $o,A2: A,B2: B] :
% 2.96/1.60        ( ( product_curry @ A @ B @ $o @ F3 @ A2 @ B2 )
% 2.96/1.60       => ( F3 @ ( product_Pair @ A @ B @ A2 @ B2 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_80_curryE,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,F3: ( product_prod @ A @ B ) > $o,A2: A,B2: B] :
% 2.96/1.60        ( ( product_curry @ A @ B @ $o @ F3 @ A2 @ B2 )
% 2.96/1.60       => ( F3 @ ( product_Pair @ A @ B @ A2 @ B2 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_81_trans__inv__image,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,R2: set @ ( product_prod @ A @ A ),F3: B > A] :
% 2.96/1.60        ( ( trans @ A @ R2 )
% 2.96/1.60       => ( trans @ B @ ( inv_image @ A @ B @ R2 @ F3 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_82_split__cong,axiom,
% 2.96/1.60      ! [C: $tType,B: $tType,A: $tType,Q2: product_prod @ A @ B,F3: A > B > C,G3: A > B > C,P: product_prod @ A @ B] :
% 2.96/1.60        ( ! [X3: A,Y3: B] :
% 2.96/1.60            ( ( ( product_Pair @ A @ B @ X3 @ Y3 )
% 2.96/1.60              = Q2 )
% 2.96/1.60           => ( ( F3 @ X3 @ Y3 )
% 2.96/1.60              = ( G3 @ X3 @ Y3 ) ) )
% 2.96/1.60       => ( ( P = Q2 )
% 2.96/1.60         => ( ( product_case_prod @ A @ B @ C @ F3 @ P )
% 2.96/1.60            = ( product_case_prod @ A @ B @ C @ G3 @ Q2 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_83_pair__in__swap__image,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,Y: A,X: B,A6: set @ ( product_prod @ B @ A )] :
% 2.96/1.60        ( ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ Y @ X ) @ ( image @ ( product_prod @ B @ A ) @ ( product_prod @ A @ B ) @ ( product_swap @ B @ A ) @ A6 ) )
% 2.96/1.60        = ( member @ ( product_prod @ B @ A ) @ ( product_Pair @ B @ A @ X @ Y ) @ A6 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_84_scomp__apply,axiom,
% 2.96/1.60      ! [A: $tType,D: $tType,C: $tType,B: $tType] :
% 2.96/1.60        ( ( product_scomp @ B @ C @ D @ A )
% 2.96/1.60        = ( ^ [F4: B > ( product_prod @ C @ D ),G4: C > D > A,X4: B] : ( product_case_prod @ C @ D @ A @ G4 @ ( F4 @ X4 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_85_multp__iff,axiom,
% 2.96/1.60      ! [A: $tType,R3: set @ ( product_prod @ A @ A ),P2: A > A > $o,N: multiset @ A,M: multiset @ A] :
% 2.96/1.60        ( ( irrefl @ A @ R3 )
% 2.96/1.60       => ( ( trans @ A @ R3 )
% 2.96/1.60         => ( ! [X3: A,Y3: A] :
% 2.96/1.60                ( ( P2 @ X3 @ Y3 )
% 2.96/1.60                = ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Y3 ) @ R3 ) )
% 2.96/1.60           => ( ( multp @ A @ P2 @ N @ M )
% 2.96/1.60              = ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ N @ M ) @ ( mult @ A @ R3 ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_86_asym__inv__image,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,R3: set @ ( product_prod @ A @ A ),F3: B > A] :
% 2.96/1.60        ( ( asym @ A @ R3 )
% 2.96/1.60       => ( asym @ B @ ( inv_image @ A @ B @ R3 @ F3 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_87_old_Obool_Osimps_I5_J,axiom,
% 2.96/1.60      ! [T: $tType,F1: T,F22: T] :
% 2.96/1.60        ( ( product_rec_bool @ T @ F1 @ F22 @ $true )
% 2.96/1.60        = F1 ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_88_old_Obool_Osimps_I6_J,axiom,
% 2.96/1.60      ! [T: $tType,F1: T,F22: T] :
% 2.96/1.60        ( ( product_rec_bool @ T @ F1 @ F22 @ $false )
% 2.96/1.60        = F22 ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_89_scomp__Pair,axiom,
% 2.96/1.60      ! [C: $tType,B: $tType,A: $tType,X: A > ( product_prod @ B @ C )] :
% 2.96/1.60        ( ( product_scomp @ A @ B @ C @ ( product_prod @ B @ C ) @ X @ ( product_Pair @ B @ C ) )
% 2.96/1.60        = X ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_90_asym_Oinducts,axiom,
% 2.96/1.60      ! [A: $tType,X: set @ ( product_prod @ A @ A ),P2: ( set @ ( product_prod @ A @ A ) ) > $o] :
% 2.96/1.60        ( ( asym @ A @ X )
% 2.96/1.60       => ( ! [R4: set @ ( product_prod @ A @ A )] :
% 2.96/1.60              ( ! [A8: A,B7: A] :
% 2.96/1.60                  ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A8 @ B7 ) @ R4 )
% 2.96/1.60                 => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ B7 @ A8 ) @ R4 ) )
% 2.96/1.60             => ( P2 @ R4 ) )
% 2.96/1.60         => ( P2 @ X ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_91_asym_Ointros,axiom,
% 2.96/1.60      ! [A: $tType,R3: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ! [A4: A,B4: A] :
% 2.96/1.60            ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A4 @ B4 ) @ R3 )
% 2.96/1.60           => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ B4 @ A4 ) @ R3 ) )
% 2.96/1.60       => ( asym @ A @ R3 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_92_asym_Osimps,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( asym @ A )
% 2.96/1.60        = ( ^ [A7: set @ ( product_prod @ A @ A )] :
% 2.96/1.60            ? [R5: set @ ( product_prod @ A @ A )] :
% 2.96/1.60              ( ( A7 = R5 )
% 2.96/1.60              & ! [X4: A,Y4: A] :
% 2.96/1.60                  ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Y4 ) @ R5 )
% 2.96/1.60                 => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y4 @ X4 ) @ R5 ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_93_asym_Ocases,axiom,
% 2.96/1.60      ! [A: $tType,A2: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( asym @ A @ A2 )
% 2.96/1.60       => ! [A8: A,B7: A] :
% 2.96/1.60            ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A8 @ B7 ) @ A2 )
% 2.96/1.60           => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ B7 @ A8 ) @ A2 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_94_asym__iff,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( asym @ A )
% 2.96/1.60        = ( ^ [R5: set @ ( product_prod @ A @ A )] :
% 2.96/1.60            ! [X4: A,Y4: A] :
% 2.96/1.60              ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X4 @ Y4 ) @ R5 )
% 2.96/1.60             => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y4 @ X4 ) @ R5 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_95_asymD,axiom,
% 2.96/1.60      ! [A: $tType,R3: set @ ( product_prod @ A @ A ),X: A,Y: A] :
% 2.96/1.60        ( ( asym @ A @ R3 )
% 2.96/1.60       => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X @ Y ) @ R3 )
% 2.96/1.60         => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y @ X ) @ R3 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_96_Pair__scomp,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,C: $tType,X: C,F3: C > A > B] :
% 2.96/1.60        ( ( product_scomp @ A @ C @ A @ B @ ( product_Pair @ C @ A @ X ) @ F3 )
% 2.96/1.60        = ( F3 @ X ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_97_scomp__def,axiom,
% 2.96/1.60      ! [D: $tType,C: $tType,B: $tType,A: $tType] :
% 2.96/1.60        ( ( product_scomp @ A @ B @ C @ D )
% 2.96/1.60        = ( ^ [F4: A > ( product_prod @ B @ C ),G4: B > C > D,X4: A] : ( product_case_prod @ B @ C @ D @ G4 @ ( F4 @ X4 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_98_image__eqI,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,B2: A,F3: B > A,X: B,A6: set @ B] :
% 2.96/1.60        ( ( B2
% 2.96/1.60          = ( F3 @ X ) )
% 2.96/1.60       => ( ( member @ B @ X @ A6 )
% 2.96/1.60         => ( member @ A @ B2 @ ( image @ B @ A @ F3 @ A6 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_99_mult__cancel,axiom,
% 2.96/1.60      ! [A: $tType,S: set @ ( product_prod @ A @ A ),X5: multiset @ A,Z4: multiset @ A,Y5: multiset @ A] :
% 2.96/1.60        ( ( trans @ A @ S )
% 2.96/1.60       => ( ( irrefl @ A @ S )
% 2.96/1.60         => ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ X5 @ Z4 ) @ ( plus_plus @ ( multiset @ A ) @ Y5 @ Z4 ) ) @ ( mult @ A @ S ) )
% 2.96/1.60            = ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ X5 @ Y5 ) @ ( mult @ A @ S ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_100_mult__cancel__add__mset,axiom,
% 2.96/1.60      ! [A: $tType,S: set @ ( product_prod @ A @ A ),Uu: A,X5: multiset @ A,Y5: multiset @ A] :
% 2.96/1.60        ( ( trans @ A @ S )
% 2.96/1.60       => ( ( irrefl @ A @ S )
% 2.96/1.60         => ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ ( add_mset @ A @ Uu @ X5 ) @ ( add_mset @ A @ Uu @ Y5 ) ) @ ( mult @ A @ S ) )
% 2.96/1.60            = ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ X5 @ Y5 ) @ ( mult @ A @ S ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_101_surj__swap,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType] :
% 2.96/1.60        ( ( image @ ( product_prod @ B @ A ) @ ( product_prod @ A @ B ) @ ( product_swap @ B @ A ) @ ( top_top @ ( set @ ( product_prod @ B @ A ) ) ) )
% 2.96/1.60        = ( top_top @ ( set @ ( product_prod @ A @ B ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_102_imageI,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,X: A,A6: set @ A,F3: A > B] :
% 2.96/1.60        ( ( member @ A @ X @ A6 )
% 2.96/1.60       => ( member @ B @ ( F3 @ X ) @ ( image @ A @ B @ F3 @ A6 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_103_image__iff,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,Z: A,F3: B > A,A6: set @ B] :
% 2.96/1.60        ( ( member @ A @ Z @ ( image @ B @ A @ F3 @ A6 ) )
% 2.96/1.60        = ( ? [X4: B] :
% 2.96/1.60              ( ( member @ B @ X4 @ A6 )
% 2.96/1.60              & ( Z
% 2.96/1.60                = ( F3 @ X4 ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_104_add__mset__add__mset__same__iff,axiom,
% 2.96/1.60      ! [A: $tType,A2: A,A6: multiset @ A,B5: multiset @ A] :
% 2.96/1.60        ( ( ( add_mset @ A @ A2 @ A6 )
% 2.96/1.60          = ( add_mset @ A @ A2 @ B5 ) )
% 2.96/1.60        = ( A6 = B5 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_105_multi__self__add__other__not__self,axiom,
% 2.96/1.60      ! [A: $tType,M: multiset @ A,X: A] :
% 2.96/1.60        ( M
% 2.96/1.60       != ( add_mset @ A @ X @ M ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_106_union__mset__add__mset__left,axiom,
% 2.96/1.60      ! [A: $tType,A2: A,A6: multiset @ A,B5: multiset @ A] :
% 2.96/1.60        ( ( plus_plus @ ( multiset @ A ) @ ( add_mset @ A @ A2 @ A6 ) @ B5 )
% 2.96/1.60        = ( add_mset @ A @ A2 @ ( plus_plus @ ( multiset @ A ) @ A6 @ B5 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_107_union__mset__add__mset__right,axiom,
% 2.96/1.60      ! [A: $tType,A6: multiset @ A,A2: A,B5: multiset @ A] :
% 2.96/1.60        ( ( plus_plus @ ( multiset @ A ) @ A6 @ ( add_mset @ A @ A2 @ B5 ) )
% 2.96/1.60        = ( add_mset @ A @ A2 @ ( plus_plus @ ( multiset @ A ) @ A6 @ B5 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_108_rangeI,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,F3: B > A,X: B] : ( member @ A @ ( F3 @ X ) @ ( image @ B @ A @ F3 @ ( top_top @ ( set @ B ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_109_range__eqI,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,B2: A,F3: B > A,X: B] :
% 2.96/1.60        ( ( B2
% 2.96/1.60          = ( F3 @ X ) )
% 2.96/1.60       => ( member @ A @ B2 @ ( image @ B @ A @ F3 @ ( top_top @ ( set @ B ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_110_union__assoc,axiom,
% 2.96/1.60      ! [A: $tType,M: multiset @ A,N: multiset @ A,K: multiset @ A] :
% 2.96/1.60        ( ( plus_plus @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ M @ N ) @ K )
% 2.96/1.60        = ( plus_plus @ ( multiset @ A ) @ M @ ( plus_plus @ ( multiset @ A ) @ N @ K ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_111_union__lcomm,axiom,
% 2.96/1.60      ! [A: $tType,M: multiset @ A,N: multiset @ A,K: multiset @ A] :
% 2.96/1.60        ( ( plus_plus @ ( multiset @ A ) @ M @ ( plus_plus @ ( multiset @ A ) @ N @ K ) )
% 2.96/1.60        = ( plus_plus @ ( multiset @ A ) @ N @ ( plus_plus @ ( multiset @ A ) @ M @ K ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_112_union__commute,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( plus_plus @ ( multiset @ A ) )
% 2.96/1.60        = ( ^ [M2: multiset @ A,N2: multiset @ A] : ( plus_plus @ ( multiset @ A ) @ N2 @ M2 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_113_add__eq__conv__ex,axiom,
% 2.96/1.60      ! [A: $tType,A2: A,M: multiset @ A,B2: A,N: multiset @ A] :
% 2.96/1.60        ( ( ( add_mset @ A @ A2 @ M )
% 2.96/1.60          = ( add_mset @ A @ B2 @ N ) )
% 2.96/1.60        = ( ( ( M = N )
% 2.96/1.60            & ( A2 = B2 ) )
% 2.96/1.60          | ? [K2: multiset @ A] :
% 2.96/1.60              ( ( M
% 2.96/1.60                = ( add_mset @ A @ B2 @ K2 ) )
% 2.96/1.60              & ( N
% 2.96/1.60                = ( add_mset @ A @ A2 @ K2 ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_114_add__mset__commute,axiom,
% 2.96/1.60      ! [A: $tType,X: A,Y: A,M: multiset @ A] :
% 2.96/1.60        ( ( add_mset @ A @ X @ ( add_mset @ A @ Y @ M ) )
% 2.96/1.60        = ( add_mset @ A @ Y @ ( add_mset @ A @ X @ M ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_115_union__left__cancel,axiom,
% 2.96/1.60      ! [A: $tType,K: multiset @ A,M: multiset @ A,N: multiset @ A] :
% 2.96/1.60        ( ( ( plus_plus @ ( multiset @ A ) @ K @ M )
% 2.96/1.60          = ( plus_plus @ ( multiset @ A ) @ K @ N ) )
% 2.96/1.60        = ( M = N ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_116_union__right__cancel,axiom,
% 2.96/1.60      ! [A: $tType,M: multiset @ A,K: multiset @ A,N: multiset @ A] :
% 2.96/1.60        ( ( ( plus_plus @ ( multiset @ A ) @ M @ K )
% 2.96/1.60          = ( plus_plus @ ( multiset @ A ) @ N @ K ) )
% 2.96/1.60        = ( M = N ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_117_multi__union__self__other__eq,axiom,
% 2.96/1.60      ! [A: $tType,A6: multiset @ A,X5: multiset @ A,Y5: multiset @ A] :
% 2.96/1.60        ( ( ( plus_plus @ ( multiset @ A ) @ A6 @ X5 )
% 2.96/1.60          = ( plus_plus @ ( multiset @ A ) @ A6 @ Y5 ) )
% 2.96/1.60       => ( X5 = Y5 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_118_rev__image__eqI,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,X: A,A6: set @ A,B2: B,F3: A > B] :
% 2.96/1.60        ( ( member @ A @ X @ A6 )
% 2.96/1.60       => ( ( B2
% 2.96/1.60            = ( F3 @ X ) )
% 2.96/1.60         => ( member @ B @ B2 @ ( image @ A @ B @ F3 @ A6 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_119_ball__imageD,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,F3: B > A,A6: set @ B,P2: A > $o] :
% 2.96/1.60        ( ! [X3: A] :
% 2.96/1.60            ( ( member @ A @ X3 @ ( image @ B @ A @ F3 @ A6 ) )
% 2.96/1.60           => ( P2 @ X3 ) )
% 2.96/1.60       => ! [X2: B] :
% 2.96/1.60            ( ( member @ B @ X2 @ A6 )
% 2.96/1.60           => ( P2 @ ( F3 @ X2 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_120_image__cong,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,M: set @ A,N: set @ A,F3: A > B,G3: A > B] :
% 2.96/1.60        ( ( M = N )
% 2.96/1.60       => ( ! [X3: A] :
% 2.96/1.60              ( ( member @ A @ X3 @ N )
% 2.96/1.60             => ( ( F3 @ X3 )
% 2.96/1.60                = ( G3 @ X3 ) ) )
% 2.96/1.60         => ( ( image @ A @ B @ F3 @ M )
% 2.96/1.60            = ( image @ A @ B @ G3 @ N ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_121_bex__imageD,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,F3: B > A,A6: set @ B,P2: A > $o] :
% 2.96/1.60        ( ? [X2: A] :
% 2.96/1.60            ( ( member @ A @ X2 @ ( image @ B @ A @ F3 @ A6 ) )
% 2.96/1.60            & ( P2 @ X2 ) )
% 2.96/1.60       => ? [X3: B] :
% 2.96/1.60            ( ( member @ B @ X3 @ A6 )
% 2.96/1.60            & ( P2 @ ( F3 @ X3 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_122_surj__plus,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( ab_group_add @ A )
% 2.96/1.60       => ! [A2: A] :
% 2.96/1.60            ( ( image @ A @ A @ ( plus_plus @ A @ A2 ) @ ( top_top @ ( set @ A ) ) )
% 2.96/1.60            = ( top_top @ ( set @ A ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_123_add__Pair,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType] :
% 2.96/1.60        ( ( ( plus @ B )
% 2.96/1.60          & ( plus @ A ) )
% 2.96/1.60       => ! [A2: A,B2: B,C3: A,D3: B] :
% 2.96/1.60            ( ( plus_plus @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ A2 @ B2 ) @ ( product_Pair @ A @ B @ C3 @ D3 ) )
% 2.96/1.60            = ( product_Pair @ A @ B @ ( plus_plus @ A @ A2 @ C3 ) @ ( plus_plus @ B @ B2 @ D3 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_124_top__prod__def,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType] :
% 2.96/1.60        ( ( ( top @ B )
% 2.96/1.60          & ( top @ A ) )
% 2.96/1.60       => ( ( top_top @ ( product_prod @ A @ B ) )
% 2.96/1.60          = ( product_Pair @ A @ B @ ( top_top @ A ) @ ( top_top @ B ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_125_surjD,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,F3: B > A,Y: A] :
% 2.96/1.60        ( ( ( image @ B @ A @ F3 @ ( top_top @ ( set @ B ) ) )
% 2.96/1.60          = ( top_top @ ( set @ A ) ) )
% 2.96/1.60       => ? [X3: B] :
% 2.96/1.60            ( Y
% 2.96/1.60            = ( F3 @ X3 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_126_surjE,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,F3: B > A,Y: A] :
% 2.96/1.60        ( ( ( image @ B @ A @ F3 @ ( top_top @ ( set @ B ) ) )
% 2.96/1.60          = ( top_top @ ( set @ A ) ) )
% 2.96/1.60       => ~ ! [X3: B] :
% 2.96/1.60              ( Y
% 2.96/1.60             != ( F3 @ X3 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_127_top__empty__eq,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( top_top @ ( A > $o ) )
% 2.96/1.60        = ( ^ [X4: A] : ( member @ A @ X4 @ ( top_top @ ( set @ A ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_128_surj__def,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,F3: B > A] :
% 2.96/1.60        ( ( ( image @ B @ A @ F3 @ ( top_top @ ( set @ B ) ) )
% 2.96/1.60          = ( top_top @ ( set @ A ) ) )
% 2.96/1.60        = ( ! [Y4: A] :
% 2.96/1.60            ? [X4: B] :
% 2.96/1.60              ( Y4
% 2.96/1.60              = ( F3 @ X4 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_129_surjI,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,G3: B > A,F3: A > B] :
% 2.96/1.60        ( ! [X3: A] :
% 2.96/1.60            ( ( G3 @ ( F3 @ X3 ) )
% 2.96/1.60            = X3 )
% 2.96/1.60       => ( ( image @ B @ A @ G3 @ ( top_top @ ( set @ B ) ) )
% 2.96/1.60          = ( top_top @ ( set @ A ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_130_map__prod__surj,axiom,
% 2.96/1.60      ! [A: $tType,C: $tType,D: $tType,B: $tType,F3: A > B,G3: C > D] :
% 2.96/1.60        ( ( ( image @ A @ B @ F3 @ ( top_top @ ( set @ A ) ) )
% 2.96/1.60          = ( top_top @ ( set @ B ) ) )
% 2.96/1.60       => ( ( ( image @ C @ D @ G3 @ ( top_top @ ( set @ C ) ) )
% 2.96/1.60            = ( top_top @ ( set @ D ) ) )
% 2.96/1.60         => ( ( image @ ( product_prod @ A @ C ) @ ( product_prod @ B @ D ) @ ( product_map_prod @ A @ B @ C @ D @ F3 @ G3 ) @ ( top_top @ ( set @ ( product_prod @ A @ C ) ) ) )
% 2.96/1.60            = ( top_top @ ( set @ ( product_prod @ B @ D ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_131_total__lex__prod,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,R2: set @ ( product_prod @ A @ A ),S: set @ ( product_prod @ B @ B )] :
% 2.96/1.60        ( ( total_on @ A @ ( top_top @ ( set @ A ) ) @ R2 )
% 2.96/1.60       => ( ( total_on @ B @ ( top_top @ ( set @ B ) ) @ S )
% 2.96/1.60         => ( total_on @ ( product_prod @ A @ B ) @ ( top_top @ ( set @ ( product_prod @ A @ B ) ) ) @ ( lex_prod @ A @ B @ R2 @ S ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_132_range__fst,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType] :
% 2.96/1.60        ( ( image @ ( product_prod @ A @ B ) @ A @ ( product_fst @ A @ B ) @ ( top_top @ ( set @ ( product_prod @ A @ B ) ) ) )
% 2.96/1.60        = ( top_top @ ( set @ A ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_133_range__snd,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType] :
% 2.96/1.60        ( ( image @ ( product_prod @ B @ A ) @ A @ ( product_snd @ B @ A ) @ ( top_top @ ( set @ ( product_prod @ B @ A ) ) ) )
% 2.96/1.60        = ( top_top @ ( set @ A ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_134_map__prod__simp,axiom,
% 2.96/1.60      ! [C: $tType,A: $tType,B: $tType,D: $tType,F3: C > A,G3: D > B,A2: C,B2: D] :
% 2.96/1.60        ( ( product_map_prod @ C @ A @ D @ B @ F3 @ G3 @ ( product_Pair @ C @ D @ A2 @ B2 ) )
% 2.96/1.60        = ( product_Pair @ A @ B @ ( F3 @ A2 ) @ ( G3 @ B2 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_135_fst__map__prod,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,D: $tType,C: $tType,F3: C > A,G3: D > B,X: product_prod @ C @ D] :
% 2.96/1.60        ( ( product_fst @ A @ B @ ( product_map_prod @ C @ A @ D @ B @ F3 @ G3 @ X ) )
% 2.96/1.60        = ( F3 @ ( product_fst @ C @ D @ X ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_136_snd__map__prod,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,D: $tType,C: $tType,F3: C > B,G3: D > A,X: product_prod @ C @ D] :
% 2.96/1.60        ( ( product_snd @ B @ A @ ( product_map_prod @ C @ B @ D @ A @ F3 @ G3 @ X ) )
% 2.96/1.60        = ( G3 @ ( product_snd @ C @ D @ X ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_137_in__lex__prod,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,A2: A,B2: B,A3: A,B3: B,R2: set @ ( product_prod @ A @ A ),S: set @ ( product_prod @ B @ B )] :
% 2.96/1.60        ( ( member @ ( product_prod @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) ) @ ( product_Pair @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ A2 @ B2 ) @ ( product_Pair @ A @ B @ A3 @ B3 ) ) @ ( lex_prod @ A @ B @ R2 @ S ) )
% 2.96/1.60        = ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A2 @ A3 ) @ R2 )
% 2.96/1.60          | ( ( A2 = A3 )
% 2.96/1.60            & ( member @ ( product_prod @ B @ B ) @ ( product_Pair @ B @ B @ B2 @ B3 ) @ S ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_138_trans__lex__prod,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,R1: set @ ( product_prod @ A @ A ),R22: set @ ( product_prod @ B @ B )] :
% 2.96/1.60        ( ( trans @ A @ R1 )
% 2.96/1.60       => ( ( trans @ B @ R22 )
% 2.96/1.60         => ( trans @ ( product_prod @ A @ B ) @ ( lex_prod @ A @ B @ R1 @ R22 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_139_prod_Ocollapse,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,Prod: product_prod @ A @ B] :
% 2.96/1.60        ( ( product_Pair @ A @ B @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) )
% 2.96/1.60        = Prod ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_140_snd__swap,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,X: product_prod @ A @ B] :
% 2.96/1.60        ( ( product_snd @ B @ A @ ( product_swap @ A @ B @ X ) )
% 2.96/1.60        = ( product_fst @ A @ B @ X ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_141_fst__swap,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,X: product_prod @ B @ A] :
% 2.96/1.60        ( ( product_fst @ A @ B @ ( product_swap @ B @ A @ X ) )
% 2.96/1.60        = ( product_snd @ B @ A @ X ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_142_map__prod__imageI,axiom,
% 2.96/1.60      ! [D: $tType,C: $tType,B: $tType,A: $tType,A2: A,B2: B,R3: set @ ( product_prod @ A @ B ),F3: A > C,G3: B > D] :
% 2.96/1.60        ( ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ A2 @ B2 ) @ R3 )
% 2.96/1.60       => ( member @ ( product_prod @ C @ D ) @ ( product_Pair @ C @ D @ ( F3 @ A2 ) @ ( G3 @ B2 ) ) @ ( image @ ( product_prod @ A @ B ) @ ( product_prod @ C @ D ) @ ( product_map_prod @ A @ C @ B @ D @ F3 @ G3 ) @ R3 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_143_asym__lex__prod,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,R3: set @ ( product_prod @ A @ A ),S3: set @ ( product_prod @ B @ B )] :
% 2.96/1.60        ( ( asym @ A @ R3 )
% 2.96/1.60       => ( ( asym @ B @ S3 )
% 2.96/1.60         => ( asym @ ( product_prod @ A @ B ) @ ( lex_prod @ A @ B @ R3 @ S3 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_144_case__prod__beta,axiom,
% 2.96/1.60      ! [A: $tType,C: $tType,B: $tType] :
% 2.96/1.60        ( ( product_case_prod @ B @ C @ A )
% 2.96/1.60        = ( ^ [F4: B > C > A,P3: product_prod @ B @ C] : ( F4 @ ( product_fst @ B @ C @ P3 ) @ ( product_snd @ B @ C @ P3 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_145_prod_Ocase__eq__if,axiom,
% 2.96/1.60      ! [C: $tType,B: $tType,A: $tType] :
% 2.96/1.60        ( ( product_case_prod @ A @ B @ C )
% 2.96/1.60        = ( ^ [F4: A > B > C,Prod2: product_prod @ A @ B] : ( F4 @ ( product_fst @ A @ B @ Prod2 ) @ ( product_snd @ A @ B @ Prod2 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_146_Product__Type_OCollect__case__prodD,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,X: product_prod @ A @ B,A6: A > B > $o] :
% 2.96/1.60        ( ( member @ ( product_prod @ A @ B ) @ X @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ A6 ) ) )
% 2.96/1.60       => ( A6 @ ( product_fst @ A @ B @ X ) @ ( product_snd @ A @ B @ X ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_147_prod_Oexhaust__sel,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,Prod: product_prod @ A @ B] :
% 2.96/1.60        ( Prod
% 2.96/1.60        = ( product_Pair @ A @ B @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_148_surjective__pairing,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,T2: product_prod @ A @ B] :
% 2.96/1.60        ( T2
% 2.96/1.60        = ( product_Pair @ A @ B @ ( product_fst @ A @ B @ T2 ) @ ( product_snd @ A @ B @ T2 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_149_prod_Osplit__sel,axiom,
% 2.96/1.60      ! [C: $tType,B: $tType,A: $tType,P2: C > $o,F3: A > B > C,Prod: product_prod @ A @ B] :
% 2.96/1.60        ( ( P2 @ ( product_case_prod @ A @ B @ C @ F3 @ Prod ) )
% 2.96/1.60        = ( ( Prod
% 2.96/1.60            = ( product_Pair @ A @ B @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) )
% 2.96/1.60         => ( P2 @ ( F3 @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_150_prod_Osplit__sel__asm,axiom,
% 2.96/1.60      ! [C: $tType,B: $tType,A: $tType,P2: C > $o,F3: A > B > C,Prod: product_prod @ A @ B] :
% 2.96/1.60        ( ( P2 @ ( product_case_prod @ A @ B @ C @ F3 @ Prod ) )
% 2.96/1.60        = ( ~ ( ( Prod
% 2.96/1.60                = ( product_Pair @ A @ B @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) )
% 2.96/1.60              & ~ ( P2 @ ( F3 @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_151_prod__eqI,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,P: product_prod @ A @ B,Q2: product_prod @ A @ B] :
% 2.96/1.60        ( ( ( product_fst @ A @ B @ P )
% 2.96/1.60          = ( product_fst @ A @ B @ Q2 ) )
% 2.96/1.60       => ( ( ( product_snd @ A @ B @ P )
% 2.96/1.60            = ( product_snd @ A @ B @ Q2 ) )
% 2.96/1.60         => ( P = Q2 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_152_prod_Oexpand,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,Prod: product_prod @ A @ B,Prod3: product_prod @ A @ B] :
% 2.96/1.60        ( ( ( ( product_fst @ A @ B @ Prod )
% 2.96/1.60            = ( product_fst @ A @ B @ Prod3 ) )
% 2.96/1.60          & ( ( product_snd @ A @ B @ Prod )
% 2.96/1.60            = ( product_snd @ A @ B @ Prod3 ) ) )
% 2.96/1.60       => ( Prod = Prod3 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_153_prod__eq__iff,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType] :
% 2.96/1.60        ( ( ^ [Y6: product_prod @ A @ B,Z5: product_prod @ A @ B] : ( Y6 = Z5 ) )
% 2.96/1.60        = ( ^ [S4: product_prod @ A @ B,T3: product_prod @ A @ B] :
% 2.96/1.60              ( ( ( product_fst @ A @ B @ S4 )
% 2.96/1.60                = ( product_fst @ A @ B @ T3 ) )
% 2.96/1.60              & ( ( product_snd @ A @ B @ S4 )
% 2.96/1.60                = ( product_snd @ A @ B @ T3 ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_154_fst__conv,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,X1: A,X22: B] :
% 2.96/1.60        ( ( product_fst @ A @ B @ ( product_Pair @ A @ B @ X1 @ X22 ) )
% 2.96/1.60        = X1 ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_155_fst__eqD,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,X: A,Y: B,A2: A] :
% 2.96/1.60        ( ( ( product_fst @ A @ B @ ( product_Pair @ A @ B @ X @ Y ) )
% 2.96/1.60          = A2 )
% 2.96/1.60       => ( X = A2 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_156_snd__conv,axiom,
% 2.96/1.60      ! [Aa: $tType,A: $tType,X1: Aa,X22: A] :
% 2.96/1.60        ( ( product_snd @ Aa @ A @ ( product_Pair @ Aa @ A @ X1 @ X22 ) )
% 2.96/1.60        = X22 ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_157_snd__eqD,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,X: B,Y: A,A2: A] :
% 2.96/1.60        ( ( ( product_snd @ B @ A @ ( product_Pair @ B @ A @ X @ Y ) )
% 2.96/1.60          = A2 )
% 2.96/1.60       => ( Y = A2 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_158_prod_Oswap__def,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType] :
% 2.96/1.60        ( ( product_swap @ A @ B )
% 2.96/1.60        = ( ^ [P3: product_prod @ A @ B] : ( product_Pair @ B @ A @ ( product_snd @ A @ B @ P3 ) @ ( product_fst @ A @ B @ P3 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_159_plus__prod__def,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType] :
% 2.96/1.60        ( ( ( plus @ A )
% 2.96/1.60          & ( plus @ B ) )
% 2.96/1.60       => ( ( plus_plus @ ( product_prod @ A @ B ) )
% 2.96/1.60          = ( ^ [X4: product_prod @ A @ B,Y4: product_prod @ A @ B] : ( product_Pair @ A @ B @ ( plus_plus @ A @ ( product_fst @ A @ B @ X4 ) @ ( product_fst @ A @ B @ Y4 ) ) @ ( plus_plus @ B @ ( product_snd @ A @ B @ X4 ) @ ( product_snd @ A @ B @ Y4 ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_160_prod__fun__imageE,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,D: $tType,C: $tType,C3: product_prod @ A @ B,F3: C > A,G3: D > B,R3: set @ ( product_prod @ C @ D )] :
% 2.96/1.60        ( ( member @ ( product_prod @ A @ B ) @ C3 @ ( image @ ( product_prod @ C @ D ) @ ( product_prod @ A @ B ) @ ( product_map_prod @ C @ A @ D @ B @ F3 @ G3 ) @ R3 ) )
% 2.96/1.60       => ~ ! [X3: C,Y3: D] :
% 2.96/1.60              ( ( C3
% 2.96/1.60                = ( product_Pair @ A @ B @ ( F3 @ X3 ) @ ( G3 @ Y3 ) ) )
% 2.96/1.60             => ~ ( member @ ( product_prod @ C @ D ) @ ( product_Pair @ C @ D @ X3 @ Y3 ) @ R3 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_161_exI__realizer,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,P2: A > B > $o,Y: A,X: B] :
% 2.96/1.60        ( ( P2 @ Y @ X )
% 2.96/1.60       => ( P2 @ ( product_snd @ B @ A @ ( product_Pair @ B @ A @ X @ Y ) ) @ ( product_fst @ B @ A @ ( product_Pair @ B @ A @ X @ Y ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_162_conjI__realizer,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,P2: A > $o,P: A,Q: B > $o,Q2: B] :
% 2.96/1.60        ( ( P2 @ P )
% 2.96/1.60       => ( ( Q @ Q2 )
% 2.96/1.60         => ( ( P2 @ ( product_fst @ A @ B @ ( product_Pair @ A @ B @ P @ Q2 ) ) )
% 2.96/1.60            & ( Q @ ( product_snd @ A @ B @ ( product_Pair @ A @ B @ P @ Q2 ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_163_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,P2: A > B > $o,X: A,Y: B,A2: product_prod @ A @ B] :
% 2.96/1.60        ( ( P2 @ X @ Y )
% 2.96/1.60       => ( ( A2
% 2.96/1.60            = ( product_Pair @ A @ B @ X @ Y ) )
% 2.96/1.60         => ( P2 @ ( product_fst @ A @ B @ A2 ) @ ( product_snd @ A @ B @ A2 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_164_sndI,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,X: product_prod @ A @ B,Y: A,Z: B] :
% 2.96/1.60        ( ( X
% 2.96/1.60          = ( product_Pair @ A @ B @ Y @ Z ) )
% 2.96/1.60       => ( ( product_snd @ A @ B @ X )
% 2.96/1.60          = Z ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_165_fstI,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,X: product_prod @ A @ B,Y: A,Z: B] :
% 2.96/1.60        ( ( X
% 2.96/1.60          = ( product_Pair @ A @ B @ Y @ Z ) )
% 2.96/1.60       => ( ( product_fst @ A @ B @ X )
% 2.96/1.60          = Y ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_166_eq__snd__iff,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,B2: A,P: product_prod @ B @ A] :
% 2.96/1.60        ( ( B2
% 2.96/1.60          = ( product_snd @ B @ A @ P ) )
% 2.96/1.60        = ( ? [A7: B] :
% 2.96/1.60              ( P
% 2.96/1.60              = ( product_Pair @ B @ A @ A7 @ B2 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_167_eq__fst__iff,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,A2: A,P: product_prod @ A @ B] :
% 2.96/1.60        ( ( A2
% 2.96/1.60          = ( product_fst @ A @ B @ P ) )
% 2.96/1.60        = ( ? [B6: B] :
% 2.96/1.60              ( P
% 2.96/1.60              = ( product_Pair @ A @ B @ A2 @ B6 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_168_Collect__split__mono__strong,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,X5: set @ A,A6: set @ ( product_prod @ A @ B ),Y5: set @ B,P2: A > B > $o,Q: A > B > $o] :
% 2.96/1.60        ( ( X5
% 2.96/1.60          = ( image @ ( product_prod @ A @ B ) @ A @ ( product_fst @ A @ B ) @ A6 ) )
% 2.96/1.60       => ( ( Y5
% 2.96/1.60            = ( image @ ( product_prod @ A @ B ) @ B @ ( product_snd @ A @ B ) @ A6 ) )
% 2.96/1.60         => ( ! [X3: A] :
% 2.96/1.60                ( ( member @ A @ X3 @ X5 )
% 2.96/1.60               => ! [Xa2: B] :
% 2.96/1.60                    ( ( member @ B @ Xa2 @ Y5 )
% 2.96/1.60                   => ( ( P2 @ X3 @ Xa2 )
% 2.96/1.60                     => ( Q @ X3 @ Xa2 ) ) ) )
% 2.96/1.60           => ( ( ord_less_eq @ ( set @ ( product_prod @ A @ B ) ) @ A6 @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ P2 ) ) )
% 2.96/1.60             => ( ord_less_eq @ ( set @ ( product_prod @ A @ B ) ) @ A6 @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ Q ) ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_169_Pair__le,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType] :
% 2.96/1.60        ( ( ( ord @ B )
% 2.96/1.60          & ( ord @ A ) )
% 2.96/1.60       => ! [A2: A,B2: B,C3: A,D3: B] :
% 2.96/1.60            ( ( ord_less_eq @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ A2 @ B2 ) @ ( product_Pair @ A @ B @ C3 @ D3 ) )
% 2.96/1.60            = ( ( ord_less_eq @ A @ A2 @ C3 )
% 2.96/1.60              & ( ord_less_eq @ B @ B2 @ D3 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_170_subrelI,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,R2: set @ ( product_prod @ A @ B ),S: set @ ( product_prod @ A @ B )] :
% 2.96/1.60        ( ! [X3: A,Y3: B] :
% 2.96/1.60            ( ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ X3 @ Y3 ) @ R2 )
% 2.96/1.60           => ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ X3 @ Y3 ) @ S ) )
% 2.96/1.60       => ( ord_less_eq @ ( set @ ( product_prod @ A @ B ) ) @ R2 @ S ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_171_Pair__mono,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType] :
% 2.96/1.60        ( ( ( ord @ B )
% 2.96/1.60          & ( ord @ A ) )
% 2.96/1.60       => ! [X: A,X6: A,Y: B,Y7: B] :
% 2.96/1.60            ( ( ord_less_eq @ A @ X @ X6 )
% 2.96/1.60           => ( ( ord_less_eq @ B @ Y @ Y7 )
% 2.96/1.60             => ( ord_less_eq @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ X @ Y ) @ ( product_Pair @ A @ B @ X6 @ Y7 ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_172_mono__mult,axiom,
% 2.96/1.60      ! [A: $tType,R2: set @ ( product_prod @ A @ A ),R6: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( ord_less_eq @ ( set @ ( product_prod @ A @ A ) ) @ R2 @ R6 )
% 2.96/1.60       => ( ord_less_eq @ ( set @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) ) @ ( mult @ A @ R2 ) @ ( mult @ A @ R6 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_173_image__mono,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,A6: set @ A,B5: set @ A,F3: A > B] :
% 2.96/1.60        ( ( ord_less_eq @ ( set @ A ) @ A6 @ B5 )
% 2.96/1.60       => ( ord_less_eq @ ( set @ B ) @ ( image @ A @ B @ F3 @ A6 ) @ ( image @ A @ B @ F3 @ B5 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_174_image__subsetI,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,A6: set @ A,F3: A > B,B5: set @ B] :
% 2.96/1.60        ( ! [X3: A] :
% 2.96/1.60            ( ( member @ A @ X3 @ A6 )
% 2.96/1.60           => ( member @ B @ ( F3 @ X3 ) @ B5 ) )
% 2.96/1.60       => ( ord_less_eq @ ( set @ B ) @ ( image @ A @ B @ F3 @ A6 ) @ B5 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_175_subset__imageE,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,B5: set @ A,F3: B > A,A6: set @ B] :
% 2.96/1.60        ( ( ord_less_eq @ ( set @ A ) @ B5 @ ( image @ B @ A @ F3 @ A6 ) )
% 2.96/1.60       => ~ ! [C4: set @ B] :
% 2.96/1.60              ( ( ord_less_eq @ ( set @ B ) @ C4 @ A6 )
% 2.96/1.60             => ( B5
% 2.96/1.60               != ( image @ B @ A @ F3 @ C4 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_176_image__subset__iff,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,F3: B > A,A6: set @ B,B5: set @ A] :
% 2.96/1.60        ( ( ord_less_eq @ ( set @ A ) @ ( image @ B @ A @ F3 @ A6 ) @ B5 )
% 2.96/1.60        = ( ! [X4: B] :
% 2.96/1.60              ( ( member @ B @ X4 @ A6 )
% 2.96/1.60             => ( member @ A @ ( F3 @ X4 ) @ B5 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_177_subset__image__iff,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,B5: set @ A,F3: B > A,A6: set @ B] :
% 2.96/1.60        ( ( ord_less_eq @ ( set @ A ) @ B5 @ ( image @ B @ A @ F3 @ A6 ) )
% 2.96/1.60        = ( ? [AA: set @ B] :
% 2.96/1.60              ( ( ord_less_eq @ ( set @ B ) @ AA @ A6 )
% 2.96/1.60              & ( B5
% 2.96/1.60                = ( image @ B @ A @ F3 @ AA ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_178_subset__translation__eq,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( real_V1076094709vector @ A )
% 2.96/1.60       => ! [A2: A,S: set @ A,T2: set @ A] :
% 2.96/1.60            ( ( ord_less_eq @ ( set @ A ) @ ( image @ A @ A @ ( plus_plus @ A @ A2 ) @ S ) @ ( image @ A @ A @ ( plus_plus @ A @ A2 ) @ T2 ) )
% 2.96/1.60            = ( ord_less_eq @ ( set @ A ) @ S @ T2 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_179_range__subsetD,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,F3: B > A,B5: set @ A,I: B] :
% 2.96/1.60        ( ( ord_less_eq @ ( set @ A ) @ ( image @ B @ A @ F3 @ ( top_top @ ( set @ B ) ) ) @ B5 )
% 2.96/1.60       => ( member @ A @ ( F3 @ I ) @ B5 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_180_all__subset__image,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,F3: B > A,A6: set @ B,P2: ( set @ A ) > $o] :
% 2.96/1.60        ( ( ! [B8: set @ A] :
% 2.96/1.60              ( ( ord_less_eq @ ( set @ A ) @ B8 @ ( image @ B @ A @ F3 @ A6 ) )
% 2.96/1.60             => ( P2 @ B8 ) ) )
% 2.96/1.60        = ( ! [B8: set @ B] :
% 2.96/1.60              ( ( ord_less_eq @ ( set @ B ) @ B8 @ A6 )
% 2.96/1.60             => ( P2 @ ( image @ B @ A @ F3 @ B8 ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_181_Collect__case__prod__mono,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,A6: A > B > $o,B5: A > B > $o] :
% 2.96/1.60        ( ( ord_less_eq @ ( A > B > $o ) @ A6 @ B5 )
% 2.96/1.60       => ( ord_less_eq @ ( set @ ( product_prod @ A @ B ) ) @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ A6 ) ) @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ B5 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_182_mono__mult1,axiom,
% 2.96/1.60      ! [A: $tType,R2: set @ ( product_prod @ A @ A ),R6: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( ord_less_eq @ ( set @ ( product_prod @ A @ A ) ) @ R2 @ R6 )
% 2.96/1.60       => ( ord_less_eq @ ( set @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) ) @ ( mult1 @ A @ R2 ) @ ( mult1 @ A @ R6 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_183_same__fstI,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,P2: A > $o,X: A,Y7: B,Y: B,R3: A > ( set @ ( product_prod @ B @ B ) )] :
% 2.96/1.60        ( ( P2 @ X )
% 2.96/1.60       => ( ( member @ ( product_prod @ B @ B ) @ ( product_Pair @ B @ B @ Y7 @ Y ) @ ( R3 @ X ) )
% 2.96/1.60         => ( member @ ( product_prod @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) ) @ ( product_Pair @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ X @ Y7 ) @ ( product_Pair @ A @ B @ X @ Y ) ) @ ( same_fst @ A @ B @ P2 @ R3 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_184_relChain__def,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType] :
% 2.96/1.60        ( ( ord @ B )
% 2.96/1.60       => ( ( bNF_Ca1785829860lChain @ A @ B )
% 2.96/1.60          = ( ^ [R: set @ ( product_prod @ A @ A ),As: A > B] :
% 2.96/1.60              ! [I2: A,J: A] :
% 2.96/1.60                ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ I2 @ J ) @ R )
% 2.96/1.60               => ( ord_less_eq @ B @ ( As @ I2 ) @ ( As @ J ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_185_mult1__union,axiom,
% 2.96/1.60      ! [A: $tType,B5: multiset @ A,D4: multiset @ A,R2: set @ ( product_prod @ A @ A ),C5: multiset @ A] :
% 2.96/1.60        ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ B5 @ D4 ) @ ( mult1 @ A @ R2 ) )
% 2.96/1.60       => ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ C5 @ B5 ) @ ( plus_plus @ ( multiset @ A ) @ C5 @ D4 ) ) @ ( mult1 @ A @ R2 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_186_mult1E,axiom,
% 2.96/1.60      ! [A: $tType,N: multiset @ A,M: multiset @ A,R2: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ N @ M ) @ ( mult1 @ A @ R2 ) )
% 2.96/1.60       => ~ ! [A4: A,M0: multiset @ A] :
% 2.96/1.60              ( ( M
% 2.96/1.60                = ( add_mset @ A @ A4 @ M0 ) )
% 2.96/1.60             => ! [K3: multiset @ A] :
% 2.96/1.60                  ( ( N
% 2.96/1.60                    = ( plus_plus @ ( multiset @ A ) @ M0 @ K3 ) )
% 2.96/1.60                 => ~ ! [B7: A] :
% 2.96/1.60                        ( ( member @ A @ B7 @ ( set_mset @ A @ K3 ) )
% 2.96/1.60                       => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ B7 @ A4 ) @ R2 ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_187_mult1I,axiom,
% 2.96/1.60      ! [A: $tType,M: multiset @ A,A2: A,M02: multiset @ A,N: multiset @ A,K: multiset @ A,R2: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( M
% 2.96/1.60          = ( add_mset @ A @ A2 @ M02 ) )
% 2.96/1.60       => ( ( N
% 2.96/1.60            = ( plus_plus @ ( multiset @ A ) @ M02 @ K ) )
% 2.96/1.60         => ( ! [B4: A] :
% 2.96/1.60                ( ( member @ A @ B4 @ ( set_mset @ A @ K ) )
% 2.96/1.60               => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ B4 @ A2 ) @ R2 ) )
% 2.96/1.60           => ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ N @ M ) @ ( mult1 @ A @ R2 ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_188_less__add,axiom,
% 2.96/1.60      ! [A: $tType,N: multiset @ A,A2: A,M02: multiset @ A,R2: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ N @ ( add_mset @ A @ A2 @ M02 ) ) @ ( mult1 @ A @ R2 ) )
% 2.96/1.60       => ( ? [M3: multiset @ A] :
% 2.96/1.60              ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ M3 @ M02 ) @ ( mult1 @ A @ R2 ) )
% 2.96/1.60              & ( N
% 2.96/1.60                = ( add_mset @ A @ A2 @ M3 ) ) )
% 2.96/1.60          | ? [K3: multiset @ A] :
% 2.96/1.60              ( ! [B7: A] :
% 2.96/1.60                  ( ( member @ A @ B7 @ ( set_mset @ A @ K3 ) )
% 2.96/1.60                 => ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ B7 @ A2 ) @ R2 ) )
% 2.96/1.60              & ( N
% 2.96/1.60                = ( plus_plus @ ( multiset @ A ) @ M02 @ K3 ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_189_mset__add,axiom,
% 2.96/1.60      ! [A: $tType,A2: A,A6: multiset @ A] :
% 2.96/1.60        ( ( member @ A @ A2 @ ( set_mset @ A @ A6 ) )
% 2.96/1.60       => ~ ! [B9: multiset @ A] :
% 2.96/1.60              ( A6
% 2.96/1.60             != ( add_mset @ A @ A2 @ B9 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_190_multi__member__split,axiom,
% 2.96/1.60      ! [A: $tType,X: A,M: multiset @ A] :
% 2.96/1.60        ( ( member @ A @ X @ ( set_mset @ A @ M ) )
% 2.96/1.60       => ? [A9: multiset @ A] :
% 2.96/1.60            ( M
% 2.96/1.60            = ( add_mset @ A @ X @ A9 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_191_insert__noteq__member,axiom,
% 2.96/1.60      ! [A: $tType,B2: A,B5: multiset @ A,C3: A,C5: multiset @ A] :
% 2.96/1.60        ( ( ( add_mset @ A @ B2 @ B5 )
% 2.96/1.60          = ( add_mset @ A @ C3 @ C5 ) )
% 2.96/1.60       => ( ( B2 != C3 )
% 2.96/1.60         => ( member @ A @ C3 @ ( set_mset @ A @ B5 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_192_union__single__eq__member,axiom,
% 2.96/1.60      ! [A: $tType,X: A,M: multiset @ A,N: multiset @ A] :
% 2.96/1.60        ( ( ( add_mset @ A @ X @ M )
% 2.96/1.60          = N )
% 2.96/1.60       => ( member @ A @ X @ ( set_mset @ A @ N ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_193_union__iff,axiom,
% 2.96/1.60      ! [A: $tType,A2: A,A6: multiset @ A,B5: multiset @ A] :
% 2.96/1.60        ( ( member @ A @ A2 @ ( set_mset @ A @ ( plus_plus @ ( multiset @ A ) @ A6 @ B5 ) ) )
% 2.96/1.60        = ( ( member @ A @ A2 @ ( set_mset @ A @ A6 ) )
% 2.96/1.60          | ( member @ A @ A2 @ ( set_mset @ A @ B5 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_194_mult__implies__one__step,axiom,
% 2.96/1.60      ! [A: $tType,R2: set @ ( product_prod @ A @ A ),M: multiset @ A,N: multiset @ A] :
% 2.96/1.60        ( ( trans @ A @ R2 )
% 2.96/1.60       => ( ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ M @ N ) @ ( mult @ A @ R2 ) )
% 2.96/1.60         => ? [I3: multiset @ A,J2: multiset @ A] :
% 2.96/1.60              ( ( N
% 2.96/1.60                = ( plus_plus @ ( multiset @ A ) @ I3 @ J2 ) )
% 2.96/1.60              & ? [K3: multiset @ A] :
% 2.96/1.60                  ( ( M
% 2.96/1.60                    = ( plus_plus @ ( multiset @ A ) @ I3 @ K3 ) )
% 2.96/1.60                  & ( J2
% 2.96/1.60                   != ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60                  & ! [X2: A] :
% 2.96/1.60                      ( ( member @ A @ X2 @ ( set_mset @ A @ K3 ) )
% 2.96/1.60                     => ? [Xa2: A] :
% 2.96/1.60                          ( ( member @ A @ Xa2 @ ( set_mset @ A @ J2 ) )
% 2.96/1.60                          & ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X2 @ Xa2 ) @ R2 ) ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_195_one__step__implies__mult,axiom,
% 2.96/1.60      ! [A: $tType,J3: multiset @ A,K: multiset @ A,R2: set @ ( product_prod @ A @ A ),I4: multiset @ A] :
% 2.96/1.60        ( ( J3
% 2.96/1.60         != ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60       => ( ! [X3: A] :
% 2.96/1.60              ( ( member @ A @ X3 @ ( set_mset @ A @ K ) )
% 2.96/1.60             => ? [Xa: A] :
% 2.96/1.60                  ( ( member @ A @ Xa @ ( set_mset @ A @ J3 ) )
% 2.96/1.60                  & ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ Xa ) @ R2 ) ) )
% 2.96/1.60         => ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ I4 @ K ) @ ( plus_plus @ ( multiset @ A ) @ I4 @ J3 ) ) @ ( mult @ A @ R2 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_196_subset__mset_Ozero__eq__add__iff__both__eq__0,axiom,
% 2.96/1.60      ! [A: $tType,X: multiset @ A,Y: multiset @ A] :
% 2.96/1.60        ( ( ( zero_zero @ ( multiset @ A ) )
% 2.96/1.60          = ( plus_plus @ ( multiset @ A ) @ X @ Y ) )
% 2.96/1.60        = ( ( X
% 2.96/1.60            = ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60          & ( Y
% 2.96/1.60            = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_197_subset__mset_Oadd__eq__0__iff__both__eq__0,axiom,
% 2.96/1.60      ! [A: $tType,X: multiset @ A,Y: multiset @ A] :
% 2.96/1.60        ( ( ( plus_plus @ ( multiset @ A ) @ X @ Y )
% 2.96/1.60          = ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60        = ( ( X
% 2.96/1.60            = ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60          & ( Y
% 2.96/1.60            = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_198_union__eq__empty,axiom,
% 2.96/1.60      ! [A: $tType,M: multiset @ A,N: multiset @ A] :
% 2.96/1.60        ( ( ( plus_plus @ ( multiset @ A ) @ M @ N )
% 2.96/1.60          = ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60        = ( ( M
% 2.96/1.60            = ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60          & ( N
% 2.96/1.60            = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_199_empty__eq__union,axiom,
% 2.96/1.60      ! [A: $tType,M: multiset @ A,N: multiset @ A] :
% 2.96/1.60        ( ( ( zero_zero @ ( multiset @ A ) )
% 2.96/1.60          = ( plus_plus @ ( multiset @ A ) @ M @ N ) )
% 2.96/1.60        = ( ( M
% 2.96/1.60            = ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60          & ( N
% 2.96/1.60            = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_200_add__mset__eq__singleton__iff,axiom,
% 2.96/1.60      ! [A: $tType,X: A,M: multiset @ A,Y: A] :
% 2.96/1.60        ( ( ( add_mset @ A @ X @ M )
% 2.96/1.60          = ( add_mset @ A @ Y @ ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.60        = ( ( M
% 2.96/1.60            = ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60          & ( X = Y ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_201_single__eq__add__mset,axiom,
% 2.96/1.60      ! [A: $tType,A2: A,B2: A,M: multiset @ A] :
% 2.96/1.60        ( ( ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60          = ( add_mset @ A @ B2 @ M ) )
% 2.96/1.60        = ( ( B2 = A2 )
% 2.96/1.60          & ( M
% 2.96/1.60            = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_202_add__mset__eq__single,axiom,
% 2.96/1.60      ! [A: $tType,B2: A,M: multiset @ A,A2: A] :
% 2.96/1.60        ( ( ( add_mset @ A @ B2 @ M )
% 2.96/1.60          = ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.60        = ( ( B2 = A2 )
% 2.96/1.60          & ( M
% 2.96/1.60            = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_203_single__eq__single,axiom,
% 2.96/1.60      ! [A: $tType,A2: A,B2: A] :
% 2.96/1.60        ( ( ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60          = ( add_mset @ A @ B2 @ ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.60        = ( A2 = B2 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_204_image__add__0,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( comm_monoid_add @ A )
% 2.96/1.60       => ! [S3: set @ A] :
% 2.96/1.60            ( ( image @ A @ A @ ( plus_plus @ A @ ( zero_zero @ A ) ) @ S3 )
% 2.96/1.60            = S3 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_205_multiset__nonemptyE,axiom,
% 2.96/1.60      ! [A: $tType,A6: multiset @ A] :
% 2.96/1.60        ( ( A6
% 2.96/1.60         != ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60       => ~ ! [X3: A] :
% 2.96/1.60              ~ ( member @ A @ X3 @ ( set_mset @ A @ A6 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_206_zero__prod__def,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType] :
% 2.96/1.60        ( ( ( zero @ B )
% 2.96/1.60          & ( zero @ A ) )
% 2.96/1.60       => ( ( zero_zero @ ( product_prod @ A @ B ) )
% 2.96/1.60          = ( product_Pair @ A @ B @ ( zero_zero @ A ) @ ( zero_zero @ B ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_207_empty__neutral_I1_J,axiom,
% 2.96/1.60      ! [A: $tType,X: multiset @ A] :
% 2.96/1.60        ( ( plus_plus @ ( multiset @ A ) @ ( zero_zero @ ( multiset @ A ) ) @ X )
% 2.96/1.60        = X ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_208_empty__neutral_I2_J,axiom,
% 2.96/1.60      ! [A: $tType,X: multiset @ A] :
% 2.96/1.60        ( ( plus_plus @ ( multiset @ A ) @ X @ ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60        = X ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_209_multi__nonempty__split,axiom,
% 2.96/1.60      ! [A: $tType,M: multiset @ A] :
% 2.96/1.60        ( ( M
% 2.96/1.60         != ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60       => ? [A9: multiset @ A,A4: A] :
% 2.96/1.60            ( M
% 2.96/1.60            = ( add_mset @ A @ A4 @ A9 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_210_empty__not__add__mset,axiom,
% 2.96/1.60      ! [A: $tType,A2: A,A6: multiset @ A] :
% 2.96/1.60        ( ( zero_zero @ ( multiset @ A ) )
% 2.96/1.60       != ( add_mset @ A @ A2 @ A6 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_211_multiset__induct2,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType,P2: ( multiset @ A ) > ( multiset @ B ) > $o,M: multiset @ A,N: multiset @ B] :
% 2.96/1.60        ( ( P2 @ ( zero_zero @ ( multiset @ A ) ) @ ( zero_zero @ ( multiset @ B ) ) )
% 2.96/1.60       => ( ! [A4: A,M3: multiset @ A,N3: multiset @ B] :
% 2.96/1.60              ( ( P2 @ M3 @ N3 )
% 2.96/1.60             => ( P2 @ ( add_mset @ A @ A4 @ M3 ) @ N3 ) )
% 2.96/1.60         => ( ! [A4: B,M3: multiset @ A,N3: multiset @ B] :
% 2.96/1.60                ( ( P2 @ M3 @ N3 )
% 2.96/1.60               => ( P2 @ M3 @ ( add_mset @ B @ A4 @ N3 ) ) )
% 2.96/1.60           => ( P2 @ M @ N ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_212_multiset__induct,axiom,
% 2.96/1.60      ! [A: $tType,P2: ( multiset @ A ) > $o,M: multiset @ A] :
% 2.96/1.60        ( ( P2 @ ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60       => ( ! [X3: A,M3: multiset @ A] :
% 2.96/1.60              ( ( P2 @ M3 )
% 2.96/1.60             => ( P2 @ ( add_mset @ A @ X3 @ M3 ) ) )
% 2.96/1.60         => ( P2 @ M ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_213_multiset__cases,axiom,
% 2.96/1.60      ! [A: $tType,M: multiset @ A] :
% 2.96/1.60        ( ( M
% 2.96/1.60         != ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60       => ~ ! [X3: A,N3: multiset @ A] :
% 2.96/1.60              ( M
% 2.96/1.60             != ( add_mset @ A @ X3 @ N3 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_214_single__is__union,axiom,
% 2.96/1.60      ! [A: $tType,A2: A,M: multiset @ A,N: multiset @ A] :
% 2.96/1.60        ( ( ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60          = ( plus_plus @ ( multiset @ A ) @ M @ N ) )
% 2.96/1.60        = ( ( ( ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60              = M )
% 2.96/1.60            & ( N
% 2.96/1.60              = ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.60          | ( ( M
% 2.96/1.60              = ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60            & ( ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60              = N ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_215_union__is__single,axiom,
% 2.96/1.60      ! [A: $tType,M: multiset @ A,N: multiset @ A,A2: A] :
% 2.96/1.60        ( ( ( plus_plus @ ( multiset @ A ) @ M @ N )
% 2.96/1.60          = ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.60        = ( ( ( M
% 2.96/1.60              = ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.60            & ( N
% 2.96/1.60              = ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.60          | ( ( M
% 2.96/1.60              = ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60            & ( N
% 2.96/1.60              = ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_216_add__mset__add__single,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( add_mset @ A )
% 2.96/1.60        = ( ^ [A7: A,A5: multiset @ A] : ( plus_plus @ ( multiset @ A ) @ A5 @ ( add_mset @ A @ A7 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_217_multi__member__last,axiom,
% 2.96/1.60      ! [A: $tType,X: A] : ( member @ A @ X @ ( set_mset @ A @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_218_not__less__empty,axiom,
% 2.96/1.60      ! [A: $tType,M: multiset @ A,R2: set @ ( product_prod @ A @ A )] :
% 2.96/1.60        ~ ( member @ ( product_prod @ ( multiset @ A ) @ ( multiset @ A ) ) @ ( product_Pair @ ( multiset @ A ) @ ( multiset @ A ) @ M @ ( zero_zero @ ( multiset @ A ) ) ) @ ( mult1 @ A @ R2 ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_219_multiset__induct__max,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( linorder @ A )
% 2.96/1.60       => ! [P2: ( multiset @ A ) > $o,M: multiset @ A] :
% 2.96/1.60            ( ( P2 @ ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60           => ( ! [X3: A,M3: multiset @ A] :
% 2.96/1.60                  ( ( P2 @ M3 )
% 2.96/1.60                 => ( ! [Xa: A] :
% 2.96/1.60                        ( ( member @ A @ Xa @ ( set_mset @ A @ M3 ) )
% 2.96/1.60                       => ( ord_less_eq @ A @ Xa @ X3 ) )
% 2.96/1.60                   => ( P2 @ ( add_mset @ A @ X3 @ M3 ) ) ) )
% 2.96/1.60             => ( P2 @ M ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_220_multiset__induct__min,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( linorder @ A )
% 2.96/1.60       => ! [P2: ( multiset @ A ) > $o,M: multiset @ A] :
% 2.96/1.60            ( ( P2 @ ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60           => ( ! [X3: A,M3: multiset @ A] :
% 2.96/1.60                  ( ( P2 @ M3 )
% 2.96/1.60                 => ( ! [Xa: A] :
% 2.96/1.60                        ( ( member @ A @ Xa @ ( set_mset @ A @ M3 ) )
% 2.96/1.60                       => ( ord_less_eq @ A @ X3 @ Xa ) )
% 2.96/1.60                   => ( P2 @ ( add_mset @ A @ X3 @ M3 ) ) ) )
% 2.96/1.60             => ( P2 @ M ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_221_multi__member__skip,axiom,
% 2.96/1.60      ! [A: $tType,X: A,XS: multiset @ A,Y: A] :
% 2.96/1.60        ( ( member @ A @ X @ ( set_mset @ A @ XS ) )
% 2.96/1.60       => ( member @ A @ X @ ( set_mset @ A @ ( plus_plus @ ( multiset @ A ) @ ( add_mset @ A @ Y @ ( zero_zero @ ( multiset @ A ) ) ) @ XS ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_222_multi__member__this,axiom,
% 2.96/1.60      ! [A: $tType,X: A,XS: multiset @ A] : ( member @ A @ X @ ( set_mset @ A @ ( plus_plus @ ( multiset @ A ) @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) @ XS ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_223_Multiset_Ois__empty__def,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( is_empty @ A )
% 2.96/1.60        = ( ^ [A5: multiset @ A] :
% 2.96/1.60              ( A5
% 2.96/1.60              = ( zero_zero @ ( multiset @ A ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_224_subset__mset_Osum__mset__0__iff,axiom,
% 2.96/1.60      ! [A: $tType,M: multiset @ ( multiset @ A )] :
% 2.96/1.60        ( ( ( comm_monoid_sum_mset @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) ) @ ( zero_zero @ ( multiset @ A ) ) @ M )
% 2.96/1.60          = ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.60        = ( ! [X4: multiset @ A] :
% 2.96/1.60              ( ( member @ ( multiset @ A ) @ X4 @ ( set_mset @ ( multiset @ A ) @ M ) )
% 2.96/1.60             => ( X4
% 2.96/1.60                = ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_225_comm__monoid__add_Osum__mset_Ocong,axiom,
% 2.96/1.60      ! [A: $tType] :
% 2.96/1.60        ( ( comm_monoid_sum_mset @ A )
% 2.96/1.60        = ( comm_monoid_sum_mset @ A ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_226_in__mset__fold__plus__iff,axiom,
% 2.96/1.60      ! [A: $tType,X: A,M: multiset @ A,NN: multiset @ ( multiset @ A )] :
% 2.96/1.60        ( ( member @ A @ X @ ( set_mset @ A @ ( fold_mset @ ( multiset @ A ) @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) ) @ M @ NN ) ) )
% 2.96/1.60        = ( ( member @ A @ X @ ( set_mset @ A @ M ) )
% 2.96/1.60          | ? [N2: multiset @ A] :
% 2.96/1.60              ( ( member @ ( multiset @ A ) @ N2 @ ( set_mset @ ( multiset @ A ) @ NN ) )
% 2.96/1.60              & ( member @ A @ X @ ( set_mset @ A @ N2 ) ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_227_insert__DiffM2,axiom,
% 2.96/1.60      ! [A: $tType,X: A,M: multiset @ A] :
% 2.96/1.60        ( ( member @ A @ X @ ( set_mset @ A @ M ) )
% 2.96/1.60       => ( ( plus_plus @ ( multiset @ A ) @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) ) @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.60          = M ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_228_diff__Pair,axiom,
% 2.96/1.60      ! [A: $tType,B: $tType] :
% 2.96/1.60        ( ( ( minus @ B )
% 2.96/1.60          & ( minus @ A ) )
% 2.96/1.60       => ! [A2: A,B2: B,C3: A,D3: B] :
% 2.96/1.60            ( ( minus_minus @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ A2 @ B2 ) @ ( product_Pair @ A @ B @ C3 @ D3 ) )
% 2.96/1.60            = ( product_Pair @ A @ B @ ( minus_minus @ A @ A2 @ C3 ) @ ( minus_minus @ B @ B2 @ D3 ) ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_229_diff__diff__add__mset,axiom,
% 2.96/1.60      ! [A: $tType,M: multiset @ A,N: multiset @ A,P2: multiset @ A] :
% 2.96/1.60        ( ( minus_minus @ ( multiset @ A ) @ ( minus_minus @ ( multiset @ A ) @ M @ N ) @ P2 )
% 2.96/1.60        = ( minus_minus @ ( multiset @ A ) @ M @ ( plus_plus @ ( multiset @ A ) @ N @ P2 ) ) ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_230_fold__mset__empty,axiom,
% 2.96/1.60      ! [B: $tType,A: $tType,F3: B > A > A,S: A] :
% 2.96/1.60        ( ( fold_mset @ B @ A @ F3 @ S @ ( zero_zero @ ( multiset @ B ) ) )
% 2.96/1.60        = S ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_231_add__mset__remove__trivial,axiom,
% 2.96/1.60      ! [A: $tType,X: A,M: multiset @ A] :
% 2.96/1.60        ( ( minus_minus @ ( multiset @ A ) @ ( add_mset @ A @ X @ M ) @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.60        = M ) ).
% 2.96/1.60  
% 2.96/1.60  thf(fact_232_diff__add__mset__swap,axiom,
% 2.96/1.60      ! [A: $tType,B2: A,A6: multiset @ A,M: multiset @ A] :
% 2.96/1.60        ( ~ ( member @ A @ B2 @ ( set_mset @ A @ A6 ) )
% 2.96/1.60       => ( ( minus_minus @ ( multiset @ A ) @ ( add_mset @ A @ B2 @ M ) @ A6 )
% 2.96/1.61          = ( add_mset @ A @ B2 @ ( minus_minus @ ( multiset @ A ) @ M @ A6 ) ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_233_insert__DiffM,axiom,
% 2.96/1.61      ! [A: $tType,X: A,M: multiset @ A] :
% 2.96/1.61        ( ( member @ A @ X @ ( set_mset @ A @ M ) )
% 2.96/1.61       => ( ( add_mset @ A @ X @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) ) )
% 2.96/1.61          = M ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_234_diff__union__swap2,axiom,
% 2.96/1.61      ! [A: $tType,Y: A,M: multiset @ A,X: A] :
% 2.96/1.61        ( ( member @ A @ Y @ ( set_mset @ A @ M ) )
% 2.96/1.61       => ( ( minus_minus @ ( multiset @ A ) @ ( add_mset @ A @ X @ M ) @ ( add_mset @ A @ Y @ ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.61          = ( add_mset @ A @ X @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ Y @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_235_diff__empty,axiom,
% 2.96/1.61      ! [A: $tType,M: multiset @ A] :
% 2.96/1.61        ( ( ( minus_minus @ ( multiset @ A ) @ M @ ( zero_zero @ ( multiset @ A ) ) )
% 2.96/1.61          = M )
% 2.96/1.61        & ( ( minus_minus @ ( multiset @ A ) @ ( zero_zero @ ( multiset @ A ) ) @ M )
% 2.96/1.61          = ( zero_zero @ ( multiset @ A ) ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_236_Multiset_Odiff__cancel,axiom,
% 2.96/1.61      ! [A: $tType,A6: multiset @ A] :
% 2.96/1.61        ( ( minus_minus @ ( multiset @ A ) @ A6 @ A6 )
% 2.96/1.61        = ( zero_zero @ ( multiset @ A ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_237_union__single__eq__diff,axiom,
% 2.96/1.61      ! [A: $tType,X: A,M: multiset @ A,N: multiset @ A] :
% 2.96/1.61        ( ( ( add_mset @ A @ X @ M )
% 2.96/1.61          = N )
% 2.96/1.61       => ( M
% 2.96/1.61          = ( minus_minus @ ( multiset @ A ) @ N @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_238_add__eq__conv__diff,axiom,
% 2.96/1.61      ! [A: $tType,A2: A,M: multiset @ A,B2: A,N: multiset @ A] :
% 2.96/1.61        ( ( ( add_mset @ A @ A2 @ M )
% 2.96/1.61          = ( add_mset @ A @ B2 @ N ) )
% 2.96/1.61        = ( ( ( M = N )
% 2.96/1.61            & ( A2 = B2 ) )
% 2.96/1.61          | ( ( M
% 2.96/1.61              = ( add_mset @ A @ B2 @ ( minus_minus @ ( multiset @ A ) @ N @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) )
% 2.96/1.61            & ( N
% 2.96/1.61              = ( add_mset @ A @ A2 @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ B2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_239_diff__union__swap,axiom,
% 2.96/1.61      ! [A: $tType,A2: A,B2: A,M: multiset @ A] :
% 2.96/1.61        ( ( A2 != B2 )
% 2.96/1.61       => ( ( add_mset @ A @ B2 @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) )
% 2.96/1.61          = ( minus_minus @ ( multiset @ A ) @ ( add_mset @ A @ B2 @ M ) @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_240_in__diffD,axiom,
% 2.96/1.61      ! [A: $tType,A2: A,M: multiset @ A,N: multiset @ A] :
% 2.96/1.61        ( ( member @ A @ A2 @ ( set_mset @ A @ ( minus_minus @ ( multiset @ A ) @ M @ N ) ) )
% 2.96/1.61       => ( member @ A @ A2 @ ( set_mset @ A @ M ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_241_minus__prod__def,axiom,
% 2.96/1.61      ! [B: $tType,A: $tType] :
% 2.96/1.61        ( ( ( minus @ A )
% 2.96/1.61          & ( minus @ B ) )
% 2.96/1.61       => ( ( minus_minus @ ( product_prod @ A @ B ) )
% 2.96/1.61          = ( ^ [X4: product_prod @ A @ B,Y4: product_prod @ A @ B] : ( product_Pair @ A @ B @ ( minus_minus @ A @ ( product_fst @ A @ B @ X4 ) @ ( product_fst @ A @ B @ Y4 ) ) @ ( minus_minus @ B @ ( product_snd @ A @ B @ X4 ) @ ( product_snd @ A @ B @ Y4 ) ) ) ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_242_diff__union__cancelR,axiom,
% 2.96/1.61      ! [A: $tType,M: multiset @ A,N: multiset @ A] :
% 2.96/1.61        ( ( minus_minus @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ M @ N ) @ N )
% 2.96/1.61        = M ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_243_diff__union__cancelL,axiom,
% 2.96/1.61      ! [A: $tType,N: multiset @ A,M: multiset @ A] :
% 2.96/1.61        ( ( minus_minus @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ N @ M ) @ N )
% 2.96/1.61        = M ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_244_Multiset_Odiff__add,axiom,
% 2.96/1.61      ! [A: $tType,M: multiset @ A,N: multiset @ A,Q: multiset @ A] :
% 2.96/1.61        ( ( minus_minus @ ( multiset @ A ) @ M @ ( plus_plus @ ( multiset @ A ) @ N @ Q ) )
% 2.96/1.61        = ( minus_minus @ ( multiset @ A ) @ ( minus_minus @ ( multiset @ A ) @ M @ N ) @ Q ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_245_add__mset__diff__bothsides,axiom,
% 2.96/1.61      ! [A: $tType,A2: A,M: multiset @ A,A6: multiset @ A] :
% 2.96/1.61        ( ( minus_minus @ ( multiset @ A ) @ ( add_mset @ A @ A2 @ M ) @ ( add_mset @ A @ A2 @ A6 ) )
% 2.96/1.61        = ( minus_minus @ ( multiset @ A ) @ M @ A6 ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_246_Multiset_Odiff__right__commute,axiom,
% 2.96/1.61      ! [A: $tType,M: multiset @ A,N: multiset @ A,Q: multiset @ A] :
% 2.96/1.61        ( ( minus_minus @ ( multiset @ A ) @ ( minus_minus @ ( multiset @ A ) @ M @ N ) @ Q )
% 2.96/1.61        = ( minus_minus @ ( multiset @ A ) @ ( minus_minus @ ( multiset @ A ) @ M @ Q ) @ N ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_247_union__fold__mset__add__mset,axiom,
% 2.96/1.61      ! [A: $tType] :
% 2.96/1.61        ( ( plus_plus @ ( multiset @ A ) )
% 2.96/1.61        = ( fold_mset @ A @ ( multiset @ A ) @ ( add_mset @ A ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_248_diff__single__trivial,axiom,
% 2.96/1.61      ! [A: $tType,X: A,M: multiset @ A] :
% 2.96/1.61        ( ~ ( member @ A @ X @ ( set_mset @ A @ M ) )
% 2.96/1.61       => ( ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.61          = M ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_249_diff__single__eq__union,axiom,
% 2.96/1.61      ! [A: $tType,X: A,M: multiset @ A,N: multiset @ A] :
% 2.96/1.61        ( ( member @ A @ X @ ( set_mset @ A @ M ) )
% 2.96/1.61       => ( ( ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ X @ ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.61            = N )
% 2.96/1.61          = ( M
% 2.96/1.61            = ( add_mset @ A @ X @ N ) ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_250_multi__drop__mem__not__eq,axiom,
% 2.96/1.61      ! [A: $tType,C3: A,B5: multiset @ A] :
% 2.96/1.61        ( ( member @ A @ C3 @ ( set_mset @ A @ B5 ) )
% 2.96/1.61       => ( ( minus_minus @ ( multiset @ A ) @ B5 @ ( add_mset @ A @ C3 @ ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.61         != B5 ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_251_add__mset__remove__trivial__If,axiom,
% 2.96/1.61      ! [A: $tType,A2: A,N: multiset @ A] :
% 2.96/1.61        ( ( ( member @ A @ A2 @ ( set_mset @ A @ N ) )
% 2.96/1.61         => ( ( add_mset @ A @ A2 @ ( minus_minus @ ( multiset @ A ) @ N @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) )
% 2.96/1.61            = N ) )
% 2.96/1.61        & ( ~ ( member @ A @ A2 @ ( set_mset @ A @ N ) )
% 2.96/1.61         => ( ( add_mset @ A @ A2 @ ( minus_minus @ ( multiset @ A ) @ N @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) )
% 2.96/1.61            = ( add_mset @ A @ A2 @ N ) ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_252_add__mset__remove__trivial__eq,axiom,
% 2.96/1.61      ! [A: $tType,N: multiset @ A,A2: A] :
% 2.96/1.61        ( ( N
% 2.96/1.61          = ( add_mset @ A @ A2 @ ( minus_minus @ ( multiset @ A ) @ N @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) )
% 2.96/1.61        = ( member @ A @ A2 @ ( set_mset @ A @ N ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_253_multiset__add__sub__el__shuffle,axiom,
% 2.96/1.61      ! [A: $tType,C3: A,B5: multiset @ A,B2: A] :
% 2.96/1.61        ( ( member @ A @ C3 @ ( set_mset @ A @ B5 ) )
% 2.96/1.61       => ( ( B2 != C3 )
% 2.96/1.61         => ( ( add_mset @ A @ B2 @ ( minus_minus @ ( multiset @ A ) @ B5 @ ( add_mset @ A @ C3 @ ( zero_zero @ ( multiset @ A ) ) ) ) )
% 2.96/1.61            = ( minus_minus @ ( multiset @ A ) @ ( add_mset @ A @ B2 @ B5 ) @ ( add_mset @ A @ C3 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_254_more__than__one__mset__mset__diff,axiom,
% 2.96/1.61      ! [A: $tType,A2: A,M: multiset @ A] :
% 2.96/1.61        ( ( member @ A @ A2 @ ( set_mset @ A @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) )
% 2.96/1.61       => ( ( set_mset @ A @ ( minus_minus @ ( multiset @ A ) @ M @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) )
% 2.96/1.61          = ( set_mset @ A @ M ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(fact_255_diff__union__single__conv,axiom,
% 2.96/1.61      ! [A: $tType,A2: A,J3: multiset @ A,I4: multiset @ A] :
% 2.96/1.61        ( ( member @ A @ A2 @ ( set_mset @ A @ J3 ) )
% 2.96/1.61       => ( ( minus_minus @ ( multiset @ A ) @ ( plus_plus @ ( multiset @ A ) @ I4 @ J3 ) @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) )
% 2.96/1.61          = ( plus_plus @ ( multiset @ A ) @ I4 @ ( minus_minus @ ( multiset @ A ) @ J3 @ ( add_mset @ A @ A2 @ ( zero_zero @ ( multiset @ A ) ) ) ) ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Product__Type_Oprod___Orderings_Opreorder,axiom,
% 2.96/1.61      ! [A10: $tType,A11: $tType] :
% 2.96/1.61        ( ( ( preorder @ A10 )
% 2.96/1.61          & ( preorder @ A11 ) )
% 2.96/1.61       => ( preorder @ ( product_prod @ A10 @ A11 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Multiset_Omultiset___Orderings_Opreorder_1,axiom,
% 2.96/1.61      ! [A10: $tType] :
% 2.96/1.61        ( ( preorder @ A10 )
% 2.96/1.61       => ( preorder @ ( multiset @ A10 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_HOL_Obool___Orderings_Opreorder_2,axiom,
% 2.96/1.61      preorder @ $o ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Set_Oset___Orderings_Opreorder_3,axiom,
% 2.96/1.61      ! [A10: $tType] : ( preorder @ ( set @ A10 ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_fun___Orderings_Opreorder_4,axiom,
% 2.96/1.61      ! [A10: $tType,A11: $tType] :
% 2.96/1.61        ( ( preorder @ A11 )
% 2.96/1.61       => ( preorder @ ( A10 > A11 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_fun___Orderings_Otop,axiom,
% 2.96/1.61      ! [A10: $tType,A11: $tType] :
% 2.96/1.61        ( ( top @ A11 )
% 2.96/1.61       => ( top @ ( A10 > A11 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_fun___Orderings_Oord,axiom,
% 2.96/1.61      ! [A10: $tType,A11: $tType] :
% 2.96/1.61        ( ( ord @ A11 )
% 2.96/1.61       => ( ord @ ( A10 > A11 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_fun___Groups_Ominus,axiom,
% 2.96/1.61      ! [A10: $tType,A11: $tType] :
% 2.96/1.61        ( ( minus @ A11 )
% 2.96/1.61       => ( minus @ ( A10 > A11 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Set_Oset___Groups_Ocomm__monoid__add,axiom,
% 2.96/1.61      ! [A10: $tType] :
% 2.96/1.61        ( ( comm_monoid_add @ A10 )
% 2.96/1.61       => ( comm_monoid_add @ ( set @ A10 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Set_Oset___Orderings_Otop_5,axiom,
% 2.96/1.61      ! [A10: $tType] : ( top @ ( set @ A10 ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Set_Oset___Orderings_Oord_6,axiom,
% 2.96/1.61      ! [A10: $tType] : ( ord @ ( set @ A10 ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Set_Oset___Groups_Ominus_7,axiom,
% 2.96/1.61      ! [A10: $tType] : ( minus @ ( set @ A10 ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Set_Oset___Groups_Ozero,axiom,
% 2.96/1.61      ! [A10: $tType] :
% 2.96/1.61        ( ( zero @ A10 )
% 2.96/1.61       => ( zero @ ( set @ A10 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Set_Oset___Groups_Oplus,axiom,
% 2.96/1.61      ! [A10: $tType] :
% 2.96/1.61        ( ( plus @ A10 )
% 2.96/1.61       => ( plus @ ( set @ A10 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_HOL_Obool___Orderings_Olinorder,axiom,
% 2.96/1.61      linorder @ $o ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_HOL_Obool___Orderings_Otop_8,axiom,
% 2.96/1.61      top @ $o ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_HOL_Obool___Orderings_Oord_9,axiom,
% 2.96/1.61      ord @ $o ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_HOL_Obool___Groups_Ominus_10,axiom,
% 2.96/1.61      minus @ $o ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Multiset_Omultiset___Groups_Ocomm__monoid__add_11,axiom,
% 2.96/1.61      ! [A10: $tType] : ( comm_monoid_add @ ( multiset @ A10 ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Multiset_Omultiset___Orderings_Oord_12,axiom,
% 2.96/1.61      ! [A10: $tType] :
% 2.96/1.61        ( ( preorder @ A10 )
% 2.96/1.61       => ( ord @ ( multiset @ A10 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Multiset_Omultiset___Groups_Ominus_13,axiom,
% 2.96/1.61      ! [A10: $tType] : ( minus @ ( multiset @ A10 ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Multiset_Omultiset___Groups_Ozero_14,axiom,
% 2.96/1.61      ! [A10: $tType] : ( zero @ ( multiset @ A10 ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Multiset_Omultiset___Groups_Oplus_15,axiom,
% 2.96/1.61      ! [A10: $tType] : ( plus @ ( multiset @ A10 ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Product__Type_Oprod___Real__Vector__Spaces_Oreal__vector,axiom,
% 2.96/1.61      ! [A10: $tType,A11: $tType] :
% 2.96/1.61        ( ( ( real_V1076094709vector @ A10 )
% 2.96/1.61          & ( real_V1076094709vector @ A11 ) )
% 2.96/1.61       => ( real_V1076094709vector @ ( product_prod @ A10 @ A11 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Product__Type_Oprod___Groups_Ocomm__monoid__add_16,axiom,
% 2.96/1.61      ! [A10: $tType,A11: $tType] :
% 2.96/1.61        ( ( ( comm_monoid_add @ A10 )
% 2.96/1.61          & ( comm_monoid_add @ A11 ) )
% 2.96/1.61       => ( comm_monoid_add @ ( product_prod @ A10 @ A11 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Product__Type_Oprod___Groups_Oab__group__add,axiom,
% 2.96/1.61      ! [A10: $tType,A11: $tType] :
% 2.96/1.61        ( ( ( ab_group_add @ A10 )
% 2.96/1.61          & ( ab_group_add @ A11 ) )
% 2.96/1.61       => ( ab_group_add @ ( product_prod @ A10 @ A11 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Product__Type_Oprod___Orderings_Otop_17,axiom,
% 2.96/1.61      ! [A10: $tType,A11: $tType] :
% 2.96/1.61        ( ( ( top @ A10 )
% 2.96/1.61          & ( top @ A11 ) )
% 2.96/1.61       => ( top @ ( product_prod @ A10 @ A11 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Product__Type_Oprod___Orderings_Oord_18,axiom,
% 2.96/1.61      ! [A10: $tType,A11: $tType] :
% 2.96/1.61        ( ( ( ord @ A10 )
% 2.96/1.61          & ( ord @ A11 ) )
% 2.96/1.61       => ( ord @ ( product_prod @ A10 @ A11 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Product__Type_Oprod___Groups_Ominus_19,axiom,
% 2.96/1.61      ! [A10: $tType,A11: $tType] :
% 2.96/1.61        ( ( ( minus @ A10 )
% 2.96/1.61          & ( minus @ A11 ) )
% 2.96/1.61       => ( minus @ ( product_prod @ A10 @ A11 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Product__Type_Oprod___Groups_Ozero_20,axiom,
% 2.96/1.61      ! [A10: $tType,A11: $tType] :
% 2.96/1.61        ( ( ( zero @ A10 )
% 2.96/1.61          & ( zero @ A11 ) )
% 2.96/1.61       => ( zero @ ( product_prod @ A10 @ A11 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(tcon_Product__Type_Oprod___Groups_Oplus_21,axiom,
% 2.96/1.61      ! [A10: $tType,A11: $tType] :
% 2.96/1.61        ( ( ( plus @ A10 )
% 2.96/1.61          & ( plus @ A11 ) )
% 2.96/1.61       => ( plus @ ( product_prod @ A10 @ A11 ) ) ) ).
% 2.96/1.61  
% 2.96/1.61  thf(conj_0,hypothesis,
% 2.96/1.61      member @ a @ x @ carrier ).
% 2.96/1.61  
% 2.96/1.61  thf(conj_1,hypothesis,
% 2.96/1.61      member @ a @ y @ carrier ).
% 2.96/1.61  
% 2.96/1.61  thf(conj_2,hypothesis,
% 2.96/1.61      x != y ).
% 2.96/1.61  
% 2.96/1.61  thf(conj_3,conjecture,
% 2.96/1.61      ( ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ x @ y ) @ relation )
% 2.96/1.61      | ( member @ ( product_prod @ a @ a ) @ ( product_Pair @ a @ a @ y @ x ) @ relation ) ) ).
% 2.96/1.61  ------------------------
% 2.96/1.64  % (9365)lrs+1002_1:1_au=on:bd=off:e2e=on:sd=2:sos=on:ss=axioms:i=275:si=on:rtra=on_0 on DTF2THF_9149 for (2999ds/275Mi)
% 2.96/1.64  % (9364)lrs+1002_1:128_aac=none:au=on:cnfonf=lazy_not_gen_be_off:sos=all:i=2:si=on:rtra=on_0 on DTF2THF_9149 for (2999ds/2Mi)
% 2.96/1.64  % (9364)Instruction limit reached!
% 2.96/1.64  % (9364)------------------------------
% 2.96/1.64  % (9364)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.96/1.64  % (9364)Termination reason: Unknown
% 2.96/1.64  % (9364)Termination phase: shuffling
% 2.96/1.64  
% 2.96/1.64  % (9364)Memory used [KB]: 1407
% 2.96/1.64  % (9364)Time elapsed: 0.003 s
% 2.96/1.64  % (9364)Instructions burned: 3 (million)
% 2.96/1.64  % (9364)------------------------------
% 2.96/1.64  % (9364)------------------------------
% 2.96/1.65  % (9362)dis+1010_1:1_au=on:cbe=off:chr=on:fsr=off:hfsq=on:nm=64:sos=theory:sp=weighted_frequency:i=27:si=on:rtra=on_0 on DTF2THF_9149 for (2999ds/27Mi)
% 2.96/1.65  % (9360)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on DTF2THF_9149 for (2999ds/183Mi)
% 2.96/1.65  % (9361)lrs+10_1:1_c=on:cnfonf=conj_eager:fd=off:fe=off:kws=frequency:spb=intro:i=4:si=on:rtra=on_0 on DTF2THF_9149 for (2999ds/4Mi)
% 2.96/1.65  % (9363)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on DTF2THF_9149 for (2999ds/2Mi)
% 2.96/1.65  % (9366)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on DTF2THF_9149 for (2999ds/18Mi)
% 2.96/1.65  % (9363)Instruction limit reached!
% 2.96/1.65  % (9363)------------------------------
% 2.96/1.65  % (9363)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.96/1.65  % (9363)Termination reason: Unknown
% 2.96/1.65  % (9363)Termination phase: shuffling
% 2.96/1.65  
% 2.96/1.65  % (9363)Memory used [KB]: 1407
% 2.96/1.65  % (9363)Time elapsed: 0.004 s
% 2.96/1.65  % (9363)Instructions burned: 3 (million)
% 2.96/1.65  % (9363)------------------------------
% 2.96/1.65  % (9363)------------------------------
% 2.96/1.65  % (9361)Instruction limit reached!
% 2.96/1.65  % (9361)------------------------------
% 2.96/1.65  % (9361)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.96/1.65  % (9361)Termination reason: Unknown
% 2.96/1.65  % (9361)Termination phase: shuffling
% 2.96/1.65  
% 2.96/1.65  % (9361)Memory used [KB]: 1535
% 2.96/1.65  % (9361)Time elapsed: 0.005 s
% 2.96/1.65  % (9361)Instructions burned: 5 (million)
% 2.96/1.65  % (9361)------------------------------
% 2.96/1.65  % (9361)------------------------------
% 2.96/1.65  % (9367)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_9149 for (2999ds/3Mi)
% 2.96/1.65  % (9367)Instruction limit reached!
% 2.96/1.65  % (9367)------------------------------
% 2.96/1.65  % (9367)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.96/1.65  % (9367)Termination reason: Unknown
% 2.96/1.65  % (9367)Termination phase: shuffling
% 2.96/1.65  
% 2.96/1.65  % (9367)Memory used [KB]: 1407
% 2.96/1.65  % (9367)Time elapsed: 0.003 s
% 2.96/1.65  % (9367)Instructions burned: 4 (million)
% 2.96/1.65  % (9367)------------------------------
% 2.96/1.65  % (9367)------------------------------
% 2.96/1.66  % (9366)Instruction limit reached!
% 2.96/1.66  % (9366)------------------------------
% 2.96/1.66  % (9366)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.96/1.66  % (9366)Termination reason: Unknown
% 2.96/1.66  % (9366)Termination phase: shuffling
% 2.96/1.66  
% 2.96/1.66  % (9366)Memory used [KB]: 1791
% 2.96/1.66  % (9366)Time elapsed: 0.014 s
% 2.96/1.66  % (9366)Instructions burned: 18 (million)
% 2.96/1.66  % (9366)------------------------------
% 2.96/1.66  % (9366)------------------------------
% 2.96/1.66  % (9362)Instruction limit reached!
% 2.96/1.66  % (9362)------------------------------
% 2.96/1.66  % (9362)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.96/1.66  % (9362)Termination reason: Unknown
% 2.96/1.66  % (9362)Termination phase: shuffling
% 2.96/1.66  
% 2.96/1.66  % (9362)Memory used [KB]: 1918
% 2.96/1.66  % (9362)Time elapsed: 0.016 s
% 2.96/1.66  % (9362)Instructions burned: 27 (million)
% 2.96/1.66  % (9362)------------------------------
% 2.96/1.66  % (9362)------------------------------
% 2.96/1.66  % (9365)First to succeed.
% 2.96/1.66  % (9370)dis+21_1:1_cbe=off:cnfonf=off:fs=off:fsr=off:hud=1:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_9149 for (2999ds/3Mi)
% 2.96/1.66  % (9370)Instruction limit reached!
% 2.96/1.66  % (9370)------------------------------
% 2.96/1.66  % (9370)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.96/1.66  % (9370)Termination reason: Unknown
% 2.96/1.66  % (9370)Termination phase: shuffling
% 2.96/1.66  
% 2.96/1.66  % (9370)Memory used [KB]: 1407
% 2.96/1.66  % (9370)Time elapsed: 0.003 s
% 2.96/1.66  % (9370)Instructions burned: 3 (million)
% 2.96/1.66  % (9370)------------------------------
% 2.96/1.66  % (9370)------------------------------
% 2.96/1.67  % (9365)Refutation found. Thanks to Tanya!
% 2.96/1.67  % SZS status Theorem for DTF2THF_9149
% 2.96/1.67  % SZS output start Proof for DTF2THF_9149
% 2.96/1.67  thf(type_def_5, type, product_prod: ($tType * $tType) > $tType).
% 2.96/1.67  thf(type_def_6, type, set: ($tType) > $tType).
% 2.96/1.67  thf(type_def_8, type, multiset: ($tType) > $tType).
% 2.96/1.67  thf(type_def_9, type, a: $tType).
% 2.96/1.67  thf(func_def_0, type, product_prod: ($tType * $tType) > $tType).
% 2.96/1.67  thf(func_def_1, type, multiset: ($tType) > $tType).
% 2.96/1.67  thf(func_def_2, type, set: ($tType) > $tType).
% 2.96/1.67  thf(func_def_3, type, a: $tType).
% 2.96/1.67  thf(func_def_4, type, preorder: !>[X0: $tType]:($o)).
% 2.96/1.67  thf(func_def_5, type, type: !>[X0: $tType]:($o)).
% 2.96/1.67  thf(func_def_6, type, plus: !>[X0: $tType]:($o)).
% 2.96/1.67  thf(func_def_7, type, zero: !>[X0: $tType]:($o)).
% 2.96/1.67  thf(func_def_8, type, minus: !>[X0: $tType]:($o)).
% 2.96/1.67  thf(func_def_9, type, ord: !>[X0: $tType]:($o)).
% 2.96/1.67  thf(func_def_10, type, top: !>[X0: $tType]:($o)).
% 2.96/1.67  thf(func_def_11, type, linorder: !>[X0: $tType]:($o)).
% 2.96/1.67  thf(func_def_12, type, ab_group_add: !>[X0: $tType]:($o)).
% 2.96/1.67  thf(func_def_13, type, comm_monoid_add: !>[X0: $tType]:($o)).
% 2.96/1.67  thf(func_def_14, type, real_V1076094709vector: !>[X0: $tType]:($o)).
% 2.96/1.67  thf(func_def_15, type, bNF_Ca1785829860lChain: !>[X0: $tType, X1: $tType]:(set @ product_prod @ X0 @ X0 > (X0 > X1) > $o)).
% 2.96/1.67  thf(func_def_16, type, minus_minus: !>[X0: $tType]:(X0 > X0 > X0)).
% 2.96/1.67  thf(func_def_17, type, plus_plus: !>[X0: $tType]:(X0 > X0 > X0)).
% 2.96/1.67  thf(func_def_18, type, zero_zero: !>[X0: $tType]:(X0)).
% 2.96/1.67  thf(func_def_19, type, add_mset: !>[X0: $tType]:(X0 > multiset @ X0 > multiset @ X0)).
% 2.96/1.67  thf(func_def_20, type, comm_monoid_sum_mset: !>[X0: $tType]:((X0 > X0 > X0) > X0 > multiset @ X0 > X0)).
% 2.96/1.67  thf(func_def_21, type, fold_mset: !>[X0: $tType, X1: $tType]:((X0 > X1 > X1) > X1 > multiset @ X0 > X1)).
% 2.96/1.67  thf(func_def_22, type, is_empty: !>[X0: $tType]:(multiset @ X0 > $o)).
% 2.96/1.67  thf(func_def_23, type, mult: !>[X0: $tType]:(set @ product_prod @ X0 @ X0 > set @ product_prod @ multiset @ X0 @ multiset @ X0)).
% 2.96/1.67  thf(func_def_24, type, mult1: !>[X0: $tType]:(set @ product_prod @ X0 @ X0 > set @ product_prod @ multiset @ X0 @ multiset @ X0)).
% 2.96/1.67  thf(func_def_25, type, multp: !>[X0: $tType]:((X0 > X0 > $o) > multiset @ X0 > multiset @ X0 > $o)).
% 2.96/1.67  thf(func_def_26, type, set_mset: !>[X0: $tType]:(multiset @ X0 > set @ X0)).
% 2.96/1.67  thf(func_def_27, type, order_preorder_on: !>[X0: $tType]:(set @ X0 > set @ product_prod @ X0 @ X0 > $o)).
% 2.96/1.67  thf(func_def_28, type, order_215145569der_on: !>[X0: $tType]:(set @ X0 > set @ product_prod @ X0 @ X0 > $o)).
% 2.96/1.67  thf(func_def_29, type, ord_less_eq: !>[X0: $tType]:(X0 > X0 > $o)).
% 2.96/1.67  thf(func_def_30, type, top_top: !>[X0: $tType]:(X0)).
% 2.96/1.67  thf(func_def_31, type, prefer310429814s_good: !>[X0: $tType]:(X0 > set @ X0 > set @ product_prod @ X0 @ X0 > set @ X0)).
% 2.96/1.67  thf(func_def_32, type, prefer199794634erence: !>[X0: $tType]:(set @ X0 > set @ product_prod @ X0 @ X0 > $o)).
% 2.96/1.67  thf(func_def_33, type, prefer1997167224erence: !>[X0: $tType]:(set @ X0 > set @ product_prod @ X0 @ X0 > $o)).
% 2.96/1.67  thf(func_def_34, type, prefer1801827867axioms: !>[X0: $tType]:(set @ X0 > set @ product_prod @ X0 @ X0 > $o)).
% 2.96/1.67  thf(func_def_35, type, product_Pair: !>[X0: $tType, X1: $tType]:(X0 > X1 > product_prod @ X0 @ X1)).
% 2.96/1.67  thf(func_def_36, type, product_curry: !>[X0: $tType, X1: $tType, X2: $tType]:((product_prod @ X0 @ X1 > X2) > X0 > X1 > X2)).
% 2.96/1.67  thf(func_def_37, type, produc2004651681e_prod: !>[X0: $tType, X1: $tType, X2: $tType]:((X0 > X1 > X2) > product_prod @ X0 @ X1 > X2)).
% 2.96/1.67  thf(func_def_38, type, product_map_prod: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType]:((X0 > X1) > (X2 > X3) > product_prod @ X0 @ X2 > product_prod @ X1 @ X3)).
% 2.96/1.67  thf(func_def_39, type, product_rec_bool: !>[X0: $tType]:(X0 > X0 > $o > X0)).
% 2.96/1.67  thf(func_def_40, type, product_rec_prod: !>[X0: $tType, X1: $tType, X2: $tType]:((X0 > X1 > X2) > product_prod @ X0 @ X1 > X2)).
% 2.96/1.67  thf(func_def_41, type, product_case_prod: !>[X0: $tType, X1: $tType, X2: $tType]:((X0 > X1 > X2) > product_prod @ X0 @ X1 > X2)).
% 2.96/1.67  thf(func_def_42, type, product_fst: !>[X0: $tType, X1: $tType]:(product_prod @ X0 @ X1 > X0)).
% 2.96/1.67  thf(func_def_43, type, product_snd: !>[X0: $tType, X1: $tType]:(product_prod @ X0 @ X1 > X1)).
% 2.96/1.67  thf(func_def_44, type, product_swap: !>[X0: $tType, X1: $tType]:(product_prod @ X0 @ X1 > product_prod @ X1 @ X0)).
% 2.96/1.67  thf(func_def_45, type, product_scomp: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType]:((X0 > product_prod @ X1 @ X2) > (X1 > X2 > X3) > X0 > X3)).
% 2.96/1.67  thf(func_def_46, type, asym: !>[X0: $tType]:(set @ product_prod @ X0 @ X0 > $o)).
% 2.96/1.67  thf(func_def_47, type, inv_image: !>[X0: $tType, X1: $tType]:(set @ product_prod @ X0 @ X0 > (X1 > X0) > set @ product_prod @ X1 @ X1)).
% 2.96/1.67  thf(func_def_48, type, inv_imagep: !>[X0: $tType, X1: $tType]:((X0 > X0 > $o) > (X1 > X0) > X1 > X1 > $o)).
% 2.96/1.67  thf(func_def_49, type, irrefl: !>[X0: $tType]:(set @ product_prod @ X0 @ X0 > $o)).
% 2.96/1.67  thf(func_def_50, type, refl_on: !>[X0: $tType]:(set @ X0 > set @ product_prod @ X0 @ X0 > $o)).
% 2.96/1.67  thf(func_def_51, type, total_on: !>[X0: $tType]:(set @ X0 > set @ product_prod @ X0 @ X0 > $o)).
% 2.96/1.67  thf(func_def_52, type, trans: !>[X0: $tType]:(set @ product_prod @ X0 @ X0 > $o)).
% 2.96/1.67  thf(func_def_53, type, collect: !>[X0: $tType]:((X0 > $o) > set @ X0)).
% 2.96/1.67  thf(func_def_54, type, image: !>[X0: $tType, X1: $tType]:((X0 > X1) > set @ X0 > set @ X1)).
% 2.96/1.67  thf(func_def_55, type, lex_prod: !>[X0: $tType, X1: $tType]:(set @ product_prod @ X0 @ X0 > set @ product_prod @ X1 @ X1 > set @ product_prod @ product_prod @ X0 @ X1 @ product_prod @ X0 @ X1)).
% 2.96/1.67  thf(func_def_56, type, same_fst: !>[X0: $tType, X1: $tType]:((X0 > $o) > (X0 > set @ product_prod @ X1 @ X1) > set @ product_prod @ product_prod @ X0 @ X1 @ product_prod @ X0 @ X1)).
% 2.96/1.67  thf(func_def_57, type, member: !>[X0: $tType]:(X0 > set @ X0 > $o)).
% 2.96/1.67  thf(func_def_58, type, carrier: set @ a).
% 2.96/1.67  thf(func_def_59, type, relation: set @ product_prod @ a @ a).
% 2.96/1.67  thf(func_def_60, type, x: a).
% 2.96/1.67  thf(func_def_61, type, y: a).
% 2.96/1.67  thf(func_def_77, type, sK0: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ product_prod @ X4 @ X5 > X0)).
% 2.96/1.67  thf(func_def_78, type, sK1: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ product_prod @ X4 @ X5 > X1)).
% 2.96/1.67  thf(func_def_79, type, sK2: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ product_prod @ X4 @ X5 > X2)).
% 2.96/1.67  thf(func_def_80, type, sK3: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ product_prod @ X4 @ X5 > X3)).
% 2.96/1.67  thf(func_def_81, type, sK4: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ product_prod @ X4 @ X5 > X4)).
% 2.96/1.67  thf(func_def_82, type, sK5: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ product_prod @ X4 @ X5 > X5)).
% 2.96/1.67  thf(func_def_83, type, sK6: !>[X0: $tType, X1: $tType]:((product_prod @ X1 @ X0 > $o) > X1)).
% 2.96/1.67  thf(func_def_84, type, sK7: !>[X0: $tType, X1: $tType]:((product_prod @ X1 @ X0 > $o) > X0)).
% 2.96/1.67  thf(func_def_85, type, sK8: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ product_prod @ X4 @ product_prod @ X5 @ X6 > X0)).
% 2.96/1.67  thf(func_def_86, type, sK9: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ product_prod @ X4 @ product_prod @ X5 @ X6 > X1)).
% 2.96/1.67  thf(func_def_87, type, sK10: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ product_prod @ X4 @ product_prod @ X5 @ X6 > X2)).
% 2.96/1.67  thf(func_def_88, type, sK11: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ product_prod @ X4 @ product_prod @ X5 @ X6 > X3)).
% 2.96/1.67  thf(func_def_89, type, sK12: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ product_prod @ X4 @ product_prod @ X5 @ X6 > X4)).
% 2.96/1.67  thf(func_def_90, type, sK13: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ product_prod @ X4 @ product_prod @ X5 @ X6 > X5)).
% 2.96/1.67  thf(func_def_91, type, sK14: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ product_prod @ X4 @ product_prod @ X5 @ X6 > X6)).
% 2.96/1.67  thf(func_def_92, type, sK15: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType]:((product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X4)).
% 2.96/1.67  thf(func_def_93, type, sK16: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType]:((product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X3)).
% 2.96/1.67  thf(func_def_94, type, sK17: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType]:((product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X2)).
% 2.96/1.67  thf(func_def_95, type, sK18: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType]:((product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X1)).
% 2.96/1.67  thf(func_def_96, type, sK19: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType]:((product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X0)).
% 2.96/1.67  thf(func_def_97, type, sK20: !>[X0: $tType, X1: $tType]:((product_prod @ X1 @ X0 > $o) > X1)).
% 2.96/1.67  thf(func_def_98, type, sK21: !>[X0: $tType, X1: $tType]:((product_prod @ X1 @ X0 > $o) > X0)).
% 2.96/1.67  thf(func_def_99, type, sK22: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType]:((product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X3)).
% 2.96/1.67  thf(func_def_100, type, sK23: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType]:((product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X2)).
% 2.96/1.67  thf(func_def_101, type, sK24: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType]:((product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X1)).
% 2.96/1.67  thf(func_def_102, type, sK25: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType]:((product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X0)).
% 2.96/1.67  thf(func_def_103, type, sK26: !>[X0: $tType, X1: $tType, X2: $tType]:(product_prod @ X0 @ product_prod @ X1 @ X2 > X0)).
% 2.96/1.67  thf(func_def_104, type, sK27: !>[X0: $tType, X1: $tType, X2: $tType]:(product_prod @ X0 @ product_prod @ X1 @ X2 > X1)).
% 2.96/1.67  thf(func_def_105, type, sK28: !>[X0: $tType, X1: $tType, X2: $tType]:(product_prod @ X0 @ product_prod @ X1 @ X2 > X2)).
% 2.96/1.67  thf(func_def_106, type, sK29: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:((product_prod @ X6 @ product_prod @ X5 @ product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X6)).
% 2.96/1.67  thf(func_def_107, type, sK30: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:((product_prod @ X6 @ product_prod @ X5 @ product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X5)).
% 2.96/1.67  thf(func_def_108, type, sK31: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:((product_prod @ X6 @ product_prod @ X5 @ product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X4)).
% 2.96/1.67  thf(func_def_109, type, sK32: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:((product_prod @ X6 @ product_prod @ X5 @ product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X3)).
% 2.96/1.67  thf(func_def_110, type, sK33: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:((product_prod @ X6 @ product_prod @ X5 @ product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X2)).
% 2.96/1.67  thf(func_def_111, type, sK34: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:((product_prod @ X6 @ product_prod @ X5 @ product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X1)).
% 2.96/1.67  thf(func_def_112, type, sK35: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType, X6: $tType]:((product_prod @ X6 @ product_prod @ X5 @ product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X0)).
% 2.96/1.67  thf(func_def_113, type, sK36: !>[X0: $tType, X1: $tType, X2: $tType]:((product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X2)).
% 2.96/1.67  thf(func_def_114, type, sK37: !>[X0: $tType, X1: $tType, X2: $tType]:((product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X1)).
% 2.96/1.67  thf(func_def_115, type, sK38: !>[X0: $tType, X1: $tType, X2: $tType]:((product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X0)).
% 2.96/1.67  thf(func_def_116, type, sK39: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType]:((product_prod @ X5 @ product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X5)).
% 2.96/1.67  thf(func_def_117, type, sK40: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType]:((product_prod @ X5 @ product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X4)).
% 2.96/1.67  thf(func_def_118, type, sK41: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType]:((product_prod @ X5 @ product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X3)).
% 2.96/1.67  thf(func_def_119, type, sK42: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType]:((product_prod @ X5 @ product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X2)).
% 2.96/1.67  thf(func_def_120, type, sK43: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType]:((product_prod @ X5 @ product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X1)).
% 2.96/1.67  thf(func_def_121, type, sK44: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType, X5: $tType]:((product_prod @ X5 @ product_prod @ X4 @ product_prod @ X3 @ product_prod @ X2 @ product_prod @ X1 @ X0 > $o) > X0)).
% 2.96/1.67  thf(func_def_122, type, sK45: !>[X0: $tType, X1: $tType]:(product_prod @ X0 @ X1 > X0)).
% 2.96/1.67  thf(func_def_123, type, sK46: !>[X0: $tType, X1: $tType]:(product_prod @ X0 @ X1 > X1)).
% 2.96/1.67  thf(func_def_124, type, sK47: !>[X0: $tType, X1: $tType]:((X1 > X0) > (X1 > X0) > X1)).
% 2.96/1.67  thf(func_def_125, type, sK48: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ X3 > X0)).
% 2.96/1.67  thf(func_def_126, type, sK49: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ X3 > X1)).
% 2.96/1.67  thf(func_def_127, type, sK50: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ X3 > X2)).
% 2.96/1.67  thf(func_def_128, type, sK51: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ X3 > X3)).
% 2.96/1.67  thf(func_def_129, type, sK52: !>[X0: $tType]:(set @ product_prod @ X0 @ X0 > X0)).
% 2.96/1.67  thf(func_def_130, type, sK53: !>[X0: $tType]:(set @ product_prod @ X0 @ X0 > X0)).
% 2.96/1.67  thf(func_def_131, type, sK54: !>[X0: $tType]:(set @ product_prod @ X0 @ X0 > X0)).
% 2.96/1.67  thf(func_def_132, type, sK55: !>[X0: $tType, X1: $tType]:(product_prod @ X0 @ X1 > X0)).
% 2.96/1.67  thf(func_def_133, type, sK56: !>[X0: $tType, X1: $tType]:(product_prod @ X0 @ X1 > X1)).
% 2.96/1.67  thf(func_def_134, type, sK57: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ X4 > X0)).
% 2.96/1.67  thf(func_def_135, type, sK58: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ X4 > X1)).
% 2.96/1.67  thf(func_def_136, type, sK59: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ X4 > X2)).
% 2.96/1.67  thf(func_def_137, type, sK60: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ X4 > X3)).
% 2.96/1.67  thf(func_def_138, type, sK61: !>[X0: $tType, X1: $tType, X2: $tType, X3: $tType, X4: $tType]:(product_prod @ X0 @ product_prod @ X1 @ product_prod @ X2 @ product_prod @ X3 @ X4 > X4)).
% 2.96/1.67  thf(func_def_140, type, ph63: !>[X0: $tType]:(X0)).
% 2.96/1.67  thf(f889,plain,(
% 2.96/1.67    $false),
% 2.96/1.67    inference(subsumption_resolution,[status(thm)],[f888,f859])).
% 2.96/1.67  thf(f859,plain,(
% 2.96/1.67    ((member @ a @ y @ carrier) = $true)),
% 2.96/1.67    inference(cnf_transformation,[status(thm)],[f439])).
% 2.96/1.67  thf(f439,plain,(
% 2.96/1.67    ((member @ a @ y @ carrier) = $true)),
% 2.96/1.67    inference(fool_elimination,[status(thm)],[f438])).
% 2.96/1.67  thf(f438,plain,(
% 2.96/1.67    (member @ a @ y @ carrier)),
% 2.96/1.67    inference(rectify,[status(thm)],[f289])).
% 2.96/1.67  thf(f289,axiom,(
% 2.96/1.67    (member @ a @ y @ carrier)),
% 2.96/1.67    file('/export/starexec/sandbox2/tmp/tmp.E8SE4n1R5p/DTF2THF_9149.p',conj_1)).
% 2.96/1.67  thf(f888,plain,(
% 2.96/1.67    ((member @ a @ y @ carrier) != $true)),
% 2.96/1.67    inference(subsumption_resolution,[status(thm)],[f887,f847])).
% 2.96/1.67  thf(f847,plain,(
% 2.96/1.67    ((member @ a @ x @ carrier) = $true)),
% 2.96/1.67    inference(cnf_transformation,[status(thm)],[f517])).
% 2.96/1.67  thf(f517,plain,(
% 2.96/1.67    ((member @ a @ x @ carrier) = $true)),
% 2.96/1.67    inference(fool_elimination,[status(thm)],[f516])).
% 2.96/1.67  thf(f516,plain,(
% 2.96/1.67    (member @ a @ x @ carrier)),
% 2.96/1.67    inference(rectify,[status(thm)],[f288])).
% 2.96/1.67  thf(f288,axiom,(
% 2.96/1.67    (member @ a @ x @ carrier)),
% 2.96/1.67    file('/export/starexec/sandbox2/tmp/tmp.E8SE4n1R5p/DTF2THF_9149.p',conj_0)).
% 2.96/1.67  thf(f887,plain,(
% 2.96/1.67    ((member @ a @ x @ carrier) != $true) | ((member @ a @ y @ carrier) != $true)),
% 2.96/1.67    inference(subsumption_resolution,[status(thm)],[f885,f834])).
% 2.96/1.67  thf(f834,plain,(
% 2.96/1.67    ((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ y @ x) @ relation) != $true)),
% 2.96/1.67    inference(cnf_transformation,[status(thm)],[f746])).
% 2.96/1.67  thf(f746,plain,(
% 2.96/1.67    ((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ y @ x) @ relation) != $true) & ((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ x @ y) @ relation) != $true)),
% 2.96/1.67    inference(ennf_transformation,[status(thm)],[f567])).
% 2.96/1.67  thf(f567,plain,(
% 2.96/1.67    ~(((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ y @ x) @ relation) = $true) | ((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ x @ y) @ relation) = $true))),
% 2.96/1.67    inference(fool_elimination,[status(thm)],[f566])).
% 2.96/1.67  thf(f566,plain,(
% 2.96/1.67    ~((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ x @ y) @ relation) | (member @ product_prod @ a @ a @ (product_Pair @ a @ a @ y @ x) @ relation))),
% 2.96/1.67    inference(rectify,[status(thm)],[f292])).
% 2.96/1.67  thf(f292,negated_conjecture,(
% 2.96/1.67    ~((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ x @ y) @ relation) | (member @ product_prod @ a @ a @ (product_Pair @ a @ a @ y @ x) @ relation))),
% 2.96/1.67    inference(negated_conjecture,[status(cth)],[f291])).
% 2.96/1.67  thf(f291,conjecture,(
% 2.96/1.67    (member @ product_prod @ a @ a @ (product_Pair @ a @ a @ x @ y) @ relation) | (member @ product_prod @ a @ a @ (product_Pair @ a @ a @ y @ x) @ relation)),
% 2.96/1.67    file('/export/starexec/sandbox2/tmp/tmp.E8SE4n1R5p/DTF2THF_9149.p',conj_3)).
% 2.96/1.67  thf(f885,plain,(
% 2.96/1.67    ((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ y @ x) @ relation) = $true) | ((member @ a @ y @ carrier) != $true) | ((member @ a @ x @ carrier) != $true)),
% 2.96/1.67    inference(trivial_inequality_removal,[status(thm)],[f869])).
% 2.96/1.67  thf(f869,plain,(
% 2.96/1.67    ($true != $true) | ((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ y @ x) @ relation) = $true) | ((member @ a @ x @ carrier) != $true) | ((member @ a @ y @ carrier) != $true)),
% 2.96/1.67    inference(superposition,[status(thm)],[f833,f840])).
% 2.96/1.67  thf(f840,plain,(
% 2.96/1.67    ( ! [X0 : a,X1 : a] : (($true = (member @ product_prod @ a @ a @ (product_Pair @ a @ a @ X1 @ X0) @ relation)) | ((member @ a @ X1 @ carrier) != $true) | ((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ X0 @ X1) @ relation) = $true) | ((member @ a @ X0 @ carrier) != $true)) )),
% 2.96/1.67    inference(cnf_transformation,[status(thm)],[f745])).
% 2.96/1.67  thf(f745,plain,(
% 2.96/1.67    ! [X0 : a] : (! [X1 : a] : (((member @ a @ X1 @ carrier) != $true) | ((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ X0 @ X1) @ relation) = $true) | ($true = (member @ product_prod @ a @ a @ (product_Pair @ a @ a @ X1 @ X0) @ relation))) | ((member @ a @ X0 @ carrier) != $true))),
% 2.96/1.67    inference(flattening,[status(thm)],[f744])).
% 2.96/1.67  thf(f744,plain,(
% 2.96/1.67    ! [X0 : a] : (! [X1 : a] : ((($true = (member @ product_prod @ a @ a @ (product_Pair @ a @ a @ X1 @ X0) @ relation)) | ((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ X0 @ X1) @ relation) = $true)) | ((member @ a @ X1 @ carrier) != $true)) | ((member @ a @ X0 @ carrier) != $true))),
% 2.96/1.67    inference(ennf_transformation,[status(thm)],[f307])).
% 2.96/1.67  thf(f307,plain,(
% 2.96/1.67    ! [X0 : a] : (((member @ a @ X0 @ carrier) = $true) => ! [X1 : a] : (((member @ a @ X1 @ carrier) = $true) => (($true = (member @ product_prod @ a @ a @ (product_Pair @ a @ a @ X1 @ X0) @ relation)) | ((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ X0 @ X1) @ relation) = $true))))),
% 2.96/1.67    inference(fool_elimination,[status(thm)],[f306])).
% 2.96/1.67  thf(f306,plain,(
% 2.96/1.67    ! [X0 : a] : ((member @ a @ X0 @ carrier) => ! [X1 : a] : ((member @ a @ X1 @ carrier) => ((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ X0 @ X1) @ relation) | (member @ product_prod @ a @ a @ (product_Pair @ a @ a @ X1 @ X0) @ relation))))),
% 2.96/1.67    inference(rectify,[status(thm)],[f4])).
% 2.96/1.67  thf(f4,axiom,(
% 2.96/1.67    ! [X8 : a] : ((member @ a @ X8 @ carrier) => ! [X9 : a] : ((member @ a @ X9 @ carrier) => ((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ X8 @ X9) @ relation) | (member @ product_prod @ a @ a @ (product_Pair @ a @ a @ X9 @ X8) @ relation))))),
% 2.96/1.67    file('/export/starexec/sandbox2/tmp/tmp.E8SE4n1R5p/DTF2THF_9149.p',fact_3_compl)).
% 2.96/1.67  thf(f833,plain,(
% 2.96/1.67    ((member @ product_prod @ a @ a @ (product_Pair @ a @ a @ x @ y) @ relation) != $true)),
% 2.96/1.67    inference(cnf_transformation,[status(thm)],[f746])).
% 2.96/1.67  % SZS output end Proof for DTF2THF_9149
% 2.96/1.67  % (9365)------------------------------
% 2.96/1.67  % (9365)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.96/1.67  % (9365)Termination reason: Refutation
% 2.96/1.67  
% 2.96/1.67  % (9365)Memory used [KB]: 6908
% 2.96/1.67  % (9365)Time elapsed: 0.027 s
% 2.96/1.67  % (9365)Instructions burned: 75 (million)
% 2.96/1.67  % (9365)------------------------------
% 2.96/1.67  % (9365)------------------------------
% 2.96/1.67  % (9359)Success in time 0.055 s
%------------------------------------------------------------------------------