↑ Up

DT2H2X---1.9.5.THM-Ref.s

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

% Computer : n028.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:44:57 AM UTC 2026

% Result   : Theorem 3.33s 1.86s
% Output   : Refutation 3.33s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : DAT154^1 : TPTP v9.2.1. Released v7.0.0.
% 0.12/0.13  % Command  : /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% 0.16/0.34  % Computer : n028.cluster.edu
% 0.16/0.34  % Model    : x86_64 x86_64
% 0.16/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.16/0.34  % Memory   : 8042.1875MB
% 0.16/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.16/0.34  % CPULimit : 300
% 0.16/0.34  % WCLimit  : 300
% 0.16/0.34  % DateTime : Tue Feb 24 06:09:57 EST 2026
% 0.16/0.34  % CPUTime  : 
% 0.16/0.34  Running /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% 0.31/0.48  ---- Original DTF file ---
% 0.31/0.48  thf(spec,logic,$$dhol).
% 0.31/0.48  %------------------------------------------------------------------------------
% 0.31/0.48  % File     : DAT154^1 : TPTP v9.2.1. Released v7.0.0.
% 0.31/0.48  % Domain   : Data Structures
% 0.31/0.48  % Problem  : Hamming stream 35
% 0.31/0.48  % Version  : [Bla16] axioms : Especial.
% 0.31/0.48  % English  :
% 0.31/0.48  
% 0.31/0.48  % Refs     : [Loc10] Lochbihler (2010), Coinductive
% 0.31/0.48  %          : [RB15]  Reynolds & Blanchette (2015), A Decision Procedure for
% 0.31/0.48  %          : [Bla16] Blanchette (2016), Email to Geoff Sutcliffe
% 0.31/0.48  % Source   : [Bla16]
% 0.31/0.48  % Names    : hamming_stream__35.p [Bla16]
% 0.31/0.48  
% 0.31/0.48  % Status   : Theorem
% 0.31/0.48  % Rating   : 0.33 v9.1.0, 0.00 v7.2.0, 0.25 v7.1.0
% 0.31/0.48  % Syntax   : Number of formulae    :  322 ( 139 unt;  59 typ;   0 def)
% 0.31/0.48  %            Number of atoms       :  753 ( 384 equ;   0 cnn)
% 0.31/0.48  %            Maximal formula atoms :   13 (   2 avg)
% 0.31/0.48  %            Number of connectives : 4035 ( 152   ~;  33   |;  76   &;3501   @)
% 0.31/0.48  %                                         (   0 <=>; 273  =>;   0  <=;   0 <~>)
% 0.31/0.48  %            Maximal formula depth :   23 (   7 avg)
% 0.31/0.48  %            Number of types       :    2 (   1 usr)
% 0.31/0.48  %            Number of type conns  :  307 ( 307   >;   0   *;   0   +;   0  <<)
% 0.31/0.48  %            Number of symbols     :   59 (  58 usr;   2 con; 0-5 aty)
% 0.31/0.48  %            Number of variables   : 1107 (  48   ^; 938   !;  65   ?;1107   :)
% 0.31/0.48  %                                         (  56  !>;   0  ?*;   0  @-;   0  @+)
% 0.31/0.48  % SPC      : TH1_THM_EQU_NAR
% 0.31/0.48  
% 0.31/0.48  % Comments : This file was generated by Isabelle (most likely Sledgehammer)
% 0.31/0.48  %            2016-07-13 14:40:50.764
% 0.31/0.48  %------------------------------------------------------------------------------
% 0.31/0.48  %----Could-be-implicit typings (5)
% 0.31/0.48  thf(ty_t_Coinductive__List_Ollist,type,
% 0.31/0.48      coinductive_llist: $tType > $tType ).
% 0.31/0.48  
% 0.31/0.48  thf(ty_t_List_Olist,type,
% 0.31/0.48      list: $tType > $tType ).
% 0.31/0.48  
% 0.31/0.48  thf(ty_t_Set_Oset,type,
% 0.31/0.48      set: $tType > $tType ).
% 0.31/0.48  
% 0.31/0.48  thf(ty_t_itself,type,
% 0.31/0.48      itself: $tType > $tType ).
% 0.31/0.48  
% 0.31/0.48  thf(ty_tf_a,type,
% 0.31/0.48      a: $tType ).
% 0.31/0.48  
% 0.31/0.48  %----Explicit typings (54)
% 0.31/0.48  thf(sy_cl_HOL_Otype,type,
% 0.31/0.48      type: 
% 0.31/0.48        !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_cl_Orderings_Oord,type,
% 0.31/0.48      ord: 
% 0.31/0.48        !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_cl_Lattices_Olattice,type,
% 0.31/0.48      lattice: 
% 0.31/0.48        !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_cl_Lattices_Osemilattice__inf,type,
% 0.31/0.48      semilattice_inf: 
% 0.31/0.48        !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_BNF__Greatest__Fixpoint_OShift,type,
% 0.31/0.48      bNF_Greatest_Shift: 
% 0.31/0.48        !>[A: $tType] : ( ( set @ ( list @ A ) ) > A > ( set @ ( list @ A ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_BNF__Greatest__Fixpoint_OSucc,type,
% 0.31/0.48      bNF_Greatest_Succ: 
% 0.31/0.48        !>[A: $tType] : ( ( set @ ( list @ A ) ) > ( list @ A ) > ( set @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_BNF__Greatest__Fixpoint_Oshift,type,
% 0.31/0.48      bNF_Greatest_shift: 
% 0.31/0.48        !>[A: $tType,B: $tType] : ( ( ( list @ A ) > B ) > A > ( list @ A ) > B ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Coinductive__List_Olist__of__aux,type,
% 0.31/0.48      coindu1384447384of_aux: 
% 0.31/0.48        !>[A: $tType] : ( ( list @ A ) > ( coinductive_llist @ A ) > ( list @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Coinductive__List_Ollist_OLNil,type,
% 0.31/0.48      coinductive_LNil: 
% 0.31/0.48        !>[A: $tType] : ( coinductive_llist @ A ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Coinductive__List_Ollist_Olnull,type,
% 0.31/0.48      coinductive_lnull: 
% 0.31/0.48        !>[A: $tType] : ( ( coinductive_llist @ A ) > $o ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Coinductive__List_Oord_Olsorted,type,
% 0.31/0.48      coinductive_lsorted: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > ( coinductive_llist @ A ) > $o ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Hamming__Stream__Mirabelle__rwekfkwckg_Oord_Olmerge,type,
% 0.31/0.48      hammin1328233080lmerge: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > ( coinductive_llist @ A ) > ( coinductive_llist @ A ) > ( coinductive_llist @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Hamming__Stream__Mirabelle__rwekfkwckg_Oord__class_Olmerge,type,
% 0.31/0.48      hammin1138290136lmerge: 
% 0.31/0.48        !>[A: $tType] : ( ( coinductive_llist @ A ) > ( coinductive_llist @ A ) > ( coinductive_llist @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Lattices_Oinf__class_Oinf,type,
% 0.31/0.48      inf_inf: 
% 0.31/0.48        !>[A: $tType] : ( A > A > A ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Oappend,type,
% 0.31/0.48      append: 
% 0.31/0.48        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) > ( list @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Obind,type,
% 0.31/0.48      bind: 
% 0.31/0.48        !>[A: $tType,B: $tType] : ( ( list @ A ) > ( A > ( list @ B ) ) > ( list @ B ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Obutlast,type,
% 0.31/0.48      butlast: 
% 0.31/0.48        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Oinsert,type,
% 0.31/0.48      insert: 
% 0.31/0.48        !>[A: $tType] : ( A > ( list @ A ) > ( list @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Olast,type,
% 0.31/0.48      last: 
% 0.31/0.48        !>[A: $tType] : ( ( list @ A ) > A ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Olist_OCons,type,
% 0.31/0.48      cons: 
% 0.31/0.48        !>[A: $tType] : ( A > ( list @ A ) > ( list @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Olist_ONil,type,
% 0.31/0.48      nil: 
% 0.31/0.48        !>[A: $tType] : ( list @ A ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Olist_Ohd,type,
% 0.31/0.48      hd: 
% 0.31/0.48        !>[A: $tType] : ( ( list @ A ) > A ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Olist_Omap,type,
% 0.31/0.48      map: 
% 0.31/0.48        !>[A: $tType,Aa: $tType] : ( ( A > Aa ) > ( list @ A ) > ( list @ Aa ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Olist__ex1,type,
% 0.31/0.48      list_ex1: 
% 0.31/0.48        !>[A: $tType] : ( ( A > $o ) > ( list @ A ) > $o ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Omap__tailrec,type,
% 0.31/0.48      map_tailrec: 
% 0.31/0.48        !>[A: $tType,B: $tType] : ( ( A > B ) > ( list @ A ) > ( list @ B ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Omap__tailrec__rev,type,
% 0.31/0.48      map_tailrec_rev: 
% 0.31/0.48        !>[A: $tType,B: $tType] : ( ( A > B ) > ( list @ A ) > ( list @ B ) > ( list @ B ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Omaps,type,
% 0.31/0.48      maps: 
% 0.31/0.48        !>[A: $tType,B: $tType] : ( ( A > ( list @ B ) ) > ( list @ A ) > ( list @ B ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Oord_Olexordp,type,
% 0.31/0.48      lexordp: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > ( list @ A ) > ( list @ A ) > $o ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Oord_Olexordp__eq,type,
% 0.31/0.48      lexordp_eq: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > ( list @ A ) > ( list @ A ) > $o ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Oproduct__lists,type,
% 0.31/0.48      product_lists: 
% 0.31/0.48        !>[A: $tType] : ( ( list @ ( list @ A ) ) > ( list @ ( list @ A ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Orev,type,
% 0.31/0.48      rev: 
% 0.31/0.48        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Orotate1,type,
% 0.31/0.48      rotate1: 
% 0.31/0.48        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_List_Osublists,type,
% 0.31/0.48      sublists: 
% 0.31/0.48        !>[A: $tType] : ( ( list @ A ) > ( list @ ( list @ A ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Orderings_Oord_Omax,type,
% 0.31/0.48      max: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > A > A > A ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Orderings_Oord_Omin,type,
% 0.31/0.48      min: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > A > A > A ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Pure_Otype,type,
% 0.31/0.48      type2: 
% 0.31/0.48        !>[A: $tType] : ( itself @ A ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Set_OCollect,type,
% 0.31/0.48      collect: 
% 0.31/0.48        !>[A: $tType] : ( ( A > $o ) > ( set @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Set__Interval_Oord_OatLeast,type,
% 0.31/0.48      set_atLeast: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > A > ( set @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Set__Interval_Oord_OatLeastAtMost,type,
% 0.31/0.48      set_atLeastAtMost: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > A > A > ( set @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Set__Interval_Oord_OatLeastLessThan,type,
% 0.31/0.48      set_atLeastLessThan: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > ( A > A > $o ) > A > A > ( set @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Set__Interval_Oord_OatMost,type,
% 0.31/0.48      set_atMost: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > A > ( set @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Set__Interval_Oord_OgreaterThan,type,
% 0.31/0.48      set_greaterThan: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > A > ( set @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Set__Interval_Oord_OgreaterThanAtMost,type,
% 0.31/0.48      set_gr323396891AtMost: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > ( A > A > $o ) > A > A > ( set @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Set__Interval_Oord_OgreaterThanLessThan,type,
% 0.31/0.48      set_gr1161524159ssThan: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > A > A > ( set @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Set__Interval_Oord_OlessThan,type,
% 0.31/0.48      set_lessThan: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > A > ( set @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Sublist_Oprefixes,type,
% 0.31/0.48      prefixes: 
% 0.31/0.48        !>[A: $tType] : ( ( list @ A ) > ( list @ ( list @ A ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Sublist_Oprefixes__rel,type,
% 0.31/0.48      prefixes_rel: 
% 0.31/0.48        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) > $o ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Sublist_Ostrict__suffix,type,
% 0.31/0.48      strict_suffix: 
% 0.31/0.48        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) > $o ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_Wellfounded_Oaccp,type,
% 0.31/0.48      accp: 
% 0.31/0.48        !>[A: $tType] : ( ( A > A > $o ) > A > $o ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_c_member,type,
% 0.31/0.48      member: 
% 0.31/0.48        !>[A: $tType] : ( A > ( set @ A ) > $o ) ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_v_less,type,
% 0.31/0.48      less: a > a > $o ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_v_less__eq,type,
% 0.31/0.48      less_eq: a > a > $o ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_v_xs,type,
% 0.31/0.48      xs: coinductive_llist @ a ).
% 0.31/0.48  
% 0.31/0.48  thf(sy_v_ys,type,
% 0.31/0.48      ys: coinductive_llist @ a ).
% 0.31/0.48  
% 0.31/0.48  %----Relevant facts (253)
% 0.31/0.48  thf(fact_0_lmerge_Oexhaust,axiom,
% 0.31/0.48      ! [Xs: coinductive_llist @ a,Ys: coinductive_llist @ a] :
% 0.31/0.48        ( ~ ( ( coinductive_lnull @ a @ Xs )
% 0.31/0.48            | ( coinductive_lnull @ a @ Ys ) )
% 0.31/0.48       => ~ ( ~ ( coinductive_lnull @ a @ Xs )
% 0.31/0.48           => ( coinductive_lnull @ a @ Ys ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % lmerge.exhaust
% 0.31/0.48  thf(fact_1_local_Oord__eq__less__trans,axiom,
% 0.31/0.48      ! [A2: a,B2: a,C: a] :
% 0.31/0.48        ( ( A2 = B2 )
% 0.31/0.48       => ( ( less @ B2 @ C )
% 0.31/0.48         => ( less @ A2 @ C ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.ord_eq_less_trans
% 0.31/0.48  thf(fact_2_local_Oord__less__eq__trans,axiom,
% 0.31/0.48      ! [A2: a,B2: a,C: a] :
% 0.31/0.48        ( ( less @ A2 @ B2 )
% 0.31/0.48       => ( ( B2 = C )
% 0.31/0.48         => ( less @ A2 @ C ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.ord_less_eq_trans
% 0.31/0.48  thf(fact_3_lmerge_Odisc_I2_J,axiom,
% 0.31/0.48      ! [Xs: coinductive_llist @ a,Ys: coinductive_llist @ a] :
% 0.31/0.48        ( ~ ( coinductive_lnull @ a @ Xs )
% 0.31/0.48       => ( ~ ( coinductive_lnull @ a @ Ys )
% 0.31/0.48         => ~ ( coinductive_lnull @ a @ ( hammin1328233080lmerge @ a @ less @ Xs @ Ys ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % lmerge.disc(2)
% 0.31/0.48  thf(fact_4_lmerge_Odisc_I1_J,axiom,
% 0.31/0.48      ! [Xs: coinductive_llist @ a,Ys: coinductive_llist @ a] :
% 0.31/0.48        ( ( ( coinductive_lnull @ a @ Xs )
% 0.31/0.48          | ( coinductive_lnull @ a @ Ys ) )
% 0.31/0.48       => ( coinductive_lnull @ a @ ( hammin1328233080lmerge @ a @ less @ Xs @ Ys ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % lmerge.disc(1)
% 0.31/0.48  thf(fact_5_lmerge_Osimps_I2_J,axiom,
% 0.31/0.48      ! [Xs: coinductive_llist @ a,Ys: coinductive_llist @ a] :
% 0.31/0.48        ( ( ~ ( coinductive_lnull @ a @ ( hammin1328233080lmerge @ a @ less @ Xs @ Ys ) ) )
% 0.31/0.48        = ( ~ ( coinductive_lnull @ a @ Xs )
% 0.31/0.48          & ~ ( coinductive_lnull @ a @ Ys ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % lmerge.simps(2)
% 0.31/0.48  thf(fact_6_lmerge_Osimps_I1_J,axiom,
% 0.31/0.48      ! [Xs: coinductive_llist @ a,Ys: coinductive_llist @ a] :
% 0.31/0.48        ( ( coinductive_lnull @ a @ ( hammin1328233080lmerge @ a @ less @ Xs @ Ys ) )
% 0.31/0.48        = ( ( coinductive_lnull @ a @ Xs )
% 0.31/0.48          | ( coinductive_lnull @ a @ Ys ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % lmerge.simps(1)
% 0.31/0.48  thf(fact_7_ord_Olmerge_Odisc_I2_J,axiom,
% 0.31/0.48      ! [A: $tType,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A,Less: A > A > $o] :
% 0.31/0.48        ( ~ ( coinductive_lnull @ A @ Xs )
% 0.31/0.48       => ( ~ ( coinductive_lnull @ A @ Ys )
% 0.31/0.48         => ~ ( coinductive_lnull @ A @ ( hammin1328233080lmerge @ A @ Less @ Xs @ Ys ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lmerge.disc(2)
% 0.31/0.48  thf(fact_8_ord_Olmerge_Odisc_I1_J,axiom,
% 0.31/0.48      ! [A: $tType,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A,Less: A > A > $o] :
% 0.31/0.48        ( ( ( coinductive_lnull @ A @ Xs )
% 0.31/0.48          | ( coinductive_lnull @ A @ Ys ) )
% 0.31/0.48       => ( coinductive_lnull @ A @ ( hammin1328233080lmerge @ A @ Less @ Xs @ Ys ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lmerge.disc(1)
% 0.31/0.48  thf(fact_9_ord_Olmerge_Odisc__iff_I2_J,axiom,
% 0.31/0.48      ! [A: $tType,Less: A > A > $o,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 0.31/0.48        ( ( ~ ( coinductive_lnull @ A @ ( hammin1328233080lmerge @ A @ Less @ Xs @ Ys ) ) )
% 0.31/0.48        = ( ~ ( coinductive_lnull @ A @ Xs )
% 0.31/0.48          & ~ ( coinductive_lnull @ A @ Ys ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lmerge.disc_iff(2)
% 0.31/0.48  thf(fact_10_ord_Olmerge_Odisc__iff_I1_J,axiom,
% 0.31/0.48      ! [A: $tType,Less: A > A > $o,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 0.31/0.48        ( ( coinductive_lnull @ A @ ( hammin1328233080lmerge @ A @ Less @ Xs @ Ys ) )
% 0.31/0.48        = ( ( coinductive_lnull @ A @ Xs )
% 0.31/0.48          | ( coinductive_lnull @ A @ Ys ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lmerge.disc_iff(1)
% 0.31/0.48  thf(fact_11_ord_Olmerge_Oexhaust,axiom,
% 0.31/0.48      ! [A: $tType,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 0.31/0.48        ( ~ ( ( coinductive_lnull @ A @ Xs )
% 0.31/0.48            | ( coinductive_lnull @ A @ Ys ) )
% 0.31/0.48       => ~ ( ~ ( coinductive_lnull @ A @ Xs )
% 0.31/0.48           => ( coinductive_lnull @ A @ Ys ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lmerge.exhaust
% 0.31/0.48  thf(fact_12_ord__class_Olmerge_Oexhaust,axiom,
% 0.31/0.48      ! [A: $tType] :
% 0.31/0.48        ( ( ord @ A @ ( type2 @ A ) )
% 0.31/0.48       => ! [Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 0.31/0.48            ( ~ ( ( coinductive_lnull @ A @ Xs )
% 0.31/0.48                | ( coinductive_lnull @ A @ Ys ) )
% 0.31/0.48           => ~ ( ~ ( coinductive_lnull @ A @ Xs )
% 0.31/0.48               => ( coinductive_lnull @ A @ Ys ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord_class.lmerge.exhaust
% 0.31/0.48  thf(fact_13_lmerge_Octr_I1_J,axiom,
% 0.31/0.48      ! [Xs: coinductive_llist @ a,Ys: coinductive_llist @ a] :
% 0.31/0.48        ( ( ( coinductive_lnull @ a @ Xs )
% 0.31/0.48          | ( coinductive_lnull @ a @ Ys ) )
% 0.31/0.48       => ( ( hammin1328233080lmerge @ a @ less @ Xs @ Ys )
% 0.31/0.48          = ( coinductive_LNil @ a ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % lmerge.ctr(1)
% 0.31/0.48  thf(fact_14_local_Olexordp__eq__refl,axiom,
% 0.31/0.48      ! [Xs: list @ a] : ( lexordp_eq @ a @ less @ Xs @ Xs ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_eq_refl
% 0.31/0.48  thf(fact_15_local_OgreaterThanLessThan__iff,axiom,
% 0.31/0.48      ! [I: a,L: a,U: a] :
% 0.31/0.48        ( ( member @ a @ I @ ( set_gr1161524159ssThan @ a @ less @ L @ U ) )
% 0.31/0.48        = ( ( less @ L @ I )
% 0.31/0.48          & ( less @ I @ U ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.greaterThanLessThan_iff
% 0.31/0.48  thf(fact_16_local_Olexordp__irreflexive,axiom,
% 0.31/0.48      ! [Xs: list @ a] :
% 0.31/0.48        ( ! [X: a] :
% 0.31/0.48            ~ ( less @ X @ X )
% 0.31/0.48       => ~ ( lexordp @ a @ less @ Xs @ Xs ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_irreflexive
% 0.31/0.48  thf(fact_17_local_OgreaterThan__iff,axiom,
% 0.31/0.48      ! [I: a,K: a] :
% 0.31/0.48        ( ( member @ a @ I @ ( set_greaterThan @ a @ less @ K ) )
% 0.31/0.48        = ( less @ K @ I ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.greaterThan_iff
% 0.31/0.48  thf(fact_18_local_OlessThan__iff,axiom,
% 0.31/0.48      ! [I: a,K: a] :
% 0.31/0.48        ( ( member @ a @ I @ ( set_lessThan @ a @ less @ K ) )
% 0.31/0.48        = ( less @ I @ K ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lessThan_iff
% 0.31/0.48  thf(fact_19_lzip_Oexhaust,axiom,
% 0.31/0.48      ! [A: $tType,B: $tType,Xs: coinductive_llist @ A,Ys: coinductive_llist @ B] :
% 0.31/0.48        ( ~ ( ( coinductive_lnull @ A @ Xs )
% 0.31/0.48            | ( coinductive_lnull @ B @ Ys ) )
% 0.31/0.48       => ~ ( ~ ( coinductive_lnull @ A @ Xs )
% 0.31/0.48           => ( coinductive_lnull @ B @ Ys ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % lzip.exhaust
% 0.31/0.48  thf(fact_20_lappend_Oexhaust,axiom,
% 0.31/0.48      ! [A: $tType,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 0.31/0.48        ( ( ( coinductive_lnull @ A @ Xs )
% 0.31/0.48         => ~ ( coinductive_lnull @ A @ Ys ) )
% 0.31/0.48       => ( ~ ( coinductive_lnull @ A @ Xs )
% 0.31/0.48          | ~ ( coinductive_lnull @ A @ Ys ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % lappend.exhaust
% 0.31/0.48  thf(fact_21_ord_Olmerge_Octr_I1_J,axiom,
% 0.31/0.48      ! [A: $tType,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A,Less: A > A > $o] :
% 0.31/0.48        ( ( ( coinductive_lnull @ A @ Xs )
% 0.31/0.48          | ( coinductive_lnull @ A @ Ys ) )
% 0.31/0.48       => ( ( hammin1328233080lmerge @ A @ Less @ Xs @ Ys )
% 0.31/0.48          = ( coinductive_LNil @ A ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lmerge.ctr(1)
% 0.31/0.48  thf(fact_22_ord__class_Olmerge_Odisc_I2_J,axiom,
% 0.31/0.48      ! [A: $tType] :
% 0.31/0.48        ( ( ord @ A @ ( type2 @ A ) )
% 0.31/0.48       => ! [Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 0.31/0.48            ( ~ ( coinductive_lnull @ A @ Xs )
% 0.31/0.48           => ( ~ ( coinductive_lnull @ A @ Ys )
% 0.31/0.48             => ~ ( coinductive_lnull @ A @ ( hammin1138290136lmerge @ A @ Xs @ Ys ) ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord_class.lmerge.disc(2)
% 0.31/0.48  thf(fact_23_local_Olexordp__into__lexordp__eq,axiom,
% 0.31/0.48      ! [Xs: list @ a,Ys: list @ a] :
% 0.31/0.48        ( ( lexordp @ a @ less @ Xs @ Ys )
% 0.31/0.48       => ( lexordp_eq @ a @ less @ Xs @ Ys ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_into_lexordp_eq
% 0.31/0.48  thf(fact_24_lnull__def,axiom,
% 0.31/0.48      ! [A: $tType] :
% 0.31/0.48        ( ( coinductive_lnull @ A )
% 0.31/0.48        = ( ^ [Llist: coinductive_llist @ A] :
% 0.31/0.48              ( Llist
% 0.31/0.48              = ( coinductive_LNil @ A ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % lnull_def
% 0.31/0.48  thf(fact_25_llist_Ocollapse_I1_J,axiom,
% 0.31/0.48      ! [A: $tType,Llist2: coinductive_llist @ A] :
% 0.31/0.48        ( ( coinductive_lnull @ A @ Llist2 )
% 0.31/0.48       => ( Llist2
% 0.31/0.48          = ( coinductive_LNil @ A ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % llist.collapse(1)
% 0.31/0.48  thf(fact_26_llist_OdiscI_I1_J,axiom,
% 0.31/0.48      ! [A: $tType,Llist2: coinductive_llist @ A] :
% 0.31/0.48        ( ( Llist2
% 0.31/0.48          = ( coinductive_LNil @ A ) )
% 0.31/0.48       => ( coinductive_lnull @ A @ Llist2 ) ) ).
% 0.31/0.48  
% 0.31/0.48  % llist.discI(1)
% 0.31/0.48  thf(fact_27_llist_Odisc_I1_J,axiom,
% 0.31/0.48      ! [A: $tType] : ( coinductive_lnull @ A @ ( coinductive_LNil @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  % llist.disc(1)
% 0.31/0.48  thf(fact_28_ord__class_Olmerge_Octr_I1_J,axiom,
% 0.31/0.48      ! [A: $tType] :
% 0.31/0.48        ( ( ord @ A @ ( type2 @ A ) )
% 0.31/0.48       => ! [Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 0.31/0.48            ( ( ( coinductive_lnull @ A @ Xs )
% 0.31/0.48              | ( coinductive_lnull @ A @ Ys ) )
% 0.31/0.48           => ( ( hammin1138290136lmerge @ A @ Xs @ Ys )
% 0.31/0.48              = ( coinductive_LNil @ A ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord_class.lmerge.ctr(1)
% 0.31/0.48  thf(fact_29_ord__class_Olmerge_Odisc__iff_I1_J,axiom,
% 0.31/0.48      ! [A: $tType] :
% 0.31/0.48        ( ( ord @ A @ ( type2 @ A ) )
% 0.31/0.48       => ! [Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 0.31/0.48            ( ( coinductive_lnull @ A @ ( hammin1138290136lmerge @ A @ Xs @ Ys ) )
% 0.31/0.48            = ( ( coinductive_lnull @ A @ Xs )
% 0.31/0.48              | ( coinductive_lnull @ A @ Ys ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord_class.lmerge.disc_iff(1)
% 0.31/0.48  thf(fact_30_ord__class_Olmerge_Odisc__iff_I2_J,axiom,
% 0.31/0.48      ! [A: $tType] :
% 0.31/0.48        ( ( ord @ A @ ( type2 @ A ) )
% 0.31/0.48       => ! [Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 0.31/0.48            ( ( ~ ( coinductive_lnull @ A @ ( hammin1138290136lmerge @ A @ Xs @ Ys ) ) )
% 0.31/0.48            = ( ~ ( coinductive_lnull @ A @ Xs )
% 0.31/0.48              & ~ ( coinductive_lnull @ A @ Ys ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord_class.lmerge.disc_iff(2)
% 0.31/0.48  thf(fact_31_ord__class_Olmerge_Odisc_I1_J,axiom,
% 0.31/0.48      ! [A: $tType] :
% 0.31/0.48        ( ( ord @ A @ ( type2 @ A ) )
% 0.31/0.48       => ! [Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 0.31/0.48            ( ( ( coinductive_lnull @ A @ Xs )
% 0.31/0.48              | ( coinductive_lnull @ A @ Ys ) )
% 0.31/0.48           => ( coinductive_lnull @ A @ ( hammin1138290136lmerge @ A @ Xs @ Ys ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord_class.lmerge.disc(1)
% 0.31/0.48  thf(fact_32_local_OgreaterThanLessThan__eq,axiom,
% 0.31/0.48      ! [A2: a,B2: a] :
% 0.31/0.48        ( ( set_gr1161524159ssThan @ a @ less @ A2 @ B2 )
% 0.31/0.48        = ( inf_inf @ ( set @ a ) @ ( set_greaterThan @ a @ less @ A2 ) @ ( set_lessThan @ a @ less @ B2 ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.greaterThanLessThan_eq
% 0.31/0.48  thf(fact_33_local_OgreaterThanLessThan__def,axiom,
% 0.31/0.48      ! [L: a,U: a] :
% 0.31/0.48        ( ( set_gr1161524159ssThan @ a @ less @ L @ U )
% 0.31/0.48        = ( inf_inf @ ( set @ a ) @ ( set_greaterThan @ a @ less @ L ) @ ( set_lessThan @ a @ less @ U ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.greaterThanLessThan_def
% 0.31/0.48  thf(fact_34_local_Olexordp__eq_ONil,axiom,
% 0.31/0.48      ! [Ys: list @ a] : ( lexordp_eq @ a @ less @ ( nil @ a ) @ Ys ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_eq.Nil
% 0.31/0.48  thf(fact_35_local_Olexordp__eq_OCons__eq,axiom,
% 0.31/0.48      ! [X2: a,Y: a,Xs: list @ a,Ys: list @ a] :
% 0.31/0.48        ( ~ ( less @ X2 @ Y )
% 0.31/0.48       => ( ~ ( less @ Y @ X2 )
% 0.31/0.48         => ( ( lexordp_eq @ a @ less @ Xs @ Ys )
% 0.31/0.48           => ( lexordp_eq @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( cons @ a @ Y @ Ys ) ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_eq.Cons_eq
% 0.31/0.48  thf(fact_36_local_Olexordp__eq_OCons,axiom,
% 0.31/0.48      ! [X2: a,Y: a,Xs: list @ a,Ys: list @ a] :
% 0.31/0.48        ( ( less @ X2 @ Y )
% 0.31/0.48       => ( lexordp_eq @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( cons @ a @ Y @ Ys ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_eq.Cons
% 0.31/0.48  thf(fact_37_ord_Olexordp__into__lexordp__eq,axiom,
% 0.31/0.48      ! [A: $tType,Less: A > A > $o,Xs: list @ A,Ys: list @ A] :
% 0.31/0.48        ( ( lexordp @ A @ Less @ Xs @ Ys )
% 0.31/0.48       => ( lexordp_eq @ A @ Less @ Xs @ Ys ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lexordp_into_lexordp_eq
% 0.31/0.48  thf(fact_38_local_Olexordp_OCons__eq,axiom,
% 0.31/0.48      ! [X2: a,Y: a,Xs: list @ a,Ys: list @ a] :
% 0.31/0.48        ( ~ ( less @ X2 @ Y )
% 0.31/0.48       => ( ~ ( less @ Y @ X2 )
% 0.31/0.48         => ( ( lexordp @ a @ less @ Xs @ Ys )
% 0.31/0.48           => ( lexordp @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( cons @ a @ Y @ Ys ) ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp.Cons_eq
% 0.31/0.48  thf(fact_39_local_Olexordp_OCons,axiom,
% 0.31/0.48      ! [X2: a,Y: a,Xs: list @ a,Ys: list @ a] :
% 0.31/0.48        ( ( less @ X2 @ Y )
% 0.31/0.48       => ( lexordp @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( cons @ a @ Y @ Ys ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp.Cons
% 0.31/0.48  thf(fact_40_local_Olexordp__append__leftI,axiom,
% 0.31/0.48      ! [Us: list @ a,Vs: list @ a,Xs: list @ a] :
% 0.31/0.48        ( ( lexordp @ a @ less @ Us @ Vs )
% 0.31/0.48       => ( lexordp @ a @ less @ ( append @ a @ Xs @ Us ) @ ( append @ a @ Xs @ Vs ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_append_leftI
% 0.31/0.48  thf(fact_41_local_Olexordp__append__leftD,axiom,
% 0.31/0.48      ! [Xs: list @ a,Us: list @ a,Vs: list @ a] :
% 0.31/0.48        ( ( lexordp @ a @ less @ ( append @ a @ Xs @ Us ) @ ( append @ a @ Xs @ Vs ) )
% 0.31/0.48       => ( ! [A3: a] :
% 0.31/0.48              ~ ( less @ A3 @ A3 )
% 0.31/0.48         => ( lexordp @ a @ less @ Us @ Vs ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_append_leftD
% 0.31/0.48  thf(fact_42_list_Oinject,axiom,
% 0.31/0.48      ! [A: $tType,X21: A,X22: list @ A,Y21: A,Y22: list @ A] :
% 0.31/0.48        ( ( ( cons @ A @ X21 @ X22 )
% 0.31/0.48          = ( cons @ A @ Y21 @ Y22 ) )
% 0.31/0.48        = ( ( X21 = Y21 )
% 0.31/0.48          & ( X22 = Y22 ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % list.inject
% 0.31/0.48  thf(fact_43_mem__Collect__eq,axiom,
% 0.31/0.48      ! [A: $tType,A2: A,P: A > $o] :
% 0.31/0.48        ( ( member @ A @ A2 @ ( collect @ A @ P ) )
% 0.31/0.48        = ( P @ A2 ) ) ).
% 0.31/0.48  
% 0.31/0.48  % mem_Collect_eq
% 0.31/0.48  thf(fact_44_Collect__mem__eq,axiom,
% 0.31/0.48      ! [A: $tType,A4: set @ A] :
% 0.31/0.48        ( ( collect @ A
% 0.31/0.48          @ ^ [X3: A] : ( member @ A @ X3 @ A4 ) )
% 0.31/0.48        = A4 ) ).
% 0.31/0.48  
% 0.31/0.48  % Collect_mem_eq
% 0.31/0.48  thf(fact_45_Collect__cong,axiom,
% 0.31/0.48      ! [A: $tType,P: A > $o,Q: A > $o] :
% 0.31/0.48        ( ! [X: A] :
% 0.31/0.48            ( ( P @ X )
% 0.31/0.48            = ( Q @ X ) )
% 0.31/0.48       => ( ( collect @ A @ P )
% 0.31/0.48          = ( collect @ A @ Q ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % Collect_cong
% 0.31/0.48  thf(fact_46_ext,axiom,
% 0.31/0.48      ! [B: $tType,A: $tType,F: A > B,G: A > B] :
% 0.31/0.48        ( ! [X: A] :
% 0.31/0.48            ( ( F @ X )
% 0.31/0.48            = ( G @ X ) )
% 0.31/0.48       => ( F = G ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ext
% 0.31/0.48  thf(fact_47_same__append__eq,axiom,
% 0.31/0.48      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 0.31/0.48        ( ( ( append @ A @ Xs @ Ys )
% 0.31/0.48          = ( append @ A @ Xs @ Zs ) )
% 0.31/0.48        = ( Ys = Zs ) ) ).
% 0.31/0.48  
% 0.31/0.48  % same_append_eq
% 0.31/0.48  thf(fact_48_append__same__eq,axiom,
% 0.31/0.48      ! [A: $tType,Ys: list @ A,Xs: list @ A,Zs: list @ A] :
% 0.31/0.48        ( ( ( append @ A @ Ys @ Xs )
% 0.31/0.48          = ( append @ A @ Zs @ Xs ) )
% 0.31/0.48        = ( Ys = Zs ) ) ).
% 0.31/0.48  
% 0.31/0.48  % append_same_eq
% 0.31/0.48  thf(fact_49_append__assoc,axiom,
% 0.31/0.48      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 0.31/0.48        ( ( append @ A @ ( append @ A @ Xs @ Ys ) @ Zs )
% 0.31/0.48        = ( append @ A @ Xs @ ( append @ A @ Ys @ Zs ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % append_assoc
% 0.31/0.48  thf(fact_50_local_Olexordp_ONil,axiom,
% 0.31/0.48      ! [Y: a,Ys: list @ a] : ( lexordp @ a @ less @ ( nil @ a ) @ ( cons @ a @ Y @ Ys ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp.Nil
% 0.31/0.48  thf(fact_51_local_Olexordp_Ocases,axiom,
% 0.31/0.48      ! [A1: list @ a,A22: list @ a] :
% 0.31/0.48        ( ( lexordp @ a @ less @ A1 @ A22 )
% 0.31/0.48       => ( ( ( A1
% 0.31/0.48              = ( nil @ a ) )
% 0.31/0.48           => ! [Y2: a,Ys2: list @ a] :
% 0.31/0.48                ( A22
% 0.31/0.48               != ( cons @ a @ Y2 @ Ys2 ) ) )
% 0.31/0.48         => ( ! [X: a] :
% 0.31/0.48                ( ? [Xs2: list @ a] :
% 0.31/0.48                    ( A1
% 0.31/0.48                    = ( cons @ a @ X @ Xs2 ) )
% 0.31/0.48               => ! [Y2: a] :
% 0.31/0.48                    ( ? [Ys2: list @ a] :
% 0.31/0.48                        ( A22
% 0.31/0.48                        = ( cons @ a @ Y2 @ Ys2 ) )
% 0.31/0.48                   => ~ ( less @ X @ Y2 ) ) )
% 0.31/0.48           => ~ ! [X: a,Y2: a,Xs2: list @ a] :
% 0.31/0.48                  ( ( A1
% 0.31/0.48                    = ( cons @ a @ X @ Xs2 ) )
% 0.31/0.48                 => ! [Ys2: list @ a] :
% 0.31/0.48                      ( ( A22
% 0.31/0.48                        = ( cons @ a @ Y2 @ Ys2 ) )
% 0.31/0.48                     => ( ~ ( less @ X @ Y2 )
% 0.31/0.48                       => ( ~ ( less @ Y2 @ X )
% 0.31/0.48                         => ~ ( lexordp @ a @ less @ Xs2 @ Ys2 ) ) ) ) ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp.cases
% 0.31/0.48  thf(fact_52_local_Olexordp_Oinducts,axiom,
% 0.31/0.48      ! [X1: list @ a,X23: list @ a,P: ( list @ a ) > ( list @ a ) > $o] :
% 0.31/0.48        ( ( lexordp @ a @ less @ X1 @ X23 )
% 0.31/0.48       => ( ! [Y2: a,Ys2: list @ a] : ( P @ ( nil @ a ) @ ( cons @ a @ Y2 @ Ys2 ) )
% 0.31/0.48         => ( ! [X: a,Y2: a,Xs2: list @ a,Ys2: list @ a] :
% 0.31/0.48                ( ( less @ X @ Y2 )
% 0.31/0.48               => ( P @ ( cons @ a @ X @ Xs2 ) @ ( cons @ a @ Y2 @ Ys2 ) ) )
% 0.31/0.48           => ( ! [X: a,Y2: a,Xs2: list @ a,Ys2: list @ a] :
% 0.31/0.48                  ( ~ ( less @ X @ Y2 )
% 0.31/0.48                 => ( ~ ( less @ Y2 @ X )
% 0.31/0.48                   => ( ( lexordp @ a @ less @ Xs2 @ Ys2 )
% 0.31/0.48                     => ( ( P @ Xs2 @ Ys2 )
% 0.31/0.48                       => ( P @ ( cons @ a @ X @ Xs2 ) @ ( cons @ a @ Y2 @ Ys2 ) ) ) ) ) )
% 0.31/0.48             => ( P @ X1 @ X23 ) ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp.inducts
% 0.31/0.48  thf(fact_53_local_Olexordp_Osimps,axiom,
% 0.31/0.48      ! [A1: list @ a,A22: list @ a] :
% 0.31/0.48        ( ( lexordp @ a @ less @ A1 @ A22 )
% 0.31/0.48        = ( ? [Y3: a,Ys3: list @ a] :
% 0.31/0.48              ( ( A1
% 0.31/0.48                = ( nil @ a ) )
% 0.31/0.48              & ( A22
% 0.31/0.48                = ( cons @ a @ Y3 @ Ys3 ) ) )
% 0.31/0.48          | ? [X3: a,Y3: a,Xs3: list @ a,Ys3: list @ a] :
% 0.31/0.48              ( ( A1
% 0.31/0.48                = ( cons @ a @ X3 @ Xs3 ) )
% 0.31/0.48              & ( A22
% 0.31/0.48                = ( cons @ a @ Y3 @ Ys3 ) )
% 0.31/0.48              & ( less @ X3 @ Y3 ) )
% 0.31/0.48          | ? [X3: a,Y3: a,Xs3: list @ a,Ys3: list @ a] :
% 0.31/0.48              ( ( A1
% 0.31/0.48                = ( cons @ a @ X3 @ Xs3 ) )
% 0.31/0.48              & ( A22
% 0.31/0.48                = ( cons @ a @ Y3 @ Ys3 ) )
% 0.31/0.48              & ~ ( less @ X3 @ Y3 )
% 0.31/0.48              & ~ ( less @ Y3 @ X3 )
% 0.31/0.48              & ( lexordp @ a @ less @ Xs3 @ Ys3 ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp.simps
% 0.31/0.48  thf(fact_54_local_Olexordp__eq_Ocases,axiom,
% 0.31/0.48      ! [A1: list @ a,A22: list @ a] :
% 0.31/0.48        ( ( lexordp_eq @ a @ less @ A1 @ A22 )
% 0.31/0.48       => ( ( ( A1
% 0.31/0.48              = ( nil @ a ) )
% 0.31/0.48           => ! [Ys2: list @ a] : ( A22 != Ys2 ) )
% 0.31/0.48         => ( ! [X: a] :
% 0.31/0.48                ( ? [Xs2: list @ a] :
% 0.31/0.48                    ( A1
% 0.31/0.48                    = ( cons @ a @ X @ Xs2 ) )
% 0.31/0.48               => ! [Y2: a] :
% 0.31/0.48                    ( ? [Ys2: list @ a] :
% 0.31/0.48                        ( A22
% 0.31/0.48                        = ( cons @ a @ Y2 @ Ys2 ) )
% 0.31/0.48                   => ~ ( less @ X @ Y2 ) ) )
% 0.31/0.48           => ~ ! [X: a,Y2: a,Xs2: list @ a] :
% 0.31/0.48                  ( ( A1
% 0.31/0.48                    = ( cons @ a @ X @ Xs2 ) )
% 0.31/0.48                 => ! [Ys2: list @ a] :
% 0.31/0.48                      ( ( A22
% 0.31/0.48                        = ( cons @ a @ Y2 @ Ys2 ) )
% 0.31/0.48                     => ( ~ ( less @ X @ Y2 )
% 0.31/0.48                       => ( ~ ( less @ Y2 @ X )
% 0.31/0.48                         => ~ ( lexordp_eq @ a @ less @ Xs2 @ Ys2 ) ) ) ) ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_eq.cases
% 0.31/0.48  thf(fact_55_local_Olexordp__eq_Oinducts,axiom,
% 0.31/0.48      ! [X1: list @ a,X23: list @ a,P: ( list @ a ) > ( list @ a ) > $o] :
% 0.31/0.48        ( ( lexordp_eq @ a @ less @ X1 @ X23 )
% 0.31/0.48       => ( ! [X12: list @ a] : ( P @ ( nil @ a ) @ X12 )
% 0.31/0.48         => ( ! [X: a,Y2: a,Xs2: list @ a,Ys2: list @ a] :
% 0.31/0.48                ( ( less @ X @ Y2 )
% 0.31/0.48               => ( P @ ( cons @ a @ X @ Xs2 ) @ ( cons @ a @ Y2 @ Ys2 ) ) )
% 0.31/0.48           => ( ! [X: a,Y2: a,Xs2: list @ a,Ys2: list @ a] :
% 0.31/0.48                  ( ~ ( less @ X @ Y2 )
% 0.31/0.48                 => ( ~ ( less @ Y2 @ X )
% 0.31/0.48                   => ( ( lexordp_eq @ a @ less @ Xs2 @ Ys2 )
% 0.31/0.48                     => ( ( P @ Xs2 @ Ys2 )
% 0.31/0.48                       => ( P @ ( cons @ a @ X @ Xs2 ) @ ( cons @ a @ Y2 @ Ys2 ) ) ) ) ) )
% 0.31/0.48             => ( P @ X1 @ X23 ) ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_eq.inducts
% 0.31/0.48  thf(fact_56_local_Olexordp__eq_Osimps,axiom,
% 0.31/0.48      ! [A1: list @ a,A22: list @ a] :
% 0.31/0.48        ( ( lexordp_eq @ a @ less @ A1 @ A22 )
% 0.31/0.48        = ( ? [Ys3: list @ a] :
% 0.31/0.48              ( ( A1
% 0.31/0.48                = ( nil @ a ) )
% 0.31/0.48              & ( A22 = Ys3 ) )
% 0.31/0.48          | ? [X3: a,Y3: a,Xs3: list @ a,Ys3: list @ a] :
% 0.31/0.48              ( ( A1
% 0.31/0.48                = ( cons @ a @ X3 @ Xs3 ) )
% 0.31/0.48              & ( A22
% 0.31/0.48                = ( cons @ a @ Y3 @ Ys3 ) )
% 0.31/0.48              & ( less @ X3 @ Y3 ) )
% 0.31/0.48          | ? [X3: a,Y3: a,Xs3: list @ a,Ys3: list @ a] :
% 0.31/0.48              ( ( A1
% 0.31/0.48                = ( cons @ a @ X3 @ Xs3 ) )
% 0.31/0.48              & ( A22
% 0.31/0.48                = ( cons @ a @ Y3 @ Ys3 ) )
% 0.31/0.48              & ~ ( less @ X3 @ Y3 )
% 0.31/0.48              & ~ ( less @ Y3 @ X3 )
% 0.31/0.48              & ( lexordp_eq @ a @ less @ Xs3 @ Ys3 ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_eq.simps
% 0.31/0.48  thf(fact_57_local_Olexordp__append__left__rightI,axiom,
% 0.31/0.48      ! [X2: a,Y: a,Us: list @ a,Xs: list @ a,Ys: list @ a] :
% 0.31/0.48        ( ( less @ X2 @ Y )
% 0.31/0.48       => ( lexordp @ a @ less @ ( append @ a @ Us @ ( cons @ a @ X2 @ Xs ) ) @ ( append @ a @ Us @ ( cons @ a @ Y @ Ys ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_append_left_rightI
% 0.31/0.48  thf(fact_58_local_Olexordp__append__rightI,axiom,
% 0.31/0.48      ! [Ys: list @ a,Xs: list @ a] :
% 0.31/0.48        ( ( Ys
% 0.31/0.48         != ( nil @ a ) )
% 0.31/0.48       => ( lexordp @ a @ less @ Xs @ ( append @ a @ Xs @ Ys ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_append_rightI
% 0.31/0.48  thf(fact_59_append__is__Nil__conv,axiom,
% 0.31/0.48      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.31/0.48        ( ( ( append @ A @ Xs @ Ys )
% 0.31/0.48          = ( nil @ A ) )
% 0.31/0.48        = ( ( Xs
% 0.31/0.48            = ( nil @ A ) )
% 0.31/0.48          & ( Ys
% 0.31/0.48            = ( nil @ A ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % append_is_Nil_conv
% 0.31/0.48  thf(fact_60_Nil__is__append__conv,axiom,
% 0.31/0.48      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.31/0.48        ( ( ( nil @ A )
% 0.31/0.48          = ( append @ A @ Xs @ Ys ) )
% 0.31/0.48        = ( ( Xs
% 0.31/0.48            = ( nil @ A ) )
% 0.31/0.48          & ( Ys
% 0.31/0.48            = ( nil @ A ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % Nil_is_append_conv
% 0.31/0.48  thf(fact_61_self__append__conv2,axiom,
% 0.31/0.48      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 0.31/0.48        ( ( Ys
% 0.31/0.48          = ( append @ A @ Xs @ Ys ) )
% 0.31/0.48        = ( Xs
% 0.31/0.48          = ( nil @ A ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % self_append_conv2
% 0.31/0.48  thf(fact_62_append__self__conv2,axiom,
% 0.31/0.48      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.31/0.48        ( ( ( append @ A @ Xs @ Ys )
% 0.31/0.48          = Ys )
% 0.31/0.48        = ( Xs
% 0.31/0.48          = ( nil @ A ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % append_self_conv2
% 0.31/0.48  thf(fact_63_self__append__conv,axiom,
% 0.31/0.48      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.31/0.48        ( ( Xs
% 0.31/0.48          = ( append @ A @ Xs @ Ys ) )
% 0.31/0.48        = ( Ys
% 0.31/0.48          = ( nil @ A ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % self_append_conv
% 0.31/0.48  thf(fact_64_append__self__conv,axiom,
% 0.31/0.48      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.31/0.48        ( ( ( append @ A @ Xs @ Ys )
% 0.31/0.48          = Xs )
% 0.31/0.48        = ( Ys
% 0.31/0.48          = ( nil @ A ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % append_self_conv
% 0.31/0.48  thf(fact_65_append__Nil2,axiom,
% 0.31/0.48      ! [A: $tType,Xs: list @ A] :
% 0.31/0.48        ( ( append @ A @ Xs @ ( nil @ A ) )
% 0.31/0.48        = Xs ) ).
% 0.31/0.48  
% 0.31/0.48  % append_Nil2
% 0.31/0.48  thf(fact_66_ord_Olexordp__simps_I3_J,axiom,
% 0.31/0.48      ! [A: $tType,Less: A > A > $o,X2: A,Xs: list @ A,Y: A,Ys: list @ A] :
% 0.31/0.48        ( ( lexordp @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( cons @ A @ Y @ Ys ) )
% 0.31/0.48        = ( ( Less @ X2 @ Y )
% 0.31/0.48          | ( ~ ( Less @ Y @ X2 )
% 0.31/0.48            & ( lexordp @ A @ Less @ Xs @ Ys ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lexordp_simps(3)
% 0.31/0.48  thf(fact_67_ord_Olexordp__eq__simps_I4_J,axiom,
% 0.31/0.48      ! [A: $tType,Less: A > A > $o,X2: A,Xs: list @ A,Y: A,Ys: list @ A] :
% 0.31/0.48        ( ( lexordp_eq @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( cons @ A @ Y @ Ys ) )
% 0.31/0.48        = ( ( Less @ X2 @ Y )
% 0.31/0.48          | ( ~ ( Less @ Y @ X2 )
% 0.31/0.48            & ( lexordp_eq @ A @ Less @ Xs @ Ys ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lexordp_eq_simps(4)
% 0.31/0.48  thf(fact_68_ord_Olexordp__simps_I1_J,axiom,
% 0.31/0.48      ! [A: $tType,Less: A > A > $o,Ys: list @ A] :
% 0.31/0.48        ( ( lexordp @ A @ Less @ ( nil @ A ) @ Ys )
% 0.31/0.48        = ( Ys
% 0.31/0.48         != ( nil @ A ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lexordp_simps(1)
% 0.31/0.48  thf(fact_69_ord_Olexordp__simps_I2_J,axiom,
% 0.31/0.48      ! [A: $tType,Less: A > A > $o,Xs: list @ A] :
% 0.31/0.48        ~ ( lexordp @ A @ Less @ Xs @ ( nil @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lexordp_simps(2)
% 0.31/0.48  thf(fact_70_ord_Olexordp__eq__simps_I1_J,axiom,
% 0.31/0.48      ! [A: $tType,Less: A > A > $o,Ys: list @ A] : ( lexordp_eq @ A @ Less @ ( nil @ A ) @ Ys ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lexordp_eq_simps(1)
% 0.31/0.48  thf(fact_71_ord_Olexordp__eq__simps_I2_J,axiom,
% 0.31/0.48      ! [A: $tType,Less: A > A > $o,Xs: list @ A] :
% 0.31/0.48        ( ( lexordp_eq @ A @ Less @ Xs @ ( nil @ A ) )
% 0.31/0.48        = ( Xs
% 0.31/0.48          = ( nil @ A ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lexordp_eq_simps(2)
% 0.31/0.48  thf(fact_72_append1__eq__conv,axiom,
% 0.31/0.48      ! [A: $tType,Xs: list @ A,X2: A,Ys: list @ A,Y: A] :
% 0.31/0.48        ( ( ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) )
% 0.31/0.48          = ( append @ A @ Ys @ ( cons @ A @ Y @ ( nil @ A ) ) ) )
% 0.31/0.48        = ( ( Xs = Ys )
% 0.31/0.48          & ( X2 = Y ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % append1_eq_conv
% 0.31/0.48  thf(fact_73_ord_Olexordp__eq__simps_I3_J,axiom,
% 0.31/0.48      ! [A: $tType,Less: A > A > $o,X2: A,Xs: list @ A] :
% 0.31/0.48        ~ ( lexordp_eq @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( nil @ A ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lexordp_eq_simps(3)
% 0.31/0.48  thf(fact_74_local_Olexordp__simps_I3_J,axiom,
% 0.31/0.48      ! [X2: a,Xs: list @ a,Y: a,Ys: list @ a] :
% 0.31/0.48        ( ( lexordp @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( cons @ a @ Y @ Ys ) )
% 0.31/0.48        = ( ( less @ X2 @ Y )
% 0.31/0.48          | ( ~ ( less @ Y @ X2 )
% 0.31/0.48            & ( lexordp @ a @ less @ Xs @ Ys ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_simps(3)
% 0.31/0.48  thf(fact_75_local_Olexordp__eq__simps_I4_J,axiom,
% 0.31/0.48      ! [X2: a,Xs: list @ a,Y: a,Ys: list @ a] :
% 0.31/0.48        ( ( lexordp_eq @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( cons @ a @ Y @ Ys ) )
% 0.31/0.48        = ( ( less @ X2 @ Y )
% 0.31/0.48          | ( ~ ( less @ Y @ X2 )
% 0.31/0.48            & ( lexordp_eq @ a @ less @ Xs @ Ys ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_eq_simps(4)
% 0.31/0.48  thf(fact_76_local_Olexordp__simps_I2_J,axiom,
% 0.31/0.48      ! [Xs: list @ a] :
% 0.31/0.48        ~ ( lexordp @ a @ less @ Xs @ ( nil @ a ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_simps(2)
% 0.31/0.48  thf(fact_77_local_Olexordp__simps_I1_J,axiom,
% 0.31/0.48      ! [Ys: list @ a] :
% 0.31/0.48        ( ( lexordp @ a @ less @ ( nil @ a ) @ Ys )
% 0.31/0.48        = ( Ys
% 0.31/0.48         != ( nil @ a ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_simps(1)
% 0.31/0.48  thf(fact_78_local_Olexordp__eq__simps_I2_J,axiom,
% 0.31/0.48      ! [Xs: list @ a] :
% 0.31/0.48        ( ( lexordp_eq @ a @ less @ Xs @ ( nil @ a ) )
% 0.31/0.48        = ( Xs
% 0.31/0.48          = ( nil @ a ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_eq_simps(2)
% 0.31/0.48  thf(fact_79_local_Olexordp__eq__simps_I1_J,axiom,
% 0.31/0.48      ! [Ys: list @ a] : ( lexordp_eq @ a @ less @ ( nil @ a ) @ Ys ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_eq_simps(1)
% 0.31/0.48  thf(fact_80_local_Olexordp__eq__simps_I3_J,axiom,
% 0.31/0.48      ! [X2: a,Xs: list @ a] :
% 0.31/0.48        ~ ( lexordp_eq @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( nil @ a ) ) ).
% 0.31/0.48  
% 0.31/0.48  % local.lexordp_eq_simps(3)
% 0.31/0.48  thf(fact_81_ord_Olexordp_ONil,axiom,
% 0.31/0.48      ! [A: $tType,Less: A > A > $o,Y: A,Ys: list @ A] : ( lexordp @ A @ Less @ ( nil @ A ) @ ( cons @ A @ Y @ Ys ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lexordp.Nil
% 0.31/0.48  thf(fact_82_ord_Olexordp_Ocases,axiom,
% 0.31/0.48      ! [A: $tType,Less: A > A > $o,A1: list @ A,A22: list @ A] :
% 0.31/0.48        ( ( lexordp @ A @ Less @ A1 @ A22 )
% 0.31/0.48       => ( ( ( A1
% 0.31/0.48              = ( nil @ A ) )
% 0.31/0.48           => ! [Y2: A,Ys2: list @ A] :
% 0.31/0.48                ( A22
% 0.31/0.48               != ( cons @ A @ Y2 @ Ys2 ) ) )
% 0.31/0.48         => ( ! [X: A] :
% 0.31/0.48                ( ? [Xs2: list @ A] :
% 0.31/0.48                    ( A1
% 0.31/0.48                    = ( cons @ A @ X @ Xs2 ) )
% 0.31/0.48               => ! [Y2: A] :
% 0.31/0.48                    ( ? [Ys2: list @ A] :
% 0.31/0.48                        ( A22
% 0.31/0.48                        = ( cons @ A @ Y2 @ Ys2 ) )
% 0.31/0.48                   => ~ ( Less @ X @ Y2 ) ) )
% 0.31/0.48           => ~ ! [X: A,Y2: A,Xs2: list @ A] :
% 0.31/0.48                  ( ( A1
% 0.31/0.48                    = ( cons @ A @ X @ Xs2 ) )
% 0.31/0.48                 => ! [Ys2: list @ A] :
% 0.31/0.48                      ( ( A22
% 0.31/0.48                        = ( cons @ A @ Y2 @ Ys2 ) )
% 0.31/0.48                     => ( ~ ( Less @ X @ Y2 )
% 0.31/0.48                       => ( ~ ( Less @ Y2 @ X )
% 0.31/0.48                         => ~ ( lexordp @ A @ Less @ Xs2 @ Ys2 ) ) ) ) ) ) ) ) ).
% 0.31/0.48  
% 0.31/0.48  % ord.lexordp.cases
% 0.31/0.48  thf(fact_83_ord_Olexordp_Osimps,axiom,
% 0.31/0.48      ! [A: $tType] :
% 0.31/0.48        ( ( lexordp @ A )
% 0.31/0.48        = ( ^ [Less2: A > A > $o,A12: list @ A,A23: list @ A] :
% 0.31/0.48              ( ? [Y3: A,Ys3: list @ A] :
% 0.31/0.48                  ( ( A12
% 0.31/0.48                    = ( nil @ A ) )
% 0.31/0.48                  & ( A23
% 0.31/0.48                    = ( cons @ A @ Y3 @ Ys3 ) ) )
% 0.31/0.48              | ? [X3: A,Y3: A,Xs3: list @ A,Ys3: list @ A] :
% 0.31/0.48                  ( ( A12
% 0.31/0.49                    = ( cons @ A @ X3 @ Xs3 ) )
% 0.31/0.49                  & ( A23
% 0.31/0.49                    = ( cons @ A @ Y3 @ Ys3 ) )
% 0.31/0.49                  & ( Less2 @ X3 @ Y3 ) )
% 0.31/0.49              | ? [X3: A,Y3: A,Xs3: list @ A,Ys3: list @ A] :
% 0.31/0.49                  ( ( A12
% 0.31/0.49                    = ( cons @ A @ X3 @ Xs3 ) )
% 0.31/0.49                  & ( A23
% 0.31/0.49                    = ( cons @ A @ Y3 @ Ys3 ) )
% 0.31/0.49                  & ~ ( Less2 @ X3 @ Y3 )
% 0.31/0.49                  & ~ ( Less2 @ Y3 @ X3 )
% 0.31/0.49                  & ( lexordp @ A @ Less2 @ Xs3 @ Ys3 ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp.simps
% 0.31/0.49  thf(fact_84_ord_Olexordp_Oinducts,axiom,
% 0.31/0.49      ! [A: $tType,Less: A > A > $o,X1: list @ A,X23: list @ A,P: ( list @ A ) > ( list @ A ) > $o] :
% 0.31/0.49        ( ( lexordp @ A @ Less @ X1 @ X23 )
% 0.31/0.49       => ( ! [Y2: A,Ys2: list @ A] : ( P @ ( nil @ A ) @ ( cons @ A @ Y2 @ Ys2 ) )
% 0.31/0.49         => ( ! [X: A,Y2: A,Xs2: list @ A,Ys2: list @ A] :
% 0.31/0.49                ( ( Less @ X @ Y2 )
% 0.31/0.49               => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ A @ Y2 @ Ys2 ) ) )
% 0.31/0.49           => ( ! [X: A,Y2: A,Xs2: list @ A,Ys2: list @ A] :
% 0.31/0.49                  ( ~ ( Less @ X @ Y2 )
% 0.31/0.49                 => ( ~ ( Less @ Y2 @ X )
% 0.31/0.49                   => ( ( lexordp @ A @ Less @ Xs2 @ Ys2 )
% 0.31/0.49                     => ( ( P @ Xs2 @ Ys2 )
% 0.31/0.49                       => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ A @ Y2 @ Ys2 ) ) ) ) ) )
% 0.31/0.49             => ( P @ X1 @ X23 ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp.inducts
% 0.31/0.49  thf(fact_85_ord_Olexordp__eq_Ocases,axiom,
% 0.31/0.49      ! [A: $tType,Less: A > A > $o,A1: list @ A,A22: list @ A] :
% 0.31/0.49        ( ( lexordp_eq @ A @ Less @ A1 @ A22 )
% 0.31/0.49       => ( ( ( A1
% 0.31/0.49              = ( nil @ A ) )
% 0.31/0.49           => ! [Ys2: list @ A] : ( A22 != Ys2 ) )
% 0.31/0.49         => ( ! [X: A] :
% 0.31/0.49                ( ? [Xs2: list @ A] :
% 0.31/0.49                    ( A1
% 0.31/0.49                    = ( cons @ A @ X @ Xs2 ) )
% 0.31/0.49               => ! [Y2: A] :
% 0.31/0.49                    ( ? [Ys2: list @ A] :
% 0.31/0.49                        ( A22
% 0.31/0.49                        = ( cons @ A @ Y2 @ Ys2 ) )
% 0.31/0.49                   => ~ ( Less @ X @ Y2 ) ) )
% 0.31/0.49           => ~ ! [X: A,Y2: A,Xs2: list @ A] :
% 0.31/0.49                  ( ( A1
% 0.31/0.49                    = ( cons @ A @ X @ Xs2 ) )
% 0.31/0.49                 => ! [Ys2: list @ A] :
% 0.31/0.49                      ( ( A22
% 0.31/0.49                        = ( cons @ A @ Y2 @ Ys2 ) )
% 0.31/0.49                     => ( ~ ( Less @ X @ Y2 )
% 0.31/0.49                       => ( ~ ( Less @ Y2 @ X )
% 0.31/0.49                         => ~ ( lexordp_eq @ A @ Less @ Xs2 @ Ys2 ) ) ) ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp_eq.cases
% 0.31/0.49  thf(fact_86_ord_Olexordp__eq_Osimps,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( lexordp_eq @ A )
% 0.31/0.49        = ( ^ [Less2: A > A > $o,A12: list @ A,A23: list @ A] :
% 0.31/0.49              ( ? [Ys3: list @ A] :
% 0.31/0.49                  ( ( A12
% 0.31/0.49                    = ( nil @ A ) )
% 0.31/0.49                  & ( A23 = Ys3 ) )
% 0.31/0.49              | ? [X3: A,Y3: A,Xs3: list @ A,Ys3: list @ A] :
% 0.31/0.49                  ( ( A12
% 0.31/0.49                    = ( cons @ A @ X3 @ Xs3 ) )
% 0.31/0.49                  & ( A23
% 0.31/0.49                    = ( cons @ A @ Y3 @ Ys3 ) )
% 0.31/0.49                  & ( Less2 @ X3 @ Y3 ) )
% 0.31/0.49              | ? [X3: A,Y3: A,Xs3: list @ A,Ys3: list @ A] :
% 0.31/0.49                  ( ( A12
% 0.31/0.49                    = ( cons @ A @ X3 @ Xs3 ) )
% 0.31/0.49                  & ( A23
% 0.31/0.49                    = ( cons @ A @ Y3 @ Ys3 ) )
% 0.31/0.49                  & ~ ( Less2 @ X3 @ Y3 )
% 0.31/0.49                  & ~ ( Less2 @ Y3 @ X3 )
% 0.31/0.49                  & ( lexordp_eq @ A @ Less2 @ Xs3 @ Ys3 ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp_eq.simps
% 0.31/0.49  thf(fact_87_ord_Olexordp__eq_Oinducts,axiom,
% 0.31/0.49      ! [A: $tType,Less: A > A > $o,X1: list @ A,X23: list @ A,P: ( list @ A ) > ( list @ A ) > $o] :
% 0.31/0.49        ( ( lexordp_eq @ A @ Less @ X1 @ X23 )
% 0.31/0.49       => ( ! [X12: list @ A] : ( P @ ( nil @ A ) @ X12 )
% 0.31/0.49         => ( ! [X: A,Y2: A,Xs2: list @ A,Ys2: list @ A] :
% 0.31/0.49                ( ( Less @ X @ Y2 )
% 0.31/0.49               => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ A @ Y2 @ Ys2 ) ) )
% 0.31/0.49           => ( ! [X: A,Y2: A,Xs2: list @ A,Ys2: list @ A] :
% 0.31/0.49                  ( ~ ( Less @ X @ Y2 )
% 0.31/0.49                 => ( ~ ( Less @ Y2 @ X )
% 0.31/0.49                   => ( ( lexordp_eq @ A @ Less @ Xs2 @ Ys2 )
% 0.31/0.49                     => ( ( P @ Xs2 @ Ys2 )
% 0.31/0.49                       => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ A @ Y2 @ Ys2 ) ) ) ) ) )
% 0.31/0.49             => ( P @ X1 @ X23 ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp_eq.inducts
% 0.31/0.49  thf(fact_88_ord_Olexordp__append__rightI,axiom,
% 0.31/0.49      ! [A: $tType,Ys: list @ A,Less: A > A > $o,Xs: list @ A] :
% 0.31/0.49        ( ( Ys
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49       => ( lexordp @ A @ Less @ Xs @ ( append @ A @ Xs @ Ys ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp_append_rightI
% 0.31/0.49  thf(fact_89_ord_Olexordp__append__left__rightI,axiom,
% 0.31/0.49      ! [A: $tType,Less: A > A > $o,X2: A,Y: A,Us: list @ A,Xs: list @ A,Ys: list @ A] :
% 0.31/0.49        ( ( Less @ X2 @ Y )
% 0.31/0.49       => ( lexordp @ A @ Less @ ( append @ A @ Us @ ( cons @ A @ X2 @ Xs ) ) @ ( append @ A @ Us @ ( cons @ A @ Y @ Ys ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp_append_left_rightI
% 0.31/0.49  thf(fact_90_map__tailrec__rev_Oinduct,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,P: ( A > B ) > ( list @ A ) > ( list @ B ) > $o,A0: A > B,A1: list @ A,A22: list @ B] :
% 0.31/0.49        ( ! [F2: A > B,X12: list @ B] : ( P @ F2 @ ( nil @ A ) @ X12 )
% 0.31/0.49       => ( ! [F2: A > B,A3: A,As: list @ A,Bs: list @ B] :
% 0.31/0.49              ( ( P @ F2 @ As @ ( cons @ B @ ( F2 @ A3 ) @ Bs ) )
% 0.31/0.49             => ( P @ F2 @ ( cons @ A @ A3 @ As ) @ Bs ) )
% 0.31/0.49         => ( P @ A0 @ A1 @ A22 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % map_tailrec_rev.induct
% 0.31/0.49  thf(fact_91_append__eq__append__conv2,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A,Ts: list @ A] :
% 0.31/0.49        ( ( ( append @ A @ Xs @ Ys )
% 0.31/0.49          = ( append @ A @ Zs @ Ts ) )
% 0.31/0.49        = ( ? [Us2: list @ A] :
% 0.31/0.49              ( ( ( Xs
% 0.31/0.49                  = ( append @ A @ Zs @ Us2 ) )
% 0.31/0.49                & ( ( append @ A @ Us2 @ Ys )
% 0.31/0.49                  = Ts ) )
% 0.31/0.49              | ( ( ( append @ A @ Xs @ Us2 )
% 0.31/0.49                  = Zs )
% 0.31/0.49                & ( Ys
% 0.31/0.49                  = ( append @ A @ Us2 @ Ts ) ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % append_eq_append_conv2
% 0.31/0.49  thf(fact_92_list__nonempty__induct,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,P: ( list @ A ) > $o] :
% 0.31/0.49        ( ( Xs
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49       => ( ! [X: A] : ( P @ ( cons @ A @ X @ ( nil @ A ) ) )
% 0.31/0.49         => ( ! [X: A,Xs2: list @ A] :
% 0.31/0.49                ( ( Xs2
% 0.31/0.49                 != ( nil @ A ) )
% 0.31/0.49               => ( ( P @ Xs2 )
% 0.31/0.49                 => ( P @ ( cons @ A @ X @ Xs2 ) ) ) )
% 0.31/0.49           => ( P @ Xs ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % list_nonempty_induct
% 0.31/0.49  thf(fact_93_rev__nonempty__induct,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,P: ( list @ A ) > $o] :
% 0.31/0.49        ( ( Xs
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49       => ( ! [X: A] : ( P @ ( cons @ A @ X @ ( nil @ A ) ) )
% 0.31/0.49         => ( ! [X: A,Xs2: list @ A] :
% 0.31/0.49                ( ( Xs2
% 0.31/0.49                 != ( nil @ A ) )
% 0.31/0.49               => ( ( P @ Xs2 )
% 0.31/0.49                 => ( P @ ( append @ A @ Xs2 @ ( cons @ A @ X @ ( nil @ A ) ) ) ) ) )
% 0.31/0.49           => ( P @ Xs ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rev_nonempty_induct
% 0.31/0.49  thf(fact_94_append__eq__Cons__conv,axiom,
% 0.31/0.49      ! [A: $tType,Ys: list @ A,Zs: list @ A,X2: A,Xs: list @ A] :
% 0.31/0.49        ( ( ( append @ A @ Ys @ Zs )
% 0.31/0.49          = ( cons @ A @ X2 @ Xs ) )
% 0.31/0.49        = ( ( ( Ys
% 0.31/0.49              = ( nil @ A ) )
% 0.31/0.49            & ( Zs
% 0.31/0.49              = ( cons @ A @ X2 @ Xs ) ) )
% 0.31/0.49          | ? [Ys4: list @ A] :
% 0.31/0.49              ( ( Ys
% 0.31/0.49                = ( cons @ A @ X2 @ Ys4 ) )
% 0.31/0.49              & ( ( append @ A @ Ys4 @ Zs )
% 0.31/0.49                = Xs ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % append_eq_Cons_conv
% 0.31/0.49  thf(fact_95_Cons__eq__append__conv,axiom,
% 0.31/0.49      ! [A: $tType,X2: A,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 0.31/0.49        ( ( ( cons @ A @ X2 @ Xs )
% 0.31/0.49          = ( append @ A @ Ys @ Zs ) )
% 0.31/0.49        = ( ( ( Ys
% 0.31/0.49              = ( nil @ A ) )
% 0.31/0.49            & ( ( cons @ A @ X2 @ Xs )
% 0.31/0.49              = Zs ) )
% 0.31/0.49          | ? [Ys4: list @ A] :
% 0.31/0.49              ( ( ( cons @ A @ X2 @ Ys4 )
% 0.31/0.49                = Ys )
% 0.31/0.49              & ( Xs
% 0.31/0.49                = ( append @ A @ Ys4 @ Zs ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % Cons_eq_append_conv
% 0.31/0.49  thf(fact_96_remdups__adj_Oinduct,axiom,
% 0.31/0.49      ! [A: $tType,P: ( list @ A ) > $o,A0: list @ A] :
% 0.31/0.49        ( ( P @ ( nil @ A ) )
% 0.31/0.49       => ( ! [X: A] : ( P @ ( cons @ A @ X @ ( nil @ A ) ) )
% 0.31/0.49         => ( ! [X: A,Y2: A,Xs2: list @ A] :
% 0.31/0.49                ( ( ( X = Y2 )
% 0.31/0.49                 => ( P @ ( cons @ A @ X @ Xs2 ) ) )
% 0.31/0.49               => ( ( ( X != Y2 )
% 0.31/0.49                   => ( P @ ( cons @ A @ Y2 @ Xs2 ) ) )
% 0.31/0.49                 => ( P @ ( cons @ A @ X @ ( cons @ A @ Y2 @ Xs2 ) ) ) ) )
% 0.31/0.49           => ( P @ A0 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % remdups_adj.induct
% 0.31/0.49  thf(fact_97_append__Cons,axiom,
% 0.31/0.49      ! [A: $tType,X2: A,Xs: list @ A,Ys: list @ A] :
% 0.31/0.49        ( ( append @ A @ ( cons @ A @ X2 @ Xs ) @ Ys )
% 0.31/0.49        = ( cons @ A @ X2 @ ( append @ A @ Xs @ Ys ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % append_Cons
% 0.31/0.49  thf(fact_98_remdups__adj_Ocases,axiom,
% 0.31/0.49      ! [A: $tType,X2: list @ A] :
% 0.31/0.49        ( ( X2
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49       => ( ! [X: A] :
% 0.31/0.49              ( X2
% 0.31/0.49             != ( cons @ A @ X @ ( nil @ A ) ) )
% 0.31/0.49         => ~ ! [X: A,Y2: A,Xs2: list @ A] :
% 0.31/0.49                ( X2
% 0.31/0.49               != ( cons @ A @ X @ ( cons @ A @ Y2 @ Xs2 ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % remdups_adj.cases
% 0.31/0.49  thf(fact_99_append__eq__appendI,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,Xs1: list @ A,Zs: list @ A,Ys: list @ A,Us: list @ A] :
% 0.31/0.49        ( ( ( append @ A @ Xs @ Xs1 )
% 0.31/0.49          = Zs )
% 0.31/0.49       => ( ( Ys
% 0.31/0.49            = ( append @ A @ Xs1 @ Us ) )
% 0.31/0.49         => ( ( append @ A @ Xs @ Ys )
% 0.31/0.49            = ( append @ A @ Zs @ Us ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % append_eq_appendI
% 0.31/0.49  thf(fact_100_append__Nil,axiom,
% 0.31/0.49      ! [A: $tType,Ys: list @ A] :
% 0.31/0.49        ( ( append @ A @ ( nil @ A ) @ Ys )
% 0.31/0.49        = Ys ) ).
% 0.31/0.49  
% 0.31/0.49  % append_Nil
% 0.31/0.49  thf(fact_101_transpose_Ocases,axiom,
% 0.31/0.49      ! [A: $tType,X2: list @ ( list @ A )] :
% 0.31/0.49        ( ( X2
% 0.31/0.49         != ( nil @ ( list @ A ) ) )
% 0.31/0.49       => ( ! [Xss: list @ ( list @ A )] :
% 0.31/0.49              ( X2
% 0.31/0.49             != ( cons @ ( list @ A ) @ ( nil @ A ) @ Xss ) )
% 0.31/0.49         => ~ ! [X: A,Xs2: list @ A,Xss: list @ ( list @ A )] :
% 0.31/0.49                ( X2
% 0.31/0.49               != ( cons @ ( list @ A ) @ ( cons @ A @ X @ Xs2 ) @ Xss ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % transpose.cases
% 0.31/0.49  thf(fact_102_Cons__eq__appendI,axiom,
% 0.31/0.49      ! [A: $tType,X2: A,Xs1: list @ A,Ys: list @ A,Xs: list @ A,Zs: list @ A] :
% 0.31/0.49        ( ( ( cons @ A @ X2 @ Xs1 )
% 0.31/0.49          = Ys )
% 0.31/0.49       => ( ( Xs
% 0.31/0.49            = ( append @ A @ Xs1 @ Zs ) )
% 0.31/0.49         => ( ( cons @ A @ X2 @ Xs )
% 0.31/0.49            = ( append @ A @ Ys @ Zs ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % Cons_eq_appendI
% 0.31/0.49  thf(fact_103_not__Cons__self2,axiom,
% 0.31/0.49      ! [A: $tType,X2: A,Xs: list @ A] :
% 0.31/0.49        ( ( cons @ A @ X2 @ Xs )
% 0.31/0.49       != Xs ) ).
% 0.31/0.49  
% 0.31/0.49  % not_Cons_self2
% 0.31/0.49  thf(fact_104_eq__Nil__appendI,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.31/0.49        ( ( Xs = Ys )
% 0.31/0.49       => ( Xs
% 0.31/0.49          = ( append @ A @ ( nil @ A ) @ Ys ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % eq_Nil_appendI
% 0.31/0.49  thf(fact_105_splice_Oinduct,axiom,
% 0.31/0.49      ! [A: $tType,P: ( list @ A ) > ( list @ A ) > $o,A0: list @ A,A1: list @ A] :
% 0.31/0.49        ( ! [X12: list @ A] : ( P @ ( nil @ A ) @ X12 )
% 0.31/0.49       => ( ! [V: A,Va: list @ A] : ( P @ ( cons @ A @ V @ Va ) @ ( nil @ A ) )
% 0.31/0.49         => ( ! [X: A,Xs2: list @ A,Y2: A,Ys2: list @ A] :
% 0.31/0.49                ( ( P @ Xs2 @ Ys2 )
% 0.31/0.49               => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ A @ Y2 @ Ys2 ) ) )
% 0.31/0.49           => ( P @ A0 @ A1 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % splice.induct
% 0.31/0.49  thf(fact_106_list__induct2_H,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,P: ( list @ A ) > ( list @ B ) > $o,Xs: list @ A,Ys: list @ B] :
% 0.31/0.49        ( ( P @ ( nil @ A ) @ ( nil @ B ) )
% 0.31/0.49       => ( ! [X: A,Xs2: list @ A] : ( P @ ( cons @ A @ X @ Xs2 ) @ ( nil @ B ) )
% 0.31/0.49         => ( ! [Y2: B,Ys2: list @ B] : ( P @ ( nil @ A ) @ ( cons @ B @ Y2 @ Ys2 ) )
% 0.31/0.49           => ( ! [X: A,Xs2: list @ A,Y2: B,Ys2: list @ B] :
% 0.31/0.49                  ( ( P @ Xs2 @ Ys2 )
% 0.31/0.49                 => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ B @ Y2 @ Ys2 ) ) )
% 0.31/0.49             => ( P @ Xs @ Ys ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % list_induct2'
% 0.31/0.49  thf(fact_107_neq__Nil__conv,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A] :
% 0.31/0.49        ( ( Xs
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49        = ( ? [Y3: A,Ys3: list @ A] :
% 0.31/0.49              ( Xs
% 0.31/0.49              = ( cons @ A @ Y3 @ Ys3 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % neq_Nil_conv
% 0.31/0.49  thf(fact_108_list_Oinducts,axiom,
% 0.31/0.49      ! [A: $tType,P: ( list @ A ) > $o,List: list @ A] :
% 0.31/0.49        ( ( P @ ( nil @ A ) )
% 0.31/0.49       => ( ! [X12: A,X24: list @ A] :
% 0.31/0.49              ( ( P @ X24 )
% 0.31/0.49             => ( P @ ( cons @ A @ X12 @ X24 ) ) )
% 0.31/0.49         => ( P @ List ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % list.inducts
% 0.31/0.49  thf(fact_109_list_Oexhaust,axiom,
% 0.31/0.49      ! [A: $tType,Y: list @ A] :
% 0.31/0.49        ( ( Y
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49       => ~ ! [X212: A,X222: list @ A] :
% 0.31/0.49              ( Y
% 0.31/0.49             != ( cons @ A @ X212 @ X222 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % list.exhaust
% 0.31/0.49  thf(fact_110_rev__exhaust,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A] :
% 0.31/0.49        ( ( Xs
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49       => ~ ! [Ys2: list @ A,Y2: A] :
% 0.31/0.49              ( Xs
% 0.31/0.49             != ( append @ A @ Ys2 @ ( cons @ A @ Y2 @ ( nil @ A ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rev_exhaust
% 0.31/0.49  thf(fact_111_rev__induct,axiom,
% 0.31/0.49      ! [A: $tType,P: ( list @ A ) > $o,Xs: list @ A] :
% 0.31/0.49        ( ( P @ ( nil @ A ) )
% 0.31/0.49       => ( ! [X: A,Xs2: list @ A] :
% 0.31/0.49              ( ( P @ Xs2 )
% 0.31/0.49             => ( P @ ( append @ A @ Xs2 @ ( cons @ A @ X @ ( nil @ A ) ) ) ) )
% 0.31/0.49         => ( P @ Xs ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rev_induct
% 0.31/0.49  thf(fact_112_list_OdiscI,axiom,
% 0.31/0.49      ! [A: $tType,List: list @ A,X21: A,X22: list @ A] :
% 0.31/0.49        ( ( List
% 0.31/0.49          = ( cons @ A @ X21 @ X22 ) )
% 0.31/0.49       => ( List
% 0.31/0.49         != ( nil @ A ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % list.discI
% 0.31/0.49  thf(fact_113_list_Odistinct_I1_J,axiom,
% 0.31/0.49      ! [A: $tType,X21: A,X22: list @ A] :
% 0.31/0.49        ( ( nil @ A )
% 0.31/0.49       != ( cons @ A @ X21 @ X22 ) ) ).
% 0.31/0.49  
% 0.31/0.49  % list.distinct(1)
% 0.31/0.49  thf(fact_114_ord_Olexordp__append__leftI,axiom,
% 0.31/0.49      ! [A: $tType,Less: A > A > $o,Us: list @ A,Vs: list @ A,Xs: list @ A] :
% 0.31/0.49        ( ( lexordp @ A @ Less @ Us @ Vs )
% 0.31/0.49       => ( lexordp @ A @ Less @ ( append @ A @ Xs @ Us ) @ ( append @ A @ Xs @ Vs ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp_append_leftI
% 0.31/0.49  thf(fact_115_ord_Olexordp__append__leftD,axiom,
% 0.31/0.49      ! [A: $tType,Less: A > A > $o,Xs: list @ A,Us: list @ A,Vs: list @ A] :
% 0.31/0.49        ( ( lexordp @ A @ Less @ ( append @ A @ Xs @ Us ) @ ( append @ A @ Xs @ Vs ) )
% 0.31/0.49       => ( ! [A3: A] :
% 0.31/0.49              ~ ( Less @ A3 @ A3 )
% 0.31/0.49         => ( lexordp @ A @ Less @ Us @ Vs ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp_append_leftD
% 0.31/0.49  thf(fact_116_ord_Olexordp_OCons__eq,axiom,
% 0.31/0.49      ! [A: $tType,Less: A > A > $o,X2: A,Y: A,Xs: list @ A,Ys: list @ A] :
% 0.31/0.49        ( ~ ( Less @ X2 @ Y )
% 0.31/0.49       => ( ~ ( Less @ Y @ X2 )
% 0.31/0.49         => ( ( lexordp @ A @ Less @ Xs @ Ys )
% 0.31/0.49           => ( lexordp @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( cons @ A @ Y @ Ys ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp.Cons_eq
% 0.31/0.49  thf(fact_117_ord_Olexordp_OCons,axiom,
% 0.31/0.49      ! [A: $tType,Less: A > A > $o,X2: A,Y: A,Xs: list @ A,Ys: list @ A] :
% 0.31/0.49        ( ( Less @ X2 @ Y )
% 0.31/0.49       => ( lexordp @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( cons @ A @ Y @ Ys ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp.Cons
% 0.31/0.49  thf(fact_118_ord_Olexordp__eq_OCons__eq,axiom,
% 0.31/0.49      ! [A: $tType,Less: A > A > $o,X2: A,Y: A,Xs: list @ A,Ys: list @ A] :
% 0.31/0.49        ( ~ ( Less @ X2 @ Y )
% 0.31/0.49       => ( ~ ( Less @ Y @ X2 )
% 0.31/0.49         => ( ( lexordp_eq @ A @ Less @ Xs @ Ys )
% 0.31/0.49           => ( lexordp_eq @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( cons @ A @ Y @ Ys ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp_eq.Cons_eq
% 0.31/0.49  thf(fact_119_ord_Olexordp__eq_OCons,axiom,
% 0.31/0.49      ! [A: $tType,Less: A > A > $o,X2: A,Y: A,Xs: list @ A,Ys: list @ A] :
% 0.31/0.49        ( ( Less @ X2 @ Y )
% 0.31/0.49       => ( lexordp_eq @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( cons @ A @ Y @ Ys ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp_eq.Cons
% 0.31/0.49  thf(fact_120_ord_Olexordp__eq_ONil,axiom,
% 0.31/0.49      ! [A: $tType,Less: A > A > $o,Ys: list @ A] : ( lexordp_eq @ A @ Less @ ( nil @ A ) @ Ys ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp_eq.Nil
% 0.31/0.49  thf(fact_121_ord_Olexordp__irreflexive,axiom,
% 0.31/0.49      ! [A: $tType,Less: A > A > $o,Xs: list @ A] :
% 0.31/0.49        ( ! [X: A] :
% 0.31/0.49            ~ ( Less @ X @ X )
% 0.31/0.49       => ~ ( lexordp @ A @ Less @ Xs @ Xs ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp_irreflexive
% 0.31/0.49  thf(fact_122_ord_Olexordp__eq__refl,axiom,
% 0.31/0.49      ! [A: $tType,Less: A > A > $o,Xs: list @ A] : ( lexordp_eq @ A @ Less @ Xs @ Xs ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lexordp_eq_refl
% 0.31/0.49  thf(fact_123_ord_OgreaterThanLessThan__def,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( set_gr1161524159ssThan @ A )
% 0.31/0.49        = ( ^ [Less2: A > A > $o,L2: A,U2: A] : ( inf_inf @ ( set @ A ) @ ( set_greaterThan @ A @ Less2 @ L2 ) @ ( set_lessThan @ A @ Less2 @ U2 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.greaterThanLessThan_def
% 0.31/0.49  thf(fact_124_ord_OgreaterThanLessThan__eq,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( set_gr1161524159ssThan @ A )
% 0.31/0.49        = ( ^ [Less2: A > A > $o,A5: A,B3: A] : ( inf_inf @ ( set @ A ) @ ( set_greaterThan @ A @ Less2 @ A5 ) @ ( set_lessThan @ A @ Less2 @ B3 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.greaterThanLessThan_eq
% 0.31/0.49  thf(fact_125_Int__iff,axiom,
% 0.31/0.49      ! [A: $tType,C: A,A4: set @ A,B4: set @ A] :
% 0.31/0.49        ( ( member @ A @ C @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) )
% 0.31/0.49        = ( ( member @ A @ C @ A4 )
% 0.31/0.49          & ( member @ A @ C @ B4 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % Int_iff
% 0.31/0.49  thf(fact_126_IntI,axiom,
% 0.31/0.49      ! [A: $tType,C: A,A4: set @ A,B4: set @ A] :
% 0.31/0.49        ( ( member @ A @ C @ A4 )
% 0.31/0.49       => ( ( member @ A @ C @ B4 )
% 0.31/0.49         => ( member @ A @ C @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % IntI
% 0.31/0.49  thf(fact_127_inf__right__idem,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 0.31/0.49       => ! [X2: A,Y: A] :
% 0.31/0.49            ( ( inf_inf @ A @ ( inf_inf @ A @ X2 @ Y ) @ Y )
% 0.31/0.49            = ( inf_inf @ A @ X2 @ Y ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf_right_idem
% 0.31/0.49  thf(fact_128_inf_Oright__idem,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 0.31/0.49       => ! [A2: A,B2: A] :
% 0.31/0.49            ( ( inf_inf @ A @ ( inf_inf @ A @ A2 @ B2 ) @ B2 )
% 0.31/0.49            = ( inf_inf @ A @ A2 @ B2 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf.right_idem
% 0.31/0.49  thf(fact_129_inf__left__idem,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 0.31/0.49       => ! [X2: A,Y: A] :
% 0.31/0.49            ( ( inf_inf @ A @ X2 @ ( inf_inf @ A @ X2 @ Y ) )
% 0.31/0.49            = ( inf_inf @ A @ X2 @ Y ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf_left_idem
% 0.31/0.49  thf(fact_130_inf_Oleft__idem,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 0.31/0.49       => ! [A2: A,B2: A] :
% 0.31/0.49            ( ( inf_inf @ A @ A2 @ ( inf_inf @ A @ A2 @ B2 ) )
% 0.31/0.49            = ( inf_inf @ A @ A2 @ B2 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf.left_idem
% 0.31/0.49  thf(fact_131_inf__apply,axiom,
% 0.31/0.49      ! [B: $tType,A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ B @ ( type2 @ B ) )
% 0.31/0.49       => ( ( inf_inf @ ( A > B ) )
% 0.31/0.49          = ( ^ [F3: A > B,G2: A > B,X3: A] : ( inf_inf @ B @ ( F3 @ X3 ) @ ( G2 @ X3 ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf_apply
% 0.31/0.49  thf(fact_132_inf_Oidem,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 0.31/0.49       => ! [A2: A] :
% 0.31/0.49            ( ( inf_inf @ A @ A2 @ A2 )
% 0.31/0.49            = A2 ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf.idem
% 0.31/0.49  thf(fact_133_inf__idem,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 0.31/0.49       => ! [X2: A] :
% 0.31/0.49            ( ( inf_inf @ A @ X2 @ X2 )
% 0.31/0.49            = X2 ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf_idem
% 0.31/0.49  thf(fact_134_inf__sup__aci_I4_J,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( lattice @ A @ ( type2 @ A ) )
% 0.31/0.49       => ! [X2: A,Y: A] :
% 0.31/0.49            ( ( inf_inf @ A @ X2 @ ( inf_inf @ A @ X2 @ Y ) )
% 0.31/0.49            = ( inf_inf @ A @ X2 @ Y ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf_sup_aci(4)
% 0.31/0.49  thf(fact_135_inf__sup__aci_I3_J,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( lattice @ A @ ( type2 @ A ) )
% 0.31/0.49       => ! [X2: A,Y: A,Z: A] :
% 0.31/0.49            ( ( inf_inf @ A @ X2 @ ( inf_inf @ A @ Y @ Z ) )
% 0.31/0.49            = ( inf_inf @ A @ Y @ ( inf_inf @ A @ X2 @ Z ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf_sup_aci(3)
% 0.31/0.49  thf(fact_136_inf__sup__aci_I2_J,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( lattice @ A @ ( type2 @ A ) )
% 0.31/0.49       => ! [X2: A,Y: A,Z: A] :
% 0.31/0.49            ( ( inf_inf @ A @ ( inf_inf @ A @ X2 @ Y ) @ Z )
% 0.31/0.49            = ( inf_inf @ A @ X2 @ ( inf_inf @ A @ Y @ Z ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf_sup_aci(2)
% 0.31/0.49  thf(fact_137_inf__sup__aci_I1_J,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( lattice @ A @ ( type2 @ A ) )
% 0.31/0.49       => ( ( inf_inf @ A )
% 0.31/0.49          = ( ^ [X3: A,Y3: A] : ( inf_inf @ A @ Y3 @ X3 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf_sup_aci(1)
% 0.31/0.49  thf(fact_138_inf__fun__def,axiom,
% 0.31/0.49      ! [B: $tType,A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ B @ ( type2 @ B ) )
% 0.31/0.49       => ( ( inf_inf @ ( A > B ) )
% 0.31/0.49          = ( ^ [F3: A > B,G2: A > B,X3: A] : ( inf_inf @ B @ ( F3 @ X3 ) @ ( G2 @ X3 ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf_fun_def
% 0.31/0.49  thf(fact_139_inf_Oassoc,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 0.31/0.49       => ! [A2: A,B2: A,C: A] :
% 0.31/0.49            ( ( inf_inf @ A @ ( inf_inf @ A @ A2 @ B2 ) @ C )
% 0.31/0.49            = ( inf_inf @ A @ A2 @ ( inf_inf @ A @ B2 @ C ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf.assoc
% 0.31/0.49  thf(fact_140_inf__assoc,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 0.31/0.49       => ! [X2: A,Y: A,Z: A] :
% 0.31/0.49            ( ( inf_inf @ A @ ( inf_inf @ A @ X2 @ Y ) @ Z )
% 0.31/0.49            = ( inf_inf @ A @ X2 @ ( inf_inf @ A @ Y @ Z ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf_assoc
% 0.31/0.49  thf(fact_141_inf_Ocommute,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 0.31/0.49       => ( ( inf_inf @ A )
% 0.31/0.49          = ( ^ [A5: A,B3: A] : ( inf_inf @ A @ B3 @ A5 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf.commute
% 0.31/0.49  thf(fact_142_inf__commute,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 0.31/0.49       => ( ( inf_inf @ A )
% 0.31/0.49          = ( ^ [X3: A,Y3: A] : ( inf_inf @ A @ Y3 @ X3 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf_commute
% 0.31/0.49  thf(fact_143_inf_Oleft__commute,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 0.31/0.49       => ! [B2: A,A2: A,C: A] :
% 0.31/0.49            ( ( inf_inf @ A @ B2 @ ( inf_inf @ A @ A2 @ C ) )
% 0.31/0.49            = ( inf_inf @ A @ A2 @ ( inf_inf @ A @ B2 @ C ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf.left_commute
% 0.31/0.49  thf(fact_144_inf__left__commute,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 0.31/0.49       => ! [X2: A,Y: A,Z: A] :
% 0.31/0.49            ( ( inf_inf @ A @ X2 @ ( inf_inf @ A @ Y @ Z ) )
% 0.31/0.49            = ( inf_inf @ A @ Y @ ( inf_inf @ A @ X2 @ Z ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % inf_left_commute
% 0.31/0.49  thf(fact_145_IntE,axiom,
% 0.31/0.49      ! [A: $tType,C: A,A4: set @ A,B4: set @ A] :
% 0.31/0.49        ( ( member @ A @ C @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) )
% 0.31/0.49       => ~ ( ( member @ A @ C @ A4 )
% 0.31/0.49           => ~ ( member @ A @ C @ B4 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % IntE
% 0.31/0.49  thf(fact_146_IntD1,axiom,
% 0.31/0.49      ! [A: $tType,C: A,A4: set @ A,B4: set @ A] :
% 0.31/0.49        ( ( member @ A @ C @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) )
% 0.31/0.49       => ( member @ A @ C @ A4 ) ) ).
% 0.31/0.49  
% 0.31/0.49  % IntD1
% 0.31/0.49  thf(fact_147_IntD2,axiom,
% 0.31/0.49      ! [A: $tType,C: A,A4: set @ A,B4: set @ A] :
% 0.31/0.49        ( ( member @ A @ C @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) )
% 0.31/0.49       => ( member @ A @ C @ B4 ) ) ).
% 0.31/0.49  
% 0.31/0.49  % IntD2
% 0.31/0.49  thf(fact_148_Int__assoc,axiom,
% 0.31/0.49      ! [A: $tType,A4: set @ A,B4: set @ A,C2: set @ A] :
% 0.31/0.49        ( ( inf_inf @ ( set @ A ) @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) @ C2 )
% 0.31/0.49        = ( inf_inf @ ( set @ A ) @ A4 @ ( inf_inf @ ( set @ A ) @ B4 @ C2 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % Int_assoc
% 0.31/0.49  thf(fact_149_Int__absorb,axiom,
% 0.31/0.49      ! [A: $tType,A4: set @ A] :
% 0.31/0.49        ( ( inf_inf @ ( set @ A ) @ A4 @ A4 )
% 0.31/0.49        = A4 ) ).
% 0.31/0.49  
% 0.31/0.49  % Int_absorb
% 0.31/0.49  thf(fact_150_Int__commute,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( inf_inf @ ( set @ A ) )
% 0.31/0.49        = ( ^ [A6: set @ A,B5: set @ A] : ( inf_inf @ ( set @ A ) @ B5 @ A6 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % Int_commute
% 0.31/0.49  thf(fact_151_Int__left__absorb,axiom,
% 0.31/0.49      ! [A: $tType,A4: set @ A,B4: set @ A] :
% 0.31/0.49        ( ( inf_inf @ ( set @ A ) @ A4 @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) )
% 0.31/0.49        = ( inf_inf @ ( set @ A ) @ A4 @ B4 ) ) ).
% 0.31/0.49  
% 0.31/0.49  % Int_left_absorb
% 0.31/0.49  thf(fact_152_Int__left__commute,axiom,
% 0.31/0.49      ! [A: $tType,A4: set @ A,B4: set @ A,C2: set @ A] :
% 0.31/0.49        ( ( inf_inf @ ( set @ A ) @ A4 @ ( inf_inf @ ( set @ A ) @ B4 @ C2 ) )
% 0.31/0.49        = ( inf_inf @ ( set @ A ) @ B4 @ ( inf_inf @ ( set @ A ) @ A4 @ C2 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % Int_left_commute
% 0.31/0.49  thf(fact_153_ord_OlessThan__iff,axiom,
% 0.31/0.49      ! [A: $tType,I: A,Less: A > A > $o,K: A] :
% 0.31/0.49        ( ( member @ A @ I @ ( set_lessThan @ A @ Less @ K ) )
% 0.31/0.49        = ( Less @ I @ K ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.lessThan_iff
% 0.31/0.49  thf(fact_154_ord_OgreaterThan__iff,axiom,
% 0.31/0.49      ! [A: $tType,I: A,Less: A > A > $o,K: A] :
% 0.31/0.49        ( ( member @ A @ I @ ( set_greaterThan @ A @ Less @ K ) )
% 0.31/0.49        = ( Less @ K @ I ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.greaterThan_iff
% 0.31/0.49  thf(fact_155_ord_OgreaterThanLessThan__iff,axiom,
% 0.31/0.49      ! [A: $tType,I: A,Less: A > A > $o,L: A,U: A] :
% 0.31/0.49        ( ( member @ A @ I @ ( set_gr1161524159ssThan @ A @ Less @ L @ U ) )
% 0.31/0.49        = ( ( Less @ L @ I )
% 0.31/0.49          & ( Less @ I @ U ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.greaterThanLessThan_iff
% 0.31/0.49  thf(fact_156_sublists_Osimps_I1_J,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( sublists @ A @ ( nil @ A ) )
% 0.31/0.49        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % sublists.simps(1)
% 0.31/0.49  thf(fact_157_prefixes_Ocases,axiom,
% 0.31/0.49      ! [A: $tType,X2: list @ A] :
% 0.31/0.49        ( ( X2
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49       => ~ ! [X: A,Xs2: list @ A] :
% 0.31/0.49              ( X2
% 0.31/0.49             != ( cons @ A @ X @ Xs2 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % prefixes.cases
% 0.31/0.49  thf(fact_158_prefixes_Oinduct,axiom,
% 0.31/0.49      ! [A: $tType,P: ( list @ A ) > $o,A0: list @ A] :
% 0.31/0.49        ( ( P @ ( nil @ A ) )
% 0.31/0.49       => ( ! [X: A,Xs2: list @ A] :
% 0.31/0.49              ( ( P @ Xs2 )
% 0.31/0.49             => ( P @ ( cons @ A @ X @ Xs2 ) ) )
% 0.31/0.49         => ( P @ A0 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % prefixes.induct
% 0.31/0.49  thf(fact_159_longest__common__prefix_Oinduct,axiom,
% 0.31/0.49      ! [A: $tType,P: ( list @ A ) > ( list @ A ) > $o,A0: list @ A,A1: list @ A] :
% 0.31/0.49        ( ! [X: A,Xs2: list @ A,Y2: A,Ys2: list @ A] :
% 0.31/0.49            ( ( ( X = Y2 )
% 0.31/0.49             => ( P @ Xs2 @ Ys2 ) )
% 0.31/0.49           => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ A @ Y2 @ Ys2 ) ) )
% 0.31/0.49       => ( ! [X12: list @ A] : ( P @ ( nil @ A ) @ X12 )
% 0.31/0.49         => ( ! [Uu: list @ A] : ( P @ Uu @ ( nil @ A ) )
% 0.31/0.49           => ( P @ A0 @ A1 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % longest_common_prefix.induct
% 0.31/0.49  thf(fact_160_prefixes__snoc,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,X2: A] :
% 0.31/0.49        ( ( prefixes @ A @ ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) ) )
% 0.31/0.49        = ( append @ ( list @ A ) @ ( prefixes @ A @ Xs ) @ ( cons @ ( list @ A ) @ ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) ) @ ( nil @ ( list @ A ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % prefixes_snoc
% 0.31/0.49  thf(fact_161_prefixes__eq__Snoc,axiom,
% 0.31/0.49      ! [A: $tType,Ys: list @ A,Xs: list @ ( list @ A ),X2: list @ A] :
% 0.31/0.49        ( ( ( prefixes @ A @ Ys )
% 0.31/0.49          = ( append @ ( list @ A ) @ Xs @ ( cons @ ( list @ A ) @ X2 @ ( nil @ ( list @ A ) ) ) ) )
% 0.31/0.49        = ( ( ( ( Ys
% 0.31/0.49                = ( nil @ A ) )
% 0.31/0.49              & ( Xs
% 0.31/0.49                = ( nil @ ( list @ A ) ) ) )
% 0.31/0.49            | ? [Z2: A,Zs2: list @ A] :
% 0.31/0.49                ( ( Ys
% 0.31/0.49                  = ( append @ A @ Zs2 @ ( cons @ A @ Z2 @ ( nil @ A ) ) ) )
% 0.31/0.49                & ( Xs
% 0.31/0.49                  = ( prefixes @ A @ Zs2 ) ) ) )
% 0.31/0.49          & ( X2 = Ys ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % prefixes_eq_Snoc
% 0.31/0.49  thf(fact_162_bind__simps_I2_J,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,X2: B,Xs: list @ B,F: B > ( list @ A )] :
% 0.31/0.49        ( ( bind @ B @ A @ ( cons @ B @ X2 @ Xs ) @ F )
% 0.31/0.49        = ( append @ A @ ( F @ X2 ) @ ( bind @ B @ A @ Xs @ F ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % bind_simps(2)
% 0.31/0.49  thf(fact_163_bind__simps_I1_J,axiom,
% 0.31/0.49      ! [B: $tType,A: $tType,F: B > ( list @ A )] :
% 0.31/0.49        ( ( bind @ B @ A @ ( nil @ B ) @ F )
% 0.31/0.49        = ( nil @ A ) ) ).
% 0.31/0.49  
% 0.31/0.49  % bind_simps(1)
% 0.31/0.49  thf(fact_164_prefixes_Osimps_I1_J,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( prefixes @ A @ ( nil @ A ) )
% 0.31/0.49        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % prefixes.simps(1)
% 0.31/0.49  thf(fact_165_product__lists_Osimps_I1_J,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( product_lists @ A @ ( nil @ ( list @ A ) ) )
% 0.31/0.49        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % product_lists.simps(1)
% 0.31/0.49  thf(fact_166_prefixes_Oelims,axiom,
% 0.31/0.49      ! [A: $tType,X2: list @ A,Y: list @ ( list @ A )] :
% 0.31/0.49        ( ( ( prefixes @ A @ X2 )
% 0.31/0.49          = Y )
% 0.31/0.49       => ( ( ( X2
% 0.31/0.49              = ( nil @ A ) )
% 0.31/0.49           => ( Y
% 0.31/0.49             != ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) )
% 0.31/0.49         => ~ ! [X: A,Xs2: list @ A] :
% 0.31/0.49                ( ( X2
% 0.31/0.49                  = ( cons @ A @ X @ Xs2 ) )
% 0.31/0.49               => ( Y
% 0.31/0.49                 != ( cons @ ( list @ A ) @ ( nil @ A ) @ ( map @ ( list @ A ) @ ( list @ A ) @ ( cons @ A @ X ) @ ( prefixes @ A @ Xs2 ) ) ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % prefixes.elims
% 0.31/0.49  thf(fact_167_maps__simps_I1_J,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,F: B > ( list @ A ),X2: B,Xs: list @ B] :
% 0.31/0.49        ( ( maps @ B @ A @ F @ ( cons @ B @ X2 @ Xs ) )
% 0.31/0.49        = ( append @ A @ ( F @ X2 ) @ ( maps @ B @ A @ F @ Xs ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % maps_simps(1)
% 0.31/0.49  thf(fact_168_Nil__is__map__conv,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 0.31/0.49        ( ( ( nil @ A )
% 0.31/0.49          = ( map @ B @ A @ F @ Xs ) )
% 0.31/0.49        = ( Xs
% 0.31/0.49          = ( nil @ B ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % Nil_is_map_conv
% 0.31/0.49  thf(fact_169_map__is__Nil__conv,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 0.31/0.49        ( ( ( map @ B @ A @ F @ Xs )
% 0.31/0.49          = ( nil @ A ) )
% 0.31/0.49        = ( Xs
% 0.31/0.49          = ( nil @ B ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % map_is_Nil_conv
% 0.31/0.49  thf(fact_170_list_Omap__disc__iff,axiom,
% 0.31/0.49      ! [B: $tType,A: $tType,F: A > B,A2: list @ A] :
% 0.31/0.49        ( ( ( map @ A @ B @ F @ A2 )
% 0.31/0.49          = ( nil @ B ) )
% 0.31/0.49        = ( A2
% 0.31/0.49          = ( nil @ A ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % list.map_disc_iff
% 0.31/0.49  thf(fact_171_map__append,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B,Ys: list @ B] :
% 0.31/0.49        ( ( map @ B @ A @ F @ ( append @ B @ Xs @ Ys ) )
% 0.31/0.49        = ( append @ A @ ( map @ B @ A @ F @ Xs ) @ ( map @ B @ A @ F @ Ys ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % map_append
% 0.31/0.49  thf(fact_172_list_Osimps_I9_J,axiom,
% 0.31/0.49      ! [B: $tType,A: $tType,F: A > B,X21: A,X22: list @ A] :
% 0.31/0.49        ( ( map @ A @ B @ F @ ( cons @ A @ X21 @ X22 ) )
% 0.31/0.49        = ( cons @ B @ ( F @ X21 ) @ ( map @ A @ B @ F @ X22 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % list.simps(9)
% 0.31/0.49  thf(fact_173_Cons__eq__map__D,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,X2: A,Xs: list @ A,F: B > A,Ys: list @ B] :
% 0.31/0.49        ( ( ( cons @ A @ X2 @ Xs )
% 0.31/0.49          = ( map @ B @ A @ F @ Ys ) )
% 0.31/0.49       => ? [Z3: B,Zs3: list @ B] :
% 0.31/0.49            ( ( Ys
% 0.31/0.49              = ( cons @ B @ Z3 @ Zs3 ) )
% 0.31/0.49            & ( X2
% 0.31/0.49              = ( F @ Z3 ) )
% 0.31/0.49            & ( Xs
% 0.31/0.49              = ( map @ B @ A @ F @ Zs3 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % Cons_eq_map_D
% 0.31/0.49  thf(fact_174_map__eq__Cons__D,axiom,
% 0.31/0.49      ! [B: $tType,A: $tType,F: B > A,Xs: list @ B,Y: A,Ys: list @ A] :
% 0.31/0.49        ( ( ( map @ B @ A @ F @ Xs )
% 0.31/0.49          = ( cons @ A @ Y @ Ys ) )
% 0.31/0.49       => ? [Z3: B,Zs3: list @ B] :
% 0.31/0.49            ( ( Xs
% 0.31/0.49              = ( cons @ B @ Z3 @ Zs3 ) )
% 0.31/0.49            & ( ( F @ Z3 )
% 0.31/0.49              = Y )
% 0.31/0.49            & ( ( map @ B @ A @ F @ Zs3 )
% 0.31/0.49              = Ys ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % map_eq_Cons_D
% 0.31/0.49  thf(fact_175_Cons__eq__map__conv,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,X2: A,Xs: list @ A,F: B > A,Ys: list @ B] :
% 0.31/0.49        ( ( ( cons @ A @ X2 @ Xs )
% 0.31/0.49          = ( map @ B @ A @ F @ Ys ) )
% 0.31/0.49        = ( ? [Z2: B,Zs2: list @ B] :
% 0.31/0.49              ( ( Ys
% 0.31/0.49                = ( cons @ B @ Z2 @ Zs2 ) )
% 0.31/0.49              & ( X2
% 0.31/0.49                = ( F @ Z2 ) )
% 0.31/0.49              & ( Xs
% 0.31/0.49                = ( map @ B @ A @ F @ Zs2 ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % Cons_eq_map_conv
% 0.31/0.49  thf(fact_176_map__eq__Cons__conv,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B,Y: A,Ys: list @ A] :
% 0.31/0.49        ( ( ( map @ B @ A @ F @ Xs )
% 0.31/0.49          = ( cons @ A @ Y @ Ys ) )
% 0.31/0.49        = ( ? [Z2: B,Zs2: list @ B] :
% 0.31/0.49              ( ( Xs
% 0.31/0.49                = ( cons @ B @ Z2 @ Zs2 ) )
% 0.31/0.49              & ( ( F @ Z2 )
% 0.31/0.49                = Y )
% 0.31/0.49              & ( ( map @ B @ A @ F @ Zs2 )
% 0.31/0.49                = Ys ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % map_eq_Cons_conv
% 0.31/0.49  thf(fact_177_list_Osimps_I8_J,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,F: A > B] :
% 0.31/0.49        ( ( map @ A @ B @ F @ ( nil @ A ) )
% 0.31/0.49        = ( nil @ B ) ) ).
% 0.31/0.49  
% 0.31/0.49  % list.simps(8)
% 0.31/0.49  thf(fact_178_maps__simps_I2_J,axiom,
% 0.31/0.49      ! [B: $tType,A: $tType,F: B > ( list @ A )] :
% 0.31/0.49        ( ( maps @ B @ A @ F @ ( nil @ B ) )
% 0.31/0.49        = ( nil @ A ) ) ).
% 0.31/0.49  
% 0.31/0.49  % maps_simps(2)
% 0.31/0.49  thf(fact_179_prefixes_Osimps_I2_J,axiom,
% 0.31/0.49      ! [A: $tType,X2: A,Xs: list @ A] :
% 0.31/0.49        ( ( prefixes @ A @ ( cons @ A @ X2 @ Xs ) )
% 0.31/0.49        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( map @ ( list @ A ) @ ( list @ A ) @ ( cons @ A @ X2 ) @ ( prefixes @ A @ Xs ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % prefixes.simps(2)
% 0.31/0.49  thf(fact_180_prefixes_Opelims,axiom,
% 0.31/0.49      ! [A: $tType,X2: list @ A,Y: list @ ( list @ A )] :
% 0.31/0.49        ( ( ( prefixes @ A @ X2 )
% 0.31/0.49          = Y )
% 0.31/0.49       => ( ( accp @ ( list @ A ) @ ( prefixes_rel @ A ) @ X2 )
% 0.31/0.49         => ( ( ( X2
% 0.31/0.49                = ( nil @ A ) )
% 0.31/0.49             => ( ( Y
% 0.31/0.49                  = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) )
% 0.31/0.49               => ~ ( accp @ ( list @ A ) @ ( prefixes_rel @ A ) @ ( nil @ A ) ) ) )
% 0.31/0.49           => ~ ! [X: A,Xs2: list @ A] :
% 0.31/0.49                  ( ( X2
% 0.31/0.49                    = ( cons @ A @ X @ Xs2 ) )
% 0.31/0.49                 => ( ( Y
% 0.31/0.49                      = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( map @ ( list @ A ) @ ( list @ A ) @ ( cons @ A @ X ) @ ( prefixes @ A @ Xs2 ) ) ) )
% 0.31/0.49                   => ~ ( accp @ ( list @ A ) @ ( prefixes_rel @ A ) @ ( cons @ A @ X @ Xs2 ) ) ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % prefixes.pelims
% 0.31/0.49  thf(fact_181_insert__Nil,axiom,
% 0.31/0.49      ! [A: $tType,X2: A] :
% 0.31/0.49        ( ( insert @ A @ X2 @ ( nil @ A ) )
% 0.31/0.49        = ( cons @ A @ X2 @ ( nil @ A ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % insert_Nil
% 0.31/0.49  thf(fact_182_rotate1_Osimps_I2_J,axiom,
% 0.31/0.49      ! [A: $tType,X2: A,Xs: list @ A] :
% 0.31/0.49        ( ( rotate1 @ A @ ( cons @ A @ X2 @ Xs ) )
% 0.31/0.49        = ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rotate1.simps(2)
% 0.31/0.49  thf(fact_183_rotate1__is__Nil__conv,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A] :
% 0.31/0.49        ( ( ( rotate1 @ A @ Xs )
% 0.31/0.49          = ( nil @ A ) )
% 0.31/0.49        = ( Xs
% 0.31/0.49          = ( nil @ A ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rotate1_is_Nil_conv
% 0.31/0.49  thf(fact_184_rotate1_Osimps_I1_J,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( rotate1 @ A @ ( nil @ A ) )
% 0.31/0.49        = ( nil @ A ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rotate1.simps(1)
% 0.31/0.49  thf(fact_185_map__eq__map__tailrec,axiom,
% 0.31/0.49      ! [B: $tType,A: $tType] :
% 0.31/0.49        ( ( map @ A @ B )
% 0.31/0.49        = ( map_tailrec @ A @ B ) ) ).
% 0.31/0.49  
% 0.31/0.49  % map_eq_map_tailrec
% 0.31/0.49  thf(fact_186_last__snoc,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,X2: A] :
% 0.31/0.49        ( ( last @ A @ ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) ) )
% 0.31/0.49        = X2 ) ).
% 0.31/0.49  
% 0.31/0.49  % last_snoc
% 0.31/0.49  thf(fact_187_butlast__snoc,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,X2: A] :
% 0.31/0.49        ( ( butlast @ A @ ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) ) )
% 0.31/0.49        = Xs ) ).
% 0.31/0.49  
% 0.31/0.49  % butlast_snoc
% 0.31/0.49  thf(fact_188_last__appendR,axiom,
% 0.31/0.49      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 0.31/0.49        ( ( Ys
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49       => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 0.31/0.49          = ( last @ A @ Ys ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % last_appendR
% 0.31/0.49  thf(fact_189_last__appendL,axiom,
% 0.31/0.49      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 0.31/0.49        ( ( Ys
% 0.31/0.49          = ( nil @ A ) )
% 0.31/0.49       => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 0.31/0.49          = ( last @ A @ Xs ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % last_appendL
% 0.31/0.49  thf(fact_190_append__butlast__last__id,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A] :
% 0.31/0.49        ( ( Xs
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49       => ( ( append @ A @ ( butlast @ A @ Xs ) @ ( cons @ A @ ( last @ A @ Xs ) @ ( nil @ A ) ) )
% 0.31/0.49          = Xs ) ) ).
% 0.31/0.49  
% 0.31/0.49  % append_butlast_last_id
% 0.31/0.49  thf(fact_191_map__butlast,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 0.31/0.49        ( ( map @ B @ A @ F @ ( butlast @ B @ Xs ) )
% 0.31/0.49        = ( butlast @ A @ ( map @ B @ A @ F @ Xs ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % map_butlast
% 0.31/0.49  thf(fact_192_snoc__eq__iff__butlast,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,X2: A,Ys: list @ A] :
% 0.31/0.49        ( ( ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) )
% 0.31/0.49          = Ys )
% 0.31/0.49        = ( ( Ys
% 0.31/0.49           != ( nil @ A ) )
% 0.31/0.49          & ( ( butlast @ A @ Ys )
% 0.31/0.49            = Xs )
% 0.31/0.49          & ( ( last @ A @ Ys )
% 0.31/0.49            = X2 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % snoc_eq_iff_butlast
% 0.31/0.49  thf(fact_193_butlast_Osimps_I1_J,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( butlast @ A @ ( nil @ A ) )
% 0.31/0.49        = ( nil @ A ) ) ).
% 0.31/0.49  
% 0.31/0.49  % butlast.simps(1)
% 0.31/0.49  thf(fact_194_last__ConsR,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,X2: A] :
% 0.31/0.49        ( ( Xs
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49       => ( ( last @ A @ ( cons @ A @ X2 @ Xs ) )
% 0.31/0.49          = ( last @ A @ Xs ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % last_ConsR
% 0.31/0.49  thf(fact_195_last__ConsL,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,X2: A] :
% 0.31/0.49        ( ( Xs
% 0.31/0.49          = ( nil @ A ) )
% 0.31/0.49       => ( ( last @ A @ ( cons @ A @ X2 @ Xs ) )
% 0.31/0.49          = X2 ) ) ).
% 0.31/0.49  
% 0.31/0.49  % last_ConsL
% 0.31/0.49  thf(fact_196_last_Osimps,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,X2: A] :
% 0.31/0.49        ( ( ( Xs
% 0.31/0.49            = ( nil @ A ) )
% 0.31/0.49         => ( ( last @ A @ ( cons @ A @ X2 @ Xs ) )
% 0.31/0.49            = X2 ) )
% 0.31/0.49        & ( ( Xs
% 0.31/0.49           != ( nil @ A ) )
% 0.31/0.49         => ( ( last @ A @ ( cons @ A @ X2 @ Xs ) )
% 0.31/0.49            = ( last @ A @ Xs ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % last.simps
% 0.31/0.49  thf(fact_197_butlast_Osimps_I2_J,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,X2: A] :
% 0.31/0.49        ( ( ( Xs
% 0.31/0.49            = ( nil @ A ) )
% 0.31/0.49         => ( ( butlast @ A @ ( cons @ A @ X2 @ Xs ) )
% 0.31/0.49            = ( nil @ A ) ) )
% 0.31/0.49        & ( ( Xs
% 0.31/0.49           != ( nil @ A ) )
% 0.31/0.49         => ( ( butlast @ A @ ( cons @ A @ X2 @ Xs ) )
% 0.31/0.49            = ( cons @ A @ X2 @ ( butlast @ A @ Xs ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % butlast.simps(2)
% 0.31/0.49  thf(fact_198_last__map,axiom,
% 0.31/0.49      ! [B: $tType,A: $tType,Xs: list @ A,F: A > B] :
% 0.31/0.49        ( ( Xs
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49       => ( ( last @ B @ ( map @ A @ B @ F @ Xs ) )
% 0.31/0.49          = ( F @ ( last @ A @ Xs ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % last_map
% 0.31/0.49  thf(fact_199_longest__common__suffix,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.31/0.49      ? [Ss: list @ A,Xs4: list @ A,Ys5: list @ A] :
% 0.31/0.49        ( ( Xs
% 0.31/0.49          = ( append @ A @ Xs4 @ Ss ) )
% 0.31/0.49        & ( Ys
% 0.31/0.49          = ( append @ A @ Ys5 @ Ss ) )
% 0.31/0.49        & ( ( Xs4
% 0.31/0.49            = ( nil @ A ) )
% 0.31/0.49          | ( Ys5
% 0.31/0.49            = ( nil @ A ) )
% 0.31/0.49          | ( ( last @ A @ Xs4 )
% 0.31/0.49           != ( last @ A @ Ys5 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % longest_common_suffix
% 0.31/0.49  thf(fact_200_butlast__append,axiom,
% 0.31/0.49      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 0.31/0.49        ( ( ( Ys
% 0.31/0.49            = ( nil @ A ) )
% 0.31/0.49         => ( ( butlast @ A @ ( append @ A @ Xs @ Ys ) )
% 0.31/0.49            = ( butlast @ A @ Xs ) ) )
% 0.31/0.49        & ( ( Ys
% 0.31/0.49           != ( nil @ A ) )
% 0.31/0.49         => ( ( butlast @ A @ ( append @ A @ Xs @ Ys ) )
% 0.31/0.49            = ( append @ A @ Xs @ ( butlast @ A @ Ys ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % butlast_append
% 0.31/0.49  thf(fact_201_last__append,axiom,
% 0.31/0.49      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 0.31/0.49        ( ( ( Ys
% 0.31/0.49            = ( nil @ A ) )
% 0.31/0.49         => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 0.31/0.49            = ( last @ A @ Xs ) ) )
% 0.31/0.49        & ( ( Ys
% 0.31/0.49           != ( nil @ A ) )
% 0.31/0.49         => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 0.31/0.49            = ( last @ A @ Ys ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % last_append
% 0.31/0.49  thf(fact_202_list__ex1__simps_I1_J,axiom,
% 0.31/0.49      ! [A: $tType,P: A > $o] :
% 0.31/0.49        ~ ( list_ex1 @ A @ P @ ( nil @ A ) ) ).
% 0.31/0.49  
% 0.31/0.49  % list_ex1_simps(1)
% 0.31/0.49  thf(fact_203_strict__suffix__def,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( strict_suffix @ A )
% 0.31/0.49        = ( ^ [Xs3: list @ A,Ys3: list @ A] :
% 0.31/0.49            ? [Us2: list @ A] :
% 0.31/0.49              ( ( Ys3
% 0.31/0.49                = ( append @ A @ Us2 @ Xs3 ) )
% 0.31/0.49              & ( Us2
% 0.31/0.49               != ( nil @ A ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % strict_suffix_def
% 0.31/0.49  thf(fact_204_strict__suffix__trans,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 0.31/0.49        ( ( strict_suffix @ A @ Xs @ Ys )
% 0.31/0.49       => ( ( strict_suffix @ A @ Ys @ Zs )
% 0.31/0.49         => ( strict_suffix @ A @ Xs @ Zs ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % strict_suffix_trans
% 0.31/0.49  thf(fact_205_map__tailrec__rev_Oelims,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,X2: A > B,Xa: list @ A,Xb: list @ B,Y: list @ B] :
% 0.31/0.49        ( ( ( map_tailrec_rev @ A @ B @ X2 @ Xa @ Xb )
% 0.31/0.49          = Y )
% 0.31/0.49       => ( ( ( Xa
% 0.31/0.49              = ( nil @ A ) )
% 0.31/0.49           => ( Y != Xb ) )
% 0.31/0.49         => ~ ! [A3: A,As: list @ A] :
% 0.31/0.49                ( ( Xa
% 0.31/0.49                  = ( cons @ A @ A3 @ As ) )
% 0.31/0.49               => ( Y
% 0.31/0.49                 != ( map_tailrec_rev @ A @ B @ X2 @ As @ ( cons @ B @ ( X2 @ A3 ) @ Xb ) ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % map_tailrec_rev.elims
% 0.31/0.49  thf(fact_206_SuccD,axiom,
% 0.31/0.49      ! [A: $tType,K: A,Kl: set @ ( list @ A ),Kl2: list @ A] :
% 0.31/0.49        ( ( member @ A @ K @ ( bNF_Greatest_Succ @ A @ Kl @ Kl2 ) )
% 0.31/0.49       => ( member @ ( list @ A ) @ ( append @ A @ Kl2 @ ( cons @ A @ K @ ( nil @ A ) ) ) @ Kl ) ) ).
% 0.31/0.49  
% 0.31/0.49  % SuccD
% 0.31/0.49  thf(fact_207_map__tailrec__rev_Osimps_I2_J,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,F: A > B,A2: A,As2: list @ A,Bs2: list @ B] :
% 0.31/0.49        ( ( map_tailrec_rev @ A @ B @ F @ ( cons @ A @ A2 @ As2 ) @ Bs2 )
% 0.31/0.49        = ( map_tailrec_rev @ A @ B @ F @ As2 @ ( cons @ B @ ( F @ A2 ) @ Bs2 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % map_tailrec_rev.simps(2)
% 0.31/0.49  thf(fact_208_map__tailrec__rev_Osimps_I1_J,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,F: A > B,Bs2: list @ B] :
% 0.31/0.49        ( ( map_tailrec_rev @ A @ B @ F @ ( nil @ A ) @ Bs2 )
% 0.31/0.49        = Bs2 ) ).
% 0.31/0.49  
% 0.31/0.49  % map_tailrec_rev.simps(1)
% 0.31/0.49  thf(fact_209_SuccI,axiom,
% 0.31/0.49      ! [A: $tType,Kl2: list @ A,K: A,Kl: set @ ( list @ A )] :
% 0.31/0.49        ( ( member @ ( list @ A ) @ ( append @ A @ Kl2 @ ( cons @ A @ K @ ( nil @ A ) ) ) @ Kl )
% 0.31/0.49       => ( member @ A @ K @ ( bNF_Greatest_Succ @ A @ Kl @ Kl2 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % SuccI
% 0.31/0.49  thf(fact_210_shift__def,axiom,
% 0.31/0.49      ! [B: $tType,A: $tType] :
% 0.31/0.49        ( ( bNF_Greatest_shift @ A @ B )
% 0.31/0.49        = ( ^ [Lab: ( list @ A ) > B,K2: A,Kl3: list @ A] : ( Lab @ ( cons @ A @ K2 @ Kl3 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % shift_def
% 0.31/0.49  thf(fact_211_empty__Shift,axiom,
% 0.31/0.49      ! [A: $tType,Kl: set @ ( list @ A ),K: A] :
% 0.31/0.49        ( ( member @ ( list @ A ) @ ( nil @ A ) @ Kl )
% 0.31/0.49       => ( ( member @ A @ K @ ( bNF_Greatest_Succ @ A @ Kl @ ( nil @ A ) ) )
% 0.31/0.49         => ( member @ ( list @ A ) @ ( nil @ A ) @ ( bNF_Greatest_Shift @ A @ Kl @ K ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % empty_Shift
% 0.31/0.49  thf(fact_212_ShiftD,axiom,
% 0.31/0.49      ! [A: $tType,Kl2: list @ A,Kl: set @ ( list @ A ),K: A] :
% 0.31/0.49        ( ( member @ ( list @ A ) @ Kl2 @ ( bNF_Greatest_Shift @ A @ Kl @ K ) )
% 0.31/0.49       => ( member @ ( list @ A ) @ ( cons @ A @ K @ Kl2 ) @ Kl ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ShiftD
% 0.31/0.49  thf(fact_213_Succ__Shift,axiom,
% 0.31/0.49      ! [A: $tType,Kl: set @ ( list @ A ),K: A,Kl2: list @ A] :
% 0.31/0.49        ( ( bNF_Greatest_Succ @ A @ ( bNF_Greatest_Shift @ A @ Kl @ K ) @ Kl2 )
% 0.31/0.49        = ( bNF_Greatest_Succ @ A @ Kl @ ( cons @ A @ K @ Kl2 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % Succ_Shift
% 0.31/0.49  thf(fact_214_map__tailrec__def,axiom,
% 0.31/0.49      ! [B: $tType,A: $tType] :
% 0.31/0.49        ( ( map_tailrec @ A @ B )
% 0.31/0.49        = ( ^ [F3: A > B,As3: list @ A] : ( rev @ B @ ( map_tailrec_rev @ A @ B @ F3 @ As3 @ ( nil @ B ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % map_tailrec_def
% 0.31/0.49  thf(fact_215_ord_OgreaterThanAtMost__def,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( set_gr323396891AtMost @ A )
% 0.31/0.49        = ( ^ [Less_eq: A > A > $o,Less2: A > A > $o,L2: A,U2: A] : ( inf_inf @ ( set @ A ) @ ( set_greaterThan @ A @ Less2 @ L2 ) @ ( set_atMost @ A @ Less_eq @ U2 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.greaterThanAtMost_def
% 0.31/0.49  thf(fact_216_rev__rev__ident,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A] :
% 0.31/0.49        ( ( rev @ A @ ( rev @ A @ Xs ) )
% 0.31/0.49        = Xs ) ).
% 0.31/0.49  
% 0.31/0.49  % rev_rev_ident
% 0.31/0.49  thf(fact_217_rev__is__rev__conv,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.31/0.49        ( ( ( rev @ A @ Xs )
% 0.31/0.49          = ( rev @ A @ Ys ) )
% 0.31/0.49        = ( Xs = Ys ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rev_is_rev_conv
% 0.31/0.49  thf(fact_218_Nil__is__rev__conv,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A] :
% 0.31/0.49        ( ( ( nil @ A )
% 0.31/0.49          = ( rev @ A @ Xs ) )
% 0.31/0.49        = ( Xs
% 0.31/0.49          = ( nil @ A ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % Nil_is_rev_conv
% 0.31/0.49  thf(fact_219_rev__is__Nil__conv,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A] :
% 0.31/0.49        ( ( ( rev @ A @ Xs )
% 0.31/0.49          = ( nil @ A ) )
% 0.31/0.49        = ( Xs
% 0.31/0.49          = ( nil @ A ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rev_is_Nil_conv
% 0.31/0.49  thf(fact_220_rev__append,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.31/0.49        ( ( rev @ A @ ( append @ A @ Xs @ Ys ) )
% 0.31/0.49        = ( append @ A @ ( rev @ A @ Ys ) @ ( rev @ A @ Xs ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rev_append
% 0.31/0.49  thf(fact_221_rev__singleton__conv,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,X2: A] :
% 0.31/0.49        ( ( ( rev @ A @ Xs )
% 0.31/0.49          = ( cons @ A @ X2 @ ( nil @ A ) ) )
% 0.31/0.49        = ( Xs
% 0.31/0.49          = ( cons @ A @ X2 @ ( nil @ A ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rev_singleton_conv
% 0.31/0.49  thf(fact_222_singleton__rev__conv,axiom,
% 0.31/0.49      ! [A: $tType,X2: A,Xs: list @ A] :
% 0.31/0.49        ( ( ( cons @ A @ X2 @ ( nil @ A ) )
% 0.31/0.49          = ( rev @ A @ Xs ) )
% 0.31/0.49        = ( Xs
% 0.31/0.49          = ( cons @ A @ X2 @ ( nil @ A ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % singleton_rev_conv
% 0.31/0.49  thf(fact_223_rev__eq__Cons__iff,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,Y: A,Ys: list @ A] :
% 0.31/0.49        ( ( ( rev @ A @ Xs )
% 0.31/0.49          = ( cons @ A @ Y @ Ys ) )
% 0.31/0.49        = ( Xs
% 0.31/0.49          = ( append @ A @ ( rev @ A @ Ys ) @ ( cons @ A @ Y @ ( nil @ A ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rev_eq_Cons_iff
% 0.31/0.49  thf(fact_224_rev__map,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 0.31/0.49        ( ( rev @ A @ ( map @ B @ A @ F @ Xs ) )
% 0.31/0.49        = ( map @ B @ A @ F @ ( rev @ B @ Xs ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rev_map
% 0.31/0.49  thf(fact_225_ord_OatMost__iff,axiom,
% 0.31/0.49      ! [A: $tType,I: A,Less_eq2: A > A > $o,K: A] :
% 0.31/0.49        ( ( member @ A @ I @ ( set_atMost @ A @ Less_eq2 @ K ) )
% 0.31/0.49        = ( Less_eq2 @ I @ K ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.atMost_iff
% 0.31/0.49  thf(fact_226_ord_OgreaterThanAtMost__iff,axiom,
% 0.31/0.49      ! [A: $tType,I: A,Less_eq2: A > A > $o,Less: A > A > $o,L: A,U: A] :
% 0.31/0.49        ( ( member @ A @ I @ ( set_gr323396891AtMost @ A @ Less_eq2 @ Less @ L @ U ) )
% 0.31/0.49        = ( ( Less @ L @ I )
% 0.31/0.49          & ( Less_eq2 @ I @ U ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.greaterThanAtMost_iff
% 0.31/0.49  thf(fact_227_rev_Osimps_I1_J,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( rev @ A @ ( nil @ A ) )
% 0.31/0.49        = ( nil @ A ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rev.simps(1)
% 0.31/0.49  thf(fact_228_rev__swap,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.31/0.49        ( ( ( rev @ A @ Xs )
% 0.31/0.49          = Ys )
% 0.31/0.49        = ( Xs
% 0.31/0.49          = ( rev @ A @ Ys ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rev_swap
% 0.31/0.49  thf(fact_229_rev_Osimps_I2_J,axiom,
% 0.31/0.49      ! [A: $tType,X2: A,Xs: list @ A] :
% 0.31/0.49        ( ( rev @ A @ ( cons @ A @ X2 @ Xs ) )
% 0.31/0.49        = ( append @ A @ ( rev @ A @ Xs ) @ ( cons @ A @ X2 @ ( nil @ A ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % rev.simps(2)
% 0.31/0.49  thf(fact_230_map__tailrec__rev,axiom,
% 0.31/0.49      ! [A: $tType,B: $tType] :
% 0.31/0.49        ( ( map_tailrec_rev @ B @ A )
% 0.31/0.49        = ( ^ [F3: B > A,As3: list @ B] : ( append @ A @ ( rev @ A @ ( map @ B @ A @ F3 @ As3 ) ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % map_tailrec_rev
% 0.31/0.49  thf(fact_231_list__of__aux__code_I1_J,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A] :
% 0.31/0.49        ( ( coindu1384447384of_aux @ A @ Xs @ ( coinductive_LNil @ A ) )
% 0.31/0.49        = ( rev @ A @ Xs ) ) ).
% 0.31/0.49  
% 0.31/0.49  % list_of_aux_code(1)
% 0.31/0.49  thf(fact_232_local_OgreaterThanAtMost__def,axiom,
% 0.31/0.49      ! [L: a,U: a] :
% 0.31/0.49        ( ( set_gr323396891AtMost @ a @ less_eq @ less @ L @ U )
% 0.31/0.49        = ( inf_inf @ ( set @ a ) @ ( set_greaterThan @ a @ less @ L ) @ ( set_atMost @ a @ less_eq @ U ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % local.greaterThanAtMost_def
% 0.31/0.49  thf(fact_233_local_Oord__eq__le__trans,axiom,
% 0.31/0.49      ! [A2: a,B2: a,C: a] :
% 0.31/0.49        ( ( A2 = B2 )
% 0.31/0.49       => ( ( less_eq @ B2 @ C )
% 0.31/0.49         => ( less_eq @ A2 @ C ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % local.ord_eq_le_trans
% 0.31/0.49  thf(fact_234_local_Oord__le__eq__trans,axiom,
% 0.31/0.49      ! [A2: a,B2: a,C: a] :
% 0.31/0.49        ( ( less_eq @ A2 @ B2 )
% 0.31/0.49       => ( ( B2 = C )
% 0.31/0.49         => ( less_eq @ A2 @ C ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % local.ord_le_eq_trans
% 0.31/0.49  thf(fact_235_local_Omax__def,axiom,
% 0.31/0.49      ! [A2: a,B2: a] :
% 0.31/0.49        ( ( ( less_eq @ A2 @ B2 )
% 0.31/0.49         => ( ( max @ a @ less_eq @ A2 @ B2 )
% 0.31/0.49            = B2 ) )
% 0.31/0.49        & ( ~ ( less_eq @ A2 @ B2 )
% 0.31/0.49         => ( ( max @ a @ less_eq @ A2 @ B2 )
% 0.31/0.49            = A2 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % local.max_def
% 0.31/0.49  thf(fact_236_local_Omin__def,axiom,
% 0.31/0.49      ! [A2: a,B2: a] :
% 0.31/0.49        ( ( ( less_eq @ A2 @ B2 )
% 0.31/0.49         => ( ( min @ a @ less_eq @ A2 @ B2 )
% 0.31/0.49            = A2 ) )
% 0.31/0.49        & ( ~ ( less_eq @ A2 @ B2 )
% 0.31/0.49         => ( ( min @ a @ less_eq @ A2 @ B2 )
% 0.31/0.49            = B2 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % local.min_def
% 0.31/0.49  thf(fact_237_local_OatMost__iff,axiom,
% 0.31/0.49      ! [I: a,K: a] :
% 0.31/0.49        ( ( member @ a @ I @ ( set_atMost @ a @ less_eq @ K ) )
% 0.31/0.49        = ( less_eq @ I @ K ) ) ).
% 0.31/0.49  
% 0.31/0.49  % local.atMost_iff
% 0.31/0.49  thf(fact_238_local_OgreaterThanAtMost__iff,axiom,
% 0.31/0.49      ! [I: a,L: a,U: a] :
% 0.31/0.49        ( ( member @ a @ I @ ( set_gr323396891AtMost @ a @ less_eq @ less @ L @ U ) )
% 0.31/0.49        = ( ( less @ L @ I )
% 0.31/0.49          & ( less_eq @ I @ U ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % local.greaterThanAtMost_iff
% 0.31/0.49  thf(fact_239_local_OatLeastLessThan__def,axiom,
% 0.31/0.49      ! [L: a,U: a] :
% 0.31/0.49        ( ( set_atLeastLessThan @ a @ less_eq @ less @ L @ U )
% 0.31/0.49        = ( inf_inf @ ( set @ a ) @ ( set_atLeast @ a @ less_eq @ L ) @ ( set_lessThan @ a @ less @ U ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % local.atLeastLessThan_def
% 0.31/0.49  thf(fact_240_local_OatLeastAtMost__def,axiom,
% 0.31/0.49      ! [L: a,U: a] :
% 0.31/0.49        ( ( set_atLeastAtMost @ a @ less_eq @ L @ U )
% 0.31/0.49        = ( inf_inf @ ( set @ a ) @ ( set_atLeast @ a @ less_eq @ L ) @ ( set_atMost @ a @ less_eq @ U ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % local.atLeastAtMost_def
% 0.31/0.49  thf(fact_241_local_OatLeast__iff,axiom,
% 0.31/0.49      ! [I: a,K: a] :
% 0.31/0.49        ( ( member @ a @ I @ ( set_atLeast @ a @ less_eq @ K ) )
% 0.31/0.49        = ( less_eq @ K @ I ) ) ).
% 0.31/0.49  
% 0.31/0.49  % local.atLeast_iff
% 0.31/0.49  thf(fact_242_local_OatLeastAtMost__iff,axiom,
% 0.31/0.49      ! [I: a,L: a,U: a] :
% 0.31/0.49        ( ( member @ a @ I @ ( set_atLeastAtMost @ a @ less_eq @ L @ U ) )
% 0.31/0.49        = ( ( less_eq @ L @ I )
% 0.31/0.49          & ( less_eq @ I @ U ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % local.atLeastAtMost_iff
% 0.31/0.49  thf(fact_243_local_OatLeastLessThan__iff,axiom,
% 0.31/0.49      ! [I: a,L: a,U: a] :
% 0.31/0.49        ( ( member @ a @ I @ ( set_atLeastLessThan @ a @ less_eq @ less @ L @ U ) )
% 0.31/0.49        = ( ( less_eq @ L @ I )
% 0.31/0.49          & ( less @ I @ U ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % local.atLeastLessThan_iff
% 0.31/0.49  thf(fact_244_ord_OatLeast__iff,axiom,
% 0.31/0.49      ! [A: $tType,I: A,Less_eq2: A > A > $o,K: A] :
% 0.31/0.49        ( ( member @ A @ I @ ( set_atLeast @ A @ Less_eq2 @ K ) )
% 0.31/0.49        = ( Less_eq2 @ K @ I ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.atLeast_iff
% 0.31/0.49  thf(fact_245_ord_OatLeastAtMost__iff,axiom,
% 0.31/0.49      ! [A: $tType,I: A,Less_eq2: A > A > $o,L: A,U: A] :
% 0.31/0.49        ( ( member @ A @ I @ ( set_atLeastAtMost @ A @ Less_eq2 @ L @ U ) )
% 0.31/0.49        = ( ( Less_eq2 @ L @ I )
% 0.31/0.49          & ( Less_eq2 @ I @ U ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.atLeastAtMost_iff
% 0.31/0.49  thf(fact_246_ord_OatLeastLessThan__iff,axiom,
% 0.31/0.49      ! [A: $tType,I: A,Less_eq2: A > A > $o,Less: A > A > $o,L: A,U: A] :
% 0.31/0.49        ( ( member @ A @ I @ ( set_atLeastLessThan @ A @ Less_eq2 @ Less @ L @ U ) )
% 0.31/0.49        = ( ( Less_eq2 @ L @ I )
% 0.31/0.49          & ( Less @ I @ U ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.atLeastLessThan_iff
% 0.31/0.49  thf(fact_247_ord_OatLeastLessThan__def,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( set_atLeastLessThan @ A )
% 0.31/0.49        = ( ^ [Less_eq: A > A > $o,Less2: A > A > $o,L2: A,U2: A] : ( inf_inf @ ( set @ A ) @ ( set_atLeast @ A @ Less_eq @ L2 ) @ ( set_lessThan @ A @ Less2 @ U2 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.atLeastLessThan_def
% 0.31/0.49  thf(fact_248_ord_OatLeastAtMost__def,axiom,
% 0.31/0.49      ! [A: $tType] :
% 0.31/0.49        ( ( set_atLeastAtMost @ A )
% 0.31/0.49        = ( ^ [Less_eq: A > A > $o,L2: A,U2: A] : ( inf_inf @ ( set @ A ) @ ( set_atLeast @ A @ Less_eq @ L2 ) @ ( set_atMost @ A @ Less_eq @ U2 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % ord.atLeastAtMost_def
% 0.31/0.49  thf(fact_249_local_Olsorted_OLNil,axiom,
% 0.31/0.49      coinductive_lsorted @ a @ less_eq @ ( coinductive_LNil @ a ) ).
% 0.31/0.49  
% 0.31/0.49  % local.lsorted.LNil
% 0.31/0.49  thf(fact_250_hd__rev,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A] :
% 0.31/0.49        ( ( Xs
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49       => ( ( hd @ A @ ( rev @ A @ Xs ) )
% 0.31/0.49          = ( last @ A @ Xs ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % hd_rev
% 0.31/0.49  thf(fact_251_hd__append2,axiom,
% 0.31/0.49      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.31/0.49        ( ( Xs
% 0.31/0.49         != ( nil @ A ) )
% 0.31/0.49       => ( ( hd @ A @ ( append @ A @ Xs @ Ys ) )
% 0.31/0.49          = ( hd @ A @ Xs ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  % hd_append2
% 0.31/0.49  thf(fact_252_local_Olsorted__code_I1_J,axiom,
% 0.31/0.49      coinductive_lsorted @ a @ less_eq @ ( coinductive_LNil @ a ) ).
% 0.31/0.49  
% 0.31/0.49  % local.lsorted_code(1)
% 0.31/0.49  
% 0.31/0.49  %----Type constructors (9)
% 0.31/0.49  thf(tcon_fun___Lattices_Osemilattice__inf,axiom,
% 0.31/0.49      ! [A7: $tType,A8: $tType] :
% 0.31/0.49        ( ( semilattice_inf @ A8 @ ( type2 @ A8 ) )
% 0.31/0.49       => ( semilattice_inf @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  thf(tcon_fun___Lattices_Olattice,axiom,
% 0.31/0.49      ! [A7: $tType,A8: $tType] :
% 0.31/0.49        ( ( lattice @ A8 @ ( type2 @ A8 ) )
% 0.31/0.49       => ( lattice @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  thf(tcon_fun___Orderings_Oord,axiom,
% 0.31/0.49      ! [A7: $tType,A8: $tType] :
% 0.31/0.49        ( ( ord @ A8 @ ( type2 @ A8 ) )
% 0.31/0.49       => ( ord @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  thf(tcon_Set_Oset___Lattices_Osemilattice__inf_1,axiom,
% 0.31/0.49      ! [A7: $tType] : ( semilattice_inf @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  thf(tcon_Set_Oset___Lattices_Olattice_2,axiom,
% 0.31/0.49      ! [A7: $tType] : ( lattice @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  thf(tcon_Set_Oset___Orderings_Oord_3,axiom,
% 0.31/0.49      ! [A7: $tType] : ( ord @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  thf(tcon_HOL_Obool___Lattices_Osemilattice__inf_4,axiom,
% 0.31/0.49      semilattice_inf @ $o @ ( type2 @ $o ) ).
% 0.31/0.49  
% 0.31/0.49  thf(tcon_HOL_Obool___Lattices_Olattice_5,axiom,
% 0.31/0.49      lattice @ $o @ ( type2 @ $o ) ).
% 0.31/0.49  
% 0.31/0.49  thf(tcon_HOL_Obool___Orderings_Oord_6,axiom,
% 0.31/0.49      ord @ $o @ ( type2 @ $o ) ).
% 0.31/0.49  
% 0.31/0.49  %----Conjectures (1)
% 0.31/0.49  thf(conj_0,conjecture,
% 0.31/0.49      ( ( coinductive_lnull @ a @ ( hammin1328233080lmerge @ a @ less @ xs @ ys ) )
% 0.31/0.49      = ( ( coinductive_lnull @ a @ xs )
% 0.31/0.49        | ( coinductive_lnull @ a @ ys ) ) ) ).
% 0.31/0.49  
% 0.31/0.49  %------------------------------------------------------------------------------
% 0.31/0.49  ------------------------
% 3.22/1.74  ---- Embedded in THF ---
% 3.22/1.74  %%% This output was generated by embedproblem, version 1.9.5 (library version 1.9).
% 3.22/1.74  %%% Generated on Tue Feb 24 06:09:58 EST 2026
% 3.22/1.74  %%% using '$$dhol' embedding, version 1.3.0.
% 3.22/1.74  %%% Logic specification used:
% 3.22/1.74  %%% thf(spec, logic, $$dhol).
% 3.22/1.74  
% 3.22/1.74  % SZS output start ListOfTHF for /export/starexec/sandbox/tmp/tmp.QfeLN0lqUF/DTF2DTF2221.p
% 3.22/1.74  thf(ty_t_Coinductive__List_Ollist, type, coinductive_llist: ($tType > $tType)).
% 3.22/1.74  thf(ty_t_List_Olist, type, list: ($tType > $tType)).
% 3.22/1.74  thf(ty_t_Set_Oset, type, set: ($tType > $tType)).
% 3.22/1.74  thf(ty_t_itself, type, itself: ($tType > $tType)).
% 3.22/1.74  thf(ty_tf_a, type, a: $tType).
% 3.22/1.74  thf(sy_cl_HOL_Otype, type, type: (!> [A:$tType]: (((itself @ A) > $o)))).
% 3.22/1.74  thf(sy_cl_Orderings_Oord, type, ord: (!> [A:$tType]: (((itself @ A) > $o)))).
% 3.22/1.74  thf(sy_cl_Lattices_Olattice, type, lattice: (!> [A:$tType]: (((itself @ A) > $o)))).
% 3.22/1.74  thf(sy_cl_Lattices_Osemilattice__inf, type, semilattice_inf: (!> [A:$tType]: (((itself @ A) > $o)))).
% 3.22/1.74  thf(sy_c_BNF__Greatest__Fixpoint_OShift, type, bNF_Greatest_Shift: (!> [A:$tType]: (((set @ (list @ A)) > (A > (set @ (list @ A))))))).
% 3.22/1.74  thf(sy_c_BNF__Greatest__Fixpoint_OSucc, type, bNF_Greatest_Succ: (!> [A:$tType]: (((set @ (list @ A)) > ((list @ A) > (set @ A)))))).
% 3.22/1.74  thf(sy_c_BNF__Greatest__Fixpoint_Oshift, type, bNF_Greatest_shift: (!> [A:$tType,B:$tType]: ((((list @ A) > B) > (A > ((list @ A) > B)))))).
% 3.22/1.74  thf(sy_c_Coinductive__List_Olist__of__aux, type, coindu1384447384of_aux: (!> [A:$tType]: (((list @ A) > ((coinductive_llist @ A) > (list @ A)))))).
% 3.22/1.74  thf(sy_c_Coinductive__List_Ollist_OLNil, type, coinductive_LNil: (!> [A:$tType]: ((coinductive_llist @ A)))).
% 3.22/1.74  thf(sy_c_Coinductive__List_Ollist_Olnull, type, coinductive_lnull: (!> [A:$tType]: (((coinductive_llist @ A) > $o)))).
% 3.22/1.74  thf(sy_c_Coinductive__List_Oord_Olsorted, type, coinductive_lsorted: (!> [A:$tType]: (((A > (A > $o)) > ((coinductive_llist @ A) > $o))))).
% 3.22/1.74  thf(sy_c_Hamming__Stream__Mirabelle__rwekfkwckg_Oord_Olmerge, type, hammin1328233080lmerge: (!> [A:$tType]: (((A > (A > $o)) > ((coinductive_llist @ A) > ((coinductive_llist @ A) > (coinductive_llist @ A))))))).
% 3.22/1.74  thf(sy_c_Hamming__Stream__Mirabelle__rwekfkwckg_Oord__class_Olmerge, type, hammin1138290136lmerge: (!> [A:$tType]: (((coinductive_llist @ A) > ((coinductive_llist @ A) > (coinductive_llist @ A)))))).
% 3.22/1.74  thf(sy_c_Lattices_Oinf__class_Oinf, type, inf_inf: (!> [A:$tType]: ((A > (A > A))))).
% 3.22/1.74  thf(sy_c_List_Oappend, type, append: (!> [A:$tType]: (((list @ A) > ((list @ A) > (list @ A)))))).
% 3.22/1.74  thf(sy_c_List_Obind, type, bind: (!> [A:$tType,B:$tType]: (((list @ A) > ((A > (list @ B)) > (list @ B)))))).
% 3.22/1.74  thf(sy_c_List_Obutlast, type, butlast: (!> [A:$tType]: (((list @ A) > (list @ A))))).
% 3.22/1.74  thf(sy_c_List_Oinsert, type, insert: (!> [A:$tType]: ((A > ((list @ A) > (list @ A)))))).
% 3.22/1.74  thf(sy_c_List_Olast, type, last: (!> [A:$tType]: (((list @ A) > A)))).
% 3.22/1.74  thf(sy_c_List_Olist_OCons, type, cons: (!> [A:$tType]: ((A > ((list @ A) > (list @ A)))))).
% 3.22/1.74  thf(sy_c_List_Olist_ONil, type, nil: (!> [A:$tType]: ((list @ A)))).
% 3.22/1.74  thf(sy_c_List_Olist_Ohd, type, hd: (!> [A:$tType]: (((list @ A) > A)))).
% 3.22/1.74  thf(sy_c_List_Olist_Omap, type, map: (!> [A:$tType,Aa:$tType]: (((A > Aa) > ((list @ A) > (list @ Aa)))))).
% 3.22/1.74  thf(sy_c_List_Olist__ex1, type, list_ex1: (!> [A:$tType]: (((A > $o) > ((list @ A) > $o))))).
% 3.22/1.74  thf(sy_c_List_Omap__tailrec, type, map_tailrec: (!> [A:$tType,B:$tType]: (((A > B) > ((list @ A) > (list @ B)))))).
% 3.22/1.74  thf(sy_c_List_Omap__tailrec__rev, type, map_tailrec_rev: (!> [A:$tType,B:$tType]: (((A > B) > ((list @ A) > ((list @ B) > (list @ B))))))).
% 3.22/1.74  thf(sy_c_List_Omaps, type, maps: (!> [A:$tType,B:$tType]: (((A > (list @ B)) > ((list @ A) > (list @ B)))))).
% 3.22/1.74  thf(sy_c_List_Oord_Olexordp, type, lexordp: (!> [A:$tType]: (((A > (A > $o)) > ((list @ A) > ((list @ A) > $o)))))).
% 3.22/1.74  thf(sy_c_List_Oord_Olexordp__eq, type, lexordp_eq: (!> [A:$tType]: (((A > (A > $o)) > ((list @ A) > ((list @ A) > $o)))))).
% 3.22/1.74  thf(sy_c_List_Oproduct__lists, type, product_lists: (!> [A:$tType]: (((list @ (list @ A)) > (list @ (list @ A)))))).
% 3.22/1.74  thf(sy_c_List_Orev, type, rev: (!> [A:$tType]: (((list @ A) > (list @ A))))).
% 3.22/1.74  thf(sy_c_List_Orotate1, type, rotate1: (!> [A:$tType]: (((list @ A) > (list @ A))))).
% 3.22/1.74  thf(sy_c_List_Osublists, type, sublists: (!> [A:$tType]: (((list @ A) > (list @ (list @ A)))))).
% 3.22/1.74  thf(sy_c_Orderings_Oord_Omax, type, max: (!> [A:$tType]: (((A > (A > $o)) > (A > (A > A)))))).
% 3.22/1.74  thf(sy_c_Orderings_Oord_Omin, type, min: (!> [A:$tType]: (((A > (A > $o)) > (A > (A > A)))))).
% 3.22/1.74  thf(sy_c_Pure_Otype, type, type2: (!> [A:$tType]: ((itself @ A)))).
% 3.22/1.74  thf(sy_c_Set_OCollect, type, collect: (!> [A:$tType]: (((A > $o) > (set @ A))))).
% 3.22/1.74  thf(sy_c_Set__Interval_Oord_OatLeast, type, set_atLeast: (!> [A:$tType]: (((A > (A > $o)) > (A > (set @ A)))))).
% 3.22/1.74  thf(sy_c_Set__Interval_Oord_OatLeastAtMost, type, set_atLeastAtMost: (!> [A:$tType]: (((A > (A > $o)) > (A > (A > (set @ A))))))).
% 3.22/1.74  thf(sy_c_Set__Interval_Oord_OatLeastLessThan, type, set_atLeastLessThan: (!> [A:$tType]: (((A > (A > $o)) > ((A > (A > $o)) > (A > (A > (set @ A)))))))).
% 3.22/1.74  thf(sy_c_Set__Interval_Oord_OatMost, type, set_atMost: (!> [A:$tType]: (((A > (A > $o)) > (A > (set @ A)))))).
% 3.22/1.74  thf(sy_c_Set__Interval_Oord_OgreaterThan, type, set_greaterThan: (!> [A:$tType]: (((A > (A > $o)) > (A > (set @ A)))))).
% 3.22/1.74  thf(sy_c_Set__Interval_Oord_OgreaterThanAtMost, type, set_gr323396891AtMost: (!> [A:$tType]: (((A > (A > $o)) > ((A > (A > $o)) > (A > (A > (set @ A)))))))).
% 3.22/1.74  thf(sy_c_Set__Interval_Oord_OgreaterThanLessThan, type, set_gr1161524159ssThan: (!> [A:$tType]: (((A > (A > $o)) > (A > (A > (set @ A))))))).
% 3.22/1.74  thf(sy_c_Set__Interval_Oord_OlessThan, type, set_lessThan: (!> [A:$tType]: (((A > (A > $o)) > (A > (set @ A)))))).
% 3.22/1.74  thf(sy_c_Sublist_Oprefixes, type, prefixes: (!> [A:$tType]: (((list @ A) > (list @ (list @ A)))))).
% 3.22/1.74  thf(sy_c_Sublist_Oprefixes__rel, type, prefixes_rel: (!> [A:$tType]: (((list @ A) > ((list @ A) > $o))))).
% 3.22/1.74  thf(sy_c_Sublist_Ostrict__suffix, type, strict_suffix: (!> [A:$tType]: (((list @ A) > ((list @ A) > $o))))).
% 3.22/1.74  thf(sy_c_Wellfounded_Oaccp, type, accp: (!> [A:$tType]: (((A > (A > $o)) > (A > $o))))).
% 3.22/1.74  thf(sy_c_member, type, member: (!> [A:$tType]: ((A > ((set @ A) > $o))))).
% 3.22/1.74  thf(sy_v_less, type, less: (a > (a > $o))).
% 3.22/1.74  thf(sy_v_less__eq, type, less_eq: (a > (a > $o))).
% 3.22/1.74  thf(sy_v_xs, type, xs: (coinductive_llist @ a)).
% 3.22/1.74  thf(sy_v_ys, type, ys: (coinductive_llist @ a)).
% 3.22/1.74  thf(fact_0_lmerge_Oexhaust, axiom, (! [Xs:(coinductive_llist @ a),Ys:(coinductive_llist @ a)]: (((~ ((((coinductive_lnull @ a) @ Xs) | ((coinductive_lnull @ a) @ Ys)))) => (~ (((~ (((coinductive_lnull @ a) @ Xs))) => ((coinductive_lnull @ a) @ Ys)))))))).
% 3.22/1.74  thf(fact_1_local_Oord__eq__less__trans, axiom, (! [A2:a,B2:a,C:a]: (((A2 = B2) => (((less @ B2) @ C) => ((less @ A2) @ C)))))).
% 3.22/1.74  thf(fact_2_local_Oord__less__eq__trans, axiom, (! [A2:a,B2:a,C:a]: ((((less @ A2) @ B2) => ((B2 = C) => ((less @ A2) @ C)))))).
% 3.22/1.74  thf(fact_3_lmerge_Odisc_I2_J, axiom, (! [Xs:(coinductive_llist @ a),Ys:(coinductive_llist @ a)]: (((~ (((coinductive_lnull @ a) @ Xs))) => ((~ (((coinductive_lnull @ a) @ Ys))) => (~ (((coinductive_lnull @ a) @ ((((hammin1328233080lmerge @ a) @ less) @ Xs) @ Ys))))))))).
% 3.22/1.74  thf(fact_4_lmerge_Odisc_I1_J, axiom, (! [Xs:(coinductive_llist @ a),Ys:(coinductive_llist @ a)]: (((((coinductive_lnull @ a) @ Xs) | ((coinductive_lnull @ a) @ Ys)) => ((coinductive_lnull @ a) @ ((((hammin1328233080lmerge @ a) @ less) @ Xs) @ Ys)))))).
% 3.22/1.74  thf(fact_5_lmerge_Osimps_I2_J, axiom, (! [Xs:(coinductive_llist @ a),Ys:(coinductive_llist @ a)]: (((~ (((coinductive_lnull @ a) @ ((((hammin1328233080lmerge @ a) @ less) @ Xs) @ Ys)))) = ((~ (((coinductive_lnull @ a) @ Xs))) & (~ (((coinductive_lnull @ a) @ Ys)))))))).
% 3.22/1.74  thf(fact_6_lmerge_Osimps_I1_J, axiom, (! [Xs:(coinductive_llist @ a),Ys:(coinductive_llist @ a)]: ((((coinductive_lnull @ a) @ ((((hammin1328233080lmerge @ a) @ less) @ Xs) @ Ys)) = (((coinductive_lnull @ a) @ Xs) | ((coinductive_lnull @ a) @ Ys)))))).
% 3.22/1.74  thf(fact_7_ord_Olmerge_Odisc_I2_J, axiom, (! [A:$tType,Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ A),Less:(A > (A > $o))]: (((~ (((coinductive_lnull @ A) @ Xs))) => ((~ (((coinductive_lnull @ A) @ Ys))) => (~ (((coinductive_lnull @ A) @ ((((hammin1328233080lmerge @ A) @ Less) @ Xs) @ Ys))))))))).
% 3.22/1.74  thf(fact_8_ord_Olmerge_Odisc_I1_J, axiom, (! [A:$tType,Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ A),Less:(A > (A > $o))]: (((((coinductive_lnull @ A) @ Xs) | ((coinductive_lnull @ A) @ Ys)) => ((coinductive_lnull @ A) @ ((((hammin1328233080lmerge @ A) @ Less) @ Xs) @ Ys)))))).
% 3.22/1.74  thf(fact_9_ord_Olmerge_Odisc__iff_I2_J, axiom, (! [A:$tType,Less:(A > (A > $o)),Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ A)]: (((~ (((coinductive_lnull @ A) @ ((((hammin1328233080lmerge @ A) @ Less) @ Xs) @ Ys)))) = ((~ (((coinductive_lnull @ A) @ Xs))) & (~ (((coinductive_lnull @ A) @ Ys)))))))).
% 3.22/1.74  thf(fact_10_ord_Olmerge_Odisc__iff_I1_J, axiom, (! [A:$tType,Less:(A > (A > $o)),Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ A)]: ((((coinductive_lnull @ A) @ ((((hammin1328233080lmerge @ A) @ Less) @ Xs) @ Ys)) = (((coinductive_lnull @ A) @ Xs) | ((coinductive_lnull @ A) @ Ys)))))).
% 3.22/1.74  thf(fact_11_ord_Olmerge_Oexhaust, axiom, (! [A:$tType,Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ A)]: (((~ ((((coinductive_lnull @ A) @ Xs) | ((coinductive_lnull @ A) @ Ys)))) => (~ (((~ (((coinductive_lnull @ A) @ Xs))) => ((coinductive_lnull @ A) @ Ys)))))))).
% 3.22/1.74  thf(fact_12_ord__class_Olmerge_Oexhaust, axiom, (! [A:$tType]: ((((ord @ A) @ (type2 @ A)) => (! [Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ A)]: (((~ ((((coinductive_lnull @ A) @ Xs) | ((coinductive_lnull @ A) @ Ys)))) => (~ (((~ (((coinductive_lnull @ A) @ Xs))) => ((coinductive_lnull @ A) @ Ys))))))))))).
% 3.22/1.74  thf(fact_13_lmerge_Octr_I1_J, axiom, (! [Xs:(coinductive_llist @ a),Ys:(coinductive_llist @ a)]: (((((coinductive_lnull @ a) @ Xs) | ((coinductive_lnull @ a) @ Ys)) => (((((hammin1328233080lmerge @ a) @ less) @ Xs) @ Ys) = (coinductive_LNil @ a)))))).
% 3.22/1.74  thf(fact_14_local_Olexordp__eq__refl, axiom, (! [Xs:(list @ a)]: (((((lexordp_eq @ a) @ less) @ Xs) @ Xs)))).
% 3.22/1.74  thf(fact_15_local_OgreaterThanLessThan__iff, axiom, (! [I:a,L:a,U:a]: (((((member @ a) @ I) @ ((((set_gr1161524159ssThan @ a) @ less) @ L) @ U)) = (((less @ L) @ I) & ((less @ I) @ U)))))).
% 3.22/1.74  thf(fact_16_local_Olexordp__irreflexive, axiom, (! [Xs:(list @ a)]: (((! [X:a]: ((~ (((less @ X) @ X))))) => (~ (((((lexordp @ a) @ less) @ Xs) @ Xs))))))).
% 3.22/1.74  thf(fact_17_local_OgreaterThan__iff, axiom, (! [I:a,K:a]: (((((member @ a) @ I) @ (((set_greaterThan @ a) @ less) @ K)) = ((less @ K) @ I))))).
% 3.22/1.74  thf(fact_18_local_OlessThan__iff, axiom, (! [I:a,K:a]: (((((member @ a) @ I) @ (((set_lessThan @ a) @ less) @ K)) = ((less @ I) @ K))))).
% 3.22/1.74  thf(fact_19_lzip_Oexhaust, axiom, (! [A:$tType,B:$tType,Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ B)]: (((~ ((((coinductive_lnull @ A) @ Xs) | ((coinductive_lnull @ B) @ Ys)))) => (~ (((~ (((coinductive_lnull @ A) @ Xs))) => ((coinductive_lnull @ B) @ Ys)))))))).
% 3.22/1.74  thf(fact_20_lappend_Oexhaust, axiom, (! [A:$tType,Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ A)]: (((((coinductive_lnull @ A) @ Xs) => (~ (((coinductive_lnull @ A) @ Ys)))) => ((~ (((coinductive_lnull @ A) @ Xs))) | (~ (((coinductive_lnull @ A) @ Ys)))))))).
% 3.22/1.74  thf(fact_21_ord_Olmerge_Octr_I1_J, axiom, (! [A:$tType,Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ A),Less:(A > (A > $o))]: (((((coinductive_lnull @ A) @ Xs) | ((coinductive_lnull @ A) @ Ys)) => (((((hammin1328233080lmerge @ A) @ Less) @ Xs) @ Ys) = (coinductive_LNil @ A)))))).
% 3.22/1.74  thf(fact_22_ord__class_Olmerge_Odisc_I2_J, axiom, (! [A:$tType]: ((((ord @ A) @ (type2 @ A)) => (! [Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ A)]: (((~ (((coinductive_lnull @ A) @ Xs))) => ((~ (((coinductive_lnull @ A) @ Ys))) => (~ (((coinductive_lnull @ A) @ (((hammin1138290136lmerge @ A) @ Xs) @ Ys)))))))))))).
% 3.22/1.74  thf(fact_23_local_Olexordp__into__lexordp__eq, axiom, (! [Xs:(list @ a),Ys:(list @ a)]: ((((((lexordp @ a) @ less) @ Xs) @ Ys) => ((((lexordp_eq @ a) @ less) @ Xs) @ Ys))))).
% 3.22/1.74  thf(fact_24_lnull__def, axiom, (! [A:$tType]: (((coinductive_lnull @ A) = (^ [Llist:(coinductive_llist @ A)]: ((Llist = (coinductive_LNil @ A)))))))).
% 3.22/1.74  thf(fact_25_llist_Ocollapse_I1_J, axiom, (! [A:$tType,Llist2:(coinductive_llist @ A)]: ((((coinductive_lnull @ A) @ Llist2) => (Llist2 = (coinductive_LNil @ A)))))).
% 3.22/1.74  thf(fact_26_llist_OdiscI_I1_J, axiom, (! [A:$tType,Llist2:(coinductive_llist @ A)]: (((Llist2 = (coinductive_LNil @ A)) => ((coinductive_lnull @ A) @ Llist2))))).
% 3.22/1.74  thf(fact_27_llist_Odisc_I1_J, axiom, (! [A:$tType]: (((coinductive_lnull @ A) @ (coinductive_LNil @ A))))).
% 3.22/1.74  thf(fact_28_ord__class_Olmerge_Octr_I1_J, axiom, (! [A:$tType]: ((((ord @ A) @ (type2 @ A)) => (! [Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ A)]: (((((coinductive_lnull @ A) @ Xs) | ((coinductive_lnull @ A) @ Ys)) => ((((hammin1138290136lmerge @ A) @ Xs) @ Ys) = (coinductive_LNil @ A))))))))).
% 3.22/1.74  thf(fact_29_ord__class_Olmerge_Odisc__iff_I1_J, axiom, (! [A:$tType]: ((((ord @ A) @ (type2 @ A)) => (! [Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ A)]: ((((coinductive_lnull @ A) @ (((hammin1138290136lmerge @ A) @ Xs) @ Ys)) = (((coinductive_lnull @ A) @ Xs) | ((coinductive_lnull @ A) @ Ys))))))))).
% 3.22/1.74  thf(fact_30_ord__class_Olmerge_Odisc__iff_I2_J, axiom, (! [A:$tType]: ((((ord @ A) @ (type2 @ A)) => (! [Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ A)]: (((~ (((coinductive_lnull @ A) @ (((hammin1138290136lmerge @ A) @ Xs) @ Ys)))) = ((~ (((coinductive_lnull @ A) @ Xs))) & (~ (((coinductive_lnull @ A) @ Ys))))))))))).
% 3.22/1.74  thf(fact_31_ord__class_Olmerge_Odisc_I1_J, axiom, (! [A:$tType]: ((((ord @ A) @ (type2 @ A)) => (! [Xs:(coinductive_llist @ A),Ys:(coinductive_llist @ A)]: (((((coinductive_lnull @ A) @ Xs) | ((coinductive_lnull @ A) @ Ys)) => ((coinductive_lnull @ A) @ (((hammin1138290136lmerge @ A) @ Xs) @ Ys))))))))).
% 3.22/1.74  thf(fact_32_local_OgreaterThanLessThan__eq, axiom, (! [A2:a,B2:a]: ((((((set_gr1161524159ssThan @ a) @ less) @ A2) @ B2) = (((inf_inf @ (set @ a)) @ (((set_greaterThan @ a) @ less) @ A2)) @ (((set_lessThan @ a) @ less) @ B2)))))).
% 3.22/1.74  thf(fact_33_local_OgreaterThanLessThan__def, axiom, (! [L:a,U:a]: ((((((set_gr1161524159ssThan @ a) @ less) @ L) @ U) = (((inf_inf @ (set @ a)) @ (((set_greaterThan @ a) @ less) @ L)) @ (((set_lessThan @ a) @ less) @ U)))))).
% 3.22/1.74  thf(fact_34_local_Olexordp__eq_ONil, axiom, (! [Ys:(list @ a)]: (((((lexordp_eq @ a) @ less) @ (nil @ a)) @ Ys)))).
% 3.22/1.74  thf(fact_35_local_Olexordp__eq_OCons__eq, axiom, (! [X2:a,Y:a,Xs:(list @ a),Ys:(list @ a)]: (((~ (((less @ X2) @ Y))) => ((~ (((less @ Y) @ X2))) => (((((lexordp_eq @ a) @ less) @ Xs) @ Ys) => ((((lexordp_eq @ a) @ less) @ (((cons @ a) @ X2) @ Xs)) @ (((cons @ a) @ Y) @ Ys)))))))).
% 3.22/1.74  thf(fact_36_local_Olexordp__eq_OCons, axiom, (! [X2:a,Y:a,Xs:(list @ a),Ys:(list @ a)]: ((((less @ X2) @ Y) => ((((lexordp_eq @ a) @ less) @ (((cons @ a) @ X2) @ Xs)) @ (((cons @ a) @ Y) @ Ys)))))).
% 3.22/1.74  thf(fact_37_ord_Olexordp__into__lexordp__eq, axiom, (! [A:$tType,Less:(A > (A > $o)),Xs:(list @ A),Ys:(list @ A)]: ((((((lexordp @ A) @ Less) @ Xs) @ Ys) => ((((lexordp_eq @ A) @ Less) @ Xs) @ Ys))))).
% 3.22/1.74  thf(fact_38_local_Olexordp_OCons__eq, axiom, (! [X2:a,Y:a,Xs:(list @ a),Ys:(list @ a)]: (((~ (((less @ X2) @ Y))) => ((~ (((less @ Y) @ X2))) => (((((lexordp @ a) @ less) @ Xs) @ Ys) => ((((lexordp @ a) @ less) @ (((cons @ a) @ X2) @ Xs)) @ (((cons @ a) @ Y) @ Ys)))))))).
% 3.22/1.74  thf(fact_39_local_Olexordp_OCons, axiom, (! [X2:a,Y:a,Xs:(list @ a),Ys:(list @ a)]: ((((less @ X2) @ Y) => ((((lexordp @ a) @ less) @ (((cons @ a) @ X2) @ Xs)) @ (((cons @ a) @ Y) @ Ys)))))).
% 3.22/1.74  thf(fact_40_local_Olexordp__append__leftI, axiom, (! [Us:(list @ a),Vs:(list @ a),Xs:(list @ a)]: ((((((lexordp @ a) @ less) @ Us) @ Vs) => ((((lexordp @ a) @ less) @ (((append @ a) @ Xs) @ Us)) @ (((append @ a) @ Xs) @ Vs)))))).
% 3.22/1.74  thf(fact_41_local_Olexordp__append__leftD, axiom, (! [Xs:(list @ a),Us:(list @ a),Vs:(list @ a)]: ((((((lexordp @ a) @ less) @ (((append @ a) @ Xs) @ Us)) @ (((append @ a) @ Xs) @ Vs)) => ((! [A3:a]: ((~ (((less @ A3) @ A3))))) => ((((lexordp @ a) @ less) @ Us) @ Vs)))))).
% 3.22/1.74  thf(fact_42_list_Oinject, axiom, (! [A:$tType,X21:A,X22:(list @ A),Y21:A,Y22:(list @ A)]: ((((((cons @ A) @ X21) @ X22) = (((cons @ A) @ Y21) @ Y22)) = ((X21 = Y21) & (X22 = Y22)))))).
% 3.22/1.74  thf(fact_43_mem__Collect__eq, axiom, (! [A:$tType,A2:A,P:(A > $o)]: (((((member @ A) @ A2) @ ((collect @ A) @ P)) = (P @ A2))))).
% 3.22/1.74  thf(fact_44_Collect__mem__eq, axiom, (! [A:$tType,A4:(set @ A)]: ((((collect @ A) @ (^ [X3:A]: ((((member @ A) @ X3) @ A4)))) = A4)))).
% 3.22/1.74  thf(fact_45_Collect__cong, axiom, (! [A:$tType,P:(A > $o),Q:(A > $o)]: (((! [X:A]: (((P @ X) = (Q @ X)))) => (((collect @ A) @ P) = ((collect @ A) @ Q)))))).
% 3.22/1.74  thf(fact_46_ext, axiom, (! [B:$tType,A:$tType,F:(A > B),G:(A > B)]: (((! [X:A]: (((F @ X) = (G @ X)))) => (F = G))))).
% 3.22/1.74  thf(fact_47_same__append__eq, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A),Zs:(list @ A)]: ((((((append @ A) @ Xs) @ Ys) = (((append @ A) @ Xs) @ Zs)) = (Ys = Zs))))).
% 3.22/1.74  thf(fact_48_append__same__eq, axiom, (! [A:$tType,Ys:(list @ A),Xs:(list @ A),Zs:(list @ A)]: ((((((append @ A) @ Ys) @ Xs) = (((append @ A) @ Zs) @ Xs)) = (Ys = Zs))))).
% 3.22/1.74  thf(fact_49_append__assoc, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A),Zs:(list @ A)]: (((((append @ A) @ (((append @ A) @ Xs) @ Ys)) @ Zs) = (((append @ A) @ Xs) @ (((append @ A) @ Ys) @ Zs)))))).
% 3.22/1.74  thf(fact_50_local_Olexordp_ONil, axiom, (! [Y:a,Ys:(list @ a)]: (((((lexordp @ a) @ less) @ (nil @ a)) @ (((cons @ a) @ Y) @ Ys))))).
% 3.22/1.74  thf(fact_51_local_Olexordp_Ocases, axiom, (! [A1:(list @ a),A22:(list @ a)]: ((((((lexordp @ a) @ less) @ A1) @ A22) => (((A1 = (nil @ a)) => (! [Y2:a,Ys2:(list @ a)]: ((A22 != (((cons @ a) @ Y2) @ Ys2))))) => ((! [X:a]: (((? [Xs2:(list @ a)]: ((A1 = (((cons @ a) @ X) @ Xs2)))) => (! [Y2:a]: (((? [Ys2:(list @ a)]: ((A22 = (((cons @ a) @ Y2) @ Ys2)))) => (~ (((less @ X) @ Y2))))))))) => (~ ((! [X:a,Y2:a,Xs2:(list @ a)]: (((A1 = (((cons @ a) @ X) @ Xs2)) => (! [Ys2:(list @ a)]: (((A22 = (((cons @ a) @ Y2) @ Ys2)) => ((~ (((less @ X) @ Y2))) => ((~ (((less @ Y2) @ X))) => (~ (((((lexordp @ a) @ less) @ Xs2) @ Ys2))))))))))))))))))).
% 3.22/1.74  thf(fact_52_local_Olexordp_Oinducts, axiom, (! [X1:(list @ a),X23:(list @ a),P:((list @ a) > ((list @ a) > $o))]: ((((((lexordp @ a) @ less) @ X1) @ X23) => ((! [Y2:a,Ys2:(list @ a)]: (((P @ (nil @ a)) @ (((cons @ a) @ Y2) @ Ys2)))) => ((! [X:a,Y2:a,Xs2:(list @ a),Ys2:(list @ a)]: ((((less @ X) @ Y2) => ((P @ (((cons @ a) @ X) @ Xs2)) @ (((cons @ a) @ Y2) @ Ys2))))) => ((! [X:a,Y2:a,Xs2:(list @ a),Ys2:(list @ a)]: (((~ (((less @ X) @ Y2))) => ((~ (((less @ Y2) @ X))) => (((((lexordp @ a) @ less) @ Xs2) @ Ys2) => (((P @ Xs2) @ Ys2) => ((P @ (((cons @ a) @ X) @ Xs2)) @ (((cons @ a) @ Y2) @ Ys2)))))))) => ((P @ X1) @ X23)))))))).
% 3.22/1.74  thf(fact_53_local_Olexordp_Osimps, axiom, (! [A1:(list @ a),A22:(list @ a)]: ((((((lexordp @ a) @ less) @ A1) @ A22) = ((? [Y3:a,Ys3:(list @ a)]: (((A1 = (nil @ a)) & (A22 = (((cons @ a) @ Y3) @ Ys3))))) | ((? [X3:a,Y3:a,Xs3:(list @ a),Ys3:(list @ a)]: (((A1 = (((cons @ a) @ X3) @ Xs3)) & ((A22 = (((cons @ a) @ Y3) @ Ys3)) & ((less @ X3) @ Y3))))) | (? [X3:a,Y3:a,Xs3:(list @ a),Ys3:(list @ a)]: (((A1 = (((cons @ a) @ X3) @ Xs3)) & ((A22 = (((cons @ a) @ Y3) @ Ys3)) & ((~ (((less @ X3) @ Y3))) & ((~ (((less @ Y3) @ X3))) & ((((lexordp @ a) @ less) @ Xs3) @ Ys3))))))))))))).
% 3.22/1.74  thf(fact_54_local_Olexordp__eq_Ocases, axiom, (! [A1:(list @ a),A22:(list @ a)]: ((((((lexordp_eq @ a) @ less) @ A1) @ A22) => (((A1 = (nil @ a)) => (! [Ys2:(list @ a)]: ((A22 != Ys2)))) => ((! [X:a]: (((? [Xs2:(list @ a)]: ((A1 = (((cons @ a) @ X) @ Xs2)))) => (! [Y2:a]: (((? [Ys2:(list @ a)]: ((A22 = (((cons @ a) @ Y2) @ Ys2)))) => (~ (((less @ X) @ Y2))))))))) => (~ ((! [X:a,Y2:a,Xs2:(list @ a)]: (((A1 = (((cons @ a) @ X) @ Xs2)) => (! [Ys2:(list @ a)]: (((A22 = (((cons @ a) @ Y2) @ Ys2)) => ((~ (((less @ X) @ Y2))) => ((~ (((less @ Y2) @ X))) => (~ (((((lexordp_eq @ a) @ less) @ Xs2) @ Ys2))))))))))))))))))).
% 3.22/1.74  thf(fact_55_local_Olexordp__eq_Oinducts, axiom, (! [X1:(list @ a),X23:(list @ a),P:((list @ a) > ((list @ a) > $o))]: ((((((lexordp_eq @ a) @ less) @ X1) @ X23) => ((! [X12:(list @ a)]: (((P @ (nil @ a)) @ X12))) => ((! [X:a,Y2:a,Xs2:(list @ a),Ys2:(list @ a)]: ((((less @ X) @ Y2) => ((P @ (((cons @ a) @ X) @ Xs2)) @ (((cons @ a) @ Y2) @ Ys2))))) => ((! [X:a,Y2:a,Xs2:(list @ a),Ys2:(list @ a)]: (((~ (((less @ X) @ Y2))) => ((~ (((less @ Y2) @ X))) => (((((lexordp_eq @ a) @ less) @ Xs2) @ Ys2) => (((P @ Xs2) @ Ys2) => ((P @ (((cons @ a) @ X) @ Xs2)) @ (((cons @ a) @ Y2) @ Ys2)))))))) => ((P @ X1) @ X23)))))))).
% 3.22/1.74  thf(fact_56_local_Olexordp__eq_Osimps, axiom, (! [A1:(list @ a),A22:(list @ a)]: ((((((lexordp_eq @ a) @ less) @ A1) @ A22) = ((? [Ys3:(list @ a)]: (((A1 = (nil @ a)) & (A22 = Ys3)))) | ((? [X3:a,Y3:a,Xs3:(list @ a),Ys3:(list @ a)]: (((A1 = (((cons @ a) @ X3) @ Xs3)) & ((A22 = (((cons @ a) @ Y3) @ Ys3)) & ((less @ X3) @ Y3))))) | (? [X3:a,Y3:a,Xs3:(list @ a),Ys3:(list @ a)]: (((A1 = (((cons @ a) @ X3) @ Xs3)) & ((A22 = (((cons @ a) @ Y3) @ Ys3)) & ((~ (((less @ X3) @ Y3))) & ((~ (((less @ Y3) @ X3))) & ((((lexordp_eq @ a) @ less) @ Xs3) @ Ys3))))))))))))).
% 3.22/1.74  thf(fact_57_local_Olexordp__append__left__rightI, axiom, (! [X2:a,Y:a,Us:(list @ a),Xs:(list @ a),Ys:(list @ a)]: ((((less @ X2) @ Y) => ((((lexordp @ a) @ less) @ (((append @ a) @ Us) @ (((cons @ a) @ X2) @ Xs))) @ (((append @ a) @ Us) @ (((cons @ a) @ Y) @ Ys))))))).
% 3.22/1.74  thf(fact_58_local_Olexordp__append__rightI, axiom, (! [Ys:(list @ a),Xs:(list @ a)]: (((Ys != (nil @ a)) => ((((lexordp @ a) @ less) @ Xs) @ (((append @ a) @ Xs) @ Ys)))))).
% 3.22/1.74  thf(fact_59_append__is__Nil__conv, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: ((((((append @ A) @ Xs) @ Ys) = (nil @ A)) = ((Xs = (nil @ A)) & (Ys = (nil @ A))))))).
% 3.22/1.74  thf(fact_60_Nil__is__append__conv, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: ((((nil @ A) = (((append @ A) @ Xs) @ Ys)) = ((Xs = (nil @ A)) & (Ys = (nil @ A))))))).
% 3.22/1.74  thf(fact_61_self__append__conv2, axiom, (! [A:$tType,Ys:(list @ A),Xs:(list @ A)]: (((Ys = (((append @ A) @ Xs) @ Ys)) = (Xs = (nil @ A)))))).
% 3.22/1.74  thf(fact_62_append__self__conv2, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: ((((((append @ A) @ Xs) @ Ys) = Ys) = (Xs = (nil @ A)))))).
% 3.22/1.74  thf(fact_63_self__append__conv, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: (((Xs = (((append @ A) @ Xs) @ Ys)) = (Ys = (nil @ A)))))).
% 3.22/1.74  thf(fact_64_append__self__conv, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: ((((((append @ A) @ Xs) @ Ys) = Xs) = (Ys = (nil @ A)))))).
% 3.22/1.74  thf(fact_65_append__Nil2, axiom, (! [A:$tType,Xs:(list @ A)]: (((((append @ A) @ Xs) @ (nil @ A)) = Xs)))).
% 3.22/1.74  thf(fact_66_ord_Olexordp__simps_I3_J, axiom, (! [A:$tType,Less:(A > (A > $o)),X2:A,Xs:(list @ A),Y:A,Ys:(list @ A)]: ((((((lexordp @ A) @ Less) @ (((cons @ A) @ X2) @ Xs)) @ (((cons @ A) @ Y) @ Ys)) = (((Less @ X2) @ Y) | ((~ (((Less @ Y) @ X2))) & ((((lexordp @ A) @ Less) @ Xs) @ Ys))))))).
% 3.22/1.74  thf(fact_67_ord_Olexordp__eq__simps_I4_J, axiom, (! [A:$tType,Less:(A > (A > $o)),X2:A,Xs:(list @ A),Y:A,Ys:(list @ A)]: ((((((lexordp_eq @ A) @ Less) @ (((cons @ A) @ X2) @ Xs)) @ (((cons @ A) @ Y) @ Ys)) = (((Less @ X2) @ Y) | ((~ (((Less @ Y) @ X2))) & ((((lexordp_eq @ A) @ Less) @ Xs) @ Ys))))))).
% 3.22/1.74  thf(fact_68_ord_Olexordp__simps_I1_J, axiom, (! [A:$tType,Less:(A > (A > $o)),Ys:(list @ A)]: ((((((lexordp @ A) @ Less) @ (nil @ A)) @ Ys) = (Ys != (nil @ A)))))).
% 3.22/1.74  thf(fact_69_ord_Olexordp__simps_I2_J, axiom, (! [A:$tType,Less:(A > (A > $o)),Xs:(list @ A)]: ((~ (((((lexordp @ A) @ Less) @ Xs) @ (nil @ A))))))).
% 3.22/1.74  thf(fact_70_ord_Olexordp__eq__simps_I1_J, axiom, (! [A:$tType,Less:(A > (A > $o)),Ys:(list @ A)]: (((((lexordp_eq @ A) @ Less) @ (nil @ A)) @ Ys)))).
% 3.22/1.74  thf(fact_71_ord_Olexordp__eq__simps_I2_J, axiom, (! [A:$tType,Less:(A > (A > $o)),Xs:(list @ A)]: ((((((lexordp_eq @ A) @ Less) @ Xs) @ (nil @ A)) = (Xs = (nil @ A)))))).
% 3.22/1.74  thf(fact_72_append1__eq__conv, axiom, (! [A:$tType,Xs:(list @ A),X2:A,Ys:(list @ A),Y:A]: ((((((append @ A) @ Xs) @ (((cons @ A) @ X2) @ (nil @ A))) = (((append @ A) @ Ys) @ (((cons @ A) @ Y) @ (nil @ A)))) = ((Xs = Ys) & (X2 = Y)))))).
% 3.22/1.74  thf(fact_73_ord_Olexordp__eq__simps_I3_J, axiom, (! [A:$tType,Less:(A > (A > $o)),X2:A,Xs:(list @ A)]: ((~ (((((lexordp_eq @ A) @ Less) @ (((cons @ A) @ X2) @ Xs)) @ (nil @ A))))))).
% 3.22/1.74  thf(fact_74_local_Olexordp__simps_I3_J, axiom, (! [X2:a,Xs:(list @ a),Y:a,Ys:(list @ a)]: ((((((lexordp @ a) @ less) @ (((cons @ a) @ X2) @ Xs)) @ (((cons @ a) @ Y) @ Ys)) = (((less @ X2) @ Y) | ((~ (((less @ Y) @ X2))) & ((((lexordp @ a) @ less) @ Xs) @ Ys))))))).
% 3.22/1.74  thf(fact_75_local_Olexordp__eq__simps_I4_J, axiom, (! [X2:a,Xs:(list @ a),Y:a,Ys:(list @ a)]: ((((((lexordp_eq @ a) @ less) @ (((cons @ a) @ X2) @ Xs)) @ (((cons @ a) @ Y) @ Ys)) = (((less @ X2) @ Y) | ((~ (((less @ Y) @ X2))) & ((((lexordp_eq @ a) @ less) @ Xs) @ Ys))))))).
% 3.22/1.74  thf(fact_76_local_Olexordp__simps_I2_J, axiom, (! [Xs:(list @ a)]: ((~ (((((lexordp @ a) @ less) @ Xs) @ (nil @ a))))))).
% 3.22/1.74  thf(fact_77_local_Olexordp__simps_I1_J, axiom, (! [Ys:(list @ a)]: ((((((lexordp @ a) @ less) @ (nil @ a)) @ Ys) = (Ys != (nil @ a)))))).
% 3.22/1.74  thf(fact_78_local_Olexordp__eq__simps_I2_J, axiom, (! [Xs:(list @ a)]: ((((((lexordp_eq @ a) @ less) @ Xs) @ (nil @ a)) = (Xs = (nil @ a)))))).
% 3.22/1.74  thf(fact_79_local_Olexordp__eq__simps_I1_J, axiom, (! [Ys:(list @ a)]: (((((lexordp_eq @ a) @ less) @ (nil @ a)) @ Ys)))).
% 3.22/1.74  thf(fact_80_local_Olexordp__eq__simps_I3_J, axiom, (! [X2:a,Xs:(list @ a)]: ((~ (((((lexordp_eq @ a) @ less) @ (((cons @ a) @ X2) @ Xs)) @ (nil @ a))))))).
% 3.22/1.74  thf(fact_81_ord_Olexordp_ONil, axiom, (! [A:$tType,Less:(A > (A > $o)),Y:A,Ys:(list @ A)]: (((((lexordp @ A) @ Less) @ (nil @ A)) @ (((cons @ A) @ Y) @ Ys))))).
% 3.22/1.74  thf(fact_82_ord_Olexordp_Ocases, axiom, (! [A:$tType,Less:(A > (A > $o)),A1:(list @ A),A22:(list @ A)]: ((((((lexordp @ A) @ Less) @ A1) @ A22) => (((A1 = (nil @ A)) => (! [Y2:A,Ys2:(list @ A)]: ((A22 != (((cons @ A) @ Y2) @ Ys2))))) => ((! [X:A]: (((? [Xs2:(list @ A)]: ((A1 = (((cons @ A) @ X) @ Xs2)))) => (! [Y2:A]: (((? [Ys2:(list @ A)]: ((A22 = (((cons @ A) @ Y2) @ Ys2)))) => (~ (((Less @ X) @ Y2))))))))) => (~ ((! [X:A,Y2:A,Xs2:(list @ A)]: (((A1 = (((cons @ A) @ X) @ Xs2)) => (! [Ys2:(list @ A)]: (((A22 = (((cons @ A) @ Y2) @ Ys2)) => ((~ (((Less @ X) @ Y2))) => ((~ (((Less @ Y2) @ X))) => (~ (((((lexordp @ A) @ Less) @ Xs2) @ Ys2))))))))))))))))))).
% 3.22/1.74  thf(fact_83_ord_Olexordp_Osimps, axiom, (! [A:$tType]: (((lexordp @ A) = (^ [Less2:(A > (A > $o)),A12:(list @ A),A23:(list @ A)]: (((? [Y3:A,Ys3:(list @ A)]: (((A12 = (nil @ A)) & (A23 = (((cons @ A) @ Y3) @ Ys3))))) | ((? [X3:A,Y3:A,Xs3:(list @ A),Ys3:(list @ A)]: (((A12 = (((cons @ A) @ X3) @ Xs3)) & ((A23 = (((cons @ A) @ Y3) @ Ys3)) & ((Less2 @ X3) @ Y3))))) | (? [X3:A,Y3:A,Xs3:(list @ A),Ys3:(list @ A)]: (((A12 = (((cons @ A) @ X3) @ Xs3)) & ((A23 = (((cons @ A) @ Y3) @ Ys3)) & ((~ (((Less2 @ X3) @ Y3))) & ((~ (((Less2 @ Y3) @ X3))) & ((((lexordp @ A) @ Less2) @ Xs3) @ Ys3))))))))))))))).
% 3.22/1.74  thf(fact_84_ord_Olexordp_Oinducts, axiom, (! [A:$tType,Less:(A > (A > $o)),X1:(list @ A),X23:(list @ A),P:((list @ A) > ((list @ A) > $o))]: ((((((lexordp @ A) @ Less) @ X1) @ X23) => ((! [Y2:A,Ys2:(list @ A)]: (((P @ (nil @ A)) @ (((cons @ A) @ Y2) @ Ys2)))) => ((! [X:A,Y2:A,Xs2:(list @ A),Ys2:(list @ A)]: ((((Less @ X) @ Y2) => ((P @ (((cons @ A) @ X) @ Xs2)) @ (((cons @ A) @ Y2) @ Ys2))))) => ((! [X:A,Y2:A,Xs2:(list @ A),Ys2:(list @ A)]: (((~ (((Less @ X) @ Y2))) => ((~ (((Less @ Y2) @ X))) => (((((lexordp @ A) @ Less) @ Xs2) @ Ys2) => (((P @ Xs2) @ Ys2) => ((P @ (((cons @ A) @ X) @ Xs2)) @ (((cons @ A) @ Y2) @ Ys2)))))))) => ((P @ X1) @ X23)))))))).
% 3.22/1.74  thf(fact_85_ord_Olexordp__eq_Ocases, axiom, (! [A:$tType,Less:(A > (A > $o)),A1:(list @ A),A22:(list @ A)]: ((((((lexordp_eq @ A) @ Less) @ A1) @ A22) => (((A1 = (nil @ A)) => (! [Ys2:(list @ A)]: ((A22 != Ys2)))) => ((! [X:A]: (((? [Xs2:(list @ A)]: ((A1 = (((cons @ A) @ X) @ Xs2)))) => (! [Y2:A]: (((? [Ys2:(list @ A)]: ((A22 = (((cons @ A) @ Y2) @ Ys2)))) => (~ (((Less @ X) @ Y2))))))))) => (~ ((! [X:A,Y2:A,Xs2:(list @ A)]: (((A1 = (((cons @ A) @ X) @ Xs2)) => (! [Ys2:(list @ A)]: (((A22 = (((cons @ A) @ Y2) @ Ys2)) => ((~ (((Less @ X) @ Y2))) => ((~ (((Less @ Y2) @ X))) => (~ (((((lexordp_eq @ A) @ Less) @ Xs2) @ Ys2))))))))))))))))))).
% 3.22/1.74  thf(fact_86_ord_Olexordp__eq_Osimps, axiom, (! [A:$tType]: (((lexordp_eq @ A) = (^ [Less2:(A > (A > $o)),A12:(list @ A),A23:(list @ A)]: (((? [Ys3:(list @ A)]: (((A12 = (nil @ A)) & (A23 = Ys3)))) | ((? [X3:A,Y3:A,Xs3:(list @ A),Ys3:(list @ A)]: (((A12 = (((cons @ A) @ X3) @ Xs3)) & ((A23 = (((cons @ A) @ Y3) @ Ys3)) & ((Less2 @ X3) @ Y3))))) | (? [X3:A,Y3:A,Xs3:(list @ A),Ys3:(list @ A)]: (((A12 = (((cons @ A) @ X3) @ Xs3)) & ((A23 = (((cons @ A) @ Y3) @ Ys3)) & ((~ (((Less2 @ X3) @ Y3))) & ((~ (((Less2 @ Y3) @ X3))) & ((((lexordp_eq @ A) @ Less2) @ Xs3) @ Ys3))))))))))))))).
% 3.22/1.74  thf(fact_87_ord_Olexordp__eq_Oinducts, axiom, (! [A:$tType,Less:(A > (A > $o)),X1:(list @ A),X23:(list @ A),P:((list @ A) > ((list @ A) > $o))]: ((((((lexordp_eq @ A) @ Less) @ X1) @ X23) => ((! [X12:(list @ A)]: (((P @ (nil @ A)) @ X12))) => ((! [X:A,Y2:A,Xs2:(list @ A),Ys2:(list @ A)]: ((((Less @ X) @ Y2) => ((P @ (((cons @ A) @ X) @ Xs2)) @ (((cons @ A) @ Y2) @ Ys2))))) => ((! [X:A,Y2:A,Xs2:(list @ A),Ys2:(list @ A)]: (((~ (((Less @ X) @ Y2))) => ((~ (((Less @ Y2) @ X))) => (((((lexordp_eq @ A) @ Less) @ Xs2) @ Ys2) => (((P @ Xs2) @ Ys2) => ((P @ (((cons @ A) @ X) @ Xs2)) @ (((cons @ A) @ Y2) @ Ys2)))))))) => ((P @ X1) @ X23)))))))).
% 3.22/1.74  thf(fact_88_ord_Olexordp__append__rightI, axiom, (! [A:$tType,Ys:(list @ A),Less:(A > (A > $o)),Xs:(list @ A)]: (((Ys != (nil @ A)) => ((((lexordp @ A) @ Less) @ Xs) @ (((append @ A) @ Xs) @ Ys)))))).
% 3.22/1.74  thf(fact_89_ord_Olexordp__append__left__rightI, axiom, (! [A:$tType,Less:(A > (A > $o)),X2:A,Y:A,Us:(list @ A),Xs:(list @ A),Ys:(list @ A)]: ((((Less @ X2) @ Y) => ((((lexordp @ A) @ Less) @ (((append @ A) @ Us) @ (((cons @ A) @ X2) @ Xs))) @ (((append @ A) @ Us) @ (((cons @ A) @ Y) @ Ys))))))).
% 3.22/1.74  thf(fact_90_map__tailrec__rev_Oinduct, axiom, (! [A:$tType,B:$tType,P:((A > B) > ((list @ A) > ((list @ B) > $o))),A0:(A > B),A1:(list @ A),A22:(list @ B)]: (((! [F2:(A > B),X12:(list @ B)]: ((((P @ F2) @ (nil @ A)) @ X12))) => ((! [F2:(A > B),A3:A,As:(list @ A),Bs:(list @ B)]: (((((P @ F2) @ As) @ (((cons @ B) @ (F2 @ A3)) @ Bs)) => (((P @ F2) @ (((cons @ A) @ A3) @ As)) @ Bs)))) => (((P @ A0) @ A1) @ A22)))))).
% 3.22/1.74  thf(fact_91_append__eq__append__conv2, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A),Zs:(list @ A),Ts:(list @ A)]: ((((((append @ A) @ Xs) @ Ys) = (((append @ A) @ Zs) @ Ts)) = (? [Us2:(list @ A)]: ((((Xs = (((append @ A) @ Zs) @ Us2)) & ((((append @ A) @ Us2) @ Ys) = Ts)) | (((((append @ A) @ Xs) @ Us2) = Zs) & (Ys = (((append @ A) @ Us2) @ Ts)))))))))).
% 3.22/1.74  thf(fact_92_list__nonempty__induct, axiom, (! [A:$tType,Xs:(list @ A),P:((list @ A) > $o)]: (((Xs != (nil @ A)) => ((! [X:A]: ((P @ (((cons @ A) @ X) @ (nil @ A))))) => ((! [X:A,Xs2:(list @ A)]: (((Xs2 != (nil @ A)) => ((P @ Xs2) => (P @ (((cons @ A) @ X) @ Xs2)))))) => (P @ Xs))))))).
% 3.22/1.74  thf(fact_93_rev__nonempty__induct, axiom, (! [A:$tType,Xs:(list @ A),P:((list @ A) > $o)]: (((Xs != (nil @ A)) => ((! [X:A]: ((P @ (((cons @ A) @ X) @ (nil @ A))))) => ((! [X:A,Xs2:(list @ A)]: (((Xs2 != (nil @ A)) => ((P @ Xs2) => (P @ (((append @ A) @ Xs2) @ (((cons @ A) @ X) @ (nil @ A)))))))) => (P @ Xs))))))).
% 3.22/1.74  thf(fact_94_append__eq__Cons__conv, axiom, (! [A:$tType,Ys:(list @ A),Zs:(list @ A),X2:A,Xs:(list @ A)]: ((((((append @ A) @ Ys) @ Zs) = (((cons @ A) @ X2) @ Xs)) = (((Ys = (nil @ A)) & (Zs = (((cons @ A) @ X2) @ Xs))) | (? [Ys4:(list @ A)]: (((Ys = (((cons @ A) @ X2) @ Ys4)) & ((((append @ A) @ Ys4) @ Zs) = Xs))))))))).
% 3.22/1.74  thf(fact_95_Cons__eq__append__conv, axiom, (! [A:$tType,X2:A,Xs:(list @ A),Ys:(list @ A),Zs:(list @ A)]: ((((((cons @ A) @ X2) @ Xs) = (((append @ A) @ Ys) @ Zs)) = (((Ys = (nil @ A)) & ((((cons @ A) @ X2) @ Xs) = Zs)) | (? [Ys4:(list @ A)]: ((((((cons @ A) @ X2) @ Ys4) = Ys) & (Xs = (((append @ A) @ Ys4) @ Zs)))))))))).
% 3.22/1.74  thf(fact_96_remdups__adj_Oinduct, axiom, (! [A:$tType,P:((list @ A) > $o),A0:(list @ A)]: (((P @ (nil @ A)) => ((! [X:A]: ((P @ (((cons @ A) @ X) @ (nil @ A))))) => ((! [X:A,Y2:A,Xs2:(list @ A)]: ((((X = Y2) => (P @ (((cons @ A) @ X) @ Xs2))) => (((X != Y2) => (P @ (((cons @ A) @ Y2) @ Xs2))) => (P @ (((cons @ A) @ X) @ (((cons @ A) @ Y2) @ Xs2))))))) => (P @ A0))))))).
% 3.22/1.74  thf(fact_97_append__Cons, axiom, (! [A:$tType,X2:A,Xs:(list @ A),Ys:(list @ A)]: (((((append @ A) @ (((cons @ A) @ X2) @ Xs)) @ Ys) = (((cons @ A) @ X2) @ (((append @ A) @ Xs) @ Ys)))))).
% 3.22/1.74  thf(fact_98_remdups__adj_Ocases, axiom, (! [A:$tType,X2:(list @ A)]: (((X2 != (nil @ A)) => ((! [X:A]: ((X2 != (((cons @ A) @ X) @ (nil @ A))))) => (~ ((! [X:A,Y2:A,Xs2:(list @ A)]: ((X2 != (((cons @ A) @ X) @ (((cons @ A) @ Y2) @ Xs2)))))))))))).
% 3.22/1.74  thf(fact_99_append__eq__appendI, axiom, (! [A:$tType,Xs:(list @ A),Xs1:(list @ A),Zs:(list @ A),Ys:(list @ A),Us:(list @ A)]: ((((((append @ A) @ Xs) @ Xs1) = Zs) => ((Ys = (((append @ A) @ Xs1) @ Us)) => ((((append @ A) @ Xs) @ Ys) = (((append @ A) @ Zs) @ Us))))))).
% 3.22/1.74  thf(fact_100_append__Nil, axiom, (! [A:$tType,Ys:(list @ A)]: (((((append @ A) @ (nil @ A)) @ Ys) = Ys)))).
% 3.22/1.74  thf(fact_101_transpose_Ocases, axiom, (! [A:$tType,X2:(list @ (list @ A))]: (((X2 != (nil @ (list @ A))) => ((! [Xss:(list @ (list @ A))]: ((X2 != (((cons @ (list @ A)) @ (nil @ A)) @ Xss)))) => (~ ((! [X:A,Xs2:(list @ A),Xss:(list @ (list @ A))]: ((X2 != (((cons @ (list @ A)) @ (((cons @ A) @ X) @ Xs2)) @ Xss))))))))))).
% 3.22/1.74  thf(fact_102_Cons__eq__appendI, axiom, (! [A:$tType,X2:A,Xs1:(list @ A),Ys:(list @ A),Xs:(list @ A),Zs:(list @ A)]: ((((((cons @ A) @ X2) @ Xs1) = Ys) => ((Xs = (((append @ A) @ Xs1) @ Zs)) => ((((cons @ A) @ X2) @ Xs) = (((append @ A) @ Ys) @ Zs))))))).
% 3.22/1.74  thf(fact_103_not__Cons__self2, axiom, (! [A:$tType,X2:A,Xs:(list @ A)]: (((((cons @ A) @ X2) @ Xs) != Xs)))).
% 3.22/1.74  thf(fact_104_eq__Nil__appendI, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: (((Xs = Ys) => (Xs = (((append @ A) @ (nil @ A)) @ Ys)))))).
% 3.22/1.74  thf(fact_105_splice_Oinduct, axiom, (! [A:$tType,P:((list @ A) > ((list @ A) > $o)),A0:(list @ A),A1:(list @ A)]: (((! [X12:(list @ A)]: (((P @ (nil @ A)) @ X12))) => ((! [V:A,Va:(list @ A)]: (((P @ (((cons @ A) @ V) @ Va)) @ (nil @ A)))) => ((! [X:A,Xs2:(list @ A),Y2:A,Ys2:(list @ A)]: ((((P @ Xs2) @ Ys2) => ((P @ (((cons @ A) @ X) @ Xs2)) @ (((cons @ A) @ Y2) @ Ys2))))) => ((P @ A0) @ A1))))))).
% 3.22/1.74  thf(fact_106_list__induct2_H, axiom, (! [A:$tType,B:$tType,P:((list @ A) > ((list @ B) > $o)),Xs:(list @ A),Ys:(list @ B)]: ((((P @ (nil @ A)) @ (nil @ B)) => ((! [X:A,Xs2:(list @ A)]: (((P @ (((cons @ A) @ X) @ Xs2)) @ (nil @ B)))) => ((! [Y2:B,Ys2:(list @ B)]: (((P @ (nil @ A)) @ (((cons @ B) @ Y2) @ Ys2)))) => ((! [X:A,Xs2:(list @ A),Y2:B,Ys2:(list @ B)]: ((((P @ Xs2) @ Ys2) => ((P @ (((cons @ A) @ X) @ Xs2)) @ (((cons @ B) @ Y2) @ Ys2))))) => ((P @ Xs) @ Ys)))))))).
% 3.22/1.74  thf(fact_107_neq__Nil__conv, axiom, (! [A:$tType,Xs:(list @ A)]: (((Xs != (nil @ A)) = (? [Y3:A,Ys3:(list @ A)]: ((Xs = (((cons @ A) @ Y3) @ Ys3)))))))).
% 3.22/1.74  thf(fact_108_list_Oinducts, axiom, (! [A:$tType,P:((list @ A) > $o),List:(list @ A)]: (((P @ (nil @ A)) => ((! [X12:A,X24:(list @ A)]: (((P @ X24) => (P @ (((cons @ A) @ X12) @ X24))))) => (P @ List)))))).
% 3.22/1.74  thf(fact_109_list_Oexhaust, axiom, (! [A:$tType,Y:(list @ A)]: (((Y != (nil @ A)) => (~ ((! [X212:A,X222:(list @ A)]: ((Y != (((cons @ A) @ X212) @ X222)))))))))).
% 3.22/1.74  thf(fact_110_rev__exhaust, axiom, (! [A:$tType,Xs:(list @ A)]: (((Xs != (nil @ A)) => (~ ((! [Ys2:(list @ A),Y2:A]: ((Xs != (((append @ A) @ Ys2) @ (((cons @ A) @ Y2) @ (nil @ A)))))))))))).
% 3.22/1.74  thf(fact_111_rev__induct, axiom, (! [A:$tType,P:((list @ A) > $o),Xs:(list @ A)]: (((P @ (nil @ A)) => ((! [X:A,Xs2:(list @ A)]: (((P @ Xs2) => (P @ (((append @ A) @ Xs2) @ (((cons @ A) @ X) @ (nil @ A))))))) => (P @ Xs)))))).
% 3.22/1.74  thf(fact_112_list_OdiscI, axiom, (! [A:$tType,List:(list @ A),X21:A,X22:(list @ A)]: (((List = (((cons @ A) @ X21) @ X22)) => (List != (nil @ A)))))).
% 3.22/1.74  thf(fact_113_list_Odistinct_I1_J, axiom, (! [A:$tType,X21:A,X22:(list @ A)]: (((nil @ A) != (((cons @ A) @ X21) @ X22))))).
% 3.22/1.74  thf(fact_114_ord_Olexordp__append__leftI, axiom, (! [A:$tType,Less:(A > (A > $o)),Us:(list @ A),Vs:(list @ A),Xs:(list @ A)]: ((((((lexordp @ A) @ Less) @ Us) @ Vs) => ((((lexordp @ A) @ Less) @ (((append @ A) @ Xs) @ Us)) @ (((append @ A) @ Xs) @ Vs)))))).
% 3.22/1.74  thf(fact_115_ord_Olexordp__append__leftD, axiom, (! [A:$tType,Less:(A > (A > $o)),Xs:(list @ A),Us:(list @ A),Vs:(list @ A)]: ((((((lexordp @ A) @ Less) @ (((append @ A) @ Xs) @ Us)) @ (((append @ A) @ Xs) @ Vs)) => ((! [A3:A]: ((~ (((Less @ A3) @ A3))))) => ((((lexordp @ A) @ Less) @ Us) @ Vs)))))).
% 3.22/1.74  thf(fact_116_ord_Olexordp_OCons__eq, axiom, (! [A:$tType,Less:(A > (A > $o)),X2:A,Y:A,Xs:(list @ A),Ys:(list @ A)]: (((~ (((Less @ X2) @ Y))) => ((~ (((Less @ Y) @ X2))) => (((((lexordp @ A) @ Less) @ Xs) @ Ys) => ((((lexordp @ A) @ Less) @ (((cons @ A) @ X2) @ Xs)) @ (((cons @ A) @ Y) @ Ys)))))))).
% 3.22/1.74  thf(fact_117_ord_Olexordp_OCons, axiom, (! [A:$tType,Less:(A > (A > $o)),X2:A,Y:A,Xs:(list @ A),Ys:(list @ A)]: ((((Less @ X2) @ Y) => ((((lexordp @ A) @ Less) @ (((cons @ A) @ X2) @ Xs)) @ (((cons @ A) @ Y) @ Ys)))))).
% 3.22/1.74  thf(fact_118_ord_Olexordp__eq_OCons__eq, axiom, (! [A:$tType,Less:(A > (A > $o)),X2:A,Y:A,Xs:(list @ A),Ys:(list @ A)]: (((~ (((Less @ X2) @ Y))) => ((~ (((Less @ Y) @ X2))) => (((((lexordp_eq @ A) @ Less) @ Xs) @ Ys) => ((((lexordp_eq @ A) @ Less) @ (((cons @ A) @ X2) @ Xs)) @ (((cons @ A) @ Y) @ Ys)))))))).
% 3.22/1.74  thf(fact_119_ord_Olexordp__eq_OCons, axiom, (! [A:$tType,Less:(A > (A > $o)),X2:A,Y:A,Xs:(list @ A),Ys:(list @ A)]: ((((Less @ X2) @ Y) => ((((lexordp_eq @ A) @ Less) @ (((cons @ A) @ X2) @ Xs)) @ (((cons @ A) @ Y) @ Ys)))))).
% 3.22/1.74  thf(fact_120_ord_Olexordp__eq_ONil, axiom, (! [A:$tType,Less:(A > (A > $o)),Ys:(list @ A)]: (((((lexordp_eq @ A) @ Less) @ (nil @ A)) @ Ys)))).
% 3.22/1.74  thf(fact_121_ord_Olexordp__irreflexive, axiom, (! [A:$tType,Less:(A > (A > $o)),Xs:(list @ A)]: (((! [X:A]: ((~ (((Less @ X) @ X))))) => (~ (((((lexordp @ A) @ Less) @ Xs) @ Xs))))))).
% 3.22/1.74  thf(fact_122_ord_Olexordp__eq__refl, axiom, (! [A:$tType,Less:(A > (A > $o)),Xs:(list @ A)]: (((((lexordp_eq @ A) @ Less) @ Xs) @ Xs)))).
% 3.22/1.74  thf(fact_123_ord_OgreaterThanLessThan__def, axiom, (! [A:$tType]: (((set_gr1161524159ssThan @ A) = (^ [Less2:(A > (A > $o)),L2:A,U2:A]: ((((inf_inf @ (set @ A)) @ (((set_greaterThan @ A) @ Less2) @ L2)) @ (((set_lessThan @ A) @ Less2) @ U2)))))))).
% 3.22/1.74  thf(fact_124_ord_OgreaterThanLessThan__eq, axiom, (! [A:$tType]: (((set_gr1161524159ssThan @ A) = (^ [Less2:(A > (A > $o)),A5:A,B3:A]: ((((inf_inf @ (set @ A)) @ (((set_greaterThan @ A) @ Less2) @ A5)) @ (((set_lessThan @ A) @ Less2) @ B3)))))))).
% 3.22/1.74  thf(fact_125_Int__iff, axiom, (! [A:$tType,C:A,A4:(set @ A),B4:(set @ A)]: (((((member @ A) @ C) @ (((inf_inf @ (set @ A)) @ A4) @ B4)) = ((((member @ A) @ C) @ A4) & (((member @ A) @ C) @ B4)))))).
% 3.22/1.74  thf(fact_126_IntI, axiom, (! [A:$tType,C:A,A4:(set @ A),B4:(set @ A)]: (((((member @ A) @ C) @ A4) => ((((member @ A) @ C) @ B4) => (((member @ A) @ C) @ (((inf_inf @ (set @ A)) @ A4) @ B4))))))).
% 3.22/1.74  thf(fact_127_inf__right__idem, axiom, (! [A:$tType]: ((((semilattice_inf @ A) @ (type2 @ A)) => (! [X2:A,Y:A]: (((((inf_inf @ A) @ (((inf_inf @ A) @ X2) @ Y)) @ Y) = (((inf_inf @ A) @ X2) @ Y)))))))).
% 3.22/1.74  thf(fact_128_inf_Oright__idem, axiom, (! [A:$tType]: ((((semilattice_inf @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: (((((inf_inf @ A) @ (((inf_inf @ A) @ A2) @ B2)) @ B2) = (((inf_inf @ A) @ A2) @ B2)))))))).
% 3.22/1.74  thf(fact_129_inf__left__idem, axiom, (! [A:$tType]: ((((semilattice_inf @ A) @ (type2 @ A)) => (! [X2:A,Y:A]: (((((inf_inf @ A) @ X2) @ (((inf_inf @ A) @ X2) @ Y)) = (((inf_inf @ A) @ X2) @ Y)))))))).
% 3.22/1.74  thf(fact_130_inf_Oleft__idem, axiom, (! [A:$tType]: ((((semilattice_inf @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: (((((inf_inf @ A) @ A2) @ (((inf_inf @ A) @ A2) @ B2)) = (((inf_inf @ A) @ A2) @ B2)))))))).
% 3.22/1.74  thf(fact_131_inf__apply, axiom, (! [B:$tType,A:$tType]: ((((semilattice_inf @ B) @ (type2 @ B)) => ((inf_inf @ (A > B)) = (^ [F3:(A > B),G2:(A > B),X3:A]: ((((inf_inf @ B) @ (F3 @ X3)) @ (G2 @ X3))))))))).
% 3.22/1.74  thf(fact_132_inf_Oidem, axiom, (! [A:$tType]: ((((semilattice_inf @ A) @ (type2 @ A)) => (! [A2:A]: (((((inf_inf @ A) @ A2) @ A2) = A2))))))).
% 3.22/1.74  thf(fact_133_inf__idem, axiom, (! [A:$tType]: ((((semilattice_inf @ A) @ (type2 @ A)) => (! [X2:A]: (((((inf_inf @ A) @ X2) @ X2) = X2))))))).
% 3.22/1.74  thf(fact_134_inf__sup__aci_I4_J, axiom, (! [A:$tType]: ((((lattice @ A) @ (type2 @ A)) => (! [X2:A,Y:A]: (((((inf_inf @ A) @ X2) @ (((inf_inf @ A) @ X2) @ Y)) = (((inf_inf @ A) @ X2) @ Y)))))))).
% 3.22/1.74  thf(fact_135_inf__sup__aci_I3_J, axiom, (! [A:$tType]: ((((lattice @ A) @ (type2 @ A)) => (! [X2:A,Y:A,Z:A]: (((((inf_inf @ A) @ X2) @ (((inf_inf @ A) @ Y) @ Z)) = (((inf_inf @ A) @ Y) @ (((inf_inf @ A) @ X2) @ Z))))))))).
% 3.22/1.74  thf(fact_136_inf__sup__aci_I2_J, axiom, (! [A:$tType]: ((((lattice @ A) @ (type2 @ A)) => (! [X2:A,Y:A,Z:A]: (((((inf_inf @ A) @ (((inf_inf @ A) @ X2) @ Y)) @ Z) = (((inf_inf @ A) @ X2) @ (((inf_inf @ A) @ Y) @ Z))))))))).
% 3.22/1.74  thf(fact_137_inf__sup__aci_I1_J, axiom, (! [A:$tType]: ((((lattice @ A) @ (type2 @ A)) => ((inf_inf @ A) = (^ [X3:A,Y3:A]: ((((inf_inf @ A) @ Y3) @ X3)))))))).
% 3.22/1.74  thf(fact_138_inf__fun__def, axiom, (! [B:$tType,A:$tType]: ((((semilattice_inf @ B) @ (type2 @ B)) => ((inf_inf @ (A > B)) = (^ [F3:(A > B),G2:(A > B),X3:A]: ((((inf_inf @ B) @ (F3 @ X3)) @ (G2 @ X3))))))))).
% 3.22/1.74  thf(fact_139_inf_Oassoc, axiom, (! [A:$tType]: ((((semilattice_inf @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A]: (((((inf_inf @ A) @ (((inf_inf @ A) @ A2) @ B2)) @ C) = (((inf_inf @ A) @ A2) @ (((inf_inf @ A) @ B2) @ C))))))))).
% 3.22/1.74  thf(fact_140_inf__assoc, axiom, (! [A:$tType]: ((((semilattice_inf @ A) @ (type2 @ A)) => (! [X2:A,Y:A,Z:A]: (((((inf_inf @ A) @ (((inf_inf @ A) @ X2) @ Y)) @ Z) = (((inf_inf @ A) @ X2) @ (((inf_inf @ A) @ Y) @ Z))))))))).
% 3.22/1.74  thf(fact_141_inf_Ocommute, axiom, (! [A:$tType]: ((((semilattice_inf @ A) @ (type2 @ A)) => ((inf_inf @ A) = (^ [A5:A,B3:A]: ((((inf_inf @ A) @ B3) @ A5)))))))).
% 3.22/1.74  thf(fact_142_inf__commute, axiom, (! [A:$tType]: ((((semilattice_inf @ A) @ (type2 @ A)) => ((inf_inf @ A) = (^ [X3:A,Y3:A]: ((((inf_inf @ A) @ Y3) @ X3)))))))).
% 3.22/1.74  thf(fact_143_inf_Oleft__commute, axiom, (! [A:$tType]: ((((semilattice_inf @ A) @ (type2 @ A)) => (! [B2:A,A2:A,C:A]: (((((inf_inf @ A) @ B2) @ (((inf_inf @ A) @ A2) @ C)) = (((inf_inf @ A) @ A2) @ (((inf_inf @ A) @ B2) @ C))))))))).
% 3.22/1.74  thf(fact_144_inf__left__commute, axiom, (! [A:$tType]: ((((semilattice_inf @ A) @ (type2 @ A)) => (! [X2:A,Y:A,Z:A]: (((((inf_inf @ A) @ X2) @ (((inf_inf @ A) @ Y) @ Z)) = (((inf_inf @ A) @ Y) @ (((inf_inf @ A) @ X2) @ Z))))))))).
% 3.22/1.74  thf(fact_145_IntE, axiom, (! [A:$tType,C:A,A4:(set @ A),B4:(set @ A)]: (((((member @ A) @ C) @ (((inf_inf @ (set @ A)) @ A4) @ B4)) => (~ (((((member @ A) @ C) @ A4) => (~ ((((member @ A) @ C) @ B4)))))))))).
% 3.22/1.74  thf(fact_146_IntD1, axiom, (! [A:$tType,C:A,A4:(set @ A),B4:(set @ A)]: (((((member @ A) @ C) @ (((inf_inf @ (set @ A)) @ A4) @ B4)) => (((member @ A) @ C) @ A4))))).
% 3.22/1.74  thf(fact_147_IntD2, axiom, (! [A:$tType,C:A,A4:(set @ A),B4:(set @ A)]: (((((member @ A) @ C) @ (((inf_inf @ (set @ A)) @ A4) @ B4)) => (((member @ A) @ C) @ B4))))).
% 3.22/1.74  thf(fact_148_Int__assoc, axiom, (! [A:$tType,A4:(set @ A),B4:(set @ A),C2:(set @ A)]: (((((inf_inf @ (set @ A)) @ (((inf_inf @ (set @ A)) @ A4) @ B4)) @ C2) = (((inf_inf @ (set @ A)) @ A4) @ (((inf_inf @ (set @ A)) @ B4) @ C2)))))).
% 3.22/1.74  thf(fact_149_Int__absorb, axiom, (! [A:$tType,A4:(set @ A)]: (((((inf_inf @ (set @ A)) @ A4) @ A4) = A4)))).
% 3.22/1.74  thf(fact_150_Int__commute, axiom, (! [A:$tType]: (((inf_inf @ (set @ A)) = (^ [A6:(set @ A),B5:(set @ A)]: ((((inf_inf @ (set @ A)) @ B5) @ A6))))))).
% 3.22/1.74  thf(fact_151_Int__left__absorb, axiom, (! [A:$tType,A4:(set @ A),B4:(set @ A)]: (((((inf_inf @ (set @ A)) @ A4) @ (((inf_inf @ (set @ A)) @ A4) @ B4)) = (((inf_inf @ (set @ A)) @ A4) @ B4))))).
% 3.22/1.74  thf(fact_152_Int__left__commute, axiom, (! [A:$tType,A4:(set @ A),B4:(set @ A),C2:(set @ A)]: (((((inf_inf @ (set @ A)) @ A4) @ (((inf_inf @ (set @ A)) @ B4) @ C2)) = (((inf_inf @ (set @ A)) @ B4) @ (((inf_inf @ (set @ A)) @ A4) @ C2)))))).
% 3.22/1.74  thf(fact_153_ord_OlessThan__iff, axiom, (! [A:$tType,I:A,Less:(A > (A > $o)),K:A]: (((((member @ A) @ I) @ (((set_lessThan @ A) @ Less) @ K)) = ((Less @ I) @ K))))).
% 3.22/1.74  thf(fact_154_ord_OgreaterThan__iff, axiom, (! [A:$tType,I:A,Less:(A > (A > $o)),K:A]: (((((member @ A) @ I) @ (((set_greaterThan @ A) @ Less) @ K)) = ((Less @ K) @ I))))).
% 3.22/1.74  thf(fact_155_ord_OgreaterThanLessThan__iff, axiom, (! [A:$tType,I:A,Less:(A > (A > $o)),L:A,U:A]: (((((member @ A) @ I) @ ((((set_gr1161524159ssThan @ A) @ Less) @ L) @ U)) = (((Less @ L) @ I) & ((Less @ I) @ U)))))).
% 3.22/1.74  thf(fact_156_sublists_Osimps_I1_J, axiom, (! [A:$tType]: ((((sublists @ A) @ (nil @ A)) = (((cons @ (list @ A)) @ (nil @ A)) @ (nil @ (list @ A))))))).
% 3.22/1.74  thf(fact_157_prefixes_Ocases, axiom, (! [A:$tType,X2:(list @ A)]: (((X2 != (nil @ A)) => (~ ((! [X:A,Xs2:(list @ A)]: ((X2 != (((cons @ A) @ X) @ Xs2)))))))))).
% 3.22/1.74  thf(fact_158_prefixes_Oinduct, axiom, (! [A:$tType,P:((list @ A) > $o),A0:(list @ A)]: (((P @ (nil @ A)) => ((! [X:A,Xs2:(list @ A)]: (((P @ Xs2) => (P @ (((cons @ A) @ X) @ Xs2))))) => (P @ A0)))))).
% 3.22/1.74  thf(fact_159_longest__common__prefix_Oinduct, axiom, (! [A:$tType,P:((list @ A) > ((list @ A) > $o)),A0:(list @ A),A1:(list @ A)]: (((! [X:A,Xs2:(list @ A),Y2:A,Ys2:(list @ A)]: ((((X = Y2) => ((P @ Xs2) @ Ys2)) => ((P @ (((cons @ A) @ X) @ Xs2)) @ (((cons @ A) @ Y2) @ Ys2))))) => ((! [X12:(list @ A)]: (((P @ (nil @ A)) @ X12))) => ((! [Uu:(list @ A)]: (((P @ Uu) @ (nil @ A)))) => ((P @ A0) @ A1))))))).
% 3.22/1.74  thf(fact_160_prefixes__snoc, axiom, (! [A:$tType,Xs:(list @ A),X2:A]: ((((prefixes @ A) @ (((append @ A) @ Xs) @ (((cons @ A) @ X2) @ (nil @ A)))) = (((append @ (list @ A)) @ ((prefixes @ A) @ Xs)) @ (((cons @ (list @ A)) @ (((append @ A) @ Xs) @ (((cons @ A) @ X2) @ (nil @ A)))) @ (nil @ (list @ A)))))))).
% 3.22/1.74  thf(fact_161_prefixes__eq__Snoc, axiom, (! [A:$tType,Ys:(list @ A),Xs:(list @ (list @ A)),X2:(list @ A)]: (((((prefixes @ A) @ Ys) = (((append @ (list @ A)) @ Xs) @ (((cons @ (list @ A)) @ X2) @ (nil @ (list @ A))))) = ((((Ys = (nil @ A)) & (Xs = (nil @ (list @ A)))) | (? [Z2:A,Zs2:(list @ A)]: (((Ys = (((append @ A) @ Zs2) @ (((cons @ A) @ Z2) @ (nil @ A)))) & (Xs = ((prefixes @ A) @ Zs2)))))) & (X2 = Ys)))))).
% 3.22/1.74  thf(fact_162_bind__simps_I2_J, axiom, (! [A:$tType,B:$tType,X2:B,Xs:(list @ B),F:(B > (list @ A))]: ((((((bind @ B) @ A) @ (((cons @ B) @ X2) @ Xs)) @ F) = (((append @ A) @ (F @ X2)) @ ((((bind @ B) @ A) @ Xs) @ F)))))).
% 3.22/1.74  thf(fact_163_bind__simps_I1_J, axiom, (! [B:$tType,A:$tType,F:(B > (list @ A))]: ((((((bind @ B) @ A) @ (nil @ B)) @ F) = (nil @ A))))).
% 3.22/1.74  thf(fact_164_prefixes_Osimps_I1_J, axiom, (! [A:$tType]: ((((prefixes @ A) @ (nil @ A)) = (((cons @ (list @ A)) @ (nil @ A)) @ (nil @ (list @ A))))))).
% 3.22/1.74  thf(fact_165_product__lists_Osimps_I1_J, axiom, (! [A:$tType]: ((((product_lists @ A) @ (nil @ (list @ A))) = (((cons @ (list @ A)) @ (nil @ A)) @ (nil @ (list @ A))))))).
% 3.22/1.74  thf(fact_166_prefixes_Oelims, axiom, (! [A:$tType,X2:(list @ A),Y:(list @ (list @ A))]: (((((prefixes @ A) @ X2) = Y) => (((X2 = (nil @ A)) => (Y != (((cons @ (list @ A)) @ (nil @ A)) @ (nil @ (list @ A))))) => (~ ((! [X:A,Xs2:(list @ A)]: (((X2 = (((cons @ A) @ X) @ Xs2)) => (Y != (((cons @ (list @ A)) @ (nil @ A)) @ ((((map @ (list @ A)) @ (list @ A)) @ ((cons @ A) @ X)) @ ((prefixes @ A) @ Xs2)))))))))))))).
% 3.22/1.74  thf(fact_167_maps__simps_I1_J, axiom, (! [A:$tType,B:$tType,F:(B > (list @ A)),X2:B,Xs:(list @ B)]: ((((((maps @ B) @ A) @ F) @ (((cons @ B) @ X2) @ Xs)) = (((append @ A) @ (F @ X2)) @ ((((maps @ B) @ A) @ F) @ Xs)))))).
% 3.22/1.74  thf(fact_168_Nil__is__map__conv, axiom, (! [A:$tType,B:$tType,F:(B > A),Xs:(list @ B)]: ((((nil @ A) = ((((map @ B) @ A) @ F) @ Xs)) = (Xs = (nil @ B)))))).
% 3.22/1.74  thf(fact_169_map__is__Nil__conv, axiom, (! [A:$tType,B:$tType,F:(B > A),Xs:(list @ B)]: (((((((map @ B) @ A) @ F) @ Xs) = (nil @ A)) = (Xs = (nil @ B)))))).
% 3.22/1.74  thf(fact_170_list_Omap__disc__iff, axiom, (! [B:$tType,A:$tType,F:(A > B),A2:(list @ A)]: (((((((map @ A) @ B) @ F) @ A2) = (nil @ B)) = (A2 = (nil @ A)))))).
% 3.22/1.74  thf(fact_171_map__append, axiom, (! [A:$tType,B:$tType,F:(B > A),Xs:(list @ B),Ys:(list @ B)]: ((((((map @ B) @ A) @ F) @ (((append @ B) @ Xs) @ Ys)) = (((append @ A) @ ((((map @ B) @ A) @ F) @ Xs)) @ ((((map @ B) @ A) @ F) @ Ys)))))).
% 3.22/1.74  thf(fact_172_list_Osimps_I9_J, axiom, (! [B:$tType,A:$tType,F:(A > B),X21:A,X22:(list @ A)]: ((((((map @ A) @ B) @ F) @ (((cons @ A) @ X21) @ X22)) = (((cons @ B) @ (F @ X21)) @ ((((map @ A) @ B) @ F) @ X22)))))).
% 3.22/1.74  thf(fact_173_Cons__eq__map__D, axiom, (! [A:$tType,B:$tType,X2:A,Xs:(list @ A),F:(B > A),Ys:(list @ B)]: ((((((cons @ A) @ X2) @ Xs) = ((((map @ B) @ A) @ F) @ Ys)) => (? [Z3:B,Zs3:(list @ B)]: (((Ys = (((cons @ B) @ Z3) @ Zs3)) & ((X2 = (F @ Z3)) & (Xs = ((((map @ B) @ A) @ F) @ Zs3)))))))))).
% 3.22/1.74  thf(fact_174_map__eq__Cons__D, axiom, (! [B:$tType,A:$tType,F:(B > A),Xs:(list @ B),Y:A,Ys:(list @ A)]: (((((((map @ B) @ A) @ F) @ Xs) = (((cons @ A) @ Y) @ Ys)) => (? [Z3:B,Zs3:(list @ B)]: (((Xs = (((cons @ B) @ Z3) @ Zs3)) & (((F @ Z3) = Y) & (((((map @ B) @ A) @ F) @ Zs3) = Ys))))))))).
% 3.22/1.74  thf(fact_175_Cons__eq__map__conv, axiom, (! [A:$tType,B:$tType,X2:A,Xs:(list @ A),F:(B > A),Ys:(list @ B)]: ((((((cons @ A) @ X2) @ Xs) = ((((map @ B) @ A) @ F) @ Ys)) = (? [Z2:B,Zs2:(list @ B)]: (((Ys = (((cons @ B) @ Z2) @ Zs2)) & ((X2 = (F @ Z2)) & (Xs = ((((map @ B) @ A) @ F) @ Zs2)))))))))).
% 3.22/1.74  thf(fact_176_map__eq__Cons__conv, axiom, (! [A:$tType,B:$tType,F:(B > A),Xs:(list @ B),Y:A,Ys:(list @ A)]: (((((((map @ B) @ A) @ F) @ Xs) = (((cons @ A) @ Y) @ Ys)) = (? [Z2:B,Zs2:(list @ B)]: (((Xs = (((cons @ B) @ Z2) @ Zs2)) & (((F @ Z2) = Y) & (((((map @ B) @ A) @ F) @ Zs2) = Ys))))))))).
% 3.22/1.74  thf(fact_177_list_Osimps_I8_J, axiom, (! [A:$tType,B:$tType,F:(A > B)]: ((((((map @ A) @ B) @ F) @ (nil @ A)) = (nil @ B))))).
% 3.22/1.74  thf(fact_178_maps__simps_I2_J, axiom, (! [B:$tType,A:$tType,F:(B > (list @ A))]: ((((((maps @ B) @ A) @ F) @ (nil @ B)) = (nil @ A))))).
% 3.22/1.74  thf(fact_179_prefixes_Osimps_I2_J, axiom, (! [A:$tType,X2:A,Xs:(list @ A)]: ((((prefixes @ A) @ (((cons @ A) @ X2) @ Xs)) = (((cons @ (list @ A)) @ (nil @ A)) @ ((((map @ (list @ A)) @ (list @ A)) @ ((cons @ A) @ X2)) @ ((prefixes @ A) @ Xs))))))).
% 3.22/1.74  thf(fact_180_prefixes_Opelims, axiom, (! [A:$tType,X2:(list @ A),Y:(list @ (list @ A))]: (((((prefixes @ A) @ X2) = Y) => ((((accp @ (list @ A)) @ (prefixes_rel @ A)) @ X2) => (((X2 = (nil @ A)) => ((Y = (((cons @ (list @ A)) @ (nil @ A)) @ (nil @ (list @ A)))) => (~ ((((accp @ (list @ A)) @ (prefixes_rel @ A)) @ (nil @ A)))))) => (~ ((! [X:A,Xs2:(list @ A)]: (((X2 = (((cons @ A) @ X) @ Xs2)) => ((Y = (((cons @ (list @ A)) @ (nil @ A)) @ ((((map @ (list @ A)) @ (list @ A)) @ ((cons @ A) @ X)) @ ((prefixes @ A) @ Xs2)))) => (~ ((((accp @ (list @ A)) @ (prefixes_rel @ A)) @ (((cons @ A) @ X) @ Xs2)))))))))))))))).
% 3.22/1.74  thf(fact_181_insert__Nil, axiom, (! [A:$tType,X2:A]: (((((insert @ A) @ X2) @ (nil @ A)) = (((cons @ A) @ X2) @ (nil @ A)))))).
% 3.22/1.74  thf(fact_182_rotate1_Osimps_I2_J, axiom, (! [A:$tType,X2:A,Xs:(list @ A)]: ((((rotate1 @ A) @ (((cons @ A) @ X2) @ Xs)) = (((append @ A) @ Xs) @ (((cons @ A) @ X2) @ (nil @ A))))))).
% 3.22/1.74  thf(fact_183_rotate1__is__Nil__conv, axiom, (! [A:$tType,Xs:(list @ A)]: (((((rotate1 @ A) @ Xs) = (nil @ A)) = (Xs = (nil @ A)))))).
% 3.22/1.74  thf(fact_184_rotate1_Osimps_I1_J, axiom, (! [A:$tType]: ((((rotate1 @ A) @ (nil @ A)) = (nil @ A))))).
% 3.22/1.74  thf(fact_185_map__eq__map__tailrec, axiom, (! [B:$tType,A:$tType]: ((((map @ A) @ B) = ((map_tailrec @ A) @ B))))).
% 3.22/1.74  thf(fact_186_last__snoc, axiom, (! [A:$tType,Xs:(list @ A),X2:A]: ((((last @ A) @ (((append @ A) @ Xs) @ (((cons @ A) @ X2) @ (nil @ A)))) = X2)))).
% 3.22/1.74  thf(fact_187_butlast__snoc, axiom, (! [A:$tType,Xs:(list @ A),X2:A]: ((((butlast @ A) @ (((append @ A) @ Xs) @ (((cons @ A) @ X2) @ (nil @ A)))) = Xs)))).
% 3.22/1.74  thf(fact_188_last__appendR, axiom, (! [A:$tType,Ys:(list @ A),Xs:(list @ A)]: (((Ys != (nil @ A)) => (((last @ A) @ (((append @ A) @ Xs) @ Ys)) = ((last @ A) @ Ys)))))).
% 3.22/1.74  thf(fact_189_last__appendL, axiom, (! [A:$tType,Ys:(list @ A),Xs:(list @ A)]: (((Ys = (nil @ A)) => (((last @ A) @ (((append @ A) @ Xs) @ Ys)) = ((last @ A) @ Xs)))))).
% 3.22/1.74  thf(fact_190_append__butlast__last__id, axiom, (! [A:$tType,Xs:(list @ A)]: (((Xs != (nil @ A)) => ((((append @ A) @ ((butlast @ A) @ Xs)) @ (((cons @ A) @ ((last @ A) @ Xs)) @ (nil @ A))) = Xs))))).
% 3.22/1.74  thf(fact_191_map__butlast, axiom, (! [A:$tType,B:$tType,F:(B > A),Xs:(list @ B)]: ((((((map @ B) @ A) @ F) @ ((butlast @ B) @ Xs)) = ((butlast @ A) @ ((((map @ B) @ A) @ F) @ Xs)))))).
% 3.22/1.74  thf(fact_192_snoc__eq__iff__butlast, axiom, (! [A:$tType,Xs:(list @ A),X2:A,Ys:(list @ A)]: ((((((append @ A) @ Xs) @ (((cons @ A) @ X2) @ (nil @ A))) = Ys) = ((Ys != (nil @ A)) & ((((butlast @ A) @ Ys) = Xs) & (((last @ A) @ Ys) = X2))))))).
% 3.22/1.74  thf(fact_193_butlast_Osimps_I1_J, axiom, (! [A:$tType]: ((((butlast @ A) @ (nil @ A)) = (nil @ A))))).
% 3.22/1.74  thf(fact_194_last__ConsR, axiom, (! [A:$tType,Xs:(list @ A),X2:A]: (((Xs != (nil @ A)) => (((last @ A) @ (((cons @ A) @ X2) @ Xs)) = ((last @ A) @ Xs)))))).
% 3.22/1.74  thf(fact_195_last__ConsL, axiom, (! [A:$tType,Xs:(list @ A),X2:A]: (((Xs = (nil @ A)) => (((last @ A) @ (((cons @ A) @ X2) @ Xs)) = X2))))).
% 3.22/1.74  thf(fact_196_last_Osimps, axiom, (! [A:$tType,Xs:(list @ A),X2:A]: ((((Xs = (nil @ A)) => (((last @ A) @ (((cons @ A) @ X2) @ Xs)) = X2)) & ((Xs != (nil @ A)) => (((last @ A) @ (((cons @ A) @ X2) @ Xs)) = ((last @ A) @ Xs))))))).
% 3.22/1.74  thf(fact_197_butlast_Osimps_I2_J, axiom, (! [A:$tType,Xs:(list @ A),X2:A]: ((((Xs = (nil @ A)) => (((butlast @ A) @ (((cons @ A) @ X2) @ Xs)) = (nil @ A))) & ((Xs != (nil @ A)) => (((butlast @ A) @ (((cons @ A) @ X2) @ Xs)) = (((cons @ A) @ X2) @ ((butlast @ A) @ Xs)))))))).
% 3.22/1.74  thf(fact_198_last__map, axiom, (! [B:$tType,A:$tType,Xs:(list @ A),F:(A > B)]: (((Xs != (nil @ A)) => (((last @ B) @ ((((map @ A) @ B) @ F) @ Xs)) = (F @ ((last @ A) @ Xs))))))).
% 3.22/1.74  thf(fact_199_longest__common__suffix, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: ((? [Ss:(list @ A),Xs4:(list @ A),Ys5:(list @ A)]: (((Xs = (((append @ A) @ Xs4) @ Ss)) & ((Ys = (((append @ A) @ Ys5) @ Ss)) & ((Xs4 = (nil @ A)) | ((Ys5 = (nil @ A)) | (((last @ A) @ Xs4) != ((last @ A) @ Ys5))))))))))).
% 3.22/1.74  thf(fact_200_butlast__append, axiom, (! [A:$tType,Ys:(list @ A),Xs:(list @ A)]: ((((Ys = (nil @ A)) => (((butlast @ A) @ (((append @ A) @ Xs) @ Ys)) = ((butlast @ A) @ Xs))) & ((Ys != (nil @ A)) => (((butlast @ A) @ (((append @ A) @ Xs) @ Ys)) = (((append @ A) @ Xs) @ ((butlast @ A) @ Ys)))))))).
% 3.22/1.74  thf(fact_201_last__append, axiom, (! [A:$tType,Ys:(list @ A),Xs:(list @ A)]: ((((Ys = (nil @ A)) => (((last @ A) @ (((append @ A) @ Xs) @ Ys)) = ((last @ A) @ Xs))) & ((Ys != (nil @ A)) => (((last @ A) @ (((append @ A) @ Xs) @ Ys)) = ((last @ A) @ Ys))))))).
% 3.22/1.74  thf(fact_202_list__ex1__simps_I1_J, axiom, (! [A:$tType,P:(A > $o)]: ((~ ((((list_ex1 @ A) @ P) @ (nil @ A))))))).
% 3.22/1.74  thf(fact_203_strict__suffix__def, axiom, (! [A:$tType]: (((strict_suffix @ A) = (^ [Xs3:(list @ A),Ys3:(list @ A)]: ((? [Us2:(list @ A)]: (((Ys3 = (((append @ A) @ Us2) @ Xs3)) & (Us2 != (nil @ A))))))))))).
% 3.22/1.74  thf(fact_204_strict__suffix__trans, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A),Zs:(list @ A)]: (((((strict_suffix @ A) @ Xs) @ Ys) => ((((strict_suffix @ A) @ Ys) @ Zs) => (((strict_suffix @ A) @ Xs) @ Zs)))))).
% 3.22/1.74  thf(fact_205_map__tailrec__rev_Oelims, axiom, (! [A:$tType,B:$tType,X2:(A > B),Xa:(list @ A),Xb:(list @ B),Y:(list @ B)]: ((((((((map_tailrec_rev @ A) @ B) @ X2) @ Xa) @ Xb) = Y) => (((Xa = (nil @ A)) => (Y != Xb)) => (~ ((! [A3:A,As:(list @ A)]: (((Xa = (((cons @ A) @ A3) @ As)) => (Y != (((((map_tailrec_rev @ A) @ B) @ X2) @ As) @ (((cons @ B) @ (X2 @ A3)) @ Xb))))))))))))).
% 3.22/1.74  thf(fact_206_SuccD, axiom, (! [A:$tType,K:A,Kl:(set @ (list @ A)),Kl2:(list @ A)]: (((((member @ A) @ K) @ (((bNF_Greatest_Succ @ A) @ Kl) @ Kl2)) => (((member @ (list @ A)) @ (((append @ A) @ Kl2) @ (((cons @ A) @ K) @ (nil @ A)))) @ Kl))))).
% 3.22/1.74  thf(fact_207_map__tailrec__rev_Osimps_I2_J, axiom, (! [A:$tType,B:$tType,F:(A > B),A2:A,As2:(list @ A),Bs2:(list @ B)]: (((((((map_tailrec_rev @ A) @ B) @ F) @ (((cons @ A) @ A2) @ As2)) @ Bs2) = (((((map_tailrec_rev @ A) @ B) @ F) @ As2) @ (((cons @ B) @ (F @ A2)) @ Bs2)))))).
% 3.22/1.74  thf(fact_208_map__tailrec__rev_Osimps_I1_J, axiom, (! [A:$tType,B:$tType,F:(A > B),Bs2:(list @ B)]: (((((((map_tailrec_rev @ A) @ B) @ F) @ (nil @ A)) @ Bs2) = Bs2)))).
% 3.22/1.74  thf(fact_209_SuccI, axiom, (! [A:$tType,Kl2:(list @ A),K:A,Kl:(set @ (list @ A))]: (((((member @ (list @ A)) @ (((append @ A) @ Kl2) @ (((cons @ A) @ K) @ (nil @ A)))) @ Kl) => (((member @ A) @ K) @ (((bNF_Greatest_Succ @ A) @ Kl) @ Kl2)))))).
% 3.22/1.74  thf(fact_210_shift__def, axiom, (! [B:$tType,A:$tType]: ((((bNF_Greatest_shift @ A) @ B) = (^ [Lab:((list @ A) > B),K2:A,Kl3:(list @ A)]: ((Lab @ (((cons @ A) @ K2) @ Kl3)))))))).
% 3.22/1.74  thf(fact_211_empty__Shift, axiom, (! [A:$tType,Kl:(set @ (list @ A)),K:A]: (((((member @ (list @ A)) @ (nil @ A)) @ Kl) => ((((member @ A) @ K) @ (((bNF_Greatest_Succ @ A) @ Kl) @ (nil @ A))) => (((member @ (list @ A)) @ (nil @ A)) @ (((bNF_Greatest_Shift @ A) @ Kl) @ K))))))).
% 3.22/1.74  thf(fact_212_ShiftD, axiom, (! [A:$tType,Kl2:(list @ A),Kl:(set @ (list @ A)),K:A]: (((((member @ (list @ A)) @ Kl2) @ (((bNF_Greatest_Shift @ A) @ Kl) @ K)) => (((member @ (list @ A)) @ (((cons @ A) @ K) @ Kl2)) @ Kl))))).
% 3.22/1.74  thf(fact_213_Succ__Shift, axiom, (! [A:$tType,Kl:(set @ (list @ A)),K:A,Kl2:(list @ A)]: (((((bNF_Greatest_Succ @ A) @ (((bNF_Greatest_Shift @ A) @ Kl) @ K)) @ Kl2) = (((bNF_Greatest_Succ @ A) @ Kl) @ (((cons @ A) @ K) @ Kl2)))))).
% 3.22/1.74  thf(fact_214_map__tailrec__def, axiom, (! [B:$tType,A:$tType]: ((((map_tailrec @ A) @ B) = (^ [F3:(A > B),As3:(list @ A)]: (((rev @ B) @ (((((map_tailrec_rev @ A) @ B) @ F3) @ As3) @ (nil @ B))))))))).
% 3.22/1.74  thf(fact_215_ord_OgreaterThanAtMost__def, axiom, (! [A:$tType]: (((set_gr323396891AtMost @ A) = (^ [Less_eq:(A > (A > $o)),Less2:(A > (A > $o)),L2:A,U2:A]: ((((inf_inf @ (set @ A)) @ (((set_greaterThan @ A) @ Less2) @ L2)) @ (((set_atMost @ A) @ Less_eq) @ U2)))))))).
% 3.22/1.74  thf(fact_216_rev__rev__ident, axiom, (! [A:$tType,Xs:(list @ A)]: ((((rev @ A) @ ((rev @ A) @ Xs)) = Xs)))).
% 3.22/1.74  thf(fact_217_rev__is__rev__conv, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: (((((rev @ A) @ Xs) = ((rev @ A) @ Ys)) = (Xs = Ys))))).
% 3.22/1.74  thf(fact_218_Nil__is__rev__conv, axiom, (! [A:$tType,Xs:(list @ A)]: ((((nil @ A) = ((rev @ A) @ Xs)) = (Xs = (nil @ A)))))).
% 3.22/1.74  thf(fact_219_rev__is__Nil__conv, axiom, (! [A:$tType,Xs:(list @ A)]: (((((rev @ A) @ Xs) = (nil @ A)) = (Xs = (nil @ A)))))).
% 3.22/1.74  thf(fact_220_rev__append, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: ((((rev @ A) @ (((append @ A) @ Xs) @ Ys)) = (((append @ A) @ ((rev @ A) @ Ys)) @ ((rev @ A) @ Xs)))))).
% 3.22/1.74  thf(fact_221_rev__singleton__conv, axiom, (! [A:$tType,Xs:(list @ A),X2:A]: (((((rev @ A) @ Xs) = (((cons @ A) @ X2) @ (nil @ A))) = (Xs = (((cons @ A) @ X2) @ (nil @ A))))))).
% 3.22/1.74  thf(fact_222_singleton__rev__conv, axiom, (! [A:$tType,X2:A,Xs:(list @ A)]: ((((((cons @ A) @ X2) @ (nil @ A)) = ((rev @ A) @ Xs)) = (Xs = (((cons @ A) @ X2) @ (nil @ A))))))).
% 3.22/1.74  thf(fact_223_rev__eq__Cons__iff, axiom, (! [A:$tType,Xs:(list @ A),Y:A,Ys:(list @ A)]: (((((rev @ A) @ Xs) = (((cons @ A) @ Y) @ Ys)) = (Xs = (((append @ A) @ ((rev @ A) @ Ys)) @ (((cons @ A) @ Y) @ (nil @ A)))))))).
% 3.22/1.74  thf(fact_224_rev__map, axiom, (! [A:$tType,B:$tType,F:(B > A),Xs:(list @ B)]: ((((rev @ A) @ ((((map @ B) @ A) @ F) @ Xs)) = ((((map @ B) @ A) @ F) @ ((rev @ B) @ Xs)))))).
% 3.22/1.74  thf(fact_225_ord_OatMost__iff, axiom, (! [A:$tType,I:A,Less_eq2:(A > (A > $o)),K:A]: (((((member @ A) @ I) @ (((set_atMost @ A) @ Less_eq2) @ K)) = ((Less_eq2 @ I) @ K))))).
% 3.22/1.74  thf(fact_226_ord_OgreaterThanAtMost__iff, axiom, (! [A:$tType,I:A,Less_eq2:(A > (A > $o)),Less:(A > (A > $o)),L:A,U:A]: (((((member @ A) @ I) @ (((((set_gr323396891AtMost @ A) @ Less_eq2) @ Less) @ L) @ U)) = (((Less @ L) @ I) & ((Less_eq2 @ I) @ U)))))).
% 3.22/1.74  thf(fact_227_rev_Osimps_I1_J, axiom, (! [A:$tType]: ((((rev @ A) @ (nil @ A)) = (nil @ A))))).
% 3.22/1.74  thf(fact_228_rev__swap, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: (((((rev @ A) @ Xs) = Ys) = (Xs = ((rev @ A) @ Ys)))))).
% 3.22/1.74  thf(fact_229_rev_Osimps_I2_J, axiom, (! [A:$tType,X2:A,Xs:(list @ A)]: ((((rev @ A) @ (((cons @ A) @ X2) @ Xs)) = (((append @ A) @ ((rev @ A) @ Xs)) @ (((cons @ A) @ X2) @ (nil @ A))))))).
% 3.22/1.74  thf(fact_230_map__tailrec__rev, axiom, (! [A:$tType,B:$tType]: ((((map_tailrec_rev @ B) @ A) = (^ [F3:(B > A),As3:(list @ B)]: (((append @ A) @ ((rev @ A) @ ((((map @ B) @ A) @ F3) @ As3))))))))).
% 3.22/1.74  thf(fact_231_list__of__aux__code_I1_J, axiom, (! [A:$tType,Xs:(list @ A)]: (((((coindu1384447384of_aux @ A) @ Xs) @ (coinductive_LNil @ A)) = ((rev @ A) @ Xs))))).
% 3.22/1.74  thf(fact_232_local_OgreaterThanAtMost__def, axiom, (! [L:a,U:a]: (((((((set_gr323396891AtMost @ a) @ less_eq) @ less) @ L) @ U) = (((inf_inf @ (set @ a)) @ (((set_greaterThan @ a) @ less) @ L)) @ (((set_atMost @ a) @ less_eq) @ U)))))).
% 3.22/1.74  thf(fact_233_local_Oord__eq__le__trans, axiom, (! [A2:a,B2:a,C:a]: (((A2 = B2) => (((less_eq @ B2) @ C) => ((less_eq @ A2) @ C)))))).
% 3.22/1.74  thf(fact_234_local_Oord__le__eq__trans, axiom, (! [A2:a,B2:a,C:a]: ((((less_eq @ A2) @ B2) => ((B2 = C) => ((less_eq @ A2) @ C)))))).
% 3.22/1.74  thf(fact_235_local_Omax__def, axiom, (! [A2:a,B2:a]: (((((less_eq @ A2) @ B2) => (((((max @ a) @ less_eq) @ A2) @ B2) = B2)) & ((~ (((less_eq @ A2) @ B2))) => (((((max @ a) @ less_eq) @ A2) @ B2) = A2)))))).
% 3.22/1.74  thf(fact_236_local_Omin__def, axiom, (! [A2:a,B2:a]: (((((less_eq @ A2) @ B2) => (((((min @ a) @ less_eq) @ A2) @ B2) = A2)) & ((~ (((less_eq @ A2) @ B2))) => (((((min @ a) @ less_eq) @ A2) @ B2) = B2)))))).
% 3.22/1.74  thf(fact_237_local_OatMost__iff, axiom, (! [I:a,K:a]: (((((member @ a) @ I) @ (((set_atMost @ a) @ less_eq) @ K)) = ((less_eq @ I) @ K))))).
% 3.22/1.74  thf(fact_238_local_OgreaterThanAtMost__iff, axiom, (! [I:a,L:a,U:a]: (((((member @ a) @ I) @ (((((set_gr323396891AtMost @ a) @ less_eq) @ less) @ L) @ U)) = (((less @ L) @ I) & ((less_eq @ I) @ U)))))).
% 3.22/1.74  thf(fact_239_local_OatLeastLessThan__def, axiom, (! [L:a,U:a]: (((((((set_atLeastLessThan @ a) @ less_eq) @ less) @ L) @ U) = (((inf_inf @ (set @ a)) @ (((set_atLeast @ a) @ less_eq) @ L)) @ (((set_lessThan @ a) @ less) @ U)))))).
% 3.22/1.74  thf(fact_240_local_OatLeastAtMost__def, axiom, (! [L:a,U:a]: ((((((set_atLeastAtMost @ a) @ less_eq) @ L) @ U) = (((inf_inf @ (set @ a)) @ (((set_atLeast @ a) @ less_eq) @ L)) @ (((set_atMost @ a) @ less_eq) @ U)))))).
% 3.22/1.74  thf(fact_241_local_OatLeast__iff, axiom, (! [I:a,K:a]: (((((member @ a) @ I) @ (((set_atLeast @ a) @ less_eq) @ K)) = ((less_eq @ K) @ I))))).
% 3.22/1.74  thf(fact_242_local_OatLeastAtMost__iff, axiom, (! [I:a,L:a,U:a]: (((((member @ a) @ I) @ ((((set_atLeastAtMost @ a) @ less_eq) @ L) @ U)) = (((less_eq @ L) @ I) & ((less_eq @ I) @ U)))))).
% 3.22/1.74  thf(fact_243_local_OatLeastLessThan__iff, axiom, (! [I:a,L:a,U:a]: (((((member @ a) @ I) @ (((((set_atLeastLessThan @ a) @ less_eq) @ less) @ L) @ U)) = (((less_eq @ L) @ I) & ((less @ I) @ U)))))).
% 3.22/1.74  thf(fact_244_ord_OatLeast__iff, axiom, (! [A:$tType,I:A,Less_eq2:(A > (A > $o)),K:A]: (((((member @ A) @ I) @ (((set_atLeast @ A) @ Less_eq2) @ K)) = ((Less_eq2 @ K) @ I))))).
% 3.22/1.74  thf(fact_245_ord_OatLeastAtMost__iff, axiom, (! [A:$tType,I:A,Less_eq2:(A > (A > $o)),L:A,U:A]: (((((member @ A) @ I) @ ((((set_atLeastAtMost @ A) @ Less_eq2) @ L) @ U)) = (((Less_eq2 @ L) @ I) & ((Less_eq2 @ I) @ U)))))).
% 3.22/1.74  thf(fact_246_ord_OatLeastLessThan__iff, axiom, (! [A:$tType,I:A,Less_eq2:(A > (A > $o)),Less:(A > (A > $o)),L:A,U:A]: (((((member @ A) @ I) @ (((((set_atLeastLessThan @ A) @ Less_eq2) @ Less) @ L) @ U)) = (((Less_eq2 @ L) @ I) & ((Less @ I) @ U)))))).
% 3.22/1.74  thf(fact_247_ord_OatLeastLessThan__def, axiom, (! [A:$tType]: (((set_atLeastLessThan @ A) = (^ [Less_eq:(A > (A > $o)),Less2:(A > (A > $o)),L2:A,U2:A]: ((((inf_inf @ (set @ A)) @ (((set_atLeast @ A) @ Less_eq) @ L2)) @ (((set_lessThan @ A) @ Less2) @ U2)))))))).
% 3.22/1.74  thf(fact_248_ord_OatLeastAtMost__def, axiom, (! [A:$tType]: (((set_atLeastAtMost @ A) = (^ [Less_eq:(A > (A > $o)),L2:A,U2:A]: ((((inf_inf @ (set @ A)) @ (((set_atLeast @ A) @ Less_eq) @ L2)) @ (((set_atMost @ A) @ Less_eq) @ U2)))))))).
% 3.22/1.74  thf(fact_249_local_Olsorted_OLNil, axiom, (((coinductive_lsorted @ a) @ less_eq) @ (coinductive_LNil @ a))).
% 3.22/1.74  thf(fact_250_hd__rev, axiom, (! [A:$tType,Xs:(list @ A)]: (((Xs != (nil @ A)) => (((hd @ A) @ ((rev @ A) @ Xs)) = ((last @ A) @ Xs)))))).
% 3.22/1.74  thf(fact_251_hd__append2, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: (((Xs != (nil @ A)) => (((hd @ A) @ (((append @ A) @ Xs) @ Ys)) = ((hd @ A) @ Xs)))))).
% 3.22/1.74  thf(fact_252_local_Olsorted__code_I1_J, axiom, (((coinductive_lsorted @ a) @ less_eq) @ (coinductive_LNil @ a))).
% 3.22/1.74  thf(tcon_fun___Lattices_Osemilattice__inf, axiom, (! [A7:$tType,A8:$tType]: ((((semilattice_inf @ A8) @ (type2 @ A8)) => ((semilattice_inf @ (A7 > A8)) @ (type2 @ (A7 > A8))))))).
% 3.22/1.74  thf(tcon_fun___Lattices_Olattice, axiom, (! [A7:$tType,A8:$tType]: ((((lattice @ A8) @ (type2 @ A8)) => ((lattice @ (A7 > A8)) @ (type2 @ (A7 > A8))))))).
% 3.22/1.74  thf(tcon_fun___Orderings_Oord, axiom, (! [A7:$tType,A8:$tType]: ((((ord @ A8) @ (type2 @ A8)) => ((ord @ (A7 > A8)) @ (type2 @ (A7 > A8))))))).
% 3.22/1.74  thf(tcon_Set_Oset___Lattices_Osemilattice__inf_1, axiom, (! [A7:$tType]: (((semilattice_inf @ (set @ A7)) @ (type2 @ (set @ A7)))))).
% 3.22/1.74  thf(tcon_Set_Oset___Lattices_Olattice_2, axiom, (! [A7:$tType]: (((lattice @ (set @ A7)) @ (type2 @ (set @ A7)))))).
% 3.22/1.74  thf(tcon_Set_Oset___Orderings_Oord_3, axiom, (! [A7:$tType]: (((ord @ (set @ A7)) @ (type2 @ (set @ A7)))))).
% 3.22/1.74  thf(tcon_HOL_Obool___Lattices_Osemilattice__inf_4, axiom, ((semilattice_inf @ $o) @ (type2 @ $o))).
% 3.22/1.74  thf(tcon_HOL_Obool___Lattices_Olattice_5, axiom, ((lattice @ $o) @ (type2 @ $o))).
% 3.22/1.74  thf(tcon_HOL_Obool___Orderings_Oord_6, axiom, ((ord @ $o) @ (type2 @ $o))).
% 3.22/1.74  thf(conj_0, conjecture, (((coinductive_lnull @ a) @ ((((hammin1328233080lmerge @ a) @ less) @ xs) @ ys)) = (((coinductive_lnull @ a) @ xs) | ((coinductive_lnull @ a) @ ys)))).
% 3.22/1.74  % SZS output end ListOfTHF for /export/starexec/sandbox/tmp/tmp.QfeLN0lqUF/DTF2DTF2221.p
% 3.22/1.74  ------------------------
% 3.22/1.79  ---- Cleaned THF ---
% 3.22/1.79  thf(ty_t_Coinductive__List_Ollist,type,
% 3.22/1.79      coinductive_llist: $tType > $tType ).
% 3.22/1.79  
% 3.22/1.79  thf(ty_t_List_Olist,type,
% 3.22/1.79      list: $tType > $tType ).
% 3.22/1.79  
% 3.22/1.79  thf(ty_t_Set_Oset,type,
% 3.22/1.79      set: $tType > $tType ).
% 3.22/1.79  
% 3.22/1.79  thf(ty_t_itself,type,
% 3.22/1.79      itself: $tType > $tType ).
% 3.22/1.79  
% 3.22/1.79  thf(ty_tf_a,type,
% 3.22/1.79      a: $tType ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_cl_HOL_Otype,type,
% 3.22/1.79      type: 
% 3.22/1.79        !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_cl_Orderings_Oord,type,
% 3.22/1.79      ord: 
% 3.22/1.79        !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_cl_Lattices_Olattice,type,
% 3.22/1.79      lattice: 
% 3.22/1.79        !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_cl_Lattices_Osemilattice__inf,type,
% 3.22/1.79      semilattice_inf: 
% 3.22/1.79        !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_BNF__Greatest__Fixpoint_OShift,type,
% 3.22/1.79      bNF_Greatest_Shift: 
% 3.22/1.79        !>[A: $tType] : ( ( set @ ( list @ A ) ) > A > ( set @ ( list @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_BNF__Greatest__Fixpoint_OSucc,type,
% 3.22/1.79      bNF_Greatest_Succ: 
% 3.22/1.79        !>[A: $tType] : ( ( set @ ( list @ A ) ) > ( list @ A ) > ( set @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_BNF__Greatest__Fixpoint_Oshift,type,
% 3.22/1.79      bNF_Greatest_shift: 
% 3.22/1.79        !>[A: $tType,B: $tType] : ( ( ( list @ A ) > B ) > A > ( list @ A ) > B ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Coinductive__List_Olist__of__aux,type,
% 3.22/1.79      coindu1384447384of_aux: 
% 3.22/1.79        !>[A: $tType] : ( ( list @ A ) > ( coinductive_llist @ A ) > ( list @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Coinductive__List_Ollist_OLNil,type,
% 3.22/1.79      coinductive_LNil: 
% 3.22/1.79        !>[A: $tType] : ( coinductive_llist @ A ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Coinductive__List_Ollist_Olnull,type,
% 3.22/1.79      coinductive_lnull: 
% 3.22/1.79        !>[A: $tType] : ( ( coinductive_llist @ A ) > $o ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Coinductive__List_Oord_Olsorted,type,
% 3.22/1.79      coinductive_lsorted: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > ( coinductive_llist @ A ) > $o ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Hamming__Stream__Mirabelle__rwekfkwckg_Oord_Olmerge,type,
% 3.22/1.79      hammin1328233080lmerge: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > ( coinductive_llist @ A ) > ( coinductive_llist @ A ) > ( coinductive_llist @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Hamming__Stream__Mirabelle__rwekfkwckg_Oord__class_Olmerge,type,
% 3.22/1.79      hammin1138290136lmerge: 
% 3.22/1.79        !>[A: $tType] : ( ( coinductive_llist @ A ) > ( coinductive_llist @ A ) > ( coinductive_llist @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Lattices_Oinf__class_Oinf,type,
% 3.22/1.79      inf_inf: 
% 3.22/1.79        !>[A: $tType] : ( A > A > A ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Oappend,type,
% 3.22/1.79      append: 
% 3.22/1.79        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) > ( list @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Obind,type,
% 3.22/1.79      bind: 
% 3.22/1.79        !>[A: $tType,B: $tType] : ( ( list @ A ) > ( A > ( list @ B ) ) > ( list @ B ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Obutlast,type,
% 3.22/1.79      butlast: 
% 3.22/1.79        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Oinsert,type,
% 3.22/1.79      insert: 
% 3.22/1.79        !>[A: $tType] : ( A > ( list @ A ) > ( list @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Olast,type,
% 3.22/1.79      last: 
% 3.22/1.79        !>[A: $tType] : ( ( list @ A ) > A ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Olist_OCons,type,
% 3.22/1.79      cons: 
% 3.22/1.79        !>[A: $tType] : ( A > ( list @ A ) > ( list @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Olist_ONil,type,
% 3.22/1.79      nil: 
% 3.22/1.79        !>[A: $tType] : ( list @ A ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Olist_Ohd,type,
% 3.22/1.79      hd: 
% 3.22/1.79        !>[A: $tType] : ( ( list @ A ) > A ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Olist_Omap,type,
% 3.22/1.79      map: 
% 3.22/1.79        !>[A: $tType,Aa: $tType] : ( ( A > Aa ) > ( list @ A ) > ( list @ Aa ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Olist__ex1,type,
% 3.22/1.79      list_ex1: 
% 3.22/1.79        !>[A: $tType] : ( ( A > $o ) > ( list @ A ) > $o ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Omap__tailrec,type,
% 3.22/1.79      map_tailrec: 
% 3.22/1.79        !>[A: $tType,B: $tType] : ( ( A > B ) > ( list @ A ) > ( list @ B ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Omap__tailrec__rev,type,
% 3.22/1.79      map_tailrec_rev: 
% 3.22/1.79        !>[A: $tType,B: $tType] : ( ( A > B ) > ( list @ A ) > ( list @ B ) > ( list @ B ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Omaps,type,
% 3.22/1.79      maps: 
% 3.22/1.79        !>[A: $tType,B: $tType] : ( ( A > ( list @ B ) ) > ( list @ A ) > ( list @ B ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Oord_Olexordp,type,
% 3.22/1.79      lexordp: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > ( list @ A ) > ( list @ A ) > $o ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Oord_Olexordp__eq,type,
% 3.22/1.79      lexordp_eq: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > ( list @ A ) > ( list @ A ) > $o ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Oproduct__lists,type,
% 3.22/1.79      product_lists: 
% 3.22/1.79        !>[A: $tType] : ( ( list @ ( list @ A ) ) > ( list @ ( list @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Orev,type,
% 3.22/1.79      rev: 
% 3.22/1.79        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Orotate1,type,
% 3.22/1.79      rotate1: 
% 3.22/1.79        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_List_Osublists,type,
% 3.22/1.79      sublists: 
% 3.22/1.79        !>[A: $tType] : ( ( list @ A ) > ( list @ ( list @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Orderings_Oord_Omax,type,
% 3.22/1.79      max: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > A > A > A ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Orderings_Oord_Omin,type,
% 3.22/1.79      min: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > A > A > A ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Pure_Otype,type,
% 3.22/1.79      type2: 
% 3.22/1.79        !>[A: $tType] : ( itself @ A ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Set_OCollect,type,
% 3.22/1.79      collect: 
% 3.22/1.79        !>[A: $tType] : ( ( A > $o ) > ( set @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Set__Interval_Oord_OatLeast,type,
% 3.22/1.79      set_atLeast: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > A > ( set @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Set__Interval_Oord_OatLeastAtMost,type,
% 3.22/1.79      set_atLeastAtMost: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > A > A > ( set @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Set__Interval_Oord_OatLeastLessThan,type,
% 3.22/1.79      set_atLeastLessThan: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > ( A > A > $o ) > A > A > ( set @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Set__Interval_Oord_OatMost,type,
% 3.22/1.79      set_atMost: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > A > ( set @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Set__Interval_Oord_OgreaterThan,type,
% 3.22/1.79      set_greaterThan: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > A > ( set @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Set__Interval_Oord_OgreaterThanAtMost,type,
% 3.22/1.79      set_gr323396891AtMost: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > ( A > A > $o ) > A > A > ( set @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Set__Interval_Oord_OgreaterThanLessThan,type,
% 3.22/1.79      set_gr1161524159ssThan: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > A > A > ( set @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Set__Interval_Oord_OlessThan,type,
% 3.22/1.79      set_lessThan: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > A > ( set @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Sublist_Oprefixes,type,
% 3.22/1.79      prefixes: 
% 3.22/1.79        !>[A: $tType] : ( ( list @ A ) > ( list @ ( list @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Sublist_Oprefixes__rel,type,
% 3.22/1.79      prefixes_rel: 
% 3.22/1.79        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) > $o ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Sublist_Ostrict__suffix,type,
% 3.22/1.79      strict_suffix: 
% 3.22/1.79        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) > $o ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_Wellfounded_Oaccp,type,
% 3.22/1.79      accp: 
% 3.22/1.79        !>[A: $tType] : ( ( A > A > $o ) > A > $o ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_c_member,type,
% 3.22/1.79      member: 
% 3.22/1.79        !>[A: $tType] : ( A > ( set @ A ) > $o ) ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_v_less,type,
% 3.22/1.79      less: a > a > $o ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_v_less__eq,type,
% 3.22/1.79      less_eq: a > a > $o ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_v_xs,type,
% 3.22/1.79      xs: coinductive_llist @ a ).
% 3.22/1.79  
% 3.22/1.79  thf(sy_v_ys,type,
% 3.22/1.79      ys: coinductive_llist @ a ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_0_lmerge_Oexhaust,axiom,
% 3.22/1.79      ! [Xs: coinductive_llist @ a,Ys: coinductive_llist @ a] :
% 3.22/1.79        ( ~ ( ( coinductive_lnull @ a @ Xs )
% 3.22/1.79            | ( coinductive_lnull @ a @ Ys ) )
% 3.22/1.79       => ~ ( ~ ( coinductive_lnull @ a @ Xs )
% 3.22/1.79           => ( coinductive_lnull @ a @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_1_local_Oord__eq__less__trans,axiom,
% 3.22/1.79      ! [A2: a,B2: a,C: a] :
% 3.22/1.79        ( ( A2 = B2 )
% 3.22/1.79       => ( ( less @ B2 @ C )
% 3.22/1.79         => ( less @ A2 @ C ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_2_local_Oord__less__eq__trans,axiom,
% 3.22/1.79      ! [A2: a,B2: a,C: a] :
% 3.22/1.79        ( ( less @ A2 @ B2 )
% 3.22/1.79       => ( ( B2 = C )
% 3.22/1.79         => ( less @ A2 @ C ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_3_lmerge_Odisc_I2_J,axiom,
% 3.22/1.79      ! [Xs: coinductive_llist @ a,Ys: coinductive_llist @ a] :
% 3.22/1.79        ( ~ ( coinductive_lnull @ a @ Xs )
% 3.22/1.79       => ( ~ ( coinductive_lnull @ a @ Ys )
% 3.22/1.79         => ~ ( coinductive_lnull @ a @ ( hammin1328233080lmerge @ a @ less @ Xs @ Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_4_lmerge_Odisc_I1_J,axiom,
% 3.22/1.79      ! [Xs: coinductive_llist @ a,Ys: coinductive_llist @ a] :
% 3.22/1.79        ( ( ( coinductive_lnull @ a @ Xs )
% 3.22/1.79          | ( coinductive_lnull @ a @ Ys ) )
% 3.22/1.79       => ( coinductive_lnull @ a @ ( hammin1328233080lmerge @ a @ less @ Xs @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_5_lmerge_Osimps_I2_J,axiom,
% 3.22/1.79      ! [Xs: coinductive_llist @ a,Ys: coinductive_llist @ a] :
% 3.22/1.79        ( ( ~ ( coinductive_lnull @ a @ ( hammin1328233080lmerge @ a @ less @ Xs @ Ys ) ) )
% 3.22/1.79        = ( ~ ( coinductive_lnull @ a @ Xs )
% 3.22/1.79          & ~ ( coinductive_lnull @ a @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_6_lmerge_Osimps_I1_J,axiom,
% 3.22/1.79      ! [Xs: coinductive_llist @ a,Ys: coinductive_llist @ a] :
% 3.22/1.79        ( ( coinductive_lnull @ a @ ( hammin1328233080lmerge @ a @ less @ Xs @ Ys ) )
% 3.22/1.79        = ( ( coinductive_lnull @ a @ Xs )
% 3.22/1.79          | ( coinductive_lnull @ a @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_7_ord_Olmerge_Odisc_I2_J,axiom,
% 3.22/1.79      ! [A: $tType,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A,Less: A > A > $o] :
% 3.22/1.79        ( ~ ( coinductive_lnull @ A @ Xs )
% 3.22/1.79       => ( ~ ( coinductive_lnull @ A @ Ys )
% 3.22/1.79         => ~ ( coinductive_lnull @ A @ ( hammin1328233080lmerge @ A @ Less @ Xs @ Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_8_ord_Olmerge_Odisc_I1_J,axiom,
% 3.22/1.79      ! [A: $tType,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A,Less: A > A > $o] :
% 3.22/1.79        ( ( ( coinductive_lnull @ A @ Xs )
% 3.22/1.79          | ( coinductive_lnull @ A @ Ys ) )
% 3.22/1.79       => ( coinductive_lnull @ A @ ( hammin1328233080lmerge @ A @ Less @ Xs @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_9_ord_Olmerge_Odisc__iff_I2_J,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 3.22/1.79        ( ( ~ ( coinductive_lnull @ A @ ( hammin1328233080lmerge @ A @ Less @ Xs @ Ys ) ) )
% 3.22/1.79        = ( ~ ( coinductive_lnull @ A @ Xs )
% 3.22/1.79          & ~ ( coinductive_lnull @ A @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_10_ord_Olmerge_Odisc__iff_I1_J,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 3.22/1.79        ( ( coinductive_lnull @ A @ ( hammin1328233080lmerge @ A @ Less @ Xs @ Ys ) )
% 3.22/1.79        = ( ( coinductive_lnull @ A @ Xs )
% 3.22/1.79          | ( coinductive_lnull @ A @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_11_ord_Olmerge_Oexhaust,axiom,
% 3.22/1.79      ! [A: $tType,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 3.22/1.79        ( ~ ( ( coinductive_lnull @ A @ Xs )
% 3.22/1.79            | ( coinductive_lnull @ A @ Ys ) )
% 3.22/1.79       => ~ ( ~ ( coinductive_lnull @ A @ Xs )
% 3.22/1.79           => ( coinductive_lnull @ A @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_12_ord__class_Olmerge_Oexhaust,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( ord @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 3.22/1.79            ( ~ ( ( coinductive_lnull @ A @ Xs )
% 3.22/1.79                | ( coinductive_lnull @ A @ Ys ) )
% 3.22/1.79           => ~ ( ~ ( coinductive_lnull @ A @ Xs )
% 3.22/1.79               => ( coinductive_lnull @ A @ Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_13_lmerge_Octr_I1_J,axiom,
% 3.22/1.79      ! [Xs: coinductive_llist @ a,Ys: coinductive_llist @ a] :
% 3.22/1.79        ( ( ( coinductive_lnull @ a @ Xs )
% 3.22/1.79          | ( coinductive_lnull @ a @ Ys ) )
% 3.22/1.79       => ( ( hammin1328233080lmerge @ a @ less @ Xs @ Ys )
% 3.22/1.79          = ( coinductive_LNil @ a ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_14_local_Olexordp__eq__refl,axiom,
% 3.22/1.79      ! [Xs: list @ a] : ( lexordp_eq @ a @ less @ Xs @ Xs ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_15_local_OgreaterThanLessThan__iff,axiom,
% 3.22/1.79      ! [I: a,L: a,U: a] :
% 3.22/1.79        ( ( member @ a @ I @ ( set_gr1161524159ssThan @ a @ less @ L @ U ) )
% 3.22/1.79        = ( ( less @ L @ I )
% 3.22/1.79          & ( less @ I @ U ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_16_local_Olexordp__irreflexive,axiom,
% 3.22/1.79      ! [Xs: list @ a] :
% 3.22/1.79        ( ! [X: a] :
% 3.22/1.79            ~ ( less @ X @ X )
% 3.22/1.79       => ~ ( lexordp @ a @ less @ Xs @ Xs ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_17_local_OgreaterThan__iff,axiom,
% 3.22/1.79      ! [I: a,K: a] :
% 3.22/1.79        ( ( member @ a @ I @ ( set_greaterThan @ a @ less @ K ) )
% 3.22/1.79        = ( less @ K @ I ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_18_local_OlessThan__iff,axiom,
% 3.22/1.79      ! [I: a,K: a] :
% 3.22/1.79        ( ( member @ a @ I @ ( set_lessThan @ a @ less @ K ) )
% 3.22/1.79        = ( less @ I @ K ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_19_lzip_Oexhaust,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,Xs: coinductive_llist @ A,Ys: coinductive_llist @ B] :
% 3.22/1.79        ( ~ ( ( coinductive_lnull @ A @ Xs )
% 3.22/1.79            | ( coinductive_lnull @ B @ Ys ) )
% 3.22/1.79       => ~ ( ~ ( coinductive_lnull @ A @ Xs )
% 3.22/1.79           => ( coinductive_lnull @ B @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_20_lappend_Oexhaust,axiom,
% 3.22/1.79      ! [A: $tType,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 3.22/1.79        ( ( ( coinductive_lnull @ A @ Xs )
% 3.22/1.79         => ~ ( coinductive_lnull @ A @ Ys ) )
% 3.22/1.79       => ( ~ ( coinductive_lnull @ A @ Xs )
% 3.22/1.79          | ~ ( coinductive_lnull @ A @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_21_ord_Olmerge_Octr_I1_J,axiom,
% 3.22/1.79      ! [A: $tType,Xs: coinductive_llist @ A,Ys: coinductive_llist @ A,Less: A > A > $o] :
% 3.22/1.79        ( ( ( coinductive_lnull @ A @ Xs )
% 3.22/1.79          | ( coinductive_lnull @ A @ Ys ) )
% 3.22/1.79       => ( ( hammin1328233080lmerge @ A @ Less @ Xs @ Ys )
% 3.22/1.79          = ( coinductive_LNil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_22_ord__class_Olmerge_Odisc_I2_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( ord @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 3.22/1.79            ( ~ ( coinductive_lnull @ A @ Xs )
% 3.22/1.79           => ( ~ ( coinductive_lnull @ A @ Ys )
% 3.22/1.79             => ~ ( coinductive_lnull @ A @ ( hammin1138290136lmerge @ A @ Xs @ Ys ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_23_local_Olexordp__into__lexordp__eq,axiom,
% 3.22/1.79      ! [Xs: list @ a,Ys: list @ a] :
% 3.22/1.79        ( ( lexordp @ a @ less @ Xs @ Ys )
% 3.22/1.79       => ( lexordp_eq @ a @ less @ Xs @ Ys ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_24_lnull__def,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( coinductive_lnull @ A )
% 3.22/1.79        = ( ^ [Llist: coinductive_llist @ A] :
% 3.22/1.79              ( Llist
% 3.22/1.79              = ( coinductive_LNil @ A ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_25_llist_Ocollapse_I1_J,axiom,
% 3.22/1.79      ! [A: $tType,Llist2: coinductive_llist @ A] :
% 3.22/1.79        ( ( coinductive_lnull @ A @ Llist2 )
% 3.22/1.79       => ( Llist2
% 3.22/1.79          = ( coinductive_LNil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_26_llist_OdiscI_I1_J,axiom,
% 3.22/1.79      ! [A: $tType,Llist2: coinductive_llist @ A] :
% 3.22/1.79        ( ( Llist2
% 3.22/1.79          = ( coinductive_LNil @ A ) )
% 3.22/1.79       => ( coinductive_lnull @ A @ Llist2 ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_27_llist_Odisc_I1_J,axiom,
% 3.22/1.79      ! [A: $tType] : ( coinductive_lnull @ A @ ( coinductive_LNil @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_28_ord__class_Olmerge_Octr_I1_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( ord @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 3.22/1.79            ( ( ( coinductive_lnull @ A @ Xs )
% 3.22/1.79              | ( coinductive_lnull @ A @ Ys ) )
% 3.22/1.79           => ( ( hammin1138290136lmerge @ A @ Xs @ Ys )
% 3.22/1.79              = ( coinductive_LNil @ A ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_29_ord__class_Olmerge_Odisc__iff_I1_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( ord @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 3.22/1.79            ( ( coinductive_lnull @ A @ ( hammin1138290136lmerge @ A @ Xs @ Ys ) )
% 3.22/1.79            = ( ( coinductive_lnull @ A @ Xs )
% 3.22/1.79              | ( coinductive_lnull @ A @ Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_30_ord__class_Olmerge_Odisc__iff_I2_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( ord @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 3.22/1.79            ( ( ~ ( coinductive_lnull @ A @ ( hammin1138290136lmerge @ A @ Xs @ Ys ) ) )
% 3.22/1.79            = ( ~ ( coinductive_lnull @ A @ Xs )
% 3.22/1.79              & ~ ( coinductive_lnull @ A @ Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_31_ord__class_Olmerge_Odisc_I1_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( ord @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [Xs: coinductive_llist @ A,Ys: coinductive_llist @ A] :
% 3.22/1.79            ( ( ( coinductive_lnull @ A @ Xs )
% 3.22/1.79              | ( coinductive_lnull @ A @ Ys ) )
% 3.22/1.79           => ( coinductive_lnull @ A @ ( hammin1138290136lmerge @ A @ Xs @ Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_32_local_OgreaterThanLessThan__eq,axiom,
% 3.22/1.79      ! [A2: a,B2: a] :
% 3.22/1.79        ( ( set_gr1161524159ssThan @ a @ less @ A2 @ B2 )
% 3.22/1.79        = ( inf_inf @ ( set @ a ) @ ( set_greaterThan @ a @ less @ A2 ) @ ( set_lessThan @ a @ less @ B2 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_33_local_OgreaterThanLessThan__def,axiom,
% 3.22/1.79      ! [L: a,U: a] :
% 3.22/1.79        ( ( set_gr1161524159ssThan @ a @ less @ L @ U )
% 3.22/1.79        = ( inf_inf @ ( set @ a ) @ ( set_greaterThan @ a @ less @ L ) @ ( set_lessThan @ a @ less @ U ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_34_local_Olexordp__eq_ONil,axiom,
% 3.22/1.79      ! [Ys: list @ a] : ( lexordp_eq @ a @ less @ ( nil @ a ) @ Ys ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_35_local_Olexordp__eq_OCons__eq,axiom,
% 3.22/1.79      ! [X2: a,Y: a,Xs: list @ a,Ys: list @ a] :
% 3.22/1.79        ( ~ ( less @ X2 @ Y )
% 3.22/1.79       => ( ~ ( less @ Y @ X2 )
% 3.22/1.79         => ( ( lexordp_eq @ a @ less @ Xs @ Ys )
% 3.22/1.79           => ( lexordp_eq @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( cons @ a @ Y @ Ys ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_36_local_Olexordp__eq_OCons,axiom,
% 3.22/1.79      ! [X2: a,Y: a,Xs: list @ a,Ys: list @ a] :
% 3.22/1.79        ( ( less @ X2 @ Y )
% 3.22/1.79       => ( lexordp_eq @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( cons @ a @ Y @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_37_ord_Olexordp__into__lexordp__eq,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ( lexordp @ A @ Less @ Xs @ Ys )
% 3.22/1.79       => ( lexordp_eq @ A @ Less @ Xs @ Ys ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_38_local_Olexordp_OCons__eq,axiom,
% 3.22/1.79      ! [X2: a,Y: a,Xs: list @ a,Ys: list @ a] :
% 3.22/1.79        ( ~ ( less @ X2 @ Y )
% 3.22/1.79       => ( ~ ( less @ Y @ X2 )
% 3.22/1.79         => ( ( lexordp @ a @ less @ Xs @ Ys )
% 3.22/1.79           => ( lexordp @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( cons @ a @ Y @ Ys ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_39_local_Olexordp_OCons,axiom,
% 3.22/1.79      ! [X2: a,Y: a,Xs: list @ a,Ys: list @ a] :
% 3.22/1.79        ( ( less @ X2 @ Y )
% 3.22/1.79       => ( lexordp @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( cons @ a @ Y @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_40_local_Olexordp__append__leftI,axiom,
% 3.22/1.79      ! [Us: list @ a,Vs: list @ a,Xs: list @ a] :
% 3.22/1.79        ( ( lexordp @ a @ less @ Us @ Vs )
% 3.22/1.79       => ( lexordp @ a @ less @ ( append @ a @ Xs @ Us ) @ ( append @ a @ Xs @ Vs ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_41_local_Olexordp__append__leftD,axiom,
% 3.22/1.79      ! [Xs: list @ a,Us: list @ a,Vs: list @ a] :
% 3.22/1.79        ( ( lexordp @ a @ less @ ( append @ a @ Xs @ Us ) @ ( append @ a @ Xs @ Vs ) )
% 3.22/1.79       => ( ! [A3: a] :
% 3.22/1.79              ~ ( less @ A3 @ A3 )
% 3.22/1.79         => ( lexordp @ a @ less @ Us @ Vs ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_42_list_Oinject,axiom,
% 3.22/1.79      ! [A: $tType,X21: A,X22: list @ A,Y21: A,Y22: list @ A] :
% 3.22/1.79        ( ( ( cons @ A @ X21 @ X22 )
% 3.22/1.79          = ( cons @ A @ Y21 @ Y22 ) )
% 3.22/1.79        = ( ( X21 = Y21 )
% 3.22/1.79          & ( X22 = Y22 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_43_mem__Collect__eq,axiom,
% 3.22/1.79      ! [A: $tType,A2: A,P: A > $o] :
% 3.22/1.79        ( ( member @ A @ A2 @ ( collect @ A @ P ) )
% 3.22/1.79        = ( P @ A2 ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_44_Collect__mem__eq,axiom,
% 3.22/1.79      ! [A: $tType,A4: set @ A] :
% 3.22/1.79        ( ( collect @ A
% 3.22/1.79          @ ^ [X3: A] : ( member @ A @ X3 @ A4 ) )
% 3.22/1.79        = A4 ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_45_Collect__cong,axiom,
% 3.22/1.79      ! [A: $tType,P: A > $o,Q: A > $o] :
% 3.22/1.79        ( ! [X: A] :
% 3.22/1.79            ( ( P @ X )
% 3.22/1.79            = ( Q @ X ) )
% 3.22/1.79       => ( ( collect @ A @ P )
% 3.22/1.79          = ( collect @ A @ Q ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_46_ext,axiom,
% 3.22/1.79      ! [B: $tType,A: $tType,F: A > B,G: A > B] :
% 3.22/1.79        ( ! [X: A] :
% 3.22/1.79            ( ( F @ X )
% 3.22/1.79            = ( G @ X ) )
% 3.22/1.79       => ( F = G ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_47_same__append__eq,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 3.22/1.79        ( ( ( append @ A @ Xs @ Ys )
% 3.22/1.79          = ( append @ A @ Xs @ Zs ) )
% 3.22/1.79        = ( Ys = Zs ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_48_append__same__eq,axiom,
% 3.22/1.79      ! [A: $tType,Ys: list @ A,Xs: list @ A,Zs: list @ A] :
% 3.22/1.79        ( ( ( append @ A @ Ys @ Xs )
% 3.22/1.79          = ( append @ A @ Zs @ Xs ) )
% 3.22/1.79        = ( Ys = Zs ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_49_append__assoc,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 3.22/1.79        ( ( append @ A @ ( append @ A @ Xs @ Ys ) @ Zs )
% 3.22/1.79        = ( append @ A @ Xs @ ( append @ A @ Ys @ Zs ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_50_local_Olexordp_ONil,axiom,
% 3.22/1.79      ! [Y: a,Ys: list @ a] : ( lexordp @ a @ less @ ( nil @ a ) @ ( cons @ a @ Y @ Ys ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_51_local_Olexordp_Ocases,axiom,
% 3.22/1.79      ! [A1: list @ a,A22: list @ a] :
% 3.22/1.79        ( ( lexordp @ a @ less @ A1 @ A22 )
% 3.22/1.79       => ( ( ( A1
% 3.22/1.79              = ( nil @ a ) )
% 3.22/1.79           => ! [Y2: a,Ys2: list @ a] :
% 3.22/1.79                ( A22
% 3.22/1.79               != ( cons @ a @ Y2 @ Ys2 ) ) )
% 3.22/1.79         => ( ! [X: a] :
% 3.22/1.79                ( ? [Xs2: list @ a] :
% 3.22/1.79                    ( A1
% 3.22/1.79                    = ( cons @ a @ X @ Xs2 ) )
% 3.22/1.79               => ! [Y2: a] :
% 3.22/1.79                    ( ? [Ys2: list @ a] :
% 3.22/1.79                        ( A22
% 3.22/1.79                        = ( cons @ a @ Y2 @ Ys2 ) )
% 3.22/1.79                   => ~ ( less @ X @ Y2 ) ) )
% 3.22/1.79           => ~ ! [X: a,Y2: a,Xs2: list @ a] :
% 3.22/1.79                  ( ( A1
% 3.22/1.79                    = ( cons @ a @ X @ Xs2 ) )
% 3.22/1.79                 => ! [Ys2: list @ a] :
% 3.22/1.79                      ( ( A22
% 3.22/1.79                        = ( cons @ a @ Y2 @ Ys2 ) )
% 3.22/1.79                     => ( ~ ( less @ X @ Y2 )
% 3.22/1.79                       => ( ~ ( less @ Y2 @ X )
% 3.22/1.79                         => ~ ( lexordp @ a @ less @ Xs2 @ Ys2 ) ) ) ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_52_local_Olexordp_Oinducts,axiom,
% 3.22/1.79      ! [X1: list @ a,X23: list @ a,P: ( list @ a ) > ( list @ a ) > $o] :
% 3.22/1.79        ( ( lexordp @ a @ less @ X1 @ X23 )
% 3.22/1.79       => ( ! [Y2: a,Ys2: list @ a] : ( P @ ( nil @ a ) @ ( cons @ a @ Y2 @ Ys2 ) )
% 3.22/1.79         => ( ! [X: a,Y2: a,Xs2: list @ a,Ys2: list @ a] :
% 3.22/1.79                ( ( less @ X @ Y2 )
% 3.22/1.79               => ( P @ ( cons @ a @ X @ Xs2 ) @ ( cons @ a @ Y2 @ Ys2 ) ) )
% 3.22/1.79           => ( ! [X: a,Y2: a,Xs2: list @ a,Ys2: list @ a] :
% 3.22/1.79                  ( ~ ( less @ X @ Y2 )
% 3.22/1.79                 => ( ~ ( less @ Y2 @ X )
% 3.22/1.79                   => ( ( lexordp @ a @ less @ Xs2 @ Ys2 )
% 3.22/1.79                     => ( ( P @ Xs2 @ Ys2 )
% 3.22/1.79                       => ( P @ ( cons @ a @ X @ Xs2 ) @ ( cons @ a @ Y2 @ Ys2 ) ) ) ) ) )
% 3.22/1.79             => ( P @ X1 @ X23 ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_53_local_Olexordp_Osimps,axiom,
% 3.22/1.79      ! [A1: list @ a,A22: list @ a] :
% 3.22/1.79        ( ( lexordp @ a @ less @ A1 @ A22 )
% 3.22/1.79        = ( ? [Y3: a,Ys3: list @ a] :
% 3.22/1.79              ( ( A1
% 3.22/1.79                = ( nil @ a ) )
% 3.22/1.79              & ( A22
% 3.22/1.79                = ( cons @ a @ Y3 @ Ys3 ) ) )
% 3.22/1.79          | ? [X3: a,Y3: a,Xs3: list @ a,Ys3: list @ a] :
% 3.22/1.79              ( ( A1
% 3.22/1.79                = ( cons @ a @ X3 @ Xs3 ) )
% 3.22/1.79              & ( A22
% 3.22/1.79                = ( cons @ a @ Y3 @ Ys3 ) )
% 3.22/1.79              & ( less @ X3 @ Y3 ) )
% 3.22/1.79          | ? [X3: a,Y3: a,Xs3: list @ a,Ys3: list @ a] :
% 3.22/1.79              ( ( A1
% 3.22/1.79                = ( cons @ a @ X3 @ Xs3 ) )
% 3.22/1.79              & ( A22
% 3.22/1.79                = ( cons @ a @ Y3 @ Ys3 ) )
% 3.22/1.79              & ~ ( less @ X3 @ Y3 )
% 3.22/1.79              & ~ ( less @ Y3 @ X3 )
% 3.22/1.79              & ( lexordp @ a @ less @ Xs3 @ Ys3 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_54_local_Olexordp__eq_Ocases,axiom,
% 3.22/1.79      ! [A1: list @ a,A22: list @ a] :
% 3.22/1.79        ( ( lexordp_eq @ a @ less @ A1 @ A22 )
% 3.22/1.79       => ( ( ( A1
% 3.22/1.79              = ( nil @ a ) )
% 3.22/1.79           => ! [Ys2: list @ a] : ( A22 != Ys2 ) )
% 3.22/1.79         => ( ! [X: a] :
% 3.22/1.79                ( ? [Xs2: list @ a] :
% 3.22/1.79                    ( A1
% 3.22/1.79                    = ( cons @ a @ X @ Xs2 ) )
% 3.22/1.79               => ! [Y2: a] :
% 3.22/1.79                    ( ? [Ys2: list @ a] :
% 3.22/1.79                        ( A22
% 3.22/1.79                        = ( cons @ a @ Y2 @ Ys2 ) )
% 3.22/1.79                   => ~ ( less @ X @ Y2 ) ) )
% 3.22/1.79           => ~ ! [X: a,Y2: a,Xs2: list @ a] :
% 3.22/1.79                  ( ( A1
% 3.22/1.79                    = ( cons @ a @ X @ Xs2 ) )
% 3.22/1.79                 => ! [Ys2: list @ a] :
% 3.22/1.79                      ( ( A22
% 3.22/1.79                        = ( cons @ a @ Y2 @ Ys2 ) )
% 3.22/1.79                     => ( ~ ( less @ X @ Y2 )
% 3.22/1.79                       => ( ~ ( less @ Y2 @ X )
% 3.22/1.79                         => ~ ( lexordp_eq @ a @ less @ Xs2 @ Ys2 ) ) ) ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_55_local_Olexordp__eq_Oinducts,axiom,
% 3.22/1.79      ! [X1: list @ a,X23: list @ a,P: ( list @ a ) > ( list @ a ) > $o] :
% 3.22/1.79        ( ( lexordp_eq @ a @ less @ X1 @ X23 )
% 3.22/1.79       => ( ! [X12: list @ a] : ( P @ ( nil @ a ) @ X12 )
% 3.22/1.79         => ( ! [X: a,Y2: a,Xs2: list @ a,Ys2: list @ a] :
% 3.22/1.79                ( ( less @ X @ Y2 )
% 3.22/1.79               => ( P @ ( cons @ a @ X @ Xs2 ) @ ( cons @ a @ Y2 @ Ys2 ) ) )
% 3.22/1.79           => ( ! [X: a,Y2: a,Xs2: list @ a,Ys2: list @ a] :
% 3.22/1.79                  ( ~ ( less @ X @ Y2 )
% 3.22/1.79                 => ( ~ ( less @ Y2 @ X )
% 3.22/1.79                   => ( ( lexordp_eq @ a @ less @ Xs2 @ Ys2 )
% 3.22/1.79                     => ( ( P @ Xs2 @ Ys2 )
% 3.22/1.79                       => ( P @ ( cons @ a @ X @ Xs2 ) @ ( cons @ a @ Y2 @ Ys2 ) ) ) ) ) )
% 3.22/1.79             => ( P @ X1 @ X23 ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_56_local_Olexordp__eq_Osimps,axiom,
% 3.22/1.79      ! [A1: list @ a,A22: list @ a] :
% 3.22/1.79        ( ( lexordp_eq @ a @ less @ A1 @ A22 )
% 3.22/1.79        = ( ? [Ys3: list @ a] :
% 3.22/1.79              ( ( A1
% 3.22/1.79                = ( nil @ a ) )
% 3.22/1.79              & ( A22 = Ys3 ) )
% 3.22/1.79          | ? [X3: a,Y3: a,Xs3: list @ a,Ys3: list @ a] :
% 3.22/1.79              ( ( A1
% 3.22/1.79                = ( cons @ a @ X3 @ Xs3 ) )
% 3.22/1.79              & ( A22
% 3.22/1.79                = ( cons @ a @ Y3 @ Ys3 ) )
% 3.22/1.79              & ( less @ X3 @ Y3 ) )
% 3.22/1.79          | ? [X3: a,Y3: a,Xs3: list @ a,Ys3: list @ a] :
% 3.22/1.79              ( ( A1
% 3.22/1.79                = ( cons @ a @ X3 @ Xs3 ) )
% 3.22/1.79              & ( A22
% 3.22/1.79                = ( cons @ a @ Y3 @ Ys3 ) )
% 3.22/1.79              & ~ ( less @ X3 @ Y3 )
% 3.22/1.79              & ~ ( less @ Y3 @ X3 )
% 3.22/1.79              & ( lexordp_eq @ a @ less @ Xs3 @ Ys3 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_57_local_Olexordp__append__left__rightI,axiom,
% 3.22/1.79      ! [X2: a,Y: a,Us: list @ a,Xs: list @ a,Ys: list @ a] :
% 3.22/1.79        ( ( less @ X2 @ Y )
% 3.22/1.79       => ( lexordp @ a @ less @ ( append @ a @ Us @ ( cons @ a @ X2 @ Xs ) ) @ ( append @ a @ Us @ ( cons @ a @ Y @ Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_58_local_Olexordp__append__rightI,axiom,
% 3.22/1.79      ! [Ys: list @ a,Xs: list @ a] :
% 3.22/1.79        ( ( Ys
% 3.22/1.79         != ( nil @ a ) )
% 3.22/1.79       => ( lexordp @ a @ less @ Xs @ ( append @ a @ Xs @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_59_append__is__Nil__conv,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ( ( append @ A @ Xs @ Ys )
% 3.22/1.79          = ( nil @ A ) )
% 3.22/1.79        = ( ( Xs
% 3.22/1.79            = ( nil @ A ) )
% 3.22/1.79          & ( Ys
% 3.22/1.79            = ( nil @ A ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_60_Nil__is__append__conv,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ( ( nil @ A )
% 3.22/1.79          = ( append @ A @ Xs @ Ys ) )
% 3.22/1.79        = ( ( Xs
% 3.22/1.79            = ( nil @ A ) )
% 3.22/1.79          & ( Ys
% 3.22/1.79            = ( nil @ A ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_61_self__append__conv2,axiom,
% 3.22/1.79      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 3.22/1.79        ( ( Ys
% 3.22/1.79          = ( append @ A @ Xs @ Ys ) )
% 3.22/1.79        = ( Xs
% 3.22/1.79          = ( nil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_62_append__self__conv2,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ( ( append @ A @ Xs @ Ys )
% 3.22/1.79          = Ys )
% 3.22/1.79        = ( Xs
% 3.22/1.79          = ( nil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_63_self__append__conv,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ( Xs
% 3.22/1.79          = ( append @ A @ Xs @ Ys ) )
% 3.22/1.79        = ( Ys
% 3.22/1.79          = ( nil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_64_append__self__conv,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ( ( append @ A @ Xs @ Ys )
% 3.22/1.79          = Xs )
% 3.22/1.79        = ( Ys
% 3.22/1.79          = ( nil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_65_append__Nil2,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A] :
% 3.22/1.79        ( ( append @ A @ Xs @ ( nil @ A ) )
% 3.22/1.79        = Xs ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_66_ord_Olexordp__simps_I3_J,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,X2: A,Xs: list @ A,Y: A,Ys: list @ A] :
% 3.22/1.79        ( ( lexordp @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( cons @ A @ Y @ Ys ) )
% 3.22/1.79        = ( ( Less @ X2 @ Y )
% 3.22/1.79          | ( ~ ( Less @ Y @ X2 )
% 3.22/1.79            & ( lexordp @ A @ Less @ Xs @ Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_67_ord_Olexordp__eq__simps_I4_J,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,X2: A,Xs: list @ A,Y: A,Ys: list @ A] :
% 3.22/1.79        ( ( lexordp_eq @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( cons @ A @ Y @ Ys ) )
% 3.22/1.79        = ( ( Less @ X2 @ Y )
% 3.22/1.79          | ( ~ ( Less @ Y @ X2 )
% 3.22/1.79            & ( lexordp_eq @ A @ Less @ Xs @ Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_68_ord_Olexordp__simps_I1_J,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,Ys: list @ A] :
% 3.22/1.79        ( ( lexordp @ A @ Less @ ( nil @ A ) @ Ys )
% 3.22/1.79        = ( Ys
% 3.22/1.79         != ( nil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_69_ord_Olexordp__simps_I2_J,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,Xs: list @ A] :
% 3.22/1.79        ~ ( lexordp @ A @ Less @ Xs @ ( nil @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_70_ord_Olexordp__eq__simps_I1_J,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,Ys: list @ A] : ( lexordp_eq @ A @ Less @ ( nil @ A ) @ Ys ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_71_ord_Olexordp__eq__simps_I2_J,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,Xs: list @ A] :
% 3.22/1.79        ( ( lexordp_eq @ A @ Less @ Xs @ ( nil @ A ) )
% 3.22/1.79        = ( Xs
% 3.22/1.79          = ( nil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_72_append1__eq__conv,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,X2: A,Ys: list @ A,Y: A] :
% 3.22/1.79        ( ( ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) )
% 3.22/1.79          = ( append @ A @ Ys @ ( cons @ A @ Y @ ( nil @ A ) ) ) )
% 3.22/1.79        = ( ( Xs = Ys )
% 3.22/1.79          & ( X2 = Y ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_73_ord_Olexordp__eq__simps_I3_J,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,X2: A,Xs: list @ A] :
% 3.22/1.79        ~ ( lexordp_eq @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( nil @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_74_local_Olexordp__simps_I3_J,axiom,
% 3.22/1.79      ! [X2: a,Xs: list @ a,Y: a,Ys: list @ a] :
% 3.22/1.79        ( ( lexordp @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( cons @ a @ Y @ Ys ) )
% 3.22/1.79        = ( ( less @ X2 @ Y )
% 3.22/1.79          | ( ~ ( less @ Y @ X2 )
% 3.22/1.79            & ( lexordp @ a @ less @ Xs @ Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_75_local_Olexordp__eq__simps_I4_J,axiom,
% 3.22/1.79      ! [X2: a,Xs: list @ a,Y: a,Ys: list @ a] :
% 3.22/1.79        ( ( lexordp_eq @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( cons @ a @ Y @ Ys ) )
% 3.22/1.79        = ( ( less @ X2 @ Y )
% 3.22/1.79          | ( ~ ( less @ Y @ X2 )
% 3.22/1.79            & ( lexordp_eq @ a @ less @ Xs @ Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_76_local_Olexordp__simps_I2_J,axiom,
% 3.22/1.79      ! [Xs: list @ a] :
% 3.22/1.79        ~ ( lexordp @ a @ less @ Xs @ ( nil @ a ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_77_local_Olexordp__simps_I1_J,axiom,
% 3.22/1.79      ! [Ys: list @ a] :
% 3.22/1.79        ( ( lexordp @ a @ less @ ( nil @ a ) @ Ys )
% 3.22/1.79        = ( Ys
% 3.22/1.79         != ( nil @ a ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_78_local_Olexordp__eq__simps_I2_J,axiom,
% 3.22/1.79      ! [Xs: list @ a] :
% 3.22/1.79        ( ( lexordp_eq @ a @ less @ Xs @ ( nil @ a ) )
% 3.22/1.79        = ( Xs
% 3.22/1.79          = ( nil @ a ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_79_local_Olexordp__eq__simps_I1_J,axiom,
% 3.22/1.79      ! [Ys: list @ a] : ( lexordp_eq @ a @ less @ ( nil @ a ) @ Ys ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_80_local_Olexordp__eq__simps_I3_J,axiom,
% 3.22/1.79      ! [X2: a,Xs: list @ a] :
% 3.22/1.79        ~ ( lexordp_eq @ a @ less @ ( cons @ a @ X2 @ Xs ) @ ( nil @ a ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_81_ord_Olexordp_ONil,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,Y: A,Ys: list @ A] : ( lexordp @ A @ Less @ ( nil @ A ) @ ( cons @ A @ Y @ Ys ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_82_ord_Olexordp_Ocases,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,A1: list @ A,A22: list @ A] :
% 3.22/1.79        ( ( lexordp @ A @ Less @ A1 @ A22 )
% 3.22/1.79       => ( ( ( A1
% 3.22/1.79              = ( nil @ A ) )
% 3.22/1.79           => ! [Y2: A,Ys2: list @ A] :
% 3.22/1.79                ( A22
% 3.22/1.79               != ( cons @ A @ Y2 @ Ys2 ) ) )
% 3.22/1.79         => ( ! [X: A] :
% 3.22/1.79                ( ? [Xs2: list @ A] :
% 3.22/1.79                    ( A1
% 3.22/1.79                    = ( cons @ A @ X @ Xs2 ) )
% 3.22/1.79               => ! [Y2: A] :
% 3.22/1.79                    ( ? [Ys2: list @ A] :
% 3.22/1.79                        ( A22
% 3.22/1.79                        = ( cons @ A @ Y2 @ Ys2 ) )
% 3.22/1.79                   => ~ ( Less @ X @ Y2 ) ) )
% 3.22/1.79           => ~ ! [X: A,Y2: A,Xs2: list @ A] :
% 3.22/1.79                  ( ( A1
% 3.22/1.79                    = ( cons @ A @ X @ Xs2 ) )
% 3.22/1.79                 => ! [Ys2: list @ A] :
% 3.22/1.79                      ( ( A22
% 3.22/1.79                        = ( cons @ A @ Y2 @ Ys2 ) )
% 3.22/1.79                     => ( ~ ( Less @ X @ Y2 )
% 3.22/1.79                       => ( ~ ( Less @ Y2 @ X )
% 3.22/1.79                         => ~ ( lexordp @ A @ Less @ Xs2 @ Ys2 ) ) ) ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_83_ord_Olexordp_Osimps,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( lexordp @ A )
% 3.22/1.79        = ( ^ [Less2: A > A > $o,A12: list @ A,A23: list @ A] :
% 3.22/1.79              ( ? [Y3: A,Ys3: list @ A] :
% 3.22/1.79                  ( ( A12
% 3.22/1.79                    = ( nil @ A ) )
% 3.22/1.79                  & ( A23
% 3.22/1.79                    = ( cons @ A @ Y3 @ Ys3 ) ) )
% 3.22/1.79              | ? [X3: A,Y3: A,Xs3: list @ A,Ys3: list @ A] :
% 3.22/1.79                  ( ( A12
% 3.22/1.79                    = ( cons @ A @ X3 @ Xs3 ) )
% 3.22/1.79                  & ( A23
% 3.22/1.79                    = ( cons @ A @ Y3 @ Ys3 ) )
% 3.22/1.79                  & ( Less2 @ X3 @ Y3 ) )
% 3.22/1.79              | ? [X3: A,Y3: A,Xs3: list @ A,Ys3: list @ A] :
% 3.22/1.79                  ( ( A12
% 3.22/1.79                    = ( cons @ A @ X3 @ Xs3 ) )
% 3.22/1.79                  & ( A23
% 3.22/1.79                    = ( cons @ A @ Y3 @ Ys3 ) )
% 3.22/1.79                  & ~ ( Less2 @ X3 @ Y3 )
% 3.22/1.79                  & ~ ( Less2 @ Y3 @ X3 )
% 3.22/1.79                  & ( lexordp @ A @ Less2 @ Xs3 @ Ys3 ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_84_ord_Olexordp_Oinducts,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,X1: list @ A,X23: list @ A,P: ( list @ A ) > ( list @ A ) > $o] :
% 3.22/1.79        ( ( lexordp @ A @ Less @ X1 @ X23 )
% 3.22/1.79       => ( ! [Y2: A,Ys2: list @ A] : ( P @ ( nil @ A ) @ ( cons @ A @ Y2 @ Ys2 ) )
% 3.22/1.79         => ( ! [X: A,Y2: A,Xs2: list @ A,Ys2: list @ A] :
% 3.22/1.79                ( ( Less @ X @ Y2 )
% 3.22/1.79               => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ A @ Y2 @ Ys2 ) ) )
% 3.22/1.79           => ( ! [X: A,Y2: A,Xs2: list @ A,Ys2: list @ A] :
% 3.22/1.79                  ( ~ ( Less @ X @ Y2 )
% 3.22/1.79                 => ( ~ ( Less @ Y2 @ X )
% 3.22/1.79                   => ( ( lexordp @ A @ Less @ Xs2 @ Ys2 )
% 3.22/1.79                     => ( ( P @ Xs2 @ Ys2 )
% 3.22/1.79                       => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ A @ Y2 @ Ys2 ) ) ) ) ) )
% 3.22/1.79             => ( P @ X1 @ X23 ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_85_ord_Olexordp__eq_Ocases,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,A1: list @ A,A22: list @ A] :
% 3.22/1.79        ( ( lexordp_eq @ A @ Less @ A1 @ A22 )
% 3.22/1.79       => ( ( ( A1
% 3.22/1.79              = ( nil @ A ) )
% 3.22/1.79           => ! [Ys2: list @ A] : ( A22 != Ys2 ) )
% 3.22/1.79         => ( ! [X: A] :
% 3.22/1.79                ( ? [Xs2: list @ A] :
% 3.22/1.79                    ( A1
% 3.22/1.79                    = ( cons @ A @ X @ Xs2 ) )
% 3.22/1.79               => ! [Y2: A] :
% 3.22/1.79                    ( ? [Ys2: list @ A] :
% 3.22/1.79                        ( A22
% 3.22/1.79                        = ( cons @ A @ Y2 @ Ys2 ) )
% 3.22/1.79                   => ~ ( Less @ X @ Y2 ) ) )
% 3.22/1.79           => ~ ! [X: A,Y2: A,Xs2: list @ A] :
% 3.22/1.79                  ( ( A1
% 3.22/1.79                    = ( cons @ A @ X @ Xs2 ) )
% 3.22/1.79                 => ! [Ys2: list @ A] :
% 3.22/1.79                      ( ( A22
% 3.22/1.79                        = ( cons @ A @ Y2 @ Ys2 ) )
% 3.22/1.79                     => ( ~ ( Less @ X @ Y2 )
% 3.22/1.79                       => ( ~ ( Less @ Y2 @ X )
% 3.22/1.79                         => ~ ( lexordp_eq @ A @ Less @ Xs2 @ Ys2 ) ) ) ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_86_ord_Olexordp__eq_Osimps,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( lexordp_eq @ A )
% 3.22/1.79        = ( ^ [Less2: A > A > $o,A12: list @ A,A23: list @ A] :
% 3.22/1.79              ( ? [Ys3: list @ A] :
% 3.22/1.79                  ( ( A12
% 3.22/1.79                    = ( nil @ A ) )
% 3.22/1.79                  & ( A23 = Ys3 ) )
% 3.22/1.79              | ? [X3: A,Y3: A,Xs3: list @ A,Ys3: list @ A] :
% 3.22/1.79                  ( ( A12
% 3.22/1.79                    = ( cons @ A @ X3 @ Xs3 ) )
% 3.22/1.79                  & ( A23
% 3.22/1.79                    = ( cons @ A @ Y3 @ Ys3 ) )
% 3.22/1.79                  & ( Less2 @ X3 @ Y3 ) )
% 3.22/1.79              | ? [X3: A,Y3: A,Xs3: list @ A,Ys3: list @ A] :
% 3.22/1.79                  ( ( A12
% 3.22/1.79                    = ( cons @ A @ X3 @ Xs3 ) )
% 3.22/1.79                  & ( A23
% 3.22/1.79                    = ( cons @ A @ Y3 @ Ys3 ) )
% 3.22/1.79                  & ~ ( Less2 @ X3 @ Y3 )
% 3.22/1.79                  & ~ ( Less2 @ Y3 @ X3 )
% 3.22/1.79                  & ( lexordp_eq @ A @ Less2 @ Xs3 @ Ys3 ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_87_ord_Olexordp__eq_Oinducts,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,X1: list @ A,X23: list @ A,P: ( list @ A ) > ( list @ A ) > $o] :
% 3.22/1.79        ( ( lexordp_eq @ A @ Less @ X1 @ X23 )
% 3.22/1.79       => ( ! [X12: list @ A] : ( P @ ( nil @ A ) @ X12 )
% 3.22/1.79         => ( ! [X: A,Y2: A,Xs2: list @ A,Ys2: list @ A] :
% 3.22/1.79                ( ( Less @ X @ Y2 )
% 3.22/1.79               => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ A @ Y2 @ Ys2 ) ) )
% 3.22/1.79           => ( ! [X: A,Y2: A,Xs2: list @ A,Ys2: list @ A] :
% 3.22/1.79                  ( ~ ( Less @ X @ Y2 )
% 3.22/1.79                 => ( ~ ( Less @ Y2 @ X )
% 3.22/1.79                   => ( ( lexordp_eq @ A @ Less @ Xs2 @ Ys2 )
% 3.22/1.79                     => ( ( P @ Xs2 @ Ys2 )
% 3.22/1.79                       => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ A @ Y2 @ Ys2 ) ) ) ) ) )
% 3.22/1.79             => ( P @ X1 @ X23 ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_88_ord_Olexordp__append__rightI,axiom,
% 3.22/1.79      ! [A: $tType,Ys: list @ A,Less: A > A > $o,Xs: list @ A] :
% 3.22/1.79        ( ( Ys
% 3.22/1.79         != ( nil @ A ) )
% 3.22/1.79       => ( lexordp @ A @ Less @ Xs @ ( append @ A @ Xs @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_89_ord_Olexordp__append__left__rightI,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,X2: A,Y: A,Us: list @ A,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ( Less @ X2 @ Y )
% 3.22/1.79       => ( lexordp @ A @ Less @ ( append @ A @ Us @ ( cons @ A @ X2 @ Xs ) ) @ ( append @ A @ Us @ ( cons @ A @ Y @ Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_90_map__tailrec__rev_Oinduct,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,P: ( A > B ) > ( list @ A ) > ( list @ B ) > $o,A0: A > B,A1: list @ A,A22: list @ B] :
% 3.22/1.79        ( ! [F2: A > B,X12: list @ B] : ( P @ F2 @ ( nil @ A ) @ X12 )
% 3.22/1.79       => ( ! [F2: A > B,A3: A,As: list @ A,Bs: list @ B] :
% 3.22/1.79              ( ( P @ F2 @ As @ ( cons @ B @ ( F2 @ A3 ) @ Bs ) )
% 3.22/1.79             => ( P @ F2 @ ( cons @ A @ A3 @ As ) @ Bs ) )
% 3.22/1.79         => ( P @ A0 @ A1 @ A22 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_91_append__eq__append__conv2,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A,Ts: list @ A] :
% 3.22/1.79        ( ( ( append @ A @ Xs @ Ys )
% 3.22/1.79          = ( append @ A @ Zs @ Ts ) )
% 3.22/1.79        = ( ? [Us2: list @ A] :
% 3.22/1.79              ( ( ( Xs
% 3.22/1.79                  = ( append @ A @ Zs @ Us2 ) )
% 3.22/1.79                & ( ( append @ A @ Us2 @ Ys )
% 3.22/1.79                  = Ts ) )
% 3.22/1.79              | ( ( ( append @ A @ Xs @ Us2 )
% 3.22/1.79                  = Zs )
% 3.22/1.79                & ( Ys
% 3.22/1.79                  = ( append @ A @ Us2 @ Ts ) ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_92_list__nonempty__induct,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,P: ( list @ A ) > $o] :
% 3.22/1.79        ( ( Xs
% 3.22/1.79         != ( nil @ A ) )
% 3.22/1.79       => ( ! [X: A] : ( P @ ( cons @ A @ X @ ( nil @ A ) ) )
% 3.22/1.79         => ( ! [X: A,Xs2: list @ A] :
% 3.22/1.79                ( ( Xs2
% 3.22/1.79                 != ( nil @ A ) )
% 3.22/1.79               => ( ( P @ Xs2 )
% 3.22/1.79                 => ( P @ ( cons @ A @ X @ Xs2 ) ) ) )
% 3.22/1.79           => ( P @ Xs ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_93_rev__nonempty__induct,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,P: ( list @ A ) > $o] :
% 3.22/1.79        ( ( Xs
% 3.22/1.79         != ( nil @ A ) )
% 3.22/1.79       => ( ! [X: A] : ( P @ ( cons @ A @ X @ ( nil @ A ) ) )
% 3.22/1.79         => ( ! [X: A,Xs2: list @ A] :
% 3.22/1.79                ( ( Xs2
% 3.22/1.79                 != ( nil @ A ) )
% 3.22/1.79               => ( ( P @ Xs2 )
% 3.22/1.79                 => ( P @ ( append @ A @ Xs2 @ ( cons @ A @ X @ ( nil @ A ) ) ) ) ) )
% 3.22/1.79           => ( P @ Xs ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_94_append__eq__Cons__conv,axiom,
% 3.22/1.79      ! [A: $tType,Ys: list @ A,Zs: list @ A,X2: A,Xs: list @ A] :
% 3.22/1.79        ( ( ( append @ A @ Ys @ Zs )
% 3.22/1.79          = ( cons @ A @ X2 @ Xs ) )
% 3.22/1.79        = ( ( ( Ys
% 3.22/1.79              = ( nil @ A ) )
% 3.22/1.79            & ( Zs
% 3.22/1.79              = ( cons @ A @ X2 @ Xs ) ) )
% 3.22/1.79          | ? [Ys4: list @ A] :
% 3.22/1.79              ( ( Ys
% 3.22/1.79                = ( cons @ A @ X2 @ Ys4 ) )
% 3.22/1.79              & ( ( append @ A @ Ys4 @ Zs )
% 3.22/1.79                = Xs ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_95_Cons__eq__append__conv,axiom,
% 3.22/1.79      ! [A: $tType,X2: A,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 3.22/1.79        ( ( ( cons @ A @ X2 @ Xs )
% 3.22/1.79          = ( append @ A @ Ys @ Zs ) )
% 3.22/1.79        = ( ( ( Ys
% 3.22/1.79              = ( nil @ A ) )
% 3.22/1.79            & ( ( cons @ A @ X2 @ Xs )
% 3.22/1.79              = Zs ) )
% 3.22/1.79          | ? [Ys4: list @ A] :
% 3.22/1.79              ( ( ( cons @ A @ X2 @ Ys4 )
% 3.22/1.79                = Ys )
% 3.22/1.79              & ( Xs
% 3.22/1.79                = ( append @ A @ Ys4 @ Zs ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_96_remdups__adj_Oinduct,axiom,
% 3.22/1.79      ! [A: $tType,P: ( list @ A ) > $o,A0: list @ A] :
% 3.22/1.79        ( ( P @ ( nil @ A ) )
% 3.22/1.79       => ( ! [X: A] : ( P @ ( cons @ A @ X @ ( nil @ A ) ) )
% 3.22/1.79         => ( ! [X: A,Y2: A,Xs2: list @ A] :
% 3.22/1.79                ( ( ( X = Y2 )
% 3.22/1.79                 => ( P @ ( cons @ A @ X @ Xs2 ) ) )
% 3.22/1.79               => ( ( ( X != Y2 )
% 3.22/1.79                   => ( P @ ( cons @ A @ Y2 @ Xs2 ) ) )
% 3.22/1.79                 => ( P @ ( cons @ A @ X @ ( cons @ A @ Y2 @ Xs2 ) ) ) ) )
% 3.22/1.79           => ( P @ A0 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_97_append__Cons,axiom,
% 3.22/1.79      ! [A: $tType,X2: A,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ( append @ A @ ( cons @ A @ X2 @ Xs ) @ Ys )
% 3.22/1.79        = ( cons @ A @ X2 @ ( append @ A @ Xs @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_98_remdups__adj_Ocases,axiom,
% 3.22/1.79      ! [A: $tType,X2: list @ A] :
% 3.22/1.79        ( ( X2
% 3.22/1.79         != ( nil @ A ) )
% 3.22/1.79       => ( ! [X: A] :
% 3.22/1.79              ( X2
% 3.22/1.79             != ( cons @ A @ X @ ( nil @ A ) ) )
% 3.22/1.79         => ~ ! [X: A,Y2: A,Xs2: list @ A] :
% 3.22/1.79                ( X2
% 3.22/1.79               != ( cons @ A @ X @ ( cons @ A @ Y2 @ Xs2 ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_99_append__eq__appendI,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Xs1: list @ A,Zs: list @ A,Ys: list @ A,Us: list @ A] :
% 3.22/1.79        ( ( ( append @ A @ Xs @ Xs1 )
% 3.22/1.79          = Zs )
% 3.22/1.79       => ( ( Ys
% 3.22/1.79            = ( append @ A @ Xs1 @ Us ) )
% 3.22/1.79         => ( ( append @ A @ Xs @ Ys )
% 3.22/1.79            = ( append @ A @ Zs @ Us ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_100_append__Nil,axiom,
% 3.22/1.79      ! [A: $tType,Ys: list @ A] :
% 3.22/1.79        ( ( append @ A @ ( nil @ A ) @ Ys )
% 3.22/1.79        = Ys ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_101_transpose_Ocases,axiom,
% 3.22/1.79      ! [A: $tType,X2: list @ ( list @ A )] :
% 3.22/1.79        ( ( X2
% 3.22/1.79         != ( nil @ ( list @ A ) ) )
% 3.22/1.79       => ( ! [Xss: list @ ( list @ A )] :
% 3.22/1.79              ( X2
% 3.22/1.79             != ( cons @ ( list @ A ) @ ( nil @ A ) @ Xss ) )
% 3.22/1.79         => ~ ! [X: A,Xs2: list @ A,Xss: list @ ( list @ A )] :
% 3.22/1.79                ( X2
% 3.22/1.79               != ( cons @ ( list @ A ) @ ( cons @ A @ X @ Xs2 ) @ Xss ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_102_Cons__eq__appendI,axiom,
% 3.22/1.79      ! [A: $tType,X2: A,Xs1: list @ A,Ys: list @ A,Xs: list @ A,Zs: list @ A] :
% 3.22/1.79        ( ( ( cons @ A @ X2 @ Xs1 )
% 3.22/1.79          = Ys )
% 3.22/1.79       => ( ( Xs
% 3.22/1.79            = ( append @ A @ Xs1 @ Zs ) )
% 3.22/1.79         => ( ( cons @ A @ X2 @ Xs )
% 3.22/1.79            = ( append @ A @ Ys @ Zs ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_103_not__Cons__self2,axiom,
% 3.22/1.79      ! [A: $tType,X2: A,Xs: list @ A] :
% 3.22/1.79        ( ( cons @ A @ X2 @ Xs )
% 3.22/1.79       != Xs ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_104_eq__Nil__appendI,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ( Xs = Ys )
% 3.22/1.79       => ( Xs
% 3.22/1.79          = ( append @ A @ ( nil @ A ) @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_105_splice_Oinduct,axiom,
% 3.22/1.79      ! [A: $tType,P: ( list @ A ) > ( list @ A ) > $o,A0: list @ A,A1: list @ A] :
% 3.22/1.79        ( ! [X12: list @ A] : ( P @ ( nil @ A ) @ X12 )
% 3.22/1.79       => ( ! [V: A,Va: list @ A] : ( P @ ( cons @ A @ V @ Va ) @ ( nil @ A ) )
% 3.22/1.79         => ( ! [X: A,Xs2: list @ A,Y2: A,Ys2: list @ A] :
% 3.22/1.79                ( ( P @ Xs2 @ Ys2 )
% 3.22/1.79               => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ A @ Y2 @ Ys2 ) ) )
% 3.22/1.79           => ( P @ A0 @ A1 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_106_list__induct2_H,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,P: ( list @ A ) > ( list @ B ) > $o,Xs: list @ A,Ys: list @ B] :
% 3.22/1.79        ( ( P @ ( nil @ A ) @ ( nil @ B ) )
% 3.22/1.79       => ( ! [X: A,Xs2: list @ A] : ( P @ ( cons @ A @ X @ Xs2 ) @ ( nil @ B ) )
% 3.22/1.79         => ( ! [Y2: B,Ys2: list @ B] : ( P @ ( nil @ A ) @ ( cons @ B @ Y2 @ Ys2 ) )
% 3.22/1.79           => ( ! [X: A,Xs2: list @ A,Y2: B,Ys2: list @ B] :
% 3.22/1.79                  ( ( P @ Xs2 @ Ys2 )
% 3.22/1.79                 => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ B @ Y2 @ Ys2 ) ) )
% 3.22/1.79             => ( P @ Xs @ Ys ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_107_neq__Nil__conv,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A] :
% 3.22/1.79        ( ( Xs
% 3.22/1.79         != ( nil @ A ) )
% 3.22/1.79        = ( ? [Y3: A,Ys3: list @ A] :
% 3.22/1.79              ( Xs
% 3.22/1.79              = ( cons @ A @ Y3 @ Ys3 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_108_list_Oinducts,axiom,
% 3.22/1.79      ! [A: $tType,P: ( list @ A ) > $o,List: list @ A] :
% 3.22/1.79        ( ( P @ ( nil @ A ) )
% 3.22/1.79       => ( ! [X12: A,X24: list @ A] :
% 3.22/1.79              ( ( P @ X24 )
% 3.22/1.79             => ( P @ ( cons @ A @ X12 @ X24 ) ) )
% 3.22/1.79         => ( P @ List ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_109_list_Oexhaust,axiom,
% 3.22/1.79      ! [A: $tType,Y: list @ A] :
% 3.22/1.79        ( ( Y
% 3.22/1.79         != ( nil @ A ) )
% 3.22/1.79       => ~ ! [X212: A,X222: list @ A] :
% 3.22/1.79              ( Y
% 3.22/1.79             != ( cons @ A @ X212 @ X222 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_110_rev__exhaust,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A] :
% 3.22/1.79        ( ( Xs
% 3.22/1.79         != ( nil @ A ) )
% 3.22/1.79       => ~ ! [Ys2: list @ A,Y2: A] :
% 3.22/1.79              ( Xs
% 3.22/1.79             != ( append @ A @ Ys2 @ ( cons @ A @ Y2 @ ( nil @ A ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_111_rev__induct,axiom,
% 3.22/1.79      ! [A: $tType,P: ( list @ A ) > $o,Xs: list @ A] :
% 3.22/1.79        ( ( P @ ( nil @ A ) )
% 3.22/1.79       => ( ! [X: A,Xs2: list @ A] :
% 3.22/1.79              ( ( P @ Xs2 )
% 3.22/1.79             => ( P @ ( append @ A @ Xs2 @ ( cons @ A @ X @ ( nil @ A ) ) ) ) )
% 3.22/1.79         => ( P @ Xs ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_112_list_OdiscI,axiom,
% 3.22/1.79      ! [A: $tType,List: list @ A,X21: A,X22: list @ A] :
% 3.22/1.79        ( ( List
% 3.22/1.79          = ( cons @ A @ X21 @ X22 ) )
% 3.22/1.79       => ( List
% 3.22/1.79         != ( nil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_113_list_Odistinct_I1_J,axiom,
% 3.22/1.79      ! [A: $tType,X21: A,X22: list @ A] :
% 3.22/1.79        ( ( nil @ A )
% 3.22/1.79       != ( cons @ A @ X21 @ X22 ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_114_ord_Olexordp__append__leftI,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,Us: list @ A,Vs: list @ A,Xs: list @ A] :
% 3.22/1.79        ( ( lexordp @ A @ Less @ Us @ Vs )
% 3.22/1.79       => ( lexordp @ A @ Less @ ( append @ A @ Xs @ Us ) @ ( append @ A @ Xs @ Vs ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_115_ord_Olexordp__append__leftD,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,Xs: list @ A,Us: list @ A,Vs: list @ A] :
% 3.22/1.79        ( ( lexordp @ A @ Less @ ( append @ A @ Xs @ Us ) @ ( append @ A @ Xs @ Vs ) )
% 3.22/1.79       => ( ! [A3: A] :
% 3.22/1.79              ~ ( Less @ A3 @ A3 )
% 3.22/1.79         => ( lexordp @ A @ Less @ Us @ Vs ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_116_ord_Olexordp_OCons__eq,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,X2: A,Y: A,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ~ ( Less @ X2 @ Y )
% 3.22/1.79       => ( ~ ( Less @ Y @ X2 )
% 3.22/1.79         => ( ( lexordp @ A @ Less @ Xs @ Ys )
% 3.22/1.79           => ( lexordp @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( cons @ A @ Y @ Ys ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_117_ord_Olexordp_OCons,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,X2: A,Y: A,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ( Less @ X2 @ Y )
% 3.22/1.79       => ( lexordp @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( cons @ A @ Y @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_118_ord_Olexordp__eq_OCons__eq,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,X2: A,Y: A,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ~ ( Less @ X2 @ Y )
% 3.22/1.79       => ( ~ ( Less @ Y @ X2 )
% 3.22/1.79         => ( ( lexordp_eq @ A @ Less @ Xs @ Ys )
% 3.22/1.79           => ( lexordp_eq @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( cons @ A @ Y @ Ys ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_119_ord_Olexordp__eq_OCons,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,X2: A,Y: A,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ( Less @ X2 @ Y )
% 3.22/1.79       => ( lexordp_eq @ A @ Less @ ( cons @ A @ X2 @ Xs ) @ ( cons @ A @ Y @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_120_ord_Olexordp__eq_ONil,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,Ys: list @ A] : ( lexordp_eq @ A @ Less @ ( nil @ A ) @ Ys ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_121_ord_Olexordp__irreflexive,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,Xs: list @ A] :
% 3.22/1.79        ( ! [X: A] :
% 3.22/1.79            ~ ( Less @ X @ X )
% 3.22/1.79       => ~ ( lexordp @ A @ Less @ Xs @ Xs ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_122_ord_Olexordp__eq__refl,axiom,
% 3.22/1.79      ! [A: $tType,Less: A > A > $o,Xs: list @ A] : ( lexordp_eq @ A @ Less @ Xs @ Xs ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_123_ord_OgreaterThanLessThan__def,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( set_gr1161524159ssThan @ A )
% 3.22/1.79        = ( ^ [Less2: A > A > $o,L2: A,U2: A] : ( inf_inf @ ( set @ A ) @ ( set_greaterThan @ A @ Less2 @ L2 ) @ ( set_lessThan @ A @ Less2 @ U2 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_124_ord_OgreaterThanLessThan__eq,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( set_gr1161524159ssThan @ A )
% 3.22/1.79        = ( ^ [Less2: A > A > $o,A5: A,B3: A] : ( inf_inf @ ( set @ A ) @ ( set_greaterThan @ A @ Less2 @ A5 ) @ ( set_lessThan @ A @ Less2 @ B3 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_125_Int__iff,axiom,
% 3.22/1.79      ! [A: $tType,C: A,A4: set @ A,B4: set @ A] :
% 3.22/1.79        ( ( member @ A @ C @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) )
% 3.22/1.79        = ( ( member @ A @ C @ A4 )
% 3.22/1.79          & ( member @ A @ C @ B4 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_126_IntI,axiom,
% 3.22/1.79      ! [A: $tType,C: A,A4: set @ A,B4: set @ A] :
% 3.22/1.79        ( ( member @ A @ C @ A4 )
% 3.22/1.79       => ( ( member @ A @ C @ B4 )
% 3.22/1.79         => ( member @ A @ C @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_127_inf__right__idem,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [X2: A,Y: A] :
% 3.22/1.79            ( ( inf_inf @ A @ ( inf_inf @ A @ X2 @ Y ) @ Y )
% 3.22/1.79            = ( inf_inf @ A @ X2 @ Y ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_128_inf_Oright__idem,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [A2: A,B2: A] :
% 3.22/1.79            ( ( inf_inf @ A @ ( inf_inf @ A @ A2 @ B2 ) @ B2 )
% 3.22/1.79            = ( inf_inf @ A @ A2 @ B2 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_129_inf__left__idem,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [X2: A,Y: A] :
% 3.22/1.79            ( ( inf_inf @ A @ X2 @ ( inf_inf @ A @ X2 @ Y ) )
% 3.22/1.79            = ( inf_inf @ A @ X2 @ Y ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_130_inf_Oleft__idem,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [A2: A,B2: A] :
% 3.22/1.79            ( ( inf_inf @ A @ A2 @ ( inf_inf @ A @ A2 @ B2 ) )
% 3.22/1.79            = ( inf_inf @ A @ A2 @ B2 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_131_inf__apply,axiom,
% 3.22/1.79      ! [B: $tType,A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ B @ ( type2 @ B ) )
% 3.22/1.79       => ( ( inf_inf @ ( A > B ) )
% 3.22/1.79          = ( ^ [F3: A > B,G2: A > B,X3: A] : ( inf_inf @ B @ ( F3 @ X3 ) @ ( G2 @ X3 ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_132_inf_Oidem,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [A2: A] :
% 3.22/1.79            ( ( inf_inf @ A @ A2 @ A2 )
% 3.22/1.79            = A2 ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_133_inf__idem,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [X2: A] :
% 3.22/1.79            ( ( inf_inf @ A @ X2 @ X2 )
% 3.22/1.79            = X2 ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_134_inf__sup__aci_I4_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( lattice @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [X2: A,Y: A] :
% 3.22/1.79            ( ( inf_inf @ A @ X2 @ ( inf_inf @ A @ X2 @ Y ) )
% 3.22/1.79            = ( inf_inf @ A @ X2 @ Y ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_135_inf__sup__aci_I3_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( lattice @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [X2: A,Y: A,Z: A] :
% 3.22/1.79            ( ( inf_inf @ A @ X2 @ ( inf_inf @ A @ Y @ Z ) )
% 3.22/1.79            = ( inf_inf @ A @ Y @ ( inf_inf @ A @ X2 @ Z ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_136_inf__sup__aci_I2_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( lattice @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [X2: A,Y: A,Z: A] :
% 3.22/1.79            ( ( inf_inf @ A @ ( inf_inf @ A @ X2 @ Y ) @ Z )
% 3.22/1.79            = ( inf_inf @ A @ X2 @ ( inf_inf @ A @ Y @ Z ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_137_inf__sup__aci_I1_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( lattice @ A @ ( type2 @ A ) )
% 3.22/1.79       => ( ( inf_inf @ A )
% 3.22/1.79          = ( ^ [X3: A,Y3: A] : ( inf_inf @ A @ Y3 @ X3 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_138_inf__fun__def,axiom,
% 3.22/1.79      ! [B: $tType,A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ B @ ( type2 @ B ) )
% 3.22/1.79       => ( ( inf_inf @ ( A > B ) )
% 3.22/1.79          = ( ^ [F3: A > B,G2: A > B,X3: A] : ( inf_inf @ B @ ( F3 @ X3 ) @ ( G2 @ X3 ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_139_inf_Oassoc,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [A2: A,B2: A,C: A] :
% 3.22/1.79            ( ( inf_inf @ A @ ( inf_inf @ A @ A2 @ B2 ) @ C )
% 3.22/1.79            = ( inf_inf @ A @ A2 @ ( inf_inf @ A @ B2 @ C ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_140_inf__assoc,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [X2: A,Y: A,Z: A] :
% 3.22/1.79            ( ( inf_inf @ A @ ( inf_inf @ A @ X2 @ Y ) @ Z )
% 3.22/1.79            = ( inf_inf @ A @ X2 @ ( inf_inf @ A @ Y @ Z ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_141_inf_Ocommute,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 3.22/1.79       => ( ( inf_inf @ A )
% 3.22/1.79          = ( ^ [A5: A,B3: A] : ( inf_inf @ A @ B3 @ A5 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_142_inf__commute,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 3.22/1.79       => ( ( inf_inf @ A )
% 3.22/1.79          = ( ^ [X3: A,Y3: A] : ( inf_inf @ A @ Y3 @ X3 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_143_inf_Oleft__commute,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [B2: A,A2: A,C: A] :
% 3.22/1.79            ( ( inf_inf @ A @ B2 @ ( inf_inf @ A @ A2 @ C ) )
% 3.22/1.79            = ( inf_inf @ A @ A2 @ ( inf_inf @ A @ B2 @ C ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_144_inf__left__commute,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( semilattice_inf @ A @ ( type2 @ A ) )
% 3.22/1.79       => ! [X2: A,Y: A,Z: A] :
% 3.22/1.79            ( ( inf_inf @ A @ X2 @ ( inf_inf @ A @ Y @ Z ) )
% 3.22/1.79            = ( inf_inf @ A @ Y @ ( inf_inf @ A @ X2 @ Z ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_145_IntE,axiom,
% 3.22/1.79      ! [A: $tType,C: A,A4: set @ A,B4: set @ A] :
% 3.22/1.79        ( ( member @ A @ C @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) )
% 3.22/1.79       => ~ ( ( member @ A @ C @ A4 )
% 3.22/1.79           => ~ ( member @ A @ C @ B4 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_146_IntD1,axiom,
% 3.22/1.79      ! [A: $tType,C: A,A4: set @ A,B4: set @ A] :
% 3.22/1.79        ( ( member @ A @ C @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) )
% 3.22/1.79       => ( member @ A @ C @ A4 ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_147_IntD2,axiom,
% 3.22/1.79      ! [A: $tType,C: A,A4: set @ A,B4: set @ A] :
% 3.22/1.79        ( ( member @ A @ C @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) )
% 3.22/1.79       => ( member @ A @ C @ B4 ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_148_Int__assoc,axiom,
% 3.22/1.79      ! [A: $tType,A4: set @ A,B4: set @ A,C2: set @ A] :
% 3.22/1.79        ( ( inf_inf @ ( set @ A ) @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) @ C2 )
% 3.22/1.79        = ( inf_inf @ ( set @ A ) @ A4 @ ( inf_inf @ ( set @ A ) @ B4 @ C2 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_149_Int__absorb,axiom,
% 3.22/1.79      ! [A: $tType,A4: set @ A] :
% 3.22/1.79        ( ( inf_inf @ ( set @ A ) @ A4 @ A4 )
% 3.22/1.79        = A4 ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_150_Int__commute,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( inf_inf @ ( set @ A ) )
% 3.22/1.79        = ( ^ [A6: set @ A,B5: set @ A] : ( inf_inf @ ( set @ A ) @ B5 @ A6 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_151_Int__left__absorb,axiom,
% 3.22/1.79      ! [A: $tType,A4: set @ A,B4: set @ A] :
% 3.22/1.79        ( ( inf_inf @ ( set @ A ) @ A4 @ ( inf_inf @ ( set @ A ) @ A4 @ B4 ) )
% 3.22/1.79        = ( inf_inf @ ( set @ A ) @ A4 @ B4 ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_152_Int__left__commute,axiom,
% 3.22/1.79      ! [A: $tType,A4: set @ A,B4: set @ A,C2: set @ A] :
% 3.22/1.79        ( ( inf_inf @ ( set @ A ) @ A4 @ ( inf_inf @ ( set @ A ) @ B4 @ C2 ) )
% 3.22/1.79        = ( inf_inf @ ( set @ A ) @ B4 @ ( inf_inf @ ( set @ A ) @ A4 @ C2 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_153_ord_OlessThan__iff,axiom,
% 3.22/1.79      ! [A: $tType,I: A,Less: A > A > $o,K: A] :
% 3.22/1.79        ( ( member @ A @ I @ ( set_lessThan @ A @ Less @ K ) )
% 3.22/1.79        = ( Less @ I @ K ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_154_ord_OgreaterThan__iff,axiom,
% 3.22/1.79      ! [A: $tType,I: A,Less: A > A > $o,K: A] :
% 3.22/1.79        ( ( member @ A @ I @ ( set_greaterThan @ A @ Less @ K ) )
% 3.22/1.79        = ( Less @ K @ I ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_155_ord_OgreaterThanLessThan__iff,axiom,
% 3.22/1.79      ! [A: $tType,I: A,Less: A > A > $o,L: A,U: A] :
% 3.22/1.79        ( ( member @ A @ I @ ( set_gr1161524159ssThan @ A @ Less @ L @ U ) )
% 3.22/1.79        = ( ( Less @ L @ I )
% 3.22/1.79          & ( Less @ I @ U ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_156_sublists_Osimps_I1_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( sublists @ A @ ( nil @ A ) )
% 3.22/1.79        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_157_prefixes_Ocases,axiom,
% 3.22/1.79      ! [A: $tType,X2: list @ A] :
% 3.22/1.79        ( ( X2
% 3.22/1.79         != ( nil @ A ) )
% 3.22/1.79       => ~ ! [X: A,Xs2: list @ A] :
% 3.22/1.79              ( X2
% 3.22/1.79             != ( cons @ A @ X @ Xs2 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_158_prefixes_Oinduct,axiom,
% 3.22/1.79      ! [A: $tType,P: ( list @ A ) > $o,A0: list @ A] :
% 3.22/1.79        ( ( P @ ( nil @ A ) )
% 3.22/1.79       => ( ! [X: A,Xs2: list @ A] :
% 3.22/1.79              ( ( P @ Xs2 )
% 3.22/1.79             => ( P @ ( cons @ A @ X @ Xs2 ) ) )
% 3.22/1.79         => ( P @ A0 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_159_longest__common__prefix_Oinduct,axiom,
% 3.22/1.79      ! [A: $tType,P: ( list @ A ) > ( list @ A ) > $o,A0: list @ A,A1: list @ A] :
% 3.22/1.79        ( ! [X: A,Xs2: list @ A,Y2: A,Ys2: list @ A] :
% 3.22/1.79            ( ( ( X = Y2 )
% 3.22/1.79             => ( P @ Xs2 @ Ys2 ) )
% 3.22/1.79           => ( P @ ( cons @ A @ X @ Xs2 ) @ ( cons @ A @ Y2 @ Ys2 ) ) )
% 3.22/1.79       => ( ! [X12: list @ A] : ( P @ ( nil @ A ) @ X12 )
% 3.22/1.79         => ( ! [Uu: list @ A] : ( P @ Uu @ ( nil @ A ) )
% 3.22/1.79           => ( P @ A0 @ A1 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_160_prefixes__snoc,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,X2: A] :
% 3.22/1.79        ( ( prefixes @ A @ ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) ) )
% 3.22/1.79        = ( append @ ( list @ A ) @ ( prefixes @ A @ Xs ) @ ( cons @ ( list @ A ) @ ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) ) @ ( nil @ ( list @ A ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_161_prefixes__eq__Snoc,axiom,
% 3.22/1.79      ! [A: $tType,Ys: list @ A,Xs: list @ ( list @ A ),X2: list @ A] :
% 3.22/1.79        ( ( ( prefixes @ A @ Ys )
% 3.22/1.79          = ( append @ ( list @ A ) @ Xs @ ( cons @ ( list @ A ) @ X2 @ ( nil @ ( list @ A ) ) ) ) )
% 3.22/1.79        = ( ( ( ( Ys
% 3.22/1.79                = ( nil @ A ) )
% 3.22/1.79              & ( Xs
% 3.22/1.79                = ( nil @ ( list @ A ) ) ) )
% 3.22/1.79            | ? [Z2: A,Zs2: list @ A] :
% 3.22/1.79                ( ( Ys
% 3.22/1.79                  = ( append @ A @ Zs2 @ ( cons @ A @ Z2 @ ( nil @ A ) ) ) )
% 3.22/1.79                & ( Xs
% 3.22/1.79                  = ( prefixes @ A @ Zs2 ) ) ) )
% 3.22/1.79          & ( X2 = Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_162_bind__simps_I2_J,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,X2: B,Xs: list @ B,F: B > ( list @ A )] :
% 3.22/1.79        ( ( bind @ B @ A @ ( cons @ B @ X2 @ Xs ) @ F )
% 3.22/1.79        = ( append @ A @ ( F @ X2 ) @ ( bind @ B @ A @ Xs @ F ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_163_bind__simps_I1_J,axiom,
% 3.22/1.79      ! [B: $tType,A: $tType,F: B > ( list @ A )] :
% 3.22/1.79        ( ( bind @ B @ A @ ( nil @ B ) @ F )
% 3.22/1.79        = ( nil @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_164_prefixes_Osimps_I1_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( prefixes @ A @ ( nil @ A ) )
% 3.22/1.79        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_165_product__lists_Osimps_I1_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( product_lists @ A @ ( nil @ ( list @ A ) ) )
% 3.22/1.79        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_166_prefixes_Oelims,axiom,
% 3.22/1.79      ! [A: $tType,X2: list @ A,Y: list @ ( list @ A )] :
% 3.22/1.79        ( ( ( prefixes @ A @ X2 )
% 3.22/1.79          = Y )
% 3.22/1.79       => ( ( ( X2
% 3.22/1.79              = ( nil @ A ) )
% 3.22/1.79           => ( Y
% 3.22/1.79             != ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) )
% 3.22/1.79         => ~ ! [X: A,Xs2: list @ A] :
% 3.22/1.79                ( ( X2
% 3.22/1.79                  = ( cons @ A @ X @ Xs2 ) )
% 3.22/1.79               => ( Y
% 3.22/1.79                 != ( cons @ ( list @ A ) @ ( nil @ A ) @ ( map @ ( list @ A ) @ ( list @ A ) @ ( cons @ A @ X ) @ ( prefixes @ A @ Xs2 ) ) ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_167_maps__simps_I1_J,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,F: B > ( list @ A ),X2: B,Xs: list @ B] :
% 3.22/1.79        ( ( maps @ B @ A @ F @ ( cons @ B @ X2 @ Xs ) )
% 3.22/1.79        = ( append @ A @ ( F @ X2 ) @ ( maps @ B @ A @ F @ Xs ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_168_Nil__is__map__conv,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 3.22/1.79        ( ( ( nil @ A )
% 3.22/1.79          = ( map @ B @ A @ F @ Xs ) )
% 3.22/1.79        = ( Xs
% 3.22/1.79          = ( nil @ B ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_169_map__is__Nil__conv,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 3.22/1.79        ( ( ( map @ B @ A @ F @ Xs )
% 3.22/1.79          = ( nil @ A ) )
% 3.22/1.79        = ( Xs
% 3.22/1.79          = ( nil @ B ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_170_list_Omap__disc__iff,axiom,
% 3.22/1.79      ! [B: $tType,A: $tType,F: A > B,A2: list @ A] :
% 3.22/1.79        ( ( ( map @ A @ B @ F @ A2 )
% 3.22/1.79          = ( nil @ B ) )
% 3.22/1.79        = ( A2
% 3.22/1.79          = ( nil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_171_map__append,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B,Ys: list @ B] :
% 3.22/1.79        ( ( map @ B @ A @ F @ ( append @ B @ Xs @ Ys ) )
% 3.22/1.79        = ( append @ A @ ( map @ B @ A @ F @ Xs ) @ ( map @ B @ A @ F @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_172_list_Osimps_I9_J,axiom,
% 3.22/1.79      ! [B: $tType,A: $tType,F: A > B,X21: A,X22: list @ A] :
% 3.22/1.79        ( ( map @ A @ B @ F @ ( cons @ A @ X21 @ X22 ) )
% 3.22/1.79        = ( cons @ B @ ( F @ X21 ) @ ( map @ A @ B @ F @ X22 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_173_Cons__eq__map__D,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,X2: A,Xs: list @ A,F: B > A,Ys: list @ B] :
% 3.22/1.79        ( ( ( cons @ A @ X2 @ Xs )
% 3.22/1.79          = ( map @ B @ A @ F @ Ys ) )
% 3.22/1.79       => ? [Z3: B,Zs3: list @ B] :
% 3.22/1.79            ( ( Ys
% 3.22/1.79              = ( cons @ B @ Z3 @ Zs3 ) )
% 3.22/1.79            & ( X2
% 3.22/1.79              = ( F @ Z3 ) )
% 3.22/1.79            & ( Xs
% 3.22/1.79              = ( map @ B @ A @ F @ Zs3 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_174_map__eq__Cons__D,axiom,
% 3.22/1.79      ! [B: $tType,A: $tType,F: B > A,Xs: list @ B,Y: A,Ys: list @ A] :
% 3.22/1.79        ( ( ( map @ B @ A @ F @ Xs )
% 3.22/1.79          = ( cons @ A @ Y @ Ys ) )
% 3.22/1.79       => ? [Z3: B,Zs3: list @ B] :
% 3.22/1.79            ( ( Xs
% 3.22/1.79              = ( cons @ B @ Z3 @ Zs3 ) )
% 3.22/1.79            & ( ( F @ Z3 )
% 3.22/1.79              = Y )
% 3.22/1.79            & ( ( map @ B @ A @ F @ Zs3 )
% 3.22/1.79              = Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_175_Cons__eq__map__conv,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,X2: A,Xs: list @ A,F: B > A,Ys: list @ B] :
% 3.22/1.79        ( ( ( cons @ A @ X2 @ Xs )
% 3.22/1.79          = ( map @ B @ A @ F @ Ys ) )
% 3.22/1.79        = ( ? [Z2: B,Zs2: list @ B] :
% 3.22/1.79              ( ( Ys
% 3.22/1.79                = ( cons @ B @ Z2 @ Zs2 ) )
% 3.22/1.79              & ( X2
% 3.22/1.79                = ( F @ Z2 ) )
% 3.22/1.79              & ( Xs
% 3.22/1.79                = ( map @ B @ A @ F @ Zs2 ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_176_map__eq__Cons__conv,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B,Y: A,Ys: list @ A] :
% 3.22/1.79        ( ( ( map @ B @ A @ F @ Xs )
% 3.22/1.79          = ( cons @ A @ Y @ Ys ) )
% 3.22/1.79        = ( ? [Z2: B,Zs2: list @ B] :
% 3.22/1.79              ( ( Xs
% 3.22/1.79                = ( cons @ B @ Z2 @ Zs2 ) )
% 3.22/1.79              & ( ( F @ Z2 )
% 3.22/1.79                = Y )
% 3.22/1.79              & ( ( map @ B @ A @ F @ Zs2 )
% 3.22/1.79                = Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_177_list_Osimps_I8_J,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,F: A > B] :
% 3.22/1.79        ( ( map @ A @ B @ F @ ( nil @ A ) )
% 3.22/1.79        = ( nil @ B ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_178_maps__simps_I2_J,axiom,
% 3.22/1.79      ! [B: $tType,A: $tType,F: B > ( list @ A )] :
% 3.22/1.79        ( ( maps @ B @ A @ F @ ( nil @ B ) )
% 3.22/1.79        = ( nil @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_179_prefixes_Osimps_I2_J,axiom,
% 3.22/1.79      ! [A: $tType,X2: A,Xs: list @ A] :
% 3.22/1.79        ( ( prefixes @ A @ ( cons @ A @ X2 @ Xs ) )
% 3.22/1.79        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( map @ ( list @ A ) @ ( list @ A ) @ ( cons @ A @ X2 ) @ ( prefixes @ A @ Xs ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_180_prefixes_Opelims,axiom,
% 3.22/1.79      ! [A: $tType,X2: list @ A,Y: list @ ( list @ A )] :
% 3.22/1.79        ( ( ( prefixes @ A @ X2 )
% 3.22/1.79          = Y )
% 3.22/1.79       => ( ( accp @ ( list @ A ) @ ( prefixes_rel @ A ) @ X2 )
% 3.22/1.79         => ( ( ( X2
% 3.22/1.79                = ( nil @ A ) )
% 3.22/1.79             => ( ( Y
% 3.22/1.79                  = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) )
% 3.22/1.79               => ~ ( accp @ ( list @ A ) @ ( prefixes_rel @ A ) @ ( nil @ A ) ) ) )
% 3.22/1.79           => ~ ! [X: A,Xs2: list @ A] :
% 3.22/1.79                  ( ( X2
% 3.22/1.79                    = ( cons @ A @ X @ Xs2 ) )
% 3.22/1.79                 => ( ( Y
% 3.22/1.79                      = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( map @ ( list @ A ) @ ( list @ A ) @ ( cons @ A @ X ) @ ( prefixes @ A @ Xs2 ) ) ) )
% 3.22/1.79                   => ~ ( accp @ ( list @ A ) @ ( prefixes_rel @ A ) @ ( cons @ A @ X @ Xs2 ) ) ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_181_insert__Nil,axiom,
% 3.22/1.79      ! [A: $tType,X2: A] :
% 3.22/1.79        ( ( insert @ A @ X2 @ ( nil @ A ) )
% 3.22/1.79        = ( cons @ A @ X2 @ ( nil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_182_rotate1_Osimps_I2_J,axiom,
% 3.22/1.79      ! [A: $tType,X2: A,Xs: list @ A] :
% 3.22/1.79        ( ( rotate1 @ A @ ( cons @ A @ X2 @ Xs ) )
% 3.22/1.79        = ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_183_rotate1__is__Nil__conv,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A] :
% 3.22/1.79        ( ( ( rotate1 @ A @ Xs )
% 3.22/1.79          = ( nil @ A ) )
% 3.22/1.79        = ( Xs
% 3.22/1.79          = ( nil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_184_rotate1_Osimps_I1_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( rotate1 @ A @ ( nil @ A ) )
% 3.22/1.79        = ( nil @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_185_map__eq__map__tailrec,axiom,
% 3.22/1.79      ! [B: $tType,A: $tType] :
% 3.22/1.79        ( ( map @ A @ B )
% 3.22/1.79        = ( map_tailrec @ A @ B ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_186_last__snoc,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,X2: A] :
% 3.22/1.79        ( ( last @ A @ ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) ) )
% 3.22/1.79        = X2 ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_187_butlast__snoc,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,X2: A] :
% 3.22/1.79        ( ( butlast @ A @ ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) ) )
% 3.22/1.79        = Xs ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_188_last__appendR,axiom,
% 3.22/1.79      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 3.22/1.79        ( ( Ys
% 3.22/1.79         != ( nil @ A ) )
% 3.22/1.79       => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 3.22/1.79          = ( last @ A @ Ys ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_189_last__appendL,axiom,
% 3.22/1.79      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 3.22/1.79        ( ( Ys
% 3.22/1.79          = ( nil @ A ) )
% 3.22/1.79       => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 3.22/1.79          = ( last @ A @ Xs ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_190_append__butlast__last__id,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A] :
% 3.22/1.79        ( ( Xs
% 3.22/1.79         != ( nil @ A ) )
% 3.22/1.79       => ( ( append @ A @ ( butlast @ A @ Xs ) @ ( cons @ A @ ( last @ A @ Xs ) @ ( nil @ A ) ) )
% 3.22/1.79          = Xs ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_191_map__butlast,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 3.22/1.79        ( ( map @ B @ A @ F @ ( butlast @ B @ Xs ) )
% 3.22/1.79        = ( butlast @ A @ ( map @ B @ A @ F @ Xs ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_192_snoc__eq__iff__butlast,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,X2: A,Ys: list @ A] :
% 3.22/1.79        ( ( ( append @ A @ Xs @ ( cons @ A @ X2 @ ( nil @ A ) ) )
% 3.22/1.79          = Ys )
% 3.22/1.79        = ( ( Ys
% 3.22/1.79           != ( nil @ A ) )
% 3.22/1.79          & ( ( butlast @ A @ Ys )
% 3.22/1.79            = Xs )
% 3.22/1.79          & ( ( last @ A @ Ys )
% 3.22/1.79            = X2 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_193_butlast_Osimps_I1_J,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( butlast @ A @ ( nil @ A ) )
% 3.22/1.79        = ( nil @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_194_last__ConsR,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,X2: A] :
% 3.22/1.79        ( ( Xs
% 3.22/1.79         != ( nil @ A ) )
% 3.22/1.79       => ( ( last @ A @ ( cons @ A @ X2 @ Xs ) )
% 3.22/1.79          = ( last @ A @ Xs ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_195_last__ConsL,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,X2: A] :
% 3.22/1.79        ( ( Xs
% 3.22/1.79          = ( nil @ A ) )
% 3.22/1.79       => ( ( last @ A @ ( cons @ A @ X2 @ Xs ) )
% 3.22/1.79          = X2 ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_196_last_Osimps,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,X2: A] :
% 3.22/1.79        ( ( ( Xs
% 3.22/1.79            = ( nil @ A ) )
% 3.22/1.79         => ( ( last @ A @ ( cons @ A @ X2 @ Xs ) )
% 3.22/1.79            = X2 ) )
% 3.22/1.79        & ( ( Xs
% 3.22/1.79           != ( nil @ A ) )
% 3.22/1.79         => ( ( last @ A @ ( cons @ A @ X2 @ Xs ) )
% 3.22/1.79            = ( last @ A @ Xs ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_197_butlast_Osimps_I2_J,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,X2: A] :
% 3.22/1.79        ( ( ( Xs
% 3.22/1.79            = ( nil @ A ) )
% 3.22/1.79         => ( ( butlast @ A @ ( cons @ A @ X2 @ Xs ) )
% 3.22/1.79            = ( nil @ A ) ) )
% 3.22/1.79        & ( ( Xs
% 3.22/1.79           != ( nil @ A ) )
% 3.22/1.79         => ( ( butlast @ A @ ( cons @ A @ X2 @ Xs ) )
% 3.22/1.79            = ( cons @ A @ X2 @ ( butlast @ A @ Xs ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_198_last__map,axiom,
% 3.22/1.79      ! [B: $tType,A: $tType,Xs: list @ A,F: A > B] :
% 3.22/1.79        ( ( Xs
% 3.22/1.79         != ( nil @ A ) )
% 3.22/1.79       => ( ( last @ B @ ( map @ A @ B @ F @ Xs ) )
% 3.22/1.79          = ( F @ ( last @ A @ Xs ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_199_longest__common__suffix,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79      ? [Ss: list @ A,Xs4: list @ A,Ys5: list @ A] :
% 3.22/1.79        ( ( Xs
% 3.22/1.79          = ( append @ A @ Xs4 @ Ss ) )
% 3.22/1.79        & ( Ys
% 3.22/1.79          = ( append @ A @ Ys5 @ Ss ) )
% 3.22/1.79        & ( ( Xs4
% 3.22/1.79            = ( nil @ A ) )
% 3.22/1.79          | ( Ys5
% 3.22/1.79            = ( nil @ A ) )
% 3.22/1.79          | ( ( last @ A @ Xs4 )
% 3.22/1.79           != ( last @ A @ Ys5 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_200_butlast__append,axiom,
% 3.22/1.79      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 3.22/1.79        ( ( ( Ys
% 3.22/1.79            = ( nil @ A ) )
% 3.22/1.79         => ( ( butlast @ A @ ( append @ A @ Xs @ Ys ) )
% 3.22/1.79            = ( butlast @ A @ Xs ) ) )
% 3.22/1.79        & ( ( Ys
% 3.22/1.79           != ( nil @ A ) )
% 3.22/1.79         => ( ( butlast @ A @ ( append @ A @ Xs @ Ys ) )
% 3.22/1.79            = ( append @ A @ Xs @ ( butlast @ A @ Ys ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_201_last__append,axiom,
% 3.22/1.79      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 3.22/1.79        ( ( ( Ys
% 3.22/1.79            = ( nil @ A ) )
% 3.22/1.79         => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 3.22/1.79            = ( last @ A @ Xs ) ) )
% 3.22/1.79        & ( ( Ys
% 3.22/1.79           != ( nil @ A ) )
% 3.22/1.79         => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 3.22/1.79            = ( last @ A @ Ys ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_202_list__ex1__simps_I1_J,axiom,
% 3.22/1.79      ! [A: $tType,P: A > $o] :
% 3.22/1.79        ~ ( list_ex1 @ A @ P @ ( nil @ A ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_203_strict__suffix__def,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( strict_suffix @ A )
% 3.22/1.79        = ( ^ [Xs3: list @ A,Ys3: list @ A] :
% 3.22/1.79            ? [Us2: list @ A] :
% 3.22/1.79              ( ( Ys3
% 3.22/1.79                = ( append @ A @ Us2 @ Xs3 ) )
% 3.22/1.79              & ( Us2
% 3.22/1.79               != ( nil @ A ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_204_strict__suffix__trans,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 3.22/1.79        ( ( strict_suffix @ A @ Xs @ Ys )
% 3.22/1.79       => ( ( strict_suffix @ A @ Ys @ Zs )
% 3.22/1.79         => ( strict_suffix @ A @ Xs @ Zs ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_205_map__tailrec__rev_Oelims,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,X2: A > B,Xa: list @ A,Xb: list @ B,Y: list @ B] :
% 3.22/1.79        ( ( ( map_tailrec_rev @ A @ B @ X2 @ Xa @ Xb )
% 3.22/1.79          = Y )
% 3.22/1.79       => ( ( ( Xa
% 3.22/1.79              = ( nil @ A ) )
% 3.22/1.79           => ( Y != Xb ) )
% 3.22/1.79         => ~ ! [A3: A,As: list @ A] :
% 3.22/1.79                ( ( Xa
% 3.22/1.79                  = ( cons @ A @ A3 @ As ) )
% 3.22/1.79               => ( Y
% 3.22/1.79                 != ( map_tailrec_rev @ A @ B @ X2 @ As @ ( cons @ B @ ( X2 @ A3 ) @ Xb ) ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_206_SuccD,axiom,
% 3.22/1.79      ! [A: $tType,K: A,Kl: set @ ( list @ A ),Kl2: list @ A] :
% 3.22/1.79        ( ( member @ A @ K @ ( bNF_Greatest_Succ @ A @ Kl @ Kl2 ) )
% 3.22/1.79       => ( member @ ( list @ A ) @ ( append @ A @ Kl2 @ ( cons @ A @ K @ ( nil @ A ) ) ) @ Kl ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_207_map__tailrec__rev_Osimps_I2_J,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,F: A > B,A2: A,As2: list @ A,Bs2: list @ B] :
% 3.22/1.79        ( ( map_tailrec_rev @ A @ B @ F @ ( cons @ A @ A2 @ As2 ) @ Bs2 )
% 3.22/1.79        = ( map_tailrec_rev @ A @ B @ F @ As2 @ ( cons @ B @ ( F @ A2 ) @ Bs2 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_208_map__tailrec__rev_Osimps_I1_J,axiom,
% 3.22/1.79      ! [A: $tType,B: $tType,F: A > B,Bs2: list @ B] :
% 3.22/1.79        ( ( map_tailrec_rev @ A @ B @ F @ ( nil @ A ) @ Bs2 )
% 3.22/1.79        = Bs2 ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_209_SuccI,axiom,
% 3.22/1.79      ! [A: $tType,Kl2: list @ A,K: A,Kl: set @ ( list @ A )] :
% 3.22/1.79        ( ( member @ ( list @ A ) @ ( append @ A @ Kl2 @ ( cons @ A @ K @ ( nil @ A ) ) ) @ Kl )
% 3.22/1.79       => ( member @ A @ K @ ( bNF_Greatest_Succ @ A @ Kl @ Kl2 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_210_shift__def,axiom,
% 3.22/1.79      ! [B: $tType,A: $tType] :
% 3.22/1.79        ( ( bNF_Greatest_shift @ A @ B )
% 3.22/1.79        = ( ^ [Lab: ( list @ A ) > B,K2: A,Kl3: list @ A] : ( Lab @ ( cons @ A @ K2 @ Kl3 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_211_empty__Shift,axiom,
% 3.22/1.79      ! [A: $tType,Kl: set @ ( list @ A ),K: A] :
% 3.22/1.79        ( ( member @ ( list @ A ) @ ( nil @ A ) @ Kl )
% 3.22/1.79       => ( ( member @ A @ K @ ( bNF_Greatest_Succ @ A @ Kl @ ( nil @ A ) ) )
% 3.22/1.79         => ( member @ ( list @ A ) @ ( nil @ A ) @ ( bNF_Greatest_Shift @ A @ Kl @ K ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_212_ShiftD,axiom,
% 3.22/1.79      ! [A: $tType,Kl2: list @ A,Kl: set @ ( list @ A ),K: A] :
% 3.22/1.79        ( ( member @ ( list @ A ) @ Kl2 @ ( bNF_Greatest_Shift @ A @ Kl @ K ) )
% 3.22/1.79       => ( member @ ( list @ A ) @ ( cons @ A @ K @ Kl2 ) @ Kl ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_213_Succ__Shift,axiom,
% 3.22/1.79      ! [A: $tType,Kl: set @ ( list @ A ),K: A,Kl2: list @ A] :
% 3.22/1.79        ( ( bNF_Greatest_Succ @ A @ ( bNF_Greatest_Shift @ A @ Kl @ K ) @ Kl2 )
% 3.22/1.79        = ( bNF_Greatest_Succ @ A @ Kl @ ( cons @ A @ K @ Kl2 ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_214_map__tailrec__def,axiom,
% 3.22/1.79      ! [B: $tType,A: $tType] :
% 3.22/1.79        ( ( map_tailrec @ A @ B )
% 3.22/1.79        = ( ^ [F3: A > B,As3: list @ A] : ( rev @ B @ ( map_tailrec_rev @ A @ B @ F3 @ As3 @ ( nil @ B ) ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_215_ord_OgreaterThanAtMost__def,axiom,
% 3.22/1.79      ! [A: $tType] :
% 3.22/1.79        ( ( set_gr323396891AtMost @ A )
% 3.22/1.79        = ( ^ [Less_eq: A > A > $o,Less2: A > A > $o,L2: A,U2: A] : ( inf_inf @ ( set @ A ) @ ( set_greaterThan @ A @ Less2 @ L2 ) @ ( set_atMost @ A @ Less_eq @ U2 ) ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_216_rev__rev__ident,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A] :
% 3.22/1.79        ( ( rev @ A @ ( rev @ A @ Xs ) )
% 3.22/1.79        = Xs ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_217_rev__is__rev__conv,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ( ( rev @ A @ Xs )
% 3.22/1.79          = ( rev @ A @ Ys ) )
% 3.22/1.79        = ( Xs = Ys ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_218_Nil__is__rev__conv,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A] :
% 3.22/1.79        ( ( ( nil @ A )
% 3.22/1.79          = ( rev @ A @ Xs ) )
% 3.22/1.79        = ( Xs
% 3.22/1.79          = ( nil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_219_rev__is__Nil__conv,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A] :
% 3.22/1.79        ( ( ( rev @ A @ Xs )
% 3.22/1.79          = ( nil @ A ) )
% 3.22/1.79        = ( Xs
% 3.22/1.79          = ( nil @ A ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_220_rev__append,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.22/1.79        ( ( rev @ A @ ( append @ A @ Xs @ Ys ) )
% 3.22/1.79        = ( append @ A @ ( rev @ A @ Ys ) @ ( rev @ A @ Xs ) ) ) ).
% 3.22/1.79  
% 3.22/1.79  thf(fact_221_rev__singleton__conv,axiom,
% 3.22/1.79      ! [A: $tType,Xs: list @ A,X2: A] :
% 3.22/1.79        ( ( ( rev @ A @ Xs )
% 3.22/1.79          = ( cons @ A @ X2 @ ( nil @ A ) ) )
% 3.22/1.79        = ( Xs
% 3.22/1.79          = ( cons @ A @ X2 @ ( nil @ A ) ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_222_singleton__rev__conv,axiom,
% 3.22/1.80      ! [A: $tType,X2: A,Xs: list @ A] :
% 3.22/1.80        ( ( ( cons @ A @ X2 @ ( nil @ A ) )
% 3.22/1.80          = ( rev @ A @ Xs ) )
% 3.22/1.80        = ( Xs
% 3.22/1.80          = ( cons @ A @ X2 @ ( nil @ A ) ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_223_rev__eq__Cons__iff,axiom,
% 3.22/1.80      ! [A: $tType,Xs: list @ A,Y: A,Ys: list @ A] :
% 3.22/1.80        ( ( ( rev @ A @ Xs )
% 3.22/1.80          = ( cons @ A @ Y @ Ys ) )
% 3.22/1.80        = ( Xs
% 3.22/1.80          = ( append @ A @ ( rev @ A @ Ys ) @ ( cons @ A @ Y @ ( nil @ A ) ) ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_224_rev__map,axiom,
% 3.22/1.80      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 3.22/1.80        ( ( rev @ A @ ( map @ B @ A @ F @ Xs ) )
% 3.22/1.80        = ( map @ B @ A @ F @ ( rev @ B @ Xs ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_225_ord_OatMost__iff,axiom,
% 3.22/1.80      ! [A: $tType,I: A,Less_eq2: A > A > $o,K: A] :
% 3.22/1.80        ( ( member @ A @ I @ ( set_atMost @ A @ Less_eq2 @ K ) )
% 3.22/1.80        = ( Less_eq2 @ I @ K ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_226_ord_OgreaterThanAtMost__iff,axiom,
% 3.22/1.80      ! [A: $tType,I: A,Less_eq2: A > A > $o,Less: A > A > $o,L: A,U: A] :
% 3.22/1.80        ( ( member @ A @ I @ ( set_gr323396891AtMost @ A @ Less_eq2 @ Less @ L @ U ) )
% 3.22/1.80        = ( ( Less @ L @ I )
% 3.22/1.80          & ( Less_eq2 @ I @ U ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_227_rev_Osimps_I1_J,axiom,
% 3.22/1.80      ! [A: $tType] :
% 3.22/1.80        ( ( rev @ A @ ( nil @ A ) )
% 3.22/1.80        = ( nil @ A ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_228_rev__swap,axiom,
% 3.22/1.80      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.22/1.80        ( ( ( rev @ A @ Xs )
% 3.22/1.80          = Ys )
% 3.22/1.80        = ( Xs
% 3.22/1.80          = ( rev @ A @ Ys ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_229_rev_Osimps_I2_J,axiom,
% 3.22/1.80      ! [A: $tType,X2: A,Xs: list @ A] :
% 3.22/1.80        ( ( rev @ A @ ( cons @ A @ X2 @ Xs ) )
% 3.22/1.80        = ( append @ A @ ( rev @ A @ Xs ) @ ( cons @ A @ X2 @ ( nil @ A ) ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_230_map__tailrec__rev,axiom,
% 3.22/1.80      ! [A: $tType,B: $tType] :
% 3.22/1.80        ( ( map_tailrec_rev @ B @ A )
% 3.22/1.80        = ( ^ [F3: B > A,As3: list @ B] : ( append @ A @ ( rev @ A @ ( map @ B @ A @ F3 @ As3 ) ) ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_231_list__of__aux__code_I1_J,axiom,
% 3.22/1.80      ! [A: $tType,Xs: list @ A] :
% 3.22/1.80        ( ( coindu1384447384of_aux @ A @ Xs @ ( coinductive_LNil @ A ) )
% 3.22/1.80        = ( rev @ A @ Xs ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_232_local_OgreaterThanAtMost__def,axiom,
% 3.22/1.80      ! [L: a,U: a] :
% 3.22/1.80        ( ( set_gr323396891AtMost @ a @ less_eq @ less @ L @ U )
% 3.22/1.80        = ( inf_inf @ ( set @ a ) @ ( set_greaterThan @ a @ less @ L ) @ ( set_atMost @ a @ less_eq @ U ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_233_local_Oord__eq__le__trans,axiom,
% 3.22/1.80      ! [A2: a,B2: a,C: a] :
% 3.22/1.80        ( ( A2 = B2 )
% 3.22/1.80       => ( ( less_eq @ B2 @ C )
% 3.22/1.80         => ( less_eq @ A2 @ C ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_234_local_Oord__le__eq__trans,axiom,
% 3.22/1.80      ! [A2: a,B2: a,C: a] :
% 3.22/1.80        ( ( less_eq @ A2 @ B2 )
% 3.22/1.80       => ( ( B2 = C )
% 3.22/1.80         => ( less_eq @ A2 @ C ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_235_local_Omax__def,axiom,
% 3.22/1.80      ! [A2: a,B2: a] :
% 3.22/1.80        ( ( ( less_eq @ A2 @ B2 )
% 3.22/1.80         => ( ( max @ a @ less_eq @ A2 @ B2 )
% 3.22/1.80            = B2 ) )
% 3.22/1.80        & ( ~ ( less_eq @ A2 @ B2 )
% 3.22/1.80         => ( ( max @ a @ less_eq @ A2 @ B2 )
% 3.22/1.80            = A2 ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_236_local_Omin__def,axiom,
% 3.22/1.80      ! [A2: a,B2: a] :
% 3.22/1.80        ( ( ( less_eq @ A2 @ B2 )
% 3.22/1.80         => ( ( min @ a @ less_eq @ A2 @ B2 )
% 3.22/1.80            = A2 ) )
% 3.22/1.80        & ( ~ ( less_eq @ A2 @ B2 )
% 3.22/1.80         => ( ( min @ a @ less_eq @ A2 @ B2 )
% 3.22/1.80            = B2 ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_237_local_OatMost__iff,axiom,
% 3.22/1.80      ! [I: a,K: a] :
% 3.22/1.80        ( ( member @ a @ I @ ( set_atMost @ a @ less_eq @ K ) )
% 3.22/1.80        = ( less_eq @ I @ K ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_238_local_OgreaterThanAtMost__iff,axiom,
% 3.22/1.80      ! [I: a,L: a,U: a] :
% 3.22/1.80        ( ( member @ a @ I @ ( set_gr323396891AtMost @ a @ less_eq @ less @ L @ U ) )
% 3.22/1.80        = ( ( less @ L @ I )
% 3.22/1.80          & ( less_eq @ I @ U ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_239_local_OatLeastLessThan__def,axiom,
% 3.22/1.80      ! [L: a,U: a] :
% 3.22/1.80        ( ( set_atLeastLessThan @ a @ less_eq @ less @ L @ U )
% 3.22/1.80        = ( inf_inf @ ( set @ a ) @ ( set_atLeast @ a @ less_eq @ L ) @ ( set_lessThan @ a @ less @ U ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_240_local_OatLeastAtMost__def,axiom,
% 3.22/1.80      ! [L: a,U: a] :
% 3.22/1.80        ( ( set_atLeastAtMost @ a @ less_eq @ L @ U )
% 3.22/1.80        = ( inf_inf @ ( set @ a ) @ ( set_atLeast @ a @ less_eq @ L ) @ ( set_atMost @ a @ less_eq @ U ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_241_local_OatLeast__iff,axiom,
% 3.22/1.80      ! [I: a,K: a] :
% 3.22/1.80        ( ( member @ a @ I @ ( set_atLeast @ a @ less_eq @ K ) )
% 3.22/1.80        = ( less_eq @ K @ I ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_242_local_OatLeastAtMost__iff,axiom,
% 3.22/1.80      ! [I: a,L: a,U: a] :
% 3.22/1.80        ( ( member @ a @ I @ ( set_atLeastAtMost @ a @ less_eq @ L @ U ) )
% 3.22/1.80        = ( ( less_eq @ L @ I )
% 3.22/1.80          & ( less_eq @ I @ U ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_243_local_OatLeastLessThan__iff,axiom,
% 3.22/1.80      ! [I: a,L: a,U: a] :
% 3.22/1.80        ( ( member @ a @ I @ ( set_atLeastLessThan @ a @ less_eq @ less @ L @ U ) )
% 3.22/1.80        = ( ( less_eq @ L @ I )
% 3.22/1.80          & ( less @ I @ U ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_244_ord_OatLeast__iff,axiom,
% 3.22/1.80      ! [A: $tType,I: A,Less_eq2: A > A > $o,K: A] :
% 3.22/1.80        ( ( member @ A @ I @ ( set_atLeast @ A @ Less_eq2 @ K ) )
% 3.22/1.80        = ( Less_eq2 @ K @ I ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_245_ord_OatLeastAtMost__iff,axiom,
% 3.22/1.80      ! [A: $tType,I: A,Less_eq2: A > A > $o,L: A,U: A] :
% 3.22/1.80        ( ( member @ A @ I @ ( set_atLeastAtMost @ A @ Less_eq2 @ L @ U ) )
% 3.22/1.80        = ( ( Less_eq2 @ L @ I )
% 3.22/1.80          & ( Less_eq2 @ I @ U ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_246_ord_OatLeastLessThan__iff,axiom,
% 3.22/1.80      ! [A: $tType,I: A,Less_eq2: A > A > $o,Less: A > A > $o,L: A,U: A] :
% 3.22/1.80        ( ( member @ A @ I @ ( set_atLeastLessThan @ A @ Less_eq2 @ Less @ L @ U ) )
% 3.22/1.80        = ( ( Less_eq2 @ L @ I )
% 3.22/1.80          & ( Less @ I @ U ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_247_ord_OatLeastLessThan__def,axiom,
% 3.22/1.80      ! [A: $tType] :
% 3.22/1.80        ( ( set_atLeastLessThan @ A )
% 3.22/1.80        = ( ^ [Less_eq: A > A > $o,Less2: A > A > $o,L2: A,U2: A] : ( inf_inf @ ( set @ A ) @ ( set_atLeast @ A @ Less_eq @ L2 ) @ ( set_lessThan @ A @ Less2 @ U2 ) ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_248_ord_OatLeastAtMost__def,axiom,
% 3.22/1.80      ! [A: $tType] :
% 3.22/1.80        ( ( set_atLeastAtMost @ A )
% 3.22/1.80        = ( ^ [Less_eq: A > A > $o,L2: A,U2: A] : ( inf_inf @ ( set @ A ) @ ( set_atLeast @ A @ Less_eq @ L2 ) @ ( set_atMost @ A @ Less_eq @ U2 ) ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_249_local_Olsorted_OLNil,axiom,
% 3.22/1.80      coinductive_lsorted @ a @ less_eq @ ( coinductive_LNil @ a ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_250_hd__rev,axiom,
% 3.22/1.80      ! [A: $tType,Xs: list @ A] :
% 3.22/1.80        ( ( Xs
% 3.22/1.80         != ( nil @ A ) )
% 3.22/1.80       => ( ( hd @ A @ ( rev @ A @ Xs ) )
% 3.22/1.80          = ( last @ A @ Xs ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_251_hd__append2,axiom,
% 3.22/1.80      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.22/1.80        ( ( Xs
% 3.22/1.80         != ( nil @ A ) )
% 3.22/1.80       => ( ( hd @ A @ ( append @ A @ Xs @ Ys ) )
% 3.22/1.80          = ( hd @ A @ Xs ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(fact_252_local_Olsorted__code_I1_J,axiom,
% 3.22/1.80      coinductive_lsorted @ a @ less_eq @ ( coinductive_LNil @ a ) ).
% 3.22/1.80  
% 3.22/1.80  thf(tcon_fun___Lattices_Osemilattice__inf,axiom,
% 3.22/1.80      ! [A7: $tType,A8: $tType] :
% 3.22/1.80        ( ( semilattice_inf @ A8 @ ( type2 @ A8 ) )
% 3.22/1.80       => ( semilattice_inf @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(tcon_fun___Lattices_Olattice,axiom,
% 3.22/1.80      ! [A7: $tType,A8: $tType] :
% 3.22/1.80        ( ( lattice @ A8 @ ( type2 @ A8 ) )
% 3.22/1.80       => ( lattice @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(tcon_fun___Orderings_Oord,axiom,
% 3.22/1.80      ! [A7: $tType,A8: $tType] :
% 3.22/1.80        ( ( ord @ A8 @ ( type2 @ A8 ) )
% 3.22/1.80       => ( ord @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(tcon_Set_Oset___Lattices_Osemilattice__inf_1,axiom,
% 3.22/1.80      ! [A7: $tType] : ( semilattice_inf @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(tcon_Set_Oset___Lattices_Olattice_2,axiom,
% 3.22/1.80      ! [A7: $tType] : ( lattice @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(tcon_Set_Oset___Orderings_Oord_3,axiom,
% 3.22/1.80      ! [A7: $tType] : ( ord @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).
% 3.22/1.80  
% 3.22/1.80  thf(tcon_HOL_Obool___Lattices_Osemilattice__inf_4,axiom,
% 3.22/1.80      semilattice_inf @ $o @ ( type2 @ $o ) ).
% 3.22/1.80  
% 3.22/1.80  thf(tcon_HOL_Obool___Lattices_Olattice_5,axiom,
% 3.22/1.80      lattice @ $o @ ( type2 @ $o ) ).
% 3.22/1.80  
% 3.22/1.80  thf(tcon_HOL_Obool___Orderings_Oord_6,axiom,
% 3.22/1.80      ord @ $o @ ( type2 @ $o ) ).
% 3.22/1.80  
% 3.22/1.80  thf(conj_0,conjecture,
% 3.22/1.80      ( ( coinductive_lnull @ a @ ( hammin1328233080lmerge @ a @ less @ xs @ ys ) )
% 3.22/1.80      = ( ( coinductive_lnull @ a @ xs )
% 3.22/1.80        | ( coinductive_lnull @ a @ ys ) ) ) ).
% 3.22/1.80  ------------------------
% 3.33/1.83  % (2360)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_2221 for (2999ds/4Mi)
% 3.33/1.83  % (2361)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_2221 for (2999ds/27Mi)
% 3.33/1.83  % (2359)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on DTF2THF_2221 for (2999ds/183Mi)
% 3.33/1.83  % (2362)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on DTF2THF_2221 for (2999ds/2Mi)
% 3.33/1.83  % (2363)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_2221 for (2999ds/2Mi)
% 3.33/1.83  % (2364)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_2221 for (2999ds/275Mi)
% 3.33/1.83  % (2365)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on DTF2THF_2221 for (2999ds/18Mi)
% 3.33/1.83  % (2362)Instruction limit reached!
% 3.33/1.83  % (2362)------------------------------
% 3.33/1.83  % (2362)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.33/1.83  % (2362)Termination reason: Unknown
% 3.33/1.83  % (2362)Termination phase: shuffling
% 3.33/1.83  
% 3.33/1.83  % (2362)Memory used [KB]: 1279
% 3.33/1.83  % (2362)Time elapsed: 0.003 s
% 3.33/1.83  % (2362)Instructions burned: 2 (million)
% 3.33/1.83  % (2362)------------------------------
% 3.33/1.83  % (2362)------------------------------
% 3.33/1.83  % (2363)Instruction limit reached!
% 3.33/1.83  % (2363)------------------------------
% 3.33/1.83  % (2363)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.33/1.83  % (2363)Termination reason: Unknown
% 3.33/1.83  % (2363)Termination phase: shuffling
% 3.33/1.83  
% 3.33/1.83  % (2363)Memory used [KB]: 1279
% 3.33/1.83  % (2363)Time elapsed: 0.003 s
% 3.33/1.83  % (2363)Instructions burned: 2 (million)
% 3.33/1.83  % (2363)------------------------------
% 3.33/1.83  % (2363)------------------------------
% 3.33/1.83  % (2360)Instruction limit reached!
% 3.33/1.83  % (2360)------------------------------
% 3.33/1.83  % (2360)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.33/1.83  % (2360)Termination reason: Unknown
% 3.33/1.83  % (2360)Termination phase: shuffling
% 3.33/1.83  
% 3.33/1.83  % (2360)Memory used [KB]: 1407
% 3.33/1.83  % (2360)Time elapsed: 0.004 s
% 3.33/1.83  % (2360)Instructions burned: 4 (million)
% 3.33/1.83  % (2360)------------------------------
% 3.33/1.83  % (2360)------------------------------
% 3.33/1.84  % (2365)Instruction limit reached!
% 3.33/1.84  % (2365)------------------------------
% 3.33/1.84  % (2365)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.33/1.84  % (2365)Termination reason: Unknown
% 3.33/1.84  % (2365)Termination phase: shuffling
% 3.33/1.84  
% 3.33/1.84  % (2365)Memory used [KB]: 1663
% 3.33/1.84  % (2365)Time elapsed: 0.011 s
% 3.33/1.84  % (2365)Instructions burned: 18 (million)
% 3.33/1.84  % (2365)------------------------------
% 3.33/1.84  % (2365)------------------------------
% 3.33/1.84  % (2361)Instruction limit reached!
% 3.33/1.84  % (2361)------------------------------
% 3.33/1.84  % (2361)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.33/1.84  % (2361)Termination reason: Unknown
% 3.33/1.84  % (2361)Termination phase: Property scanning
% 3.33/1.84  
% 3.33/1.84  % (2361)Memory used [KB]: 1791
% 3.33/1.84  % (2361)Time elapsed: 0.016 s
% 3.33/1.84  % (2361)Instructions burned: 28 (million)
% 3.33/1.84  % (2361)------------------------------
% 3.33/1.84  % (2361)------------------------------
% 3.33/1.85  % (2367)lrs+1002_1:1_cnfonf=lazy_not_be_gen:hud=14:prag=on:sp=weighted_frequency:tnu=1:i=37:si=on:rtra=on_0 on DTF2THF_2221 for (2999ds/37Mi)
% 3.33/1.85  % (2366)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_2221 for (2999ds/3Mi)
% 3.33/1.85  % (2368)lrs+2_16:1_acc=model:au=on:bd=off:c=on:e2e=on:nm=2:sos=all:i=15:si=on:rtra=on_0 on DTF2THF_2221 for (2999ds/15Mi)
% 3.33/1.85  % (2366)Instruction limit reached!
% 3.33/1.85  % (2366)------------------------------
% 3.33/1.85  % (2366)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.33/1.85  % (2366)Termination reason: Unknown
% 3.33/1.85  % (2366)Termination phase: shuffling
% 3.33/1.85  
% 3.33/1.85  % (2366)Memory used [KB]: 1407
% 3.33/1.85  % (2366)Time elapsed: 0.003 s
% 3.33/1.85  % (2366)Instructions burned: 3 (million)
% 3.33/1.85  % (2366)------------------------------
% 3.33/1.85  % (2366)------------------------------
% 3.33/1.85  % (2364)First to succeed.
% 3.33/1.85  % (2369)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_2221 for (2999ds/3Mi)
% 3.33/1.85  % (2368)Instruction limit reached!
% 3.33/1.85  % (2368)------------------------------
% 3.33/1.85  % (2368)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.33/1.85  % (2368)Termination reason: Unknown
% 3.33/1.85  % (2368)Termination phase: shuffling
% 3.33/1.85  
% 3.33/1.85  % (2368)Memory used [KB]: 1535
% 3.33/1.85  % (2368)Time elapsed: 0.009 s
% 3.33/1.85  % (2368)Instructions burned: 15 (million)
% 3.33/1.85  % (2368)------------------------------
% 3.33/1.85  % (2368)------------------------------
% 3.33/1.86  % (2364)Refutation found. Thanks to Tanya!
% 3.33/1.86  % SZS status Theorem for DTF2THF_2221
% 3.33/1.86  % SZS output start Proof for DTF2THF_2221
% 3.33/1.86  thf(type_def_5, type, itself: ($tType) > $tType).
% 3.33/1.86  thf(type_def_7, type, list: ($tType) > $tType).
% 3.33/1.86  thf(type_def_8, type, set: ($tType) > $tType).
% 3.33/1.86  thf(type_def_9, type, coinductive_llist: ($tType) > $tType).
% 3.33/1.86  thf(type_def_10, type, a: $tType).
% 3.33/1.86  thf(func_def_0, type, coinductive_llist: ($tType) > $tType).
% 3.33/1.86  thf(func_def_1, type, list: ($tType) > $tType).
% 3.33/1.86  thf(func_def_2, type, set: ($tType) > $tType).
% 3.33/1.86  thf(func_def_3, type, itself: ($tType) > $tType).
% 3.33/1.86  thf(func_def_4, type, a: $tType).
% 3.33/1.86  thf(func_def_5, type, type: !>[X0: $tType]:(itself @ X0 > $o)).
% 3.33/1.86  thf(func_def_6, type, ord: !>[X0: $tType]:(itself @ X0 > $o)).
% 3.33/1.86  thf(func_def_7, type, lattice: !>[X0: $tType]:(itself @ X0 > $o)).
% 3.33/1.86  thf(func_def_8, type, semilattice_inf: !>[X0: $tType]:(itself @ X0 > $o)).
% 3.33/1.86  thf(func_def_9, type, bNF_Greatest_Shift: !>[X0: $tType]:(set @ list @ X0 > X0 > set @ list @ X0)).
% 3.33/1.86  thf(func_def_10, type, bNF_Greatest_Succ: !>[X0: $tType]:(set @ list @ X0 > list @ X0 > set @ X0)).
% 3.33/1.86  thf(func_def_11, type, bNF_Greatest_shift: !>[X0: $tType, X1: $tType]:((list @ X0 > X1) > X0 > list @ X0 > X1)).
% 3.33/1.86  thf(func_def_12, type, coindu1384447384of_aux: !>[X0: $tType]:(list @ X0 > coinductive_llist @ X0 > list @ X0)).
% 3.33/1.86  thf(func_def_13, type, coinductive_LNil: !>[X0: $tType]:(coinductive_llist @ X0)).
% 3.33/1.86  thf(func_def_14, type, coinductive_lnull: !>[X0: $tType]:(coinductive_llist @ X0 > $o)).
% 3.33/1.86  thf(func_def_15, type, coinductive_lsorted: !>[X0: $tType]:((X0 > X0 > $o) > coinductive_llist @ X0 > $o)).
% 3.33/1.86  thf(func_def_16, type, hammin1328233080lmerge: !>[X0: $tType]:((X0 > X0 > $o) > coinductive_llist @ X0 > coinductive_llist @ X0 > coinductive_llist @ X0)).
% 3.33/1.86  thf(func_def_17, type, hammin1138290136lmerge: !>[X0: $tType]:(coinductive_llist @ X0 > coinductive_llist @ X0 > coinductive_llist @ X0)).
% 3.33/1.86  thf(func_def_18, type, inf_inf: !>[X0: $tType]:(X0 > X0 > X0)).
% 3.33/1.86  thf(func_def_19, type, append: !>[X0: $tType]:(list @ X0 > list @ X0 > list @ X0)).
% 3.33/1.86  thf(func_def_20, type, bind: !>[X0: $tType, X1: $tType]:(list @ X0 > (X0 > list @ X1) > list @ X1)).
% 3.33/1.86  thf(func_def_21, type, butlast: !>[X0: $tType]:(list @ X0 > list @ X0)).
% 3.33/1.86  thf(func_def_22, type, insert: !>[X0: $tType]:(X0 > list @ X0 > list @ X0)).
% 3.33/1.86  thf(func_def_23, type, last: !>[X0: $tType]:(list @ X0 > X0)).
% 3.33/1.86  thf(func_def_24, type, cons: !>[X0: $tType]:(X0 > list @ X0 > list @ X0)).
% 3.33/1.86  thf(func_def_25, type, nil: !>[X0: $tType]:(list @ X0)).
% 3.33/1.86  thf(func_def_26, type, hd: !>[X0: $tType]:(list @ X0 > X0)).
% 3.33/1.86  thf(func_def_27, type, map: !>[X0: $tType, X1: $tType]:((X0 > X1) > list @ X0 > list @ X1)).
% 3.33/1.86  thf(func_def_28, type, list_ex1: !>[X0: $tType]:((X0 > $o) > list @ X0 > $o)).
% 3.33/1.86  thf(func_def_29, type, map_tailrec: !>[X0: $tType, X1: $tType]:((X0 > X1) > list @ X0 > list @ X1)).
% 3.33/1.86  thf(func_def_30, type, map_tailrec_rev: !>[X0: $tType, X1: $tType]:((X0 > X1) > list @ X0 > list @ X1 > list @ X1)).
% 3.33/1.86  thf(func_def_31, type, maps: !>[X0: $tType, X1: $tType]:((X0 > list @ X1) > list @ X0 > list @ X1)).
% 3.33/1.86  thf(func_def_32, type, lexordp: !>[X0: $tType]:((X0 > X0 > $o) > list @ X0 > list @ X0 > $o)).
% 3.33/1.86  thf(func_def_33, type, lexordp_eq: !>[X0: $tType]:((X0 > X0 > $o) > list @ X0 > list @ X0 > $o)).
% 3.33/1.86  thf(func_def_34, type, product_lists: !>[X0: $tType]:(list @ list @ X0 > list @ list @ X0)).
% 3.33/1.86  thf(func_def_35, type, rev: !>[X0: $tType]:(list @ X0 > list @ X0)).
% 3.33/1.86  thf(func_def_36, type, rotate1: !>[X0: $tType]:(list @ X0 > list @ X0)).
% 3.33/1.86  thf(func_def_37, type, sublists: !>[X0: $tType]:(list @ X0 > list @ list @ X0)).
% 3.33/1.86  thf(func_def_38, type, max: !>[X0: $tType]:((X0 > X0 > $o) > X0 > X0 > X0)).
% 3.33/1.86  thf(func_def_39, type, min: !>[X0: $tType]:((X0 > X0 > $o) > X0 > X0 > X0)).
% 3.33/1.86  thf(func_def_40, type, type2: !>[X0: $tType]:(itself @ X0)).
% 3.33/1.86  thf(func_def_41, type, collect: !>[X0: $tType]:((X0 > $o) > set @ X0)).
% 3.33/1.86  thf(func_def_42, type, set_atLeast: !>[X0: $tType]:((X0 > X0 > $o) > X0 > set @ X0)).
% 3.33/1.86  thf(func_def_43, type, set_atLeastAtMost: !>[X0: $tType]:((X0 > X0 > $o) > X0 > X0 > set @ X0)).
% 3.33/1.86  thf(func_def_44, type, set_atLeastLessThan: !>[X0: $tType]:((X0 > X0 > $o) > (X0 > X0 > $o) > X0 > X0 > set @ X0)).
% 3.33/1.86  thf(func_def_45, type, set_atMost: !>[X0: $tType]:((X0 > X0 > $o) > X0 > set @ X0)).
% 3.33/1.86  thf(func_def_46, type, set_greaterThan: !>[X0: $tType]:((X0 > X0 > $o) > X0 > set @ X0)).
% 3.33/1.86  thf(func_def_47, type, set_gr323396891AtMost: !>[X0: $tType]:((X0 > X0 > $o) > (X0 > X0 > $o) > X0 > X0 > set @ X0)).
% 3.33/1.86  thf(func_def_48, type, set_gr1161524159ssThan: !>[X0: $tType]:((X0 > X0 > $o) > X0 > X0 > set @ X0)).
% 3.33/1.86  thf(func_def_49, type, set_lessThan: !>[X0: $tType]:((X0 > X0 > $o) > X0 > set @ X0)).
% 3.33/1.86  thf(func_def_50, type, prefixes: !>[X0: $tType]:(list @ X0 > list @ list @ X0)).
% 3.33/1.86  thf(func_def_51, type, prefixes_rel: !>[X0: $tType]:(list @ X0 > list @ X0 > $o)).
% 3.33/1.86  thf(func_def_52, type, strict_suffix: !>[X0: $tType]:(list @ X0 > list @ X0 > $o)).
% 3.33/1.86  thf(func_def_53, type, accp: !>[X0: $tType]:((X0 > X0 > $o) > X0 > $o)).
% 3.33/1.86  thf(func_def_54, type, member: !>[X0: $tType]:(X0 > set @ X0 > $o)).
% 3.33/1.86  thf(func_def_55, type, less: a > a > $o).
% 3.33/1.86  thf(func_def_56, type, less_eq: a > a > $o).
% 3.33/1.86  thf(func_def_57, type, xs: coinductive_llist @ a).
% 3.33/1.86  thf(func_def_58, type, ys: coinductive_llist @ a).
% 3.33/1.86  thf(func_def_75, type, sK0: !>[X0: $tType, X1: $tType]:((X1 > X0) > (X1 > X0) > X1)).
% 3.33/1.86  thf(func_def_77, type, ph2: !>[X0: $tType]:(X0)).
% 3.33/1.86  thf(f722,plain,(
% 3.33/1.86    $false),
% 3.33/1.86    inference(subsumption_resolution,[status(thm)],[f721,f705])).
% 3.33/1.86  thf(f705,plain,(
% 3.33/1.86    ((coinductive_lnull @ a @ xs) != $true)),
% 3.33/1.86    inference(subsumption_resolution,[status(thm)],[f698,f683])).
% 3.33/1.86  thf(f683,plain,(
% 3.33/1.86    ( ! [X0 : $tType,X2 : coinductive_llist @ X0,X3 : X0 > X0 > $o,X1 : coinductive_llist @ X0] : (((coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X3 @ X1 @ X2)) = $true) | ((coinductive_lnull @ X0 @ X1) != $true)) )),
% 3.33/1.86    inference(cnf_transformation,[status(thm)],[f641])).
% 3.33/1.86  thf(f641,plain,(
% 3.33/1.86    ! [X0 : $tType,X1 : coinductive_llist @ X0,X2 : coinductive_llist @ X0,X3 : X0 > X0 > $o] : ((($true != (coinductive_lnull @ X0 @ X2)) & ((coinductive_lnull @ X0 @ X1) != $true)) | ((coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X3 @ X1 @ X2)) = $true))),
% 3.33/1.86    inference(ennf_transformation,[status(thm)],[f577])).
% 3.33/1.86  thf(f577,plain,(
% 3.33/1.86    ! [X0 : $tType,X1 : coinductive_llist @ X0,X2 : coinductive_llist @ X0,X3 : X0 > X0 > $o] : ((($true = (coinductive_lnull @ X0 @ X2)) | ((coinductive_lnull @ X0 @ X1) = $true)) => ((coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X3 @ X1 @ X2)) = $true))),
% 3.33/1.86    inference(fool_elimination,[status(thm)],[f576])).
% 3.33/1.86  thf(f576,plain,(
% 3.33/1.86    ! [X0 : $tType,X1 : coinductive_llist @ X0,X2 : coinductive_llist @ X0,X3 : X0 > X0 > $o] : (((coinductive_lnull @ X0 @ X2) | (coinductive_lnull @ X0 @ X1)) => (coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X3 @ X1 @ X2)))),
% 3.33/1.86    inference(rectify,[status(thm)],[f9])).
% 3.33/1.86  thf(f9,axiom,(
% 3.33/1.86    ! [X0 : $tType,X3 : coinductive_llist @ X0,X4 : coinductive_llist @ X0,X8 : X0 > X0 > $o] : (((coinductive_lnull @ X0 @ X4) | (coinductive_lnull @ X0 @ X3)) => (coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X8 @ X3 @ X4)))),
% 3.33/1.86    file('/export/starexec/sandbox/tmp/tmp.QfeLN0lqUF/DTF2THF_2221.p',fact_8_ord_Olmerge_Odisc_I1_J)).
% 3.33/1.86  thf(f698,plain,(
% 3.33/1.86    ((coinductive_lnull @ a @ xs) != $true) | ((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) != $true)),
% 3.33/1.86    inference(cnf_transformation,[status(thm)],[f666])).
% 3.33/1.86  thf(f666,plain,(
% 3.33/1.86    ((((coinductive_lnull @ a @ xs) != $true) & ((coinductive_lnull @ a @ ys) != $true)) | ((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) != $true)) & (((coinductive_lnull @ a @ xs) = $true) | ((coinductive_lnull @ a @ ys) = $true) | ((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) = $true))),
% 3.33/1.86    inference(flattening,[status(thm)],[f665])).
% 3.33/1.86  thf(f665,plain,(
% 3.33/1.86    ((((coinductive_lnull @ a @ xs) != $true) & ((coinductive_lnull @ a @ ys) != $true)) | ((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) != $true)) & ((((coinductive_lnull @ a @ xs) = $true) | ((coinductive_lnull @ a @ ys) = $true)) | ((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) = $true))),
% 3.33/1.86    inference(nnf_transformation,[status(thm)],[f648])).
% 3.33/1.86  thf(f648,plain,(
% 3.33/1.86    ((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) = $true) <~> (((coinductive_lnull @ a @ xs) = $true) | ((coinductive_lnull @ a @ ys) = $true))),
% 3.33/1.86    inference(ennf_transformation,[status(thm)],[f341])).
% 3.33/1.86  thf(f341,plain,(
% 3.33/1.86    ~((((coinductive_lnull @ a @ xs) = $true) | ((coinductive_lnull @ a @ ys) = $true)) <=> ((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) = $true))),
% 3.33/1.86    inference(fool_elimination,[status(thm)],[f340])).
% 3.33/1.86  thf(f340,plain,(
% 3.33/1.86    ~((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) = (coinductive_lnull @ a @ xs) | (coinductive_lnull @ a @ ys))),
% 3.33/1.86    inference(rectify,[status(thm)],[f264])).
% 3.33/1.86  thf(f264,negated_conjecture,(
% 3.33/1.86    ~((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) = (coinductive_lnull @ a @ xs) | (coinductive_lnull @ a @ ys))),
% 3.33/1.86    inference(negated_conjecture,[status(cth)],[f263])).
% 3.33/1.86  thf(f263,conjecture,(
% 3.33/1.86    ((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) = (coinductive_lnull @ a @ xs) | (coinductive_lnull @ a @ ys))),
% 3.33/1.86    file('/export/starexec/sandbox/tmp/tmp.QfeLN0lqUF/DTF2THF_2221.p',conj_0)).
% 3.33/1.86  thf(f721,plain,(
% 3.33/1.86    ((coinductive_lnull @ a @ xs) = $true)),
% 3.33/1.86    inference(subsumption_resolution,[status(thm)],[f720,f706])).
% 3.33/1.86  thf(f706,plain,(
% 3.33/1.86    ((coinductive_lnull @ a @ ys) != $true)),
% 3.33/1.86    inference(subsumption_resolution,[status(thm)],[f697,f677])).
% 3.33/1.86  thf(f677,plain,(
% 3.33/1.86    ( ! [X0 : $tType,X2 : coinductive_llist @ X0,X3 : coinductive_llist @ X0,X1 : X0 > X0 > $o] : (($true = (coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X1 @ X2 @ X3))) | ((coinductive_lnull @ X0 @ X3) != $true)) )),
% 3.33/1.86    inference(cnf_transformation,[status(thm)],[f660])).
% 3.33/1.86  thf(f660,plain,(
% 3.33/1.86    ! [X0 : $tType,X1 : X0 > X0 > $o,X2 : coinductive_llist @ X0,X3 : coinductive_llist @ X0] : (((((coinductive_lnull @ X0 @ X3) != $true) & ($true != (coinductive_lnull @ X0 @ X2))) | ($true = (coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X1 @ X2 @ X3)))) & (($true != (coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X1 @ X2 @ X3))) | ((coinductive_lnull @ X0 @ X3) = $true) | ($true = (coinductive_lnull @ X0 @ X2))))),
% 3.33/1.86    inference(flattening,[status(thm)],[f659])).
% 3.33/1.86  thf(f659,plain,(
% 3.33/1.86    ! [X0 : $tType,X1 : X0 > X0 > $o,X2 : coinductive_llist @ X0,X3 : coinductive_llist @ X0] : (((((coinductive_lnull @ X0 @ X3) != $true) & ($true != (coinductive_lnull @ X0 @ X2))) | ($true = (coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X1 @ X2 @ X3)))) & (($true != (coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X1 @ X2 @ X3))) | (((coinductive_lnull @ X0 @ X3) = $true) | ($true = (coinductive_lnull @ X0 @ X2)))))),
% 3.33/1.86    inference(nnf_transformation,[status(thm)],[f636])).
% 3.33/1.86  thf(f636,plain,(
% 3.33/1.86    ! [X0 : $tType,X1 : X0 > X0 > $o,X2 : coinductive_llist @ X0,X3 : coinductive_llist @ X0] : ((((coinductive_lnull @ X0 @ X3) != $true) & ($true != (coinductive_lnull @ X0 @ X2))) <=> ($true != (coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X1 @ X2 @ X3))))),
% 3.33/1.86    inference(flattening,[status(thm)],[f421])).
% 3.33/1.86  thf(f421,plain,(
% 3.33/1.86    ! [X0 : $tType,X1 : X0 > X0 > $o,X2 : coinductive_llist @ X0,X3 : coinductive_llist @ X0] : ((~((coinductive_lnull @ X0 @ X3) = $true) & ~($true = (coinductive_lnull @ X0 @ X2))) <=> ~($true = (coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X1 @ X2 @ X3))))),
% 3.33/1.86    inference(fool_elimination,[status(thm)],[f420])).
% 3.33/1.86  thf(f420,plain,(
% 3.33/1.86    ! [X0 : $tType,X1 : X0 > X0 > $o,X2 : coinductive_llist @ X0,X3 : coinductive_llist @ X0] : (~(coinductive_lnull @ X0 @ X3) & ~(coinductive_lnull @ X0 @ X2) = ~(coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X1 @ X2 @ X3)))),
% 3.33/1.86    inference(rectify,[status(thm)],[f10])).
% 3.33/1.86  thf(f10,axiom,(
% 3.33/1.86    ! [X0 : $tType,X8 : X0 > X0 > $o,X3 : coinductive_llist @ X0,X4 : coinductive_llist @ X0] : (~(coinductive_lnull @ X0 @ X4) & ~(coinductive_lnull @ X0 @ X3) = ~(coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X8 @ X3 @ X4)))),
% 3.33/1.86    file('/export/starexec/sandbox/tmp/tmp.QfeLN0lqUF/DTF2THF_2221.p',fact_9_ord_Olmerge_Odisc__iff_I2_J)).
% 3.33/1.86  thf(f697,plain,(
% 3.33/1.86    ((coinductive_lnull @ a @ ys) != $true) | ((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) != $true)),
% 3.33/1.86    inference(cnf_transformation,[status(thm)],[f666])).
% 3.33/1.86  thf(f720,plain,(
% 3.33/1.86    ((coinductive_lnull @ a @ ys) = $true) | ((coinductive_lnull @ a @ xs) = $true)),
% 3.33/1.86    inference(trivial_inequality_removal,[status(thm)],[f713])).
% 3.33/1.86  thf(f713,plain,(
% 3.33/1.86    ((coinductive_lnull @ a @ xs) = $true) | ((coinductive_lnull @ a @ ys) = $true) | ($true != $true)),
% 3.33/1.86    inference(superposition,[status(thm)],[f690,f708])).
% 3.33/1.86  thf(f708,plain,(
% 3.33/1.86    ((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) = $true)),
% 3.33/1.86    inference(subsumption_resolution,[status(thm)],[f707,f705])).
% 3.33/1.86  thf(f707,plain,(
% 3.33/1.86    ((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) = $true) | ((coinductive_lnull @ a @ xs) = $true)),
% 3.33/1.86    inference(subsumption_resolution,[status(thm)],[f696,f706])).
% 3.33/1.86  thf(f696,plain,(
% 3.33/1.86    ((coinductive_lnull @ a @ ys) = $true) | ((coinductive_lnull @ a @ (hammin1328233080lmerge @ a @ less @ xs @ ys)) = $true) | ((coinductive_lnull @ a @ xs) = $true)),
% 3.33/1.86    inference(cnf_transformation,[status(thm)],[f666])).
% 3.33/1.86  thf(f690,plain,(
% 3.33/1.86    ( ! [X0 : $tType,X2 : coinductive_llist @ X0,X3 : X0 > X0 > $o,X1 : coinductive_llist @ X0] : (((coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X3 @ X1 @ X2)) != $true) | ((coinductive_lnull @ X0 @ X1) = $true) | ($true = (coinductive_lnull @ X0 @ X2))) )),
% 3.33/1.86    inference(cnf_transformation,[status(thm)],[f654])).
% 3.33/1.86  thf(f654,plain,(
% 3.33/1.86    ! [X0 : $tType,X1 : coinductive_llist @ X0,X2 : coinductive_llist @ X0,X3 : X0 > X0 > $o] : (($true = (coinductive_lnull @ X0 @ X2)) | ((coinductive_lnull @ X0 @ X1) = $true) | ((coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X3 @ X1 @ X2)) != $true))),
% 3.33/1.86    inference(flattening,[status(thm)],[f653])).
% 3.33/1.86  thf(f653,plain,(
% 3.33/1.86    ! [X0 : $tType,X1 : coinductive_llist @ X0,X2 : coinductive_llist @ X0,X3 : X0 > X0 > $o] : ((((coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X3 @ X1 @ X2)) != $true) | ($true = (coinductive_lnull @ X0 @ X2))) | ((coinductive_lnull @ X0 @ X1) = $true))),
% 3.33/1.86    inference(ennf_transformation,[status(thm)],[f634])).
% 3.33/1.86  thf(f634,plain,(
% 3.33/1.86    ! [X0 : $tType,X1 : coinductive_llist @ X0,X2 : coinductive_llist @ X0,X3 : X0 > X0 > $o] : (((coinductive_lnull @ X0 @ X1) != $true) => (($true != (coinductive_lnull @ X0 @ X2)) => ((coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X3 @ X1 @ X2)) != $true)))),
% 3.33/1.86    inference(flattening,[status(thm)],[f593])).
% 3.33/1.86  thf(f593,plain,(
% 3.33/1.86    ! [X0 : $tType,X1 : coinductive_llist @ X0,X2 : coinductive_llist @ X0,X3 : X0 > X0 > $o] : (~((coinductive_lnull @ X0 @ X1) = $true) => (~($true = (coinductive_lnull @ X0 @ X2)) => ~((coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X3 @ X1 @ X2)) = $true)))),
% 3.33/1.86    inference(fool_elimination,[status(thm)],[f592])).
% 3.33/1.86  thf(f592,plain,(
% 3.33/1.86    ! [X0 : $tType,X1 : coinductive_llist @ X0,X2 : coinductive_llist @ X0,X3 : X0 > X0 > $o] : (~(coinductive_lnull @ X0 @ X1) => (~(coinductive_lnull @ X0 @ X2) => ~(coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X3 @ X1 @ X2))))),
% 3.33/1.86    inference(rectify,[status(thm)],[f8])).
% 3.33/1.86  thf(f8,axiom,(
% 3.33/1.86    ! [X0 : $tType,X3 : coinductive_llist @ X0,X4 : coinductive_llist @ X0,X8 : X0 > X0 > $o] : (~(coinductive_lnull @ X0 @ X3) => (~(coinductive_lnull @ X0 @ X4) => ~(coinductive_lnull @ X0 @ (hammin1328233080lmerge @ X0 @ X8 @ X3 @ X4))))),
% 3.33/1.86    file('/export/starexec/sandbox/tmp/tmp.QfeLN0lqUF/DTF2THF_2221.p',fact_7_ord_Olmerge_Odisc_I2_J)).
% 3.33/1.86  % SZS output end Proof for DTF2THF_2221
% 3.33/1.86  % (2364)------------------------------
% 3.33/1.86  % (2364)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.33/1.86  % (2364)Termination reason: Refutation
% 3.33/1.86  
% 3.33/1.86  % (2364)Memory used [KB]: 6396
% 3.33/1.86  % (2364)Time elapsed: 0.026 s
% 3.33/1.86  % (2364)Instructions burned: 47 (million)
% 3.33/1.86  % (2364)------------------------------
% 3.33/1.86  % (2364)------------------------------
% 3.33/1.86  % (2358)Success in time 0.057 s
%------------------------------------------------------------------------------