↑ Up

DT2H2X---1.9.5.THM-Ref.s

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

% Computer : n003.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:54 AM UTC 2026

% Result   : Theorem 3.09s 1.71s
% Output   : Refutation 3.09s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.09  % Problem  : DAT138^1 : TPTP v9.2.1. Released v7.0.0.
% 0.00/0.09  % Command  : /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% 0.11/0.29  % Computer : n003.cluster.edu
% 0.11/0.29  % Model    : x86_64 x86_64
% 0.11/0.29  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.11/0.29  % Memory   : 8042.1875MB
% 0.11/0.29  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.11/0.29  % CPULimit : 300
% 0.11/0.29  % WCLimit  : 300
% 0.11/0.29  % DateTime : Tue Feb 24 06:08:40 EST 2026
% 0.11/0.29  % CPUTime  : 
% 0.11/0.29  Running /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% 0.17/0.38  ---- Original DTF file ---
% 0.17/0.38  thf(spec,logic,$$dhol).
% 0.17/0.38  %------------------------------------------------------------------------------
% 0.17/0.38  % File     : DAT138^1 : TPTP v9.2.1. Released v7.0.0.
% 0.17/0.38  % Domain   : Data Structures
% 0.17/0.38  % Problem  : Coinductive list 5031
% 0.17/0.38  % Version  : [Bla16] axioms : Especial.
% 0.17/0.38  % English  :
% 0.17/0.38  
% 0.17/0.38  % Refs     : [Loc10] Lochbihler (2010), Coinductive
% 0.17/0.38  %          : [RB15]  Reynolds & Blanchette (2015), A Decision Procedure for
% 0.17/0.38  %          : [Bla16] Blanchette (2016), Email to Geoff Sutcliffe
% 0.17/0.38  % Source   : [Bla16]
% 0.17/0.38  % Names    : coinductive_list__5031.p [Bla16]
% 0.17/0.38  
% 0.17/0.38  % Status   : Theorem
% 0.17/0.38  % Rating   : 0.33 v9.1.0, 0.00 v7.2.0, 0.25 v7.1.0
% 0.17/0.38  % Syntax   : Number of formulae    :  306 ( 164 unt;  49 typ;   0 def)
% 0.17/0.38  %            Number of atoms       :  623 ( 427 equ;   0 cnn)
% 0.17/0.38  %            Maximal formula atoms :   11 (   2 avg)
% 0.17/0.38  %            Number of connectives : 3522 ( 117   ~;  24   |;  64   &;3088   @)
% 0.17/0.38  %                                         (   0 <=>; 229  =>;   0  <=;   0 <~>)
% 0.17/0.38  %            Maximal formula depth :   34 (   7 avg)
% 0.17/0.38  %            Number of types       :    3 (   2 usr)
% 0.17/0.38  %            Number of type conns  :  181 ( 181   >;   0   *;   0   +;   0  <<)
% 0.17/0.38  %            Number of symbols     :   50 (  47 usr;   3 con; 0-5 aty)
% 0.17/0.38  %            Number of variables   : 1028 (  23   ^; 907   !;  51   ?;1028   :)
% 0.17/0.38  %                                         (  47  !>;   0  ?*;   0  @-;   0  @+)
% 0.17/0.38  % SPC      : TH1_THM_EQU_NAR
% 0.17/0.38  
% 0.17/0.38  % Comments : This file was generated by Isabelle (most likely Sledgehammer)
% 0.17/0.38  %            2016-07-13 15:10:27.734
% 0.17/0.38  %------------------------------------------------------------------------------
% 0.17/0.38  %----Could-be-implicit typings (5)
% 0.17/0.38  thf(ty_t_Coinductive__List__Mirabelle__kmikjhschf_Ollist,type,
% 0.17/0.38      coindu1593790203_llist: $tType > $tType ).
% 0.17/0.38  
% 0.17/0.38  thf(ty_t_List_Olist,type,
% 0.17/0.38      list: $tType > $tType ).
% 0.17/0.38  
% 0.17/0.38  thf(ty_t_Nat_Onat,type,
% 0.17/0.38      nat: $tType ).
% 0.17/0.38  
% 0.17/0.38  thf(ty_t_itself,type,
% 0.17/0.38      itself: $tType > $tType ).
% 0.17/0.38  
% 0.17/0.38  thf(ty_tf_a,type,
% 0.17/0.38      a: $tType ).
% 0.17/0.38  
% 0.17/0.38  %----Explicit typings (44)
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix,type,
% 0.17/0.38      coindu1571841457prefix: 
% 0.17/0.38        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > $o ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Oinf__llist,type,
% 0.17/0.38      coindu288502823_llist: 
% 0.17/0.38        !>[A: $tType] : ( ( nat > A ) > ( coindu1593790203_llist @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Oiterates,type,
% 0.17/0.38      coindu1529956631erates: 
% 0.17/0.38        !>[A: $tType] : ( ( A > A ) > A > ( coindu1593790203_llist @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olappend,type,
% 0.17/0.38      coindu268472904append: 
% 0.17/0.38        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olfinite,type,
% 0.17/0.38      coindu1213758845finite: 
% 0.17/0.38        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > $o ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olist__of,type,
% 0.17/0.38      coindu1736001939ist_of: 
% 0.17/0.38        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( list @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olist__of__aux,type,
% 0.17/0.38      coindu1542816657of_aux: 
% 0.17/0.38        !>[A: $tType] : ( ( list @ A ) > ( coindu1593790203_llist @ A ) > ( list @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollast,type,
% 0.17/0.38      coindu2000965700_llast: 
% 0.17/0.38        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > A ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist_OLCons,type,
% 0.17/0.38      coindu1121789889_LCons: 
% 0.17/0.38        !>[A: $tType] : ( A > ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist_OLNil,type,
% 0.17/0.38      coindu1598213697e_LNil: 
% 0.17/0.38        !>[A: $tType] : ( coindu1593790203_llist @ A ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist_Olnull,type,
% 0.17/0.38      coindu335574135_lnull: 
% 0.17/0.38        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > $o ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist__of,type,
% 0.17/0.38      coindu1079202755ist_of: 
% 0.17/0.38        !>[A: $tType] : ( ( list @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olmember,type,
% 0.17/0.38      coindu567634248member: 
% 0.17/0.38        !>[A: $tType] : ( A > ( coindu1593790203_llist @ A ) > $o ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olnth,type,
% 0.17/0.38      coindu749330388e_lnth: 
% 0.17/0.38        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > nat > A ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olprefix,type,
% 0.17/0.38      coindu1696667936prefix: 
% 0.17/0.38        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > $o ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olstrict__prefix,type,
% 0.17/0.38      coindu574146665prefix: 
% 0.17/0.38        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > $o ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_HOL_Oundefined,type,
% 0.17/0.38      undefined: 
% 0.17/0.38        !>[A: $tType] : A ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_If,type,
% 0.17/0.38      if: 
% 0.17/0.38        !>[A: $tType] : ( $o > A > A > A ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Oappend,type,
% 0.17/0.38      append: 
% 0.17/0.38        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) > ( list @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Obind,type,
% 0.17/0.38      bind: 
% 0.17/0.38        !>[A: $tType,B: $tType] : ( ( list @ A ) > ( A > ( list @ B ) ) > ( list @ B ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Obutlast,type,
% 0.17/0.38      butlast: 
% 0.17/0.38        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Oinsert,type,
% 0.17/0.38      insert: 
% 0.17/0.38        !>[A: $tType] : ( A > ( list @ A ) > ( list @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Olast,type,
% 0.17/0.38      last: 
% 0.17/0.38        !>[A: $tType] : ( ( list @ A ) > A ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Olist_OCons,type,
% 0.17/0.38      cons: 
% 0.17/0.38        !>[A: $tType] : ( A > ( list @ A ) > ( list @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Olist_ONil,type,
% 0.17/0.38      nil: 
% 0.17/0.38        !>[A: $tType] : ( list @ A ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Olist_Omap,type,
% 0.17/0.38      map: 
% 0.17/0.38        !>[A: $tType,Aa: $tType] : ( ( A > Aa ) > ( list @ A ) > ( list @ Aa ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Olist__ex1,type,
% 0.17/0.38      list_ex1: 
% 0.17/0.38        !>[A: $tType] : ( ( A > $o ) > ( list @ A ) > $o ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Omap__tailrec,type,
% 0.17/0.38      map_tailrec: 
% 0.17/0.38        !>[A: $tType,B: $tType] : ( ( A > B ) > ( list @ A ) > ( list @ B ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Omap__tailrec__rev,type,
% 0.17/0.38      map_tailrec_rev: 
% 0.17/0.38        !>[A: $tType,B: $tType] : ( ( A > B ) > ( list @ A ) > ( list @ B ) > ( list @ B ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Omaps,type,
% 0.17/0.38      maps: 
% 0.17/0.38        !>[A: $tType,B: $tType] : ( ( A > ( list @ B ) ) > ( list @ A ) > ( list @ B ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Onth,type,
% 0.17/0.38      nth: 
% 0.17/0.38        !>[A: $tType] : ( ( list @ A ) > nat > A ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Oord_Olexordp__eq,type,
% 0.17/0.38      lexordp_eq: 
% 0.17/0.38        !>[A: $tType] : ( ( A > A > $o ) > ( list @ A ) > ( list @ A ) > $o ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Oproduct__lists,type,
% 0.17/0.38      product_lists: 
% 0.17/0.38        !>[A: $tType] : ( ( list @ ( list @ A ) ) > ( list @ ( list @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Orev,type,
% 0.17/0.38      rev: 
% 0.17/0.38        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Orotate1,type,
% 0.17/0.38      rotate1: 
% 0.17/0.38        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_List_Osublists,type,
% 0.17/0.38      sublists: 
% 0.17/0.38        !>[A: $tType] : ( ( list @ A ) > ( list @ ( list @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Nat_Osize__class_Osize,type,
% 0.17/0.38      size_size: 
% 0.17/0.38        !>[A: $tType] : ( A > nat ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Pure_Otype,type,
% 0.17/0.38      type: 
% 0.17/0.38        !>[A: $tType] : ( itself @ A ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Sublist_Oprefixes,type,
% 0.17/0.38      prefixes: 
% 0.17/0.38        !>[A: $tType] : ( ( list @ A ) > ( list @ ( list @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Sublist_Oprefixes__rel,type,
% 0.17/0.38      prefixes_rel: 
% 0.17/0.38        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) > $o ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Sublist_Ostrict__suffix,type,
% 0.17/0.38      strict_suffix: 
% 0.17/0.38        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) > $o ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_c_Wellfounded_Oaccp,type,
% 0.17/0.38      accp: 
% 0.17/0.38        !>[A: $tType] : ( ( A > A > $o ) > A > $o ) ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_v_f,type,
% 0.17/0.38      f: nat > a ).
% 0.17/0.38  
% 0.17/0.38  thf(sy_v_xs,type,
% 0.17/0.38      xs: coindu1593790203_llist @ a ).
% 0.17/0.38  
% 0.17/0.38  %----Relevant facts (253)
% 0.17/0.38  thf(fact_0_inf__llist__inj,axiom,
% 0.17/0.38      ! [A: $tType,F: nat > A,G: nat > A] :
% 0.17/0.38        ( ( ( coindu288502823_llist @ A @ F )
% 0.17/0.38          = ( coindu288502823_llist @ A @ G ) )
% 0.17/0.38        = ( F = G ) ) ).
% 0.17/0.38  
% 0.17/0.38  % inf_llist_inj
% 0.17/0.38  thf(fact_1_lappend__assoc,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu268472904append @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ Zs )
% 0.17/0.38        = ( coindu268472904append @ A @ Xs @ ( coindu268472904append @ A @ Ys @ Zs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_assoc
% 0.17/0.38  thf(fact_2_inf__llist__lprefix,axiom,
% 0.17/0.38      ! [A: $tType,F: nat > A,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ ( coindu288502823_llist @ A @ F ) @ Xs )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( coindu288502823_llist @ A @ F ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % inf_llist_lprefix
% 0.17/0.38  thf(fact_3_lnth__inf__llist,axiom,
% 0.17/0.38      ! [A: $tType,F: nat > A,N: nat] :
% 0.17/0.38        ( ( coindu749330388e_lnth @ A @ ( coindu288502823_llist @ A @ F ) @ N )
% 0.17/0.38        = ( F @ N ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lnth_inf_llist
% 0.17/0.38  thf(fact_4_lappend__code_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu268472904append @ A @ ( coindu1598213697e_LNil @ A ) @ Ys )
% 0.17/0.38        = Ys ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_code(1)
% 0.17/0.38  thf(fact_5_lappend__LNil2,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu268472904append @ A @ Xs @ ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38        = Xs ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_LNil2
% 0.17/0.38  thf(fact_6_inf__llist__neq__llist__of_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,F: nat > A] :
% 0.17/0.38        ( ( coindu1079202755ist_of @ A @ Xs )
% 0.17/0.38       != ( coindu288502823_llist @ A @ F ) ) ).
% 0.17/0.38  
% 0.17/0.38  % inf_llist_neq_llist_of(1)
% 0.17/0.38  thf(fact_7_llist__exhaust,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ! [Ys2: list @ A] :
% 0.17/0.38            ( Xs
% 0.17/0.38           != ( coindu1079202755ist_of @ A @ Ys2 ) )
% 0.17/0.38       => ~ ! [F2: nat > A] :
% 0.17/0.38              ( Xs
% 0.17/0.38             != ( coindu288502823_llist @ A @ F2 ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist_exhaust
% 0.17/0.38  thf(fact_8_lappend__iterates,axiom,
% 0.17/0.38      ! [A: $tType,F: A > A,X: A,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu268472904append @ A @ ( coindu1529956631erates @ A @ F @ X ) @ Xs )
% 0.17/0.38        = ( coindu1529956631erates @ A @ F @ X ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_iterates
% 0.17/0.38  thf(fact_9_lappend__code_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,Xa: A,X: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu268472904append @ A @ ( coindu1121789889_LCons @ A @ Xa @ X ) @ Ys )
% 0.17/0.38        = ( coindu1121789889_LCons @ A @ Xa @ ( coindu268472904append @ A @ X @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_code(2)
% 0.17/0.38  thf(fact_10_lappend_Odisc__iff_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( ~ ( coindu335574135_lnull @ A @ ( coindu268472904append @ A @ Xs @ Ys ) ) )
% 0.17/0.38        = ( ~ ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38          | ~ ( coindu335574135_lnull @ A @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend.disc_iff(2)
% 0.17/0.38  thf(fact_11_lnull__lappend,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu335574135_lnull @ A @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 0.17/0.38        = ( ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38          & ( coindu335574135_lnull @ A @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lnull_lappend
% 0.17/0.38  thf(fact_12_inf__llist__neq__LNil,axiom,
% 0.17/0.38      ! [A: $tType,F: nat > A] :
% 0.17/0.38        ( ( coindu288502823_llist @ A @ F )
% 0.17/0.38       != ( coindu1598213697e_LNil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % inf_llist_neq_LNil
% 0.17/0.38  thf(fact_13_lfinite__lappend,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1213758845finite @ A @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 0.17/0.38        = ( ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38          & ( coindu1213758845finite @ A @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lfinite_lappend
% 0.17/0.38  thf(fact_14_lprefix__refl,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] : ( coindu1696667936prefix @ A @ Xs @ Xs ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_refl
% 0.17/0.38  thf(fact_15_llist_Oleq__refl,axiom,
% 0.17/0.38      ! [A: $tType,X: coindu1593790203_llist @ A] : ( coindu1696667936prefix @ A @ X @ X ) ).
% 0.17/0.38  
% 0.17/0.38  % llist.leq_refl
% 0.17/0.38  thf(fact_16_llist_Oinject,axiom,
% 0.17/0.38      ! [A: $tType,X21: A,X22: coindu1593790203_llist @ A,Y21: A,Y22: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( ( coindu1121789889_LCons @ A @ X21 @ X22 )
% 0.17/0.38          = ( coindu1121789889_LCons @ A @ Y21 @ Y22 ) )
% 0.17/0.38        = ( ( X21 = Y21 )
% 0.17/0.38          & ( X22 = Y22 ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist.inject
% 0.17/0.38  thf(fact_17_llist__of__inject,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( ( coindu1079202755ist_of @ A @ Xs )
% 0.17/0.38          = ( coindu1079202755ist_of @ A @ Ys ) )
% 0.17/0.38        = ( Xs = Ys ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist_of_inject
% 0.17/0.38  thf(fact_18_LCons__lprefix__LCons,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) @ ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 0.17/0.38        = ( ( X = Y )
% 0.17/0.38          & ( coindu1696667936prefix @ A @ Xs @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % LCons_lprefix_LCons
% 0.17/0.38  thf(fact_19_lprefix__code_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,Ys: coindu1593790203_llist @ A] : ( coindu1696667936prefix @ A @ ( coindu1598213697e_LNil @ A ) @ Ys ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_code(1)
% 0.17/0.38  thf(fact_20_lfinite__code_I2_J,axiom,
% 0.17/0.38      ! [B: $tType,X: B,Xs: coindu1593790203_llist @ B] :
% 0.17/0.38        ( ( coindu1213758845finite @ B @ ( coindu1121789889_LCons @ B @ X @ Xs ) )
% 0.17/0.38        = ( coindu1213758845finite @ B @ Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lfinite_code(2)
% 0.17/0.38  thf(fact_21_lfinite__LCons,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1213758845finite @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 0.17/0.38        = ( coindu1213758845finite @ A @ Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lfinite_LCons
% 0.17/0.38  thf(fact_22_lfinite__code_I1_J,axiom,
% 0.17/0.38      ! [A: $tType] : ( coindu1213758845finite @ A @ ( coindu1598213697e_LNil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lfinite_code(1)
% 0.17/0.38  thf(fact_23_lprefix__LNil,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ Xs @ ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38        = ( coindu335574135_lnull @ A @ Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_LNil
% 0.17/0.38  thf(fact_24_lprefix__lappend__same,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ ( coindu268472904append @ A @ Xs @ Zs ) )
% 0.17/0.38        = ( ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38         => ( coindu1696667936prefix @ A @ Ys @ Zs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_lappend_same
% 0.17/0.38  thf(fact_25_inf__llist__lnth,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ~ ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38       => ( ( coindu288502823_llist @ A @ ( coindu749330388e_lnth @ A @ Xs ) )
% 0.17/0.38          = Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % inf_llist_lnth
% 0.17/0.38  thf(fact_26_llist_Odisc_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,X21: A,X22: coindu1593790203_llist @ A] :
% 0.17/0.38        ~ ( coindu335574135_lnull @ A @ ( coindu1121789889_LCons @ A @ X21 @ X22 ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist.disc(2)
% 0.17/0.38  thf(fact_27_llist_Odisc_I1_J,axiom,
% 0.17/0.38      ! [A: $tType] : ( coindu335574135_lnull @ A @ ( coindu1598213697e_LNil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist.disc(1)
% 0.17/0.38  thf(fact_28_llist_OdiscI_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,Llist: coindu1593790203_llist @ A,X21: A,X22: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( Llist
% 0.17/0.38          = ( coindu1121789889_LCons @ A @ X21 @ X22 ) )
% 0.17/0.38       => ~ ( coindu335574135_lnull @ A @ Llist ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist.discI(2)
% 0.17/0.38  thf(fact_29_llist_OdiscI_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,Llist: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( Llist
% 0.17/0.38          = ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38       => ( coindu335574135_lnull @ A @ Llist ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist.discI(1)
% 0.17/0.38  thf(fact_30_lprefix__code_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ~ ( coindu1696667936prefix @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) @ ( coindu1598213697e_LNil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_code(2)
% 0.17/0.38  thf(fact_31_llist_Ocollapse_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,Llist: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu335574135_lnull @ A @ Llist )
% 0.17/0.38       => ( Llist
% 0.17/0.38          = ( coindu1598213697e_LNil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist.collapse(1)
% 0.17/0.38  thf(fact_32_llist_Odistinct_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,X21: A,X22: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1598213697e_LNil @ A )
% 0.17/0.38       != ( coindu1121789889_LCons @ A @ X21 @ X22 ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist.distinct(1)
% 0.17/0.38  thf(fact_33_lzip_Oexhaust,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ B] :
% 0.17/0.38        ( ~ ( ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38            | ( coindu335574135_lnull @ B @ Ys ) )
% 0.17/0.38       => ~ ( ~ ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38           => ( coindu335574135_lnull @ B @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lzip.exhaust
% 0.17/0.38  thf(fact_34_iterates_Ocode,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu1529956631erates @ A )
% 0.17/0.38        = ( ^ [F3: A > A,X2: A] : ( coindu1121789889_LCons @ A @ X2 @ ( coindu1529956631erates @ A @ F3 @ ( F3 @ X2 ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % iterates.code
% 0.17/0.38  thf(fact_35_lfinite_Ocases,axiom,
% 0.17/0.38      ! [A: $tType,A2: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1213758845finite @ A @ A2 )
% 0.17/0.38       => ( ( A2
% 0.17/0.38           != ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38         => ~ ! [Xs2: coindu1593790203_llist @ A] :
% 0.17/0.38                ( ? [X3: A] :
% 0.17/0.38                    ( A2
% 0.17/0.38                    = ( coindu1121789889_LCons @ A @ X3 @ Xs2 ) )
% 0.17/0.38               => ~ ( coindu1213758845finite @ A @ Xs2 ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lfinite.cases
% 0.17/0.38  thf(fact_36_lfinite_Osimps,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu1213758845finite @ A )
% 0.17/0.38        = ( ^ [A3: coindu1593790203_llist @ A] :
% 0.17/0.38              ( ( A3
% 0.17/0.38                = ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38              | ? [Xs3: coindu1593790203_llist @ A,X2: A] :
% 0.17/0.38                  ( ( A3
% 0.17/0.38                    = ( coindu1121789889_LCons @ A @ X2 @ Xs3 ) )
% 0.17/0.38                  & ( coindu1213758845finite @ A @ Xs3 ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lfinite.simps
% 0.17/0.38  thf(fact_37_llist_Oexhaust,axiom,
% 0.17/0.38      ! [A: $tType,Y: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( Y
% 0.17/0.38         != ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38       => ~ ! [X212: A,X222: coindu1593790203_llist @ A] :
% 0.17/0.38              ( Y
% 0.17/0.38             != ( coindu1121789889_LCons @ A @ X212 @ X222 ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist.exhaust
% 0.17/0.38  thf(fact_38_lnull__lprefix,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38       => ( coindu1696667936prefix @ A @ Xs @ Ys ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lnull_lprefix
% 0.17/0.38  thf(fact_39_lprefix_Ocases,axiom,
% 0.17/0.38      ! [A: $tType,A1: coindu1593790203_llist @ A,A22: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ A1 @ A22 )
% 0.17/0.38       => ( ( ( A1
% 0.17/0.38              = ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38           => ! [Xs2: coindu1593790203_llist @ A] : ( A22 != Xs2 ) )
% 0.17/0.38         => ~ ! [Xs2: coindu1593790203_llist @ A,Ys2: coindu1593790203_llist @ A,X3: A] :
% 0.17/0.38                ( ( A1
% 0.17/0.38                  = ( coindu1121789889_LCons @ A @ X3 @ Xs2 ) )
% 0.17/0.38               => ( ( A22
% 0.17/0.38                    = ( coindu1121789889_LCons @ A @ X3 @ Ys2 ) )
% 0.17/0.38                 => ~ ( coindu1696667936prefix @ A @ Xs2 @ Ys2 ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix.cases
% 0.17/0.38  thf(fact_40_lprefix_Osimps,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A )
% 0.17/0.38        = ( ^ [A12: coindu1593790203_llist @ A,A23: coindu1593790203_llist @ A] :
% 0.17/0.38              ( ? [Xs3: coindu1593790203_llist @ A] :
% 0.17/0.38                  ( ( A12
% 0.17/0.38                    = ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38                  & ( A23 = Xs3 ) )
% 0.17/0.38              | ? [Xs3: coindu1593790203_llist @ A,Ys3: coindu1593790203_llist @ A,X2: A] :
% 0.17/0.38                  ( ( A12
% 0.17/0.38                    = ( coindu1121789889_LCons @ A @ X2 @ Xs3 ) )
% 0.17/0.38                  & ( A23
% 0.17/0.38                    = ( coindu1121789889_LCons @ A @ X2 @ Ys3 ) )
% 0.17/0.38                  & ( coindu1696667936prefix @ A @ Xs3 @ Ys3 ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix.simps
% 0.17/0.38  thf(fact_41_lprefix__lnull,axiom,
% 0.17/0.38      ! [A: $tType,Ys: coindu1593790203_llist @ A,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu335574135_lnull @ A @ Ys )
% 0.17/0.38       => ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 0.17/0.38          = ( coindu335574135_lnull @ A @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_lnull
% 0.17/0.38  thf(fact_42_lprefix__trans,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 0.17/0.38       => ( ( coindu1696667936prefix @ A @ Ys @ Zs )
% 0.17/0.38         => ( coindu1696667936prefix @ A @ Xs @ Zs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_trans
% 0.17/0.38  thf(fact_43_neq__LNil__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( Xs
% 0.17/0.38         != ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38        = ( ? [X2: A,Xs4: coindu1593790203_llist @ A] :
% 0.17/0.38              ( Xs
% 0.17/0.38              = ( coindu1121789889_LCons @ A @ X2 @ Xs4 ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % neq_LNil_conv
% 0.17/0.38  thf(fact_44_ext,axiom,
% 0.17/0.38      ! [B: $tType,A: $tType,F: A > B,G: A > B] :
% 0.17/0.38        ( ! [X3: A] :
% 0.17/0.38            ( ( F @ X3 )
% 0.17/0.38            = ( G @ X3 ) )
% 0.17/0.38       => ( F = G ) ) ).
% 0.17/0.38  
% 0.17/0.38  % ext
% 0.17/0.38  thf(fact_45_lprefix__lnullD,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 0.17/0.38       => ( ( coindu335574135_lnull @ A @ Ys )
% 0.17/0.38         => ( coindu335574135_lnull @ A @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_lnullD
% 0.17/0.38  thf(fact_46_not__lnull__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( ~ ( coindu335574135_lnull @ A @ Xs ) )
% 0.17/0.38        = ( ? [X2: A,Xs4: coindu1593790203_llist @ A] :
% 0.17/0.38              ( Xs
% 0.17/0.38              = ( coindu1121789889_LCons @ A @ X2 @ Xs4 ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % not_lnull_conv
% 0.17/0.38  thf(fact_47_lappend_Oexhaust,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38         => ~ ( coindu335574135_lnull @ A @ Ys ) )
% 0.17/0.38       => ( ~ ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38          | ~ ( coindu335574135_lnull @ A @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend.exhaust
% 0.17/0.38  thf(fact_48_lfinite_Oinducts,axiom,
% 0.17/0.38      ! [A: $tType,X: coindu1593790203_llist @ A,P: ( coindu1593790203_llist @ A ) > $o] :
% 0.17/0.38        ( ( coindu1213758845finite @ A @ X )
% 0.17/0.38       => ( ( P @ ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38         => ( ! [Xs2: coindu1593790203_llist @ A,X3: A] :
% 0.17/0.38                ( ( coindu1213758845finite @ A @ Xs2 )
% 0.17/0.38               => ( ( P @ Xs2 )
% 0.17/0.38                 => ( P @ ( coindu1121789889_LCons @ A @ X3 @ Xs2 ) ) ) )
% 0.17/0.38           => ( P @ X ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lfinite.inducts
% 0.17/0.38  thf(fact_49_llist_Oleq__trans,axiom,
% 0.17/0.38      ! [A: $tType,X: coindu1593790203_llist @ A,Y: coindu1593790203_llist @ A,Z: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ X @ Y )
% 0.17/0.38       => ( ( coindu1696667936prefix @ A @ Y @ Z )
% 0.17/0.38         => ( coindu1696667936prefix @ A @ X @ Z ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist.leq_trans
% 0.17/0.38  thf(fact_50_lnull__def,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu335574135_lnull @ A )
% 0.17/0.38        = ( ^ [Llist2: coindu1593790203_llist @ A] :
% 0.17/0.38              ( Llist2
% 0.17/0.38              = ( coindu1598213697e_LNil @ A ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lnull_def
% 0.17/0.38  thf(fact_51_lprefix__antisym,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 0.17/0.38       => ( ( coindu1696667936prefix @ A @ Ys @ Xs )
% 0.17/0.38         => ( Xs = Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_antisym
% 0.17/0.38  thf(fact_52_lfinite__iterates,axiom,
% 0.17/0.38      ! [A: $tType,F: A > A,X: A] :
% 0.17/0.38        ~ ( coindu1213758845finite @ A @ ( coindu1529956631erates @ A @ F @ X ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lfinite_iterates
% 0.17/0.38  thf(fact_53_lfinite__llist__of,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] : ( coindu1213758845finite @ A @ ( coindu1079202755ist_of @ A @ Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lfinite_llist_of
% 0.17/0.38  thf(fact_54_Le__LCons,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,X: A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 0.17/0.38       => ( coindu1696667936prefix @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) @ ( coindu1121789889_LCons @ A @ X @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % Le_LCons
% 0.17/0.38  thf(fact_55_lprefix_Ocoinduct,axiom,
% 0.17/0.38      ! [A: $tType,X4: ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > $o,X: coindu1593790203_llist @ A,Xa: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( X4 @ X @ Xa )
% 0.17/0.38       => ( ! [X3: coindu1593790203_llist @ A,Xa2: coindu1593790203_llist @ A] :
% 0.17/0.38              ( ( X4 @ X3 @ Xa2 )
% 0.17/0.38             => ( ? [Xs5: coindu1593790203_llist @ A] :
% 0.17/0.38                    ( ( X3
% 0.17/0.38                      = ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38                    & ( Xa2 = Xs5 ) )
% 0.17/0.38                | ? [Xs5: coindu1593790203_llist @ A,Ys4: coindu1593790203_llist @ A,Xb: A] :
% 0.17/0.38                    ( ( X3
% 0.17/0.38                      = ( coindu1121789889_LCons @ A @ Xb @ Xs5 ) )
% 0.17/0.38                    & ( Xa2
% 0.17/0.38                      = ( coindu1121789889_LCons @ A @ Xb @ Ys4 ) )
% 0.17/0.38                    & ( ( X4 @ Xs5 @ Ys4 )
% 0.17/0.38                      | ( coindu1696667936prefix @ A @ Xs5 @ Ys4 ) ) ) ) )
% 0.17/0.38         => ( coindu1696667936prefix @ A @ X @ Xa ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix.coinduct
% 0.17/0.38  thf(fact_56_lprefix__lfiniteD,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 0.17/0.38       => ( ( coindu1213758845finite @ A @ Ys )
% 0.17/0.38         => ( coindu1213758845finite @ A @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_lfiniteD
% 0.17/0.38  thf(fact_57_iterates_Odisc__iff,axiom,
% 0.17/0.38      ! [A: $tType,F: A > A,X: A] :
% 0.17/0.38        ~ ( coindu335574135_lnull @ A @ ( coindu1529956631erates @ A @ F @ X ) ) ).
% 0.17/0.38  
% 0.17/0.38  % iterates.disc_iff
% 0.17/0.38  thf(fact_58_llist_Oleq__antisym,axiom,
% 0.17/0.38      ! [A: $tType,X: coindu1593790203_llist @ A,Y: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ X @ Y )
% 0.17/0.38       => ( ( coindu1696667936prefix @ A @ Y @ X )
% 0.17/0.38         => ( X = Y ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist.leq_antisym
% 0.17/0.38  thf(fact_59_lnull__imp__lfinite,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38       => ( coindu1213758845finite @ A @ Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lnull_imp_lfinite
% 0.17/0.38  thf(fact_60_LCons__lprefix__conv,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) @ Ys )
% 0.17/0.38        = ( ? [Ys5: coindu1593790203_llist @ A] :
% 0.17/0.38              ( ( Ys
% 0.17/0.38                = ( coindu1121789889_LCons @ A @ X @ Ys5 ) )
% 0.17/0.38              & ( coindu1696667936prefix @ A @ Xs @ Ys5 ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % LCons_lprefix_conv
% 0.17/0.38  thf(fact_61_lfinite__rev__induct,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,P: ( coindu1593790203_llist @ A ) > $o] :
% 0.17/0.38        ( ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38       => ( ( P @ ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38         => ( ! [X3: A,Xs2: coindu1593790203_llist @ A] :
% 0.17/0.38                ( ( coindu1213758845finite @ A @ Xs2 )
% 0.17/0.38               => ( ( P @ Xs2 )
% 0.17/0.38                 => ( P @ ( coindu268472904append @ A @ Xs2 @ ( coindu1121789889_LCons @ A @ X3 @ ( coindu1598213697e_LNil @ A ) ) ) ) ) )
% 0.17/0.38           => ( P @ Xs ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lfinite_rev_induct
% 0.17/0.38  thf(fact_62_lprefix__LCons__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ Xs @ ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 0.17/0.38        = ( ( Xs
% 0.17/0.38            = ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38          | ? [Xs4: coindu1593790203_llist @ A] :
% 0.17/0.38              ( ( Xs
% 0.17/0.38                = ( coindu1121789889_LCons @ A @ Y @ Xs4 ) )
% 0.17/0.38              & ( coindu1696667936prefix @ A @ Xs4 @ Ys ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_LCons_conv
% 0.17/0.38  thf(fact_63_lprefix__not__lnullD,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 0.17/0.38       => ( ~ ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38         => ~ ( coindu335574135_lnull @ A @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_not_lnullD
% 0.17/0.38  thf(fact_64_lprefix__down__linear,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ Xs @ Zs )
% 0.17/0.38       => ( ( coindu1696667936prefix @ A @ Ys @ Zs )
% 0.17/0.38         => ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 0.17/0.38            | ( coindu1696667936prefix @ A @ Ys @ Xs ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_down_linear
% 0.17/0.38  thf(fact_65_lfinite__LNil,axiom,
% 0.17/0.38      ! [A: $tType] : ( coindu1213758845finite @ A @ ( coindu1598213697e_LNil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lfinite_LNil
% 0.17/0.38  thf(fact_66_LNil__lprefix,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] : ( coindu1696667936prefix @ A @ ( coindu1598213697e_LNil @ A ) @ Xs ) ).
% 0.17/0.38  
% 0.17/0.38  % LNil_lprefix
% 0.17/0.38  thf(fact_67_lfinite__LConsI,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,X: A] :
% 0.17/0.38        ( ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38       => ( coindu1213758845finite @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lfinite_LConsI
% 0.17/0.38  thf(fact_68_not__lfinite__lprefix__conv__eq,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ~ ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38       => ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 0.17/0.38          = ( Xs = Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % not_lfinite_lprefix_conv_eq
% 0.17/0.38  thf(fact_69_lappend_Octr_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38       => ( ( coindu335574135_lnull @ A @ Ys )
% 0.17/0.38         => ( ( coindu268472904append @ A @ Xs @ Ys )
% 0.17/0.38            = ( coindu1598213697e_LNil @ A ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend.ctr(1)
% 0.17/0.38  thf(fact_70_lappend__snocL1__conv__LCons2,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu268472904append @ A @ ( coindu268472904append @ A @ Xs @ ( coindu1121789889_LCons @ A @ Y @ ( coindu1598213697e_LNil @ A ) ) ) @ Ys )
% 0.17/0.38        = ( coindu268472904append @ A @ Xs @ ( coindu1121789889_LCons @ A @ Y @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_snocL1_conv_LCons2
% 0.17/0.38  thf(fact_71_lappend__inf,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ~ ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38       => ( ( coindu268472904append @ A @ Xs @ Ys )
% 0.17/0.38          = Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_inf
% 0.17/0.38  thf(fact_72_lappend__lnull2,axiom,
% 0.17/0.38      ! [A: $tType,Ys: coindu1593790203_llist @ A,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu335574135_lnull @ A @ Ys )
% 0.17/0.38       => ( ( coindu268472904append @ A @ Xs @ Ys )
% 0.17/0.38          = Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_lnull2
% 0.17/0.38  thf(fact_73_lappend__lnull1,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38       => ( ( coindu268472904append @ A @ Xs @ Ys )
% 0.17/0.38          = Ys ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_lnull1
% 0.17/0.38  thf(fact_74_lappend_Odisc_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38       => ( ( coindu335574135_lnull @ A @ Ys )
% 0.17/0.38         => ( coindu335574135_lnull @ A @ ( coindu268472904append @ A @ Xs @ Ys ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend.disc(1)
% 0.17/0.38  thf(fact_75_lappend_Odisc_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( ~ ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38          | ~ ( coindu335574135_lnull @ A @ Ys ) )
% 0.17/0.38       => ~ ( coindu335574135_lnull @ A @ ( coindu268472904append @ A @ Xs @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend.disc(2)
% 0.17/0.38  thf(fact_76_lprefix__lappend__sameI,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 0.17/0.38       => ( coindu1696667936prefix @ A @ ( coindu268472904append @ A @ Zs @ Xs ) @ ( coindu268472904append @ A @ Zs @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_lappend_sameI
% 0.17/0.38  thf(fact_77_lprefix__conv__lappend,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A )
% 0.17/0.38        = ( ^ [Xs3: coindu1593790203_llist @ A,Ys3: coindu1593790203_llist @ A] :
% 0.17/0.38            ? [Zs2: coindu1593790203_llist @ A] :
% 0.17/0.38              ( Ys3
% 0.17/0.38              = ( coindu268472904append @ A @ Xs3 @ Zs2 ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_conv_lappend
% 0.17/0.38  thf(fact_78_lprefix__lappendD,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ Xs @ ( coindu268472904append @ A @ Ys @ Zs ) )
% 0.17/0.38       => ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 0.17/0.38          | ( coindu1696667936prefix @ A @ Ys @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_lappendD
% 0.17/0.38  thf(fact_79_lappend__lprefixE,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ Zs )
% 0.17/0.38       => ~ ! [Zs3: coindu1593790203_llist @ A] :
% 0.17/0.38              ( Zs
% 0.17/0.38             != ( coindu268472904append @ A @ Xs @ Zs3 ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_lprefixE
% 0.17/0.38  thf(fact_80_lprefix__lappend,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] : ( coindu1696667936prefix @ A @ Xs @ ( coindu268472904append @ A @ Xs @ Ys ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_lappend
% 0.17/0.38  thf(fact_81_lappend__eq__LNil__iff,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( ( coindu268472904append @ A @ Xs @ Ys )
% 0.17/0.38          = ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38        = ( ( Xs
% 0.17/0.38            = ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38          & ( Ys
% 0.17/0.38            = ( coindu1598213697e_LNil @ A ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_eq_LNil_iff
% 0.17/0.38  thf(fact_82_LNil__eq__lappend__iff,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( ( coindu1598213697e_LNil @ A )
% 0.17/0.38          = ( coindu268472904append @ A @ Xs @ Ys ) )
% 0.17/0.38        = ( ( Xs
% 0.17/0.38            = ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38          & ( Ys
% 0.17/0.38            = ( coindu1598213697e_LNil @ A ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % LNil_eq_lappend_iff
% 0.17/0.38  thf(fact_83_lappend__LNil__LNil,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu268472904append @ A @ ( coindu1598213697e_LNil @ A ) @ ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38        = ( coindu1598213697e_LNil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_LNil_LNil
% 0.17/0.38  thf(fact_84_lfinite__inf__llist,axiom,
% 0.17/0.38      ! [A: $tType,F: nat > A] :
% 0.17/0.38        ~ ( coindu1213758845finite @ A @ ( coindu288502823_llist @ A @ F ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lfinite_inf_llist
% 0.17/0.38  thf(fact_85_lnull__inf__llist,axiom,
% 0.17/0.38      ! [A: $tType,F: nat > A] :
% 0.17/0.38        ~ ( coindu335574135_lnull @ A @ ( coindu288502823_llist @ A @ F ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lnull_inf_llist
% 0.17/0.38  thf(fact_86_llast__lappend__LCons,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38       => ( ( coindu2000965700_llast @ A @ ( coindu268472904append @ A @ Xs @ ( coindu1121789889_LCons @ A @ Y @ Ys ) ) )
% 0.17/0.38          = ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ Y @ Ys ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llast_lappend_LCons
% 0.17/0.38  thf(fact_87_lstrict__prefix__lappend__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu574146665prefix @ A @ Xs @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 0.17/0.38        = ( ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38          & ~ ( coindu335574135_lnull @ A @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lstrict_prefix_lappend_conv
% 0.17/0.38  thf(fact_88_llimit__induct,axiom,
% 0.17/0.38      ! [A: $tType,P: ( coindu1593790203_llist @ A ) > $o,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( P @ ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38       => ( ! [X3: A,Xs2: coindu1593790203_llist @ A] :
% 0.17/0.38              ( ( coindu1213758845finite @ A @ Xs2 )
% 0.17/0.38             => ( ( P @ Xs2 )
% 0.17/0.38               => ( P @ ( coindu1121789889_LCons @ A @ X3 @ Xs2 ) ) ) )
% 0.17/0.38         => ( ( ! [Ys4: coindu1593790203_llist @ A] :
% 0.17/0.38                  ( ( coindu574146665prefix @ A @ Ys4 @ Xs )
% 0.17/0.38                 => ( P @ Ys4 ) )
% 0.17/0.38             => ( P @ Xs ) )
% 0.17/0.38           => ( P @ Xs ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llimit_induct
% 0.17/0.38  thf(fact_89_Coinductive__List__Mirabelle__kmikjhschf_Olprefix__nitpick__simps,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu1696667936prefix @ A )
% 0.17/0.38        = ( ^ [Xs3: coindu1593790203_llist @ A,Ys3: coindu1593790203_llist @ A] :
% 0.17/0.38              ( ( ( coindu1213758845finite @ A @ Xs3 )
% 0.17/0.38               => ( coindu1571841457prefix @ A @ Xs3 @ Ys3 ) )
% 0.17/0.38              & ( ~ ( coindu1213758845finite @ A @ Xs3 )
% 0.17/0.38               => ( Xs3 = Ys3 ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % Coinductive_List_Mirabelle_kmikjhschf.lprefix_nitpick_simps
% 0.17/0.38  thf(fact_90_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix__nitpick__simps_I3_J,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1571841457prefix @ A @ Xs @ ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 0.17/0.38        = ( ( Xs
% 0.17/0.38            = ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38          | ? [Xs4: coindu1593790203_llist @ A] :
% 0.17/0.38              ( ( Xs
% 0.17/0.38                = ( coindu1121789889_LCons @ A @ Y @ Xs4 ) )
% 0.17/0.38              & ( coindu1571841457prefix @ A @ Xs4 @ Ys ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % Coinductive_List_Mirabelle_kmikjhschf.finite_lprefix_nitpick_simps(3)
% 0.17/0.38  thf(fact_91_lstrict__prefix__code_I3_J,axiom,
% 0.17/0.38      ! [B: $tType,X: B,Xs: coindu1593790203_llist @ B] :
% 0.17/0.38        ~ ( coindu574146665prefix @ B @ ( coindu1121789889_LCons @ B @ X @ Xs ) @ ( coindu1598213697e_LNil @ B ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lstrict_prefix_code(3)
% 0.17/0.38  thf(fact_92_lstrict__prefix__code_I2_J,axiom,
% 0.17/0.38      ! [B: $tType,Y: B,Ys: coindu1593790203_llist @ B] : ( coindu574146665prefix @ B @ ( coindu1598213697e_LNil @ B ) @ ( coindu1121789889_LCons @ B @ Y @ Ys ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lstrict_prefix_code(2)
% 0.17/0.38  thf(fact_93_llast__singleton,axiom,
% 0.17/0.38      ! [A: $tType,X: A] :
% 0.17/0.38        ( ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ X @ ( coindu1598213697e_LNil @ A ) ) )
% 0.17/0.38        = X ) ).
% 0.17/0.38  
% 0.17/0.38  % llast_singleton
% 0.17/0.38  thf(fact_94_llist__of__list__of,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38       => ( ( coindu1079202755ist_of @ A @ ( coindu1736001939ist_of @ A @ Xs ) )
% 0.17/0.38          = Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist_of_list_of
% 0.17/0.38  thf(fact_95_lmember__code_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,X: A] :
% 0.17/0.38        ~ ( coindu567634248member @ A @ X @ ( coindu1598213697e_LNil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lmember_code(1)
% 0.17/0.38  thf(fact_96_lmember__code_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Y: A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu567634248member @ A @ X @ ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 0.17/0.38        = ( ( X = Y )
% 0.17/0.38          | ( coindu567634248member @ A @ X @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lmember_code(2)
% 0.17/0.38  thf(fact_97_llast__LCons2,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Y: A,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ X @ ( coindu1121789889_LCons @ A @ Y @ Xs ) ) )
% 0.17/0.38        = ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ Y @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llast_LCons2
% 0.17/0.38  thf(fact_98_list__of__llist__of,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( coindu1736001939ist_of @ A @ ( coindu1079202755ist_of @ A @ Xs ) )
% 0.17/0.38        = Xs ) ).
% 0.17/0.38  
% 0.17/0.38  % list_of_llist_of
% 0.17/0.38  thf(fact_99_lstrict__prefix__code_I4_J,axiom,
% 0.17/0.38      ! [B: $tType,X: B,Xs: coindu1593790203_llist @ B,Y: B,Ys: coindu1593790203_llist @ B] :
% 0.17/0.38        ( ( coindu574146665prefix @ B @ ( coindu1121789889_LCons @ B @ X @ Xs ) @ ( coindu1121789889_LCons @ B @ Y @ Ys ) )
% 0.17/0.38        = ( ( X = Y )
% 0.17/0.38          & ( coindu574146665prefix @ B @ Xs @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lstrict_prefix_code(4)
% 0.17/0.38  thf(fact_100_lstrict__prefix__code_I1_J,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ~ ( coindu574146665prefix @ A @ ( coindu1598213697e_LNil @ A ) @ ( coindu1598213697e_LNil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lstrict_prefix_code(1)
% 0.17/0.38  thf(fact_101_llist__less__induct,axiom,
% 0.17/0.38      ! [A: $tType,P: ( coindu1593790203_llist @ A ) > $o,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ! [Xs2: coindu1593790203_llist @ A] :
% 0.17/0.38            ( ! [Ys4: coindu1593790203_llist @ A] :
% 0.17/0.38                ( ( coindu574146665prefix @ A @ Ys4 @ Xs2 )
% 0.17/0.38               => ( P @ Ys4 ) )
% 0.17/0.38           => ( P @ Xs2 ) )
% 0.17/0.38       => ( P @ Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist_less_induct
% 0.17/0.38  thf(fact_102_lstrict__prefix__def,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu574146665prefix @ A )
% 0.17/0.38        = ( ^ [Xs3: coindu1593790203_llist @ A,Ys3: coindu1593790203_llist @ A] :
% 0.17/0.38              ( ( coindu1696667936prefix @ A @ Xs3 @ Ys3 )
% 0.17/0.38              & ( Xs3 != Ys3 ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lstrict_prefix_def
% 0.17/0.38  thf(fact_103_lstrict__prefix__lfinite1,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu574146665prefix @ A @ Xs @ Ys )
% 0.17/0.38       => ( coindu1213758845finite @ A @ Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lstrict_prefix_lfinite1
% 0.17/0.38  thf(fact_104_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix__def,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu1571841457prefix @ A )
% 0.17/0.38        = ( coindu1696667936prefix @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % Coinductive_List_Mirabelle_kmikjhschf.finite_lprefix_def
% 0.17/0.38  thf(fact_105_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix__nitpick__simps_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1571841457prefix @ A @ Xs @ ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( coindu1598213697e_LNil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % Coinductive_List_Mirabelle_kmikjhschf.finite_lprefix_nitpick_simps(1)
% 0.17/0.38  thf(fact_106_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix__nitpick__simps_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] : ( coindu1571841457prefix @ A @ ( coindu1598213697e_LNil @ A ) @ Xs ) ).
% 0.17/0.38  
% 0.17/0.38  % Coinductive_List_Mirabelle_kmikjhschf.finite_lprefix_nitpick_simps(2)
% 0.17/0.38  thf(fact_107_llast__LCons,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,X: A] :
% 0.17/0.38        ( ( ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38         => ( ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 0.17/0.38            = X ) )
% 0.17/0.38        & ( ~ ( coindu335574135_lnull @ A @ Xs )
% 0.17/0.38         => ( ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 0.17/0.38            = ( coindu2000965700_llast @ A @ Xs ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llast_LCons
% 0.17/0.38  thf(fact_108_llast__lappend,axiom,
% 0.17/0.38      ! [A: $tType,Ys: coindu1593790203_llist @ A,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( ( coindu335574135_lnull @ A @ Ys )
% 0.17/0.38         => ( ( coindu2000965700_llast @ A @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 0.17/0.38            = ( coindu2000965700_llast @ A @ Xs ) ) )
% 0.17/0.38        & ( ~ ( coindu335574135_lnull @ A @ Ys )
% 0.17/0.38         => ( ( ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38             => ( ( coindu2000965700_llast @ A @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 0.17/0.38                = ( coindu2000965700_llast @ A @ Ys ) ) )
% 0.17/0.38            & ( ~ ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38             => ( ( coindu2000965700_llast @ A @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 0.17/0.38                = ( undefined @ A ) ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llast_lappend
% 0.17/0.38  thf(fact_109_list__of__LCons,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,X: A] :
% 0.17/0.38        ( ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38       => ( ( coindu1736001939ist_of @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 0.17/0.38          = ( cons @ A @ X @ ( coindu1736001939ist_of @ A @ Xs ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_of_LCons
% 0.17/0.38  thf(fact_110_nth__list__of,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38       => ( ( nth @ A @ ( coindu1736001939ist_of @ A @ Xs ) )
% 0.17/0.38          = ( coindu749330388e_lnth @ A @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % nth_list_of
% 0.17/0.38  thf(fact_111_llast__llist__of,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( coindu2000965700_llast @ A @ ( coindu1079202755ist_of @ A @ Xs ) )
% 0.17/0.38        = ( last @ A @ Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llast_llist_of
% 0.17/0.38  thf(fact_112_list__of__lappend,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38       => ( ( coindu1213758845finite @ A @ Ys )
% 0.17/0.38         => ( ( coindu1736001939ist_of @ A @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 0.17/0.38            = ( append @ A @ ( coindu1736001939ist_of @ A @ Xs ) @ ( coindu1736001939ist_of @ A @ Ys ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_of_lappend
% 0.17/0.38  thf(fact_113_lnth__llist__of,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( coindu749330388e_lnth @ A @ ( coindu1079202755ist_of @ A @ Xs ) )
% 0.17/0.38        = ( nth @ A @ Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lnth_llist_of
% 0.17/0.38  thf(fact_114_list__of__LCons__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A,X: A] :
% 0.17/0.38        ( ( ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38         => ( ( coindu1736001939ist_of @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 0.17/0.38            = ( cons @ A @ X @ ( coindu1736001939ist_of @ A @ Xs ) ) ) )
% 0.17/0.38        & ( ~ ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38         => ( ( coindu1736001939ist_of @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 0.17/0.38            = ( undefined @ ( list @ A ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_of_LCons_conv
% 0.17/0.38  thf(fact_115_lnth__LNil,axiom,
% 0.17/0.38      ! [A: $tType,N: nat] :
% 0.17/0.38        ( ( coindu749330388e_lnth @ A @ ( coindu1598213697e_LNil @ A ) @ N )
% 0.17/0.38        = ( undefined @ ( nat > A ) @ N ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lnth_LNil
% 0.17/0.38  thf(fact_116_lprefix__llist__ofI,axiom,
% 0.17/0.38      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 0.17/0.38        ( ? [Zs4: list @ A] :
% 0.17/0.38            ( Ys
% 0.17/0.38            = ( append @ A @ Xs @ Zs4 ) )
% 0.17/0.38       => ( coindu1696667936prefix @ A @ ( coindu1079202755ist_of @ A @ Xs ) @ ( coindu1079202755ist_of @ A @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lprefix_llist_ofI
% 0.17/0.38  thf(fact_117_lappend__llist__of__llist__of,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( coindu268472904append @ A @ ( coindu1079202755ist_of @ A @ Xs ) @ ( coindu1079202755ist_of @ A @ Ys ) )
% 0.17/0.38        = ( coindu1079202755ist_of @ A @ ( append @ A @ Xs @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_llist_of_llist_of
% 0.17/0.38  thf(fact_118_llist__of_Osimps_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Xs: list @ A] :
% 0.17/0.38        ( ( coindu1079202755ist_of @ A @ ( cons @ A @ X @ Xs ) )
% 0.17/0.38        = ( coindu1121789889_LCons @ A @ X @ ( coindu1079202755ist_of @ A @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist_of.simps(2)
% 0.17/0.38  thf(fact_119_llist__of__eq__LCons__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( ( coindu1079202755ist_of @ A @ Xs )
% 0.17/0.38          = ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 0.17/0.38        = ( ? [Xs4: list @ A] :
% 0.17/0.38              ( ( Xs
% 0.17/0.38                = ( cons @ A @ Y @ Xs4 ) )
% 0.17/0.38              & ( Ys
% 0.17/0.38                = ( coindu1079202755ist_of @ A @ Xs4 ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist_of_eq_LCons_conv
% 0.17/0.38  thf(fact_120_llast__LNil,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu2000965700_llast @ A @ ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38        = ( undefined @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llast_LNil
% 0.17/0.38  thf(fact_121_llast__linfinite,axiom,
% 0.17/0.38      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ~ ( coindu1213758845finite @ A @ Xs )
% 0.17/0.38       => ( ( coindu2000965700_llast @ A @ Xs )
% 0.17/0.38          = ( undefined @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llast_linfinite
% 0.17/0.38  thf(fact_122_append__assoc,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 0.17/0.38        ( ( append @ A @ ( append @ A @ Xs @ Ys ) @ Zs )
% 0.17/0.38        = ( append @ A @ Xs @ ( append @ A @ Ys @ Zs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % append_assoc
% 0.17/0.38  thf(fact_123_append__same__eq,axiom,
% 0.17/0.38      ! [A: $tType,Ys: list @ A,Xs: list @ A,Zs: list @ A] :
% 0.17/0.38        ( ( ( append @ A @ Ys @ Xs )
% 0.17/0.38          = ( append @ A @ Zs @ Xs ) )
% 0.17/0.38        = ( Ys = Zs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % append_same_eq
% 0.17/0.38  thf(fact_124_same__append__eq,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 0.17/0.38        ( ( ( append @ A @ Xs @ Ys )
% 0.17/0.38          = ( append @ A @ Xs @ Zs ) )
% 0.17/0.38        = ( Ys = Zs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % same_append_eq
% 0.17/0.38  thf(fact_125_list_Oinject,axiom,
% 0.17/0.38      ! [A: $tType,X21: A,X22: list @ A,Y21: A,Y22: list @ A] :
% 0.17/0.38        ( ( ( cons @ A @ X21 @ X22 )
% 0.17/0.38          = ( cons @ A @ Y21 @ Y22 ) )
% 0.17/0.38        = ( ( X21 = Y21 )
% 0.17/0.38          & ( X22 = Y22 ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list.inject
% 0.17/0.38  thf(fact_126_not__Cons__self2,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Xs: list @ A] :
% 0.17/0.38        ( ( cons @ A @ X @ Xs )
% 0.17/0.38       != Xs ) ).
% 0.17/0.38  
% 0.17/0.38  % not_Cons_self2
% 0.17/0.38  thf(fact_127_append__eq__append__conv2,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A,Ts: list @ A] :
% 0.17/0.38        ( ( ( append @ A @ Xs @ Ys )
% 0.17/0.38          = ( append @ A @ Zs @ Ts ) )
% 0.17/0.38        = ( ? [Us: list @ A] :
% 0.17/0.38              ( ( ( Xs
% 0.17/0.38                  = ( append @ A @ Zs @ Us ) )
% 0.17/0.38                & ( ( append @ A @ Us @ Ys )
% 0.17/0.38                  = Ts ) )
% 0.17/0.38              | ( ( ( append @ A @ Xs @ Us )
% 0.17/0.38                  = Zs )
% 0.17/0.38                & ( Ys
% 0.17/0.38                  = ( append @ A @ Us @ Ts ) ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % append_eq_append_conv2
% 0.17/0.38  thf(fact_128_append__eq__appendI,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Xs1: list @ A,Zs: list @ A,Ys: list @ A,Us2: list @ A] :
% 0.17/0.38        ( ( ( append @ A @ Xs @ Xs1 )
% 0.17/0.38          = Zs )
% 0.17/0.38       => ( ( Ys
% 0.17/0.38            = ( append @ A @ Xs1 @ Us2 ) )
% 0.17/0.38         => ( ( append @ A @ Xs @ Ys )
% 0.17/0.38            = ( append @ A @ Zs @ Us2 ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % append_eq_appendI
% 0.17/0.38  thf(fact_129_append__Cons,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( append @ A @ ( cons @ A @ X @ Xs ) @ Ys )
% 0.17/0.38        = ( cons @ A @ X @ ( append @ A @ Xs @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % append_Cons
% 0.17/0.38  thf(fact_130_Cons__eq__appendI,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Xs1: list @ A,Ys: list @ A,Xs: list @ A,Zs: list @ A] :
% 0.17/0.38        ( ( ( cons @ A @ X @ Xs1 )
% 0.17/0.38          = Ys )
% 0.17/0.38       => ( ( Xs
% 0.17/0.38            = ( append @ A @ Xs1 @ Zs ) )
% 0.17/0.38         => ( ( cons @ A @ X @ Xs )
% 0.17/0.38            = ( append @ A @ Ys @ Zs ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % Cons_eq_appendI
% 0.17/0.38  thf(fact_131_bind__simps_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,X: B,Xs: list @ B,F: B > ( list @ A )] :
% 0.17/0.38        ( ( bind @ B @ A @ ( cons @ B @ X @ Xs ) @ F )
% 0.17/0.38        = ( append @ A @ ( F @ X ) @ ( bind @ B @ A @ Xs @ F ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % bind_simps(2)
% 0.17/0.38  thf(fact_132_lappend__llist__of__LCons,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu268472904append @ A @ ( coindu1079202755ist_of @ A @ Xs ) @ ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 0.17/0.38        = ( coindu268472904append @ A @ ( coindu1079202755ist_of @ A @ ( append @ A @ Xs @ ( cons @ A @ Y @ ( nil @ A ) ) ) ) @ Ys ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lappend_llist_of_LCons
% 0.17/0.38  thf(fact_133_list__of__aux__code_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 0.17/0.38        ( ( coindu1542816657of_aux @ A @ Xs @ ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 0.17/0.38        = ( coindu1542816657of_aux @ A @ ( cons @ A @ Y @ Xs ) @ Ys ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_of_aux_code(2)
% 0.17/0.38  thf(fact_134_maps__simps_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,F: B > ( list @ A ),X: B,Xs: list @ B] :
% 0.17/0.38        ( ( maps @ B @ A @ F @ ( cons @ B @ X @ Xs ) )
% 0.17/0.38        = ( append @ A @ ( F @ X ) @ ( maps @ B @ A @ F @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % maps_simps(1)
% 0.17/0.38  thf(fact_135_append__is__Nil__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( ( append @ A @ Xs @ Ys )
% 0.17/0.38          = ( nil @ A ) )
% 0.17/0.38        = ( ( Xs
% 0.17/0.38            = ( nil @ A ) )
% 0.17/0.38          & ( Ys
% 0.17/0.38            = ( nil @ A ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % append_is_Nil_conv
% 0.17/0.38  thf(fact_136_Nil__is__append__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( ( nil @ A )
% 0.17/0.38          = ( append @ A @ Xs @ Ys ) )
% 0.17/0.38        = ( ( Xs
% 0.17/0.38            = ( nil @ A ) )
% 0.17/0.38          & ( Ys
% 0.17/0.38            = ( nil @ A ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % Nil_is_append_conv
% 0.17/0.38  thf(fact_137_self__append__conv2,axiom,
% 0.17/0.38      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 0.17/0.38        ( ( Ys
% 0.17/0.38          = ( append @ A @ Xs @ Ys ) )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % self_append_conv2
% 0.17/0.38  thf(fact_138_append__self__conv2,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( ( append @ A @ Xs @ Ys )
% 0.17/0.38          = Ys )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % append_self_conv2
% 0.17/0.38  thf(fact_139_self__append__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( Xs
% 0.17/0.38          = ( append @ A @ Xs @ Ys ) )
% 0.17/0.38        = ( Ys
% 0.17/0.38          = ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % self_append_conv
% 0.17/0.38  thf(fact_140_append__self__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( ( append @ A @ Xs @ Ys )
% 0.17/0.38          = Xs )
% 0.17/0.38        = ( Ys
% 0.17/0.38          = ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % append_self_conv
% 0.17/0.38  thf(fact_141_append__Nil2,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( append @ A @ Xs @ ( nil @ A ) )
% 0.17/0.38        = Xs ) ).
% 0.17/0.38  
% 0.17/0.38  % append_Nil2
% 0.17/0.38  thf(fact_142_bind__simps_I1_J,axiom,
% 0.17/0.38      ! [B: $tType,A: $tType,F: B > ( list @ A )] :
% 0.17/0.38        ( ( bind @ B @ A @ ( nil @ B ) @ F )
% 0.17/0.38        = ( nil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % bind_simps(1)
% 0.17/0.38  thf(fact_143_append1__eq__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,X: A,Ys: list @ A,Y: A] :
% 0.17/0.38        ( ( ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) )
% 0.17/0.38          = ( append @ A @ Ys @ ( cons @ A @ Y @ ( nil @ A ) ) ) )
% 0.17/0.38        = ( ( Xs = Ys )
% 0.17/0.38          & ( X = Y ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % append1_eq_conv
% 0.17/0.38  thf(fact_144_lnull__llist__of,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( coindu335574135_lnull @ A @ ( coindu1079202755ist_of @ A @ Xs ) )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % lnull_llist_of
% 0.17/0.38  thf(fact_145_last__appendL,axiom,
% 0.17/0.38      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 0.17/0.38        ( ( Ys
% 0.17/0.38          = ( nil @ A ) )
% 0.17/0.38       => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 0.17/0.38          = ( last @ A @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % last_appendL
% 0.17/0.38  thf(fact_146_last__appendR,axiom,
% 0.17/0.38      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 0.17/0.38        ( ( Ys
% 0.17/0.38         != ( nil @ A ) )
% 0.17/0.38       => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 0.17/0.38          = ( last @ A @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % last_appendR
% 0.17/0.38  thf(fact_147_list__of__LNil,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu1736001939ist_of @ A @ ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38        = ( nil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_of_LNil
% 0.17/0.38  thf(fact_148_last__snoc,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,X: A] :
% 0.17/0.38        ( ( last @ A @ ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) ) )
% 0.17/0.38        = X ) ).
% 0.17/0.38  
% 0.17/0.38  % last_snoc
% 0.17/0.38  thf(fact_149_list_Odistinct_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,X21: A,X22: list @ A] :
% 0.17/0.38        ( ( nil @ A )
% 0.17/0.38       != ( cons @ A @ X21 @ X22 ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list.distinct(1)
% 0.17/0.38  thf(fact_150_list_OdiscI,axiom,
% 0.17/0.38      ! [A: $tType,List: list @ A,X21: A,X22: list @ A] :
% 0.17/0.38        ( ( List
% 0.17/0.38          = ( cons @ A @ X21 @ X22 ) )
% 0.17/0.38       => ( List
% 0.17/0.38         != ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list.discI
% 0.17/0.38  thf(fact_151_list_Oexhaust,axiom,
% 0.17/0.38      ! [A: $tType,Y: list @ A] :
% 0.17/0.38        ( ( Y
% 0.17/0.38         != ( nil @ A ) )
% 0.17/0.38       => ~ ! [X212: A,X222: list @ A] :
% 0.17/0.38              ( Y
% 0.17/0.38             != ( cons @ A @ X212 @ X222 ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list.exhaust
% 0.17/0.38  thf(fact_152_list_Oinducts,axiom,
% 0.17/0.38      ! [A: $tType,P: ( list @ A ) > $o,List: list @ A] :
% 0.17/0.38        ( ( P @ ( nil @ A ) )
% 0.17/0.38       => ( ! [X1: A,X23: list @ A] :
% 0.17/0.38              ( ( P @ X23 )
% 0.17/0.38             => ( P @ ( cons @ A @ X1 @ X23 ) ) )
% 0.17/0.38         => ( P @ List ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list.inducts
% 0.17/0.38  thf(fact_153_neq__Nil__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( Xs
% 0.17/0.38         != ( nil @ A ) )
% 0.17/0.38        = ( ? [Y2: A,Ys3: list @ A] :
% 0.17/0.38              ( Xs
% 0.17/0.38              = ( cons @ A @ Y2 @ Ys3 ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % neq_Nil_conv
% 0.17/0.38  thf(fact_154_list__induct2_H,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,P: ( list @ A ) > ( list @ B ) > $o,Xs: list @ A,Ys: list @ B] :
% 0.17/0.38        ( ( P @ ( nil @ A ) @ ( nil @ B ) )
% 0.17/0.38       => ( ! [X3: A,Xs2: list @ A] : ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( nil @ B ) )
% 0.17/0.38         => ( ! [Y3: B,Ys2: list @ B] : ( P @ ( nil @ A ) @ ( cons @ B @ Y3 @ Ys2 ) )
% 0.17/0.38           => ( ! [X3: A,Xs2: list @ A,Y3: B,Ys2: list @ B] :
% 0.17/0.38                  ( ( P @ Xs2 @ Ys2 )
% 0.17/0.38                 => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ B @ Y3 @ Ys2 ) ) )
% 0.17/0.38             => ( P @ Xs @ Ys ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_induct2'
% 0.17/0.38  thf(fact_155_splice_Oinduct,axiom,
% 0.17/0.38      ! [A: $tType,P: ( list @ A ) > ( list @ A ) > $o,A0: list @ A,A1: list @ A] :
% 0.17/0.38        ( ! [X1: list @ A] : ( P @ ( nil @ A ) @ X1 )
% 0.17/0.38       => ( ! [V: A,Va: list @ A] : ( P @ ( cons @ A @ V @ Va ) @ ( nil @ A ) )
% 0.17/0.38         => ( ! [X3: A,Xs2: list @ A,Y3: A,Ys2: list @ A] :
% 0.17/0.38                ( ( P @ Xs2 @ Ys2 )
% 0.17/0.38               => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ A @ Y3 @ Ys2 ) ) )
% 0.17/0.38           => ( P @ A0 @ A1 ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % splice.induct
% 0.17/0.38  thf(fact_156_eq__Nil__appendI,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( Xs = Ys )
% 0.17/0.38       => ( Xs
% 0.17/0.38          = ( append @ A @ ( nil @ A ) @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % eq_Nil_appendI
% 0.17/0.38  thf(fact_157_transpose_Ocases,axiom,
% 0.17/0.38      ! [A: $tType,X: list @ ( list @ A )] :
% 0.17/0.38        ( ( X
% 0.17/0.38         != ( nil @ ( list @ A ) ) )
% 0.17/0.38       => ( ! [Xss: list @ ( list @ A )] :
% 0.17/0.38              ( X
% 0.17/0.38             != ( cons @ ( list @ A ) @ ( nil @ A ) @ Xss ) )
% 0.17/0.38         => ~ ! [X3: A,Xs2: list @ A,Xss: list @ ( list @ A )] :
% 0.17/0.38                ( X
% 0.17/0.38               != ( cons @ ( list @ A ) @ ( cons @ A @ X3 @ Xs2 ) @ Xss ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % transpose.cases
% 0.17/0.38  thf(fact_158_append__Nil,axiom,
% 0.17/0.38      ! [A: $tType,Ys: list @ A] :
% 0.17/0.38        ( ( append @ A @ ( nil @ A ) @ Ys )
% 0.17/0.38        = Ys ) ).
% 0.17/0.38  
% 0.17/0.38  % append_Nil
% 0.17/0.38  thf(fact_159_remdups__adj_Ocases,axiom,
% 0.17/0.38      ! [A: $tType,X: list @ A] :
% 0.17/0.38        ( ( X
% 0.17/0.38         != ( nil @ A ) )
% 0.17/0.38       => ( ! [X3: A] :
% 0.17/0.38              ( X
% 0.17/0.38             != ( cons @ A @ X3 @ ( nil @ A ) ) )
% 0.17/0.38         => ~ ! [X3: A,Y3: A,Xs2: list @ A] :
% 0.17/0.38                ( X
% 0.17/0.38               != ( cons @ A @ X3 @ ( cons @ A @ Y3 @ Xs2 ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % remdups_adj.cases
% 0.17/0.38  thf(fact_160_remdups__adj_Oinduct,axiom,
% 0.17/0.38      ! [A: $tType,P: ( list @ A ) > $o,A0: list @ A] :
% 0.17/0.38        ( ( P @ ( nil @ A ) )
% 0.17/0.38       => ( ! [X3: A] : ( P @ ( cons @ A @ X3 @ ( nil @ A ) ) )
% 0.17/0.38         => ( ! [X3: A,Y3: A,Xs2: list @ A] :
% 0.17/0.38                ( ( ( X3 = Y3 )
% 0.17/0.38                 => ( P @ ( cons @ A @ X3 @ Xs2 ) ) )
% 0.17/0.38               => ( ( ( X3 != Y3 )
% 0.17/0.38                   => ( P @ ( cons @ A @ Y3 @ Xs2 ) ) )
% 0.17/0.38                 => ( P @ ( cons @ A @ X3 @ ( cons @ A @ Y3 @ Xs2 ) ) ) ) )
% 0.17/0.38           => ( P @ A0 ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % remdups_adj.induct
% 0.17/0.38  thf(fact_161_list__nonempty__induct,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,P: ( list @ A ) > $o] :
% 0.17/0.38        ( ( Xs
% 0.17/0.38         != ( nil @ A ) )
% 0.17/0.38       => ( ! [X3: A] : ( P @ ( cons @ A @ X3 @ ( nil @ A ) ) )
% 0.17/0.38         => ( ! [X3: A,Xs2: list @ A] :
% 0.17/0.38                ( ( Xs2
% 0.17/0.38                 != ( nil @ A ) )
% 0.17/0.38               => ( ( P @ Xs2 )
% 0.17/0.38                 => ( P @ ( cons @ A @ X3 @ Xs2 ) ) ) )
% 0.17/0.38           => ( P @ Xs ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_nonempty_induct
% 0.17/0.38  thf(fact_162_map__tailrec__rev_Oinduct,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,P: ( A > B ) > ( list @ A ) > ( list @ B ) > $o,A0: A > B,A1: list @ A,A22: list @ B] :
% 0.17/0.38        ( ! [F2: A > B,X1: list @ B] : ( P @ F2 @ ( nil @ A ) @ X1 )
% 0.17/0.38       => ( ! [F2: A > B,A4: A,As: list @ A,Bs: list @ B] :
% 0.17/0.38              ( ( P @ F2 @ As @ ( cons @ B @ ( F2 @ A4 ) @ Bs ) )
% 0.17/0.38             => ( P @ F2 @ ( cons @ A @ A4 @ As ) @ Bs ) )
% 0.17/0.38         => ( P @ A0 @ A1 @ A22 ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % map_tailrec_rev.induct
% 0.17/0.38  thf(fact_163_maps__simps_I2_J,axiom,
% 0.17/0.38      ! [B: $tType,A: $tType,F: B > ( list @ A )] :
% 0.17/0.38        ( ( maps @ B @ A @ F @ ( nil @ B ) )
% 0.17/0.38        = ( nil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % maps_simps(2)
% 0.17/0.38  thf(fact_164_list__of__code,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu1736001939ist_of @ A )
% 0.17/0.38        = ( coindu1542816657of_aux @ A @ ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_of_code
% 0.17/0.38  thf(fact_165_rev__induct,axiom,
% 0.17/0.38      ! [A: $tType,P: ( list @ A ) > $o,Xs: list @ A] :
% 0.17/0.38        ( ( P @ ( nil @ A ) )
% 0.17/0.38       => ( ! [X3: A,Xs2: list @ A] :
% 0.17/0.38              ( ( P @ Xs2 )
% 0.17/0.38             => ( P @ ( append @ A @ Xs2 @ ( cons @ A @ X3 @ ( nil @ A ) ) ) ) )
% 0.17/0.38         => ( P @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rev_induct
% 0.17/0.38  thf(fact_166_rev__exhaust,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( Xs
% 0.17/0.38         != ( nil @ A ) )
% 0.17/0.38       => ~ ! [Ys2: list @ A,Y3: A] :
% 0.17/0.38              ( Xs
% 0.17/0.38             != ( append @ A @ Ys2 @ ( cons @ A @ Y3 @ ( nil @ A ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rev_exhaust
% 0.17/0.38  thf(fact_167_Cons__eq__append__conv,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 0.17/0.38        ( ( ( cons @ A @ X @ Xs )
% 0.17/0.38          = ( append @ A @ Ys @ Zs ) )
% 0.17/0.38        = ( ( ( Ys
% 0.17/0.38              = ( nil @ A ) )
% 0.17/0.38            & ( ( cons @ A @ X @ Xs )
% 0.17/0.38              = Zs ) )
% 0.17/0.38          | ? [Ys5: list @ A] :
% 0.17/0.38              ( ( ( cons @ A @ X @ Ys5 )
% 0.17/0.38                = Ys )
% 0.17/0.38              & ( Xs
% 0.17/0.38                = ( append @ A @ Ys5 @ Zs ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % Cons_eq_append_conv
% 0.17/0.38  thf(fact_168_append__eq__Cons__conv,axiom,
% 0.17/0.38      ! [A: $tType,Ys: list @ A,Zs: list @ A,X: A,Xs: list @ A] :
% 0.17/0.38        ( ( ( append @ A @ Ys @ Zs )
% 0.17/0.38          = ( cons @ A @ X @ Xs ) )
% 0.17/0.38        = ( ( ( Ys
% 0.17/0.38              = ( nil @ A ) )
% 0.17/0.38            & ( Zs
% 0.17/0.38              = ( cons @ A @ X @ Xs ) ) )
% 0.17/0.38          | ? [Ys5: list @ A] :
% 0.17/0.38              ( ( Ys
% 0.17/0.38                = ( cons @ A @ X @ Ys5 ) )
% 0.17/0.38              & ( ( append @ A @ Ys5 @ Zs )
% 0.17/0.38                = Xs ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % append_eq_Cons_conv
% 0.17/0.38  thf(fact_169_rev__nonempty__induct,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,P: ( list @ A ) > $o] :
% 0.17/0.38        ( ( Xs
% 0.17/0.38         != ( nil @ A ) )
% 0.17/0.38       => ( ! [X3: A] : ( P @ ( cons @ A @ X3 @ ( nil @ A ) ) )
% 0.17/0.38         => ( ! [X3: A,Xs2: list @ A] :
% 0.17/0.38                ( ( Xs2
% 0.17/0.38                 != ( nil @ A ) )
% 0.17/0.38               => ( ( P @ Xs2 )
% 0.17/0.38                 => ( P @ ( append @ A @ Xs2 @ ( cons @ A @ X3 @ ( nil @ A ) ) ) ) ) )
% 0.17/0.38           => ( P @ Xs ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rev_nonempty_induct
% 0.17/0.38  thf(fact_170_last_Osimps,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,X: A] :
% 0.17/0.38        ( ( ( Xs
% 0.17/0.38            = ( nil @ A ) )
% 0.17/0.38         => ( ( last @ A @ ( cons @ A @ X @ Xs ) )
% 0.17/0.38            = X ) )
% 0.17/0.38        & ( ( Xs
% 0.17/0.38           != ( nil @ A ) )
% 0.17/0.38         => ( ( last @ A @ ( cons @ A @ X @ Xs ) )
% 0.17/0.38            = ( last @ A @ Xs ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % last.simps
% 0.17/0.38  thf(fact_171_last__ConsL,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,X: A] :
% 0.17/0.38        ( ( Xs
% 0.17/0.38          = ( nil @ A ) )
% 0.17/0.38       => ( ( last @ A @ ( cons @ A @ X @ Xs ) )
% 0.17/0.38          = X ) ) ).
% 0.17/0.38  
% 0.17/0.38  % last_ConsL
% 0.17/0.38  thf(fact_172_last__ConsR,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,X: A] :
% 0.17/0.38        ( ( Xs
% 0.17/0.38         != ( nil @ A ) )
% 0.17/0.38       => ( ( last @ A @ ( cons @ A @ X @ Xs ) )
% 0.17/0.38          = ( last @ A @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % last_ConsR
% 0.17/0.38  thf(fact_173_llist__of_Osimps_I1_J,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu1079202755ist_of @ A @ ( nil @ A ) )
% 0.17/0.38        = ( coindu1598213697e_LNil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist_of.simps(1)
% 0.17/0.38  thf(fact_174_llist__of__eq__LNil__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( ( coindu1079202755ist_of @ A @ Xs )
% 0.17/0.38          = ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % llist_of_eq_LNil_conv
% 0.17/0.38  thf(fact_175_last__append,axiom,
% 0.17/0.38      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 0.17/0.38        ( ( ( Ys
% 0.17/0.38            = ( nil @ A ) )
% 0.17/0.38         => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 0.17/0.38            = ( last @ A @ Xs ) ) )
% 0.17/0.38        & ( ( Ys
% 0.17/0.38           != ( nil @ A ) )
% 0.17/0.38         => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 0.17/0.38            = ( last @ A @ Ys ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % last_append
% 0.17/0.38  thf(fact_176_longest__common__suffix,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38      ? [Ss: list @ A,Xs6: list @ A,Ys6: list @ A] :
% 0.17/0.38        ( ( Xs
% 0.17/0.38          = ( append @ A @ Xs6 @ Ss ) )
% 0.17/0.38        & ( Ys
% 0.17/0.38          = ( append @ A @ Ys6 @ Ss ) )
% 0.17/0.38        & ( ( Xs6
% 0.17/0.38            = ( nil @ A ) )
% 0.17/0.38          | ( Ys6
% 0.17/0.38            = ( nil @ A ) )
% 0.17/0.38          | ( ( last @ A @ Xs6 )
% 0.17/0.38           != ( last @ A @ Ys6 ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % longest_common_suffix
% 0.17/0.38  thf(fact_177_longest__common__prefix_Oinduct,axiom,
% 0.17/0.38      ! [A: $tType,P: ( list @ A ) > ( list @ A ) > $o,A0: list @ A,A1: list @ A] :
% 0.17/0.38        ( ! [X3: A,Xs2: list @ A,Y3: A,Ys2: list @ A] :
% 0.17/0.38            ( ( ( X3 = Y3 )
% 0.17/0.38             => ( P @ Xs2 @ Ys2 ) )
% 0.17/0.38           => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ A @ Y3 @ Ys2 ) ) )
% 0.17/0.38       => ( ! [X1: list @ A] : ( P @ ( nil @ A ) @ X1 )
% 0.17/0.38         => ( ! [Uu: list @ A] : ( P @ Uu @ ( nil @ A ) )
% 0.17/0.38           => ( P @ A0 @ A1 ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % longest_common_prefix.induct
% 0.17/0.38  thf(fact_178_prefixes_Oinduct,axiom,
% 0.17/0.38      ! [A: $tType,P: ( list @ A ) > $o,A0: list @ A] :
% 0.17/0.38        ( ( P @ ( nil @ A ) )
% 0.17/0.38       => ( ! [X3: A,Xs2: list @ A] :
% 0.17/0.38              ( ( P @ Xs2 )
% 0.17/0.38             => ( P @ ( cons @ A @ X3 @ Xs2 ) ) )
% 0.17/0.38         => ( P @ A0 ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % prefixes.induct
% 0.17/0.38  thf(fact_179_prefixes_Ocases,axiom,
% 0.17/0.38      ! [A: $tType,X: list @ A] :
% 0.17/0.38        ( ( X
% 0.17/0.38         != ( nil @ A ) )
% 0.17/0.38       => ~ ! [X3: A,Xs2: list @ A] :
% 0.17/0.38              ( X
% 0.17/0.38             != ( cons @ A @ X3 @ Xs2 ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % prefixes.cases
% 0.17/0.38  thf(fact_180_list__of__aux__def,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( coindu1542816657of_aux @ A )
% 0.17/0.38        = ( ^ [Xs3: list @ A,Ys3: coindu1593790203_llist @ A] : ( if @ ( list @ A ) @ ( coindu1213758845finite @ A @ Ys3 ) @ ( append @ A @ ( rev @ A @ Xs3 ) @ ( coindu1736001939ist_of @ A @ Ys3 ) ) @ ( undefined @ ( list @ A ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_of_aux_def
% 0.17/0.38  thf(fact_181_rev__rev__ident,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( rev @ A @ ( rev @ A @ Xs ) )
% 0.17/0.38        = Xs ) ).
% 0.17/0.38  
% 0.17/0.38  % rev_rev_ident
% 0.17/0.38  thf(fact_182_rev__is__rev__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( ( rev @ A @ Xs )
% 0.17/0.38          = ( rev @ A @ Ys ) )
% 0.17/0.38        = ( Xs = Ys ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rev_is_rev_conv
% 0.17/0.38  thf(fact_183_rev__is__Nil__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( ( rev @ A @ Xs )
% 0.17/0.38          = ( nil @ A ) )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rev_is_Nil_conv
% 0.17/0.38  thf(fact_184_Nil__is__rev__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( ( nil @ A )
% 0.17/0.38          = ( rev @ A @ Xs ) )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % Nil_is_rev_conv
% 0.17/0.38  thf(fact_185_rev__append,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( rev @ A @ ( append @ A @ Xs @ Ys ) )
% 0.17/0.38        = ( append @ A @ ( rev @ A @ Ys ) @ ( rev @ A @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rev_append
% 0.17/0.38  thf(fact_186_singleton__rev__conv,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Xs: list @ A] :
% 0.17/0.38        ( ( ( cons @ A @ X @ ( nil @ A ) )
% 0.17/0.38          = ( rev @ A @ Xs ) )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( cons @ A @ X @ ( nil @ A ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % singleton_rev_conv
% 0.17/0.38  thf(fact_187_rev__singleton__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,X: A] :
% 0.17/0.38        ( ( ( rev @ A @ Xs )
% 0.17/0.38          = ( cons @ A @ X @ ( nil @ A ) ) )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( cons @ A @ X @ ( nil @ A ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rev_singleton_conv
% 0.17/0.38  thf(fact_188_rev__eq__Cons__iff,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Y: A,Ys: list @ A] :
% 0.17/0.38        ( ( ( rev @ A @ Xs )
% 0.17/0.38          = ( cons @ A @ Y @ Ys ) )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( append @ A @ ( rev @ A @ Ys ) @ ( cons @ A @ Y @ ( nil @ A ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rev_eq_Cons_iff
% 0.17/0.38  thf(fact_189_rev_Osimps_I1_J,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( rev @ A @ ( nil @ A ) )
% 0.17/0.38        = ( nil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rev.simps(1)
% 0.17/0.38  thf(fact_190_rev__swap,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( ( rev @ A @ Xs )
% 0.17/0.38          = Ys )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( rev @ A @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rev_swap
% 0.17/0.38  thf(fact_191_list__of__aux__code_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( coindu1542816657of_aux @ A @ Xs @ ( coindu1598213697e_LNil @ A ) )
% 0.17/0.38        = ( rev @ A @ Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_of_aux_code(1)
% 0.17/0.38  thf(fact_192_rev_Osimps_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Xs: list @ A] :
% 0.17/0.38        ( ( rev @ A @ ( cons @ A @ X @ Xs ) )
% 0.17/0.38        = ( append @ A @ ( rev @ A @ Xs ) @ ( cons @ A @ X @ ( nil @ A ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rev.simps(2)
% 0.17/0.38  thf(fact_193_prefixes__snoc,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,X: A] :
% 0.17/0.38        ( ( prefixes @ A @ ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) ) )
% 0.17/0.38        = ( append @ ( list @ A ) @ ( prefixes @ A @ Xs ) @ ( cons @ ( list @ A ) @ ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) ) @ ( nil @ ( list @ A ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % prefixes_snoc
% 0.17/0.38  thf(fact_194_prefixes__eq__Snoc,axiom,
% 0.17/0.38      ! [A: $tType,Ys: list @ A,Xs: list @ ( list @ A ),X: list @ A] :
% 0.17/0.38        ( ( ( prefixes @ A @ Ys )
% 0.17/0.38          = ( append @ ( list @ A ) @ Xs @ ( cons @ ( list @ A ) @ X @ ( nil @ ( list @ A ) ) ) ) )
% 0.17/0.38        = ( ( ( ( Ys
% 0.17/0.38                = ( nil @ A ) )
% 0.17/0.38              & ( Xs
% 0.17/0.38                = ( nil @ ( list @ A ) ) ) )
% 0.17/0.38            | ? [Z2: A,Zs2: list @ A] :
% 0.17/0.38                ( ( Ys
% 0.17/0.38                  = ( append @ A @ Zs2 @ ( cons @ A @ Z2 @ ( nil @ A ) ) ) )
% 0.17/0.38                & ( Xs
% 0.17/0.38                  = ( prefixes @ A @ Zs2 ) ) ) )
% 0.17/0.38          & ( X = Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % prefixes_eq_Snoc
% 0.17/0.38  thf(fact_195_sublists_Osimps_I1_J,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( sublists @ A @ ( nil @ A ) )
% 0.17/0.38        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % sublists.simps(1)
% 0.17/0.38  thf(fact_196_prefixes_Osimps_I1_J,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( prefixes @ A @ ( nil @ A ) )
% 0.17/0.38        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % prefixes.simps(1)
% 0.17/0.38  thf(fact_197_append__butlast__last__id,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( Xs
% 0.17/0.38         != ( nil @ A ) )
% 0.17/0.38       => ( ( append @ A @ ( butlast @ A @ Xs ) @ ( cons @ A @ ( last @ A @ Xs ) @ ( nil @ A ) ) )
% 0.17/0.38          = Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % append_butlast_last_id
% 0.17/0.38  thf(fact_198_product__lists_Osimps_I1_J,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( product_lists @ A @ ( nil @ ( list @ A ) ) )
% 0.17/0.38        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % product_lists.simps(1)
% 0.17/0.38  thf(fact_199_butlast__snoc,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,X: A] :
% 0.17/0.38        ( ( butlast @ A @ ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) ) )
% 0.17/0.38        = Xs ) ).
% 0.17/0.38  
% 0.17/0.38  % butlast_snoc
% 0.17/0.38  thf(fact_200_butlast_Osimps_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,X: A] :
% 0.17/0.38        ( ( ( Xs
% 0.17/0.38            = ( nil @ A ) )
% 0.17/0.38         => ( ( butlast @ A @ ( cons @ A @ X @ Xs ) )
% 0.17/0.38            = ( nil @ A ) ) )
% 0.17/0.38        & ( ( Xs
% 0.17/0.38           != ( nil @ A ) )
% 0.17/0.38         => ( ( butlast @ A @ ( cons @ A @ X @ Xs ) )
% 0.17/0.38            = ( cons @ A @ X @ ( butlast @ A @ Xs ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % butlast.simps(2)
% 0.17/0.38  thf(fact_201_butlast_Osimps_I1_J,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( butlast @ A @ ( nil @ A ) )
% 0.17/0.38        = ( nil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % butlast.simps(1)
% 0.17/0.38  thf(fact_202_butlast__append,axiom,
% 0.17/0.38      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 0.17/0.38        ( ( ( Ys
% 0.17/0.38            = ( nil @ A ) )
% 0.17/0.38         => ( ( butlast @ A @ ( append @ A @ Xs @ Ys ) )
% 0.17/0.38            = ( butlast @ A @ Xs ) ) )
% 0.17/0.38        & ( ( Ys
% 0.17/0.38           != ( nil @ A ) )
% 0.17/0.38         => ( ( butlast @ A @ ( append @ A @ Xs @ Ys ) )
% 0.17/0.38            = ( append @ A @ Xs @ ( butlast @ A @ Ys ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % butlast_append
% 0.17/0.38  thf(fact_203_snoc__eq__iff__butlast,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,X: A,Ys: list @ A] :
% 0.17/0.38        ( ( ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) )
% 0.17/0.38          = Ys )
% 0.17/0.38        = ( ( Ys
% 0.17/0.38           != ( nil @ A ) )
% 0.17/0.38          & ( ( butlast @ A @ Ys )
% 0.17/0.38            = Xs )
% 0.17/0.38          & ( ( last @ A @ Ys )
% 0.17/0.38            = X ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % snoc_eq_iff_butlast
% 0.17/0.38  thf(fact_204_prefixes_Oelims,axiom,
% 0.17/0.38      ! [A: $tType,X: list @ A,Y: list @ ( list @ A )] :
% 0.17/0.38        ( ( ( prefixes @ A @ X )
% 0.17/0.38          = Y )
% 0.17/0.38       => ( ( ( X
% 0.17/0.38              = ( nil @ A ) )
% 0.17/0.38           => ( Y
% 0.17/0.38             != ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) )
% 0.17/0.38         => ~ ! [X3: A,Xs2: list @ A] :
% 0.17/0.38                ( ( X
% 0.17/0.38                  = ( cons @ A @ X3 @ Xs2 ) )
% 0.17/0.38               => ( Y
% 0.17/0.38                 != ( cons @ ( list @ A ) @ ( nil @ A ) @ ( map @ ( list @ A ) @ ( list @ A ) @ ( cons @ A @ X3 ) @ ( prefixes @ A @ Xs2 ) ) ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % prefixes.elims
% 0.17/0.38  thf(fact_205_insert__Nil,axiom,
% 0.17/0.38      ! [A: $tType,X: A] :
% 0.17/0.38        ( ( insert @ A @ X @ ( nil @ A ) )
% 0.17/0.38        = ( cons @ A @ X @ ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % insert_Nil
% 0.17/0.38  thf(fact_206_list_Omap__disc__iff,axiom,
% 0.17/0.38      ! [B: $tType,A: $tType,F: A > B,A2: list @ A] :
% 0.17/0.38        ( ( ( map @ A @ B @ F @ A2 )
% 0.17/0.38          = ( nil @ B ) )
% 0.17/0.38        = ( A2
% 0.17/0.38          = ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list.map_disc_iff
% 0.17/0.38  thf(fact_207_map__is__Nil__conv,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 0.17/0.38        ( ( ( map @ B @ A @ F @ Xs )
% 0.17/0.38          = ( nil @ A ) )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( nil @ B ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % map_is_Nil_conv
% 0.17/0.38  thf(fact_208_Nil__is__map__conv,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 0.17/0.38        ( ( ( nil @ A )
% 0.17/0.38          = ( map @ B @ A @ F @ Xs ) )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( nil @ B ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % Nil_is_map_conv
% 0.17/0.38  thf(fact_209_map__append,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B,Ys: list @ B] :
% 0.17/0.38        ( ( map @ B @ A @ F @ ( append @ B @ Xs @ Ys ) )
% 0.17/0.38        = ( append @ A @ ( map @ B @ A @ F @ Xs ) @ ( map @ B @ A @ F @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % map_append
% 0.17/0.38  thf(fact_210_map__butlast,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 0.17/0.38        ( ( map @ B @ A @ F @ ( butlast @ B @ Xs ) )
% 0.17/0.38        = ( butlast @ A @ ( map @ B @ A @ F @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % map_butlast
% 0.17/0.38  thf(fact_211_list_Osimps_I8_J,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,F: A > B] :
% 0.17/0.38        ( ( map @ A @ B @ F @ ( nil @ A ) )
% 0.17/0.38        = ( nil @ B ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list.simps(8)
% 0.17/0.38  thf(fact_212_rev__map,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 0.17/0.38        ( ( rev @ A @ ( map @ B @ A @ F @ Xs ) )
% 0.17/0.38        = ( map @ B @ A @ F @ ( rev @ B @ Xs ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rev_map
% 0.17/0.38  thf(fact_213_map__eq__Cons__conv,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B,Y: A,Ys: list @ A] :
% 0.17/0.38        ( ( ( map @ B @ A @ F @ Xs )
% 0.17/0.38          = ( cons @ A @ Y @ Ys ) )
% 0.17/0.38        = ( ? [Z2: B,Zs2: list @ B] :
% 0.17/0.38              ( ( Xs
% 0.17/0.38                = ( cons @ B @ Z2 @ Zs2 ) )
% 0.17/0.38              & ( ( F @ Z2 )
% 0.17/0.38                = Y )
% 0.17/0.38              & ( ( map @ B @ A @ F @ Zs2 )
% 0.17/0.38                = Ys ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % map_eq_Cons_conv
% 0.17/0.38  thf(fact_214_Cons__eq__map__conv,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,X: A,Xs: list @ A,F: B > A,Ys: list @ B] :
% 0.17/0.38        ( ( ( cons @ A @ X @ Xs )
% 0.17/0.38          = ( map @ B @ A @ F @ Ys ) )
% 0.17/0.38        = ( ? [Z2: B,Zs2: list @ B] :
% 0.17/0.38              ( ( Ys
% 0.17/0.38                = ( cons @ B @ Z2 @ Zs2 ) )
% 0.17/0.38              & ( X
% 0.17/0.38                = ( F @ Z2 ) )
% 0.17/0.38              & ( Xs
% 0.17/0.38                = ( map @ B @ A @ F @ Zs2 ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % Cons_eq_map_conv
% 0.17/0.38  thf(fact_215_map__eq__Cons__D,axiom,
% 0.17/0.38      ! [B: $tType,A: $tType,F: B > A,Xs: list @ B,Y: A,Ys: list @ A] :
% 0.17/0.38        ( ( ( map @ B @ A @ F @ Xs )
% 0.17/0.38          = ( cons @ A @ Y @ Ys ) )
% 0.17/0.38       => ? [Z3: B,Zs5: list @ B] :
% 0.17/0.38            ( ( Xs
% 0.17/0.38              = ( cons @ B @ Z3 @ Zs5 ) )
% 0.17/0.38            & ( ( F @ Z3 )
% 0.17/0.38              = Y )
% 0.17/0.38            & ( ( map @ B @ A @ F @ Zs5 )
% 0.17/0.38              = Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % map_eq_Cons_D
% 0.17/0.38  thf(fact_216_Cons__eq__map__D,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,X: A,Xs: list @ A,F: B > A,Ys: list @ B] :
% 0.17/0.38        ( ( ( cons @ A @ X @ Xs )
% 0.17/0.38          = ( map @ B @ A @ F @ Ys ) )
% 0.17/0.38       => ? [Z3: B,Zs5: list @ B] :
% 0.17/0.38            ( ( Ys
% 0.17/0.38              = ( cons @ B @ Z3 @ Zs5 ) )
% 0.17/0.38            & ( X
% 0.17/0.38              = ( F @ Z3 ) )
% 0.17/0.38            & ( Xs
% 0.17/0.38              = ( map @ B @ A @ F @ Zs5 ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % Cons_eq_map_D
% 0.17/0.38  thf(fact_217_list_Osimps_I9_J,axiom,
% 0.17/0.38      ! [B: $tType,A: $tType,F: A > B,X21: A,X22: list @ A] :
% 0.17/0.38        ( ( map @ A @ B @ F @ ( cons @ A @ X21 @ X22 ) )
% 0.17/0.38        = ( cons @ B @ ( F @ X21 ) @ ( map @ A @ B @ F @ X22 ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list.simps(9)
% 0.17/0.38  thf(fact_218_last__map,axiom,
% 0.17/0.38      ! [B: $tType,A: $tType,Xs: list @ A,F: A > B] :
% 0.17/0.38        ( ( Xs
% 0.17/0.38         != ( nil @ A ) )
% 0.17/0.38       => ( ( last @ B @ ( map @ A @ B @ F @ Xs ) )
% 0.17/0.38          = ( F @ ( last @ A @ Xs ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % last_map
% 0.17/0.38  thf(fact_219_prefixes_Osimps_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Xs: list @ A] :
% 0.17/0.38        ( ( prefixes @ A @ ( cons @ A @ X @ Xs ) )
% 0.17/0.38        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( map @ ( list @ A ) @ ( list @ A ) @ ( cons @ A @ X ) @ ( prefixes @ A @ Xs ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % prefixes.simps(2)
% 0.17/0.38  thf(fact_220_map__tailrec__rev,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType] :
% 0.17/0.38        ( ( map_tailrec_rev @ B @ A )
% 0.17/0.38        = ( ^ [F3: B > A,As2: list @ B] : ( append @ A @ ( rev @ A @ ( map @ B @ A @ F3 @ As2 ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % map_tailrec_rev
% 0.17/0.38  thf(fact_221_prefixes_Opelims,axiom,
% 0.17/0.38      ! [A: $tType,X: list @ A,Y: list @ ( list @ A )] :
% 0.17/0.38        ( ( ( prefixes @ A @ X )
% 0.17/0.38          = Y )
% 0.17/0.38       => ( ( accp @ ( list @ A ) @ ( prefixes_rel @ A ) @ X )
% 0.17/0.38         => ( ( ( X
% 0.17/0.38                = ( nil @ A ) )
% 0.17/0.38             => ( ( Y
% 0.17/0.38                  = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) )
% 0.17/0.38               => ~ ( accp @ ( list @ A ) @ ( prefixes_rel @ A ) @ ( nil @ A ) ) ) )
% 0.17/0.38           => ~ ! [X3: A,Xs2: list @ A] :
% 0.17/0.38                  ( ( X
% 0.17/0.38                    = ( cons @ A @ X3 @ Xs2 ) )
% 0.17/0.38                 => ( ( Y
% 0.17/0.38                      = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( map @ ( list @ A ) @ ( list @ A ) @ ( cons @ A @ X3 ) @ ( prefixes @ A @ Xs2 ) ) ) )
% 0.17/0.38                   => ~ ( accp @ ( list @ A ) @ ( prefixes_rel @ A ) @ ( cons @ A @ X3 @ Xs2 ) ) ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % prefixes.pelims
% 0.17/0.38  thf(fact_222_map__tailrec__rev_Osimps_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,F: A > B,Bs2: list @ B] :
% 0.17/0.38        ( ( map_tailrec_rev @ A @ B @ F @ ( nil @ A ) @ Bs2 )
% 0.17/0.38        = Bs2 ) ).
% 0.17/0.38  
% 0.17/0.38  % map_tailrec_rev.simps(1)
% 0.17/0.38  thf(fact_223_map__tailrec__rev_Osimps_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,F: A > B,A2: A,As3: list @ A,Bs2: list @ B] :
% 0.17/0.38        ( ( map_tailrec_rev @ A @ B @ F @ ( cons @ A @ A2 @ As3 ) @ Bs2 )
% 0.17/0.38        = ( map_tailrec_rev @ A @ B @ F @ As3 @ ( cons @ B @ ( F @ A2 ) @ Bs2 ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % map_tailrec_rev.simps(2)
% 0.17/0.38  thf(fact_224_map__tailrec__rev_Oelims,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,X: A > B,Xa: list @ A,Xb2: list @ B,Y: list @ B] :
% 0.17/0.38        ( ( ( map_tailrec_rev @ A @ B @ X @ Xa @ Xb2 )
% 0.17/0.38          = Y )
% 0.17/0.38       => ( ( ( Xa
% 0.17/0.38              = ( nil @ A ) )
% 0.17/0.38           => ( Y != Xb2 ) )
% 0.17/0.38         => ~ ! [A4: A,As: list @ A] :
% 0.17/0.38                ( ( Xa
% 0.17/0.38                  = ( cons @ A @ A4 @ As ) )
% 0.17/0.38               => ( Y
% 0.17/0.38                 != ( map_tailrec_rev @ A @ B @ X @ As @ ( cons @ B @ ( X @ A4 ) @ Xb2 ) ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % map_tailrec_rev.elims
% 0.17/0.38  thf(fact_225_map__tailrec__def,axiom,
% 0.17/0.38      ! [B: $tType,A: $tType] :
% 0.17/0.38        ( ( map_tailrec @ A @ B )
% 0.17/0.38        = ( ^ [F3: A > B,As2: list @ A] : ( rev @ B @ ( map_tailrec_rev @ A @ B @ F3 @ As2 @ ( nil @ B ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % map_tailrec_def
% 0.17/0.38  thf(fact_226_rotate1_Osimps_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Xs: list @ A] :
% 0.17/0.38        ( ( rotate1 @ A @ ( cons @ A @ X @ Xs ) )
% 0.17/0.38        = ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rotate1.simps(2)
% 0.17/0.38  thf(fact_227_rotate1__is__Nil__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( ( rotate1 @ A @ Xs )
% 0.17/0.38          = ( nil @ A ) )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rotate1_is_Nil_conv
% 0.17/0.38  thf(fact_228_rotate1_Osimps_I1_J,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( rotate1 @ A @ ( nil @ A ) )
% 0.17/0.38        = ( nil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % rotate1.simps(1)
% 0.17/0.38  thf(fact_229_map__eq__map__tailrec,axiom,
% 0.17/0.38      ! [B: $tType,A: $tType] :
% 0.17/0.38        ( ( map @ A @ B )
% 0.17/0.38        = ( map_tailrec @ A @ B ) ) ).
% 0.17/0.38  
% 0.17/0.38  % map_eq_map_tailrec
% 0.17/0.38  thf(fact_230_list__ex1__simps_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,P: A > $o] :
% 0.17/0.38        ~ ( list_ex1 @ A @ P @ ( nil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_ex1_simps(1)
% 0.17/0.38  thf(fact_231_strict__suffix__def,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( strict_suffix @ A )
% 0.17/0.38        = ( ^ [Xs3: list @ A,Ys3: list @ A] :
% 0.17/0.38            ? [Us: list @ A] :
% 0.17/0.38              ( ( Ys3
% 0.17/0.38                = ( append @ A @ Us @ Xs3 ) )
% 0.17/0.38              & ( Us
% 0.17/0.38               != ( nil @ A ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % strict_suffix_def
% 0.17/0.38  thf(fact_232_ord_Olexordp__eq__simps_I3_J,axiom,
% 0.17/0.38      ! [A: $tType,Less: A > A > $o,X: A,Xs: list @ A] :
% 0.17/0.38        ~ ( lexordp_eq @ A @ Less @ ( cons @ A @ X @ Xs ) @ ( nil @ A ) ) ).
% 0.17/0.38  
% 0.17/0.38  % ord.lexordp_eq_simps(3)
% 0.17/0.38  thf(fact_233_nth__append__length,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,X: A,Ys: list @ A] :
% 0.17/0.38        ( ( nth @ A @ ( append @ A @ Xs @ ( cons @ A @ X @ Ys ) ) @ ( size_size @ ( list @ A ) @ Xs ) )
% 0.17/0.38        = X ) ).
% 0.17/0.38  
% 0.17/0.38  % nth_append_length
% 0.17/0.38  thf(fact_234_length__map,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 0.17/0.38        ( ( size_size @ ( list @ A ) @ ( map @ B @ A @ F @ Xs ) )
% 0.17/0.38        = ( size_size @ ( list @ B ) @ Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % length_map
% 0.17/0.38  thf(fact_235_append__eq__append__conv,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A,Us2: list @ A,Vs: list @ A] :
% 0.17/0.38        ( ( ( ( size_size @ ( list @ A ) @ Xs )
% 0.17/0.38            = ( size_size @ ( list @ A ) @ Ys ) )
% 0.17/0.38          | ( ( size_size @ ( list @ A ) @ Us2 )
% 0.17/0.38            = ( size_size @ ( list @ A ) @ Vs ) ) )
% 0.17/0.38       => ( ( ( append @ A @ Xs @ Us2 )
% 0.17/0.38            = ( append @ A @ Ys @ Vs ) )
% 0.17/0.38          = ( ( Xs = Ys )
% 0.17/0.38            & ( Us2 = Vs ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % append_eq_append_conv
% 0.17/0.38  thf(fact_236_length__rev,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( size_size @ ( list @ A ) @ ( rev @ A @ Xs ) )
% 0.17/0.38        = ( size_size @ ( list @ A ) @ Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % length_rev
% 0.17/0.38  thf(fact_237_ord_Olexordp__eq__simps_I4_J,axiom,
% 0.17/0.38      ! [A: $tType,Less: A > A > $o,X: A,Xs: list @ A,Y: A,Ys: list @ A] :
% 0.17/0.38        ( ( lexordp_eq @ A @ Less @ ( cons @ A @ X @ Xs ) @ ( cons @ A @ Y @ Ys ) )
% 0.17/0.38        = ( ( Less @ X @ Y )
% 0.17/0.38          | ( ~ ( Less @ Y @ X )
% 0.17/0.38            & ( lexordp_eq @ A @ Less @ Xs @ Ys ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % ord.lexordp_eq_simps(4)
% 0.17/0.38  thf(fact_238_ord_Olexordp__eq__simps_I2_J,axiom,
% 0.17/0.38      ! [A: $tType,Less: A > A > $o,Xs: list @ A] :
% 0.17/0.38        ( ( lexordp_eq @ A @ Less @ Xs @ ( nil @ A ) )
% 0.17/0.38        = ( Xs
% 0.17/0.38          = ( nil @ A ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % ord.lexordp_eq_simps(2)
% 0.17/0.38  thf(fact_239_ord_Olexordp__eq__simps_I1_J,axiom,
% 0.17/0.38      ! [A: $tType,Less: A > A > $o,Ys: list @ A] : ( lexordp_eq @ A @ Less @ ( nil @ A ) @ Ys ) ).
% 0.17/0.38  
% 0.17/0.38  % ord.lexordp_eq_simps(1)
% 0.17/0.38  thf(fact_240_length__rotate1,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A] :
% 0.17/0.38        ( ( size_size @ ( list @ A ) @ ( rotate1 @ A @ Xs ) )
% 0.17/0.38        = ( size_size @ ( list @ A ) @ Xs ) ) ).
% 0.17/0.38  
% 0.17/0.38  % length_rotate1
% 0.17/0.38  thf(fact_241_map__eq__imp__length__eq,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,C: $tType,F: B > A,Xs: list @ B,G: C > A,Ys: list @ C] :
% 0.17/0.38        ( ( ( map @ B @ A @ F @ Xs )
% 0.17/0.38          = ( map @ C @ A @ G @ Ys ) )
% 0.17/0.38       => ( ( size_size @ ( list @ B ) @ Xs )
% 0.17/0.38          = ( size_size @ ( list @ C ) @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % map_eq_imp_length_eq
% 0.17/0.38  thf(fact_242_ord_Olexordp__eq_Oinducts,axiom,
% 0.17/0.38      ! [A: $tType,Less: A > A > $o,X12: list @ A,X24: list @ A,P: ( list @ A ) > ( list @ A ) > $o] :
% 0.17/0.38        ( ( lexordp_eq @ A @ Less @ X12 @ X24 )
% 0.17/0.38       => ( ! [X1: list @ A] : ( P @ ( nil @ A ) @ X1 )
% 0.17/0.38         => ( ! [X3: A,Y3: A,Xs2: list @ A,Ys2: list @ A] :
% 0.17/0.38                ( ( Less @ X3 @ Y3 )
% 0.17/0.38               => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ A @ Y3 @ Ys2 ) ) )
% 0.17/0.38           => ( ! [X3: A,Y3: A,Xs2: list @ A,Ys2: list @ A] :
% 0.17/0.38                  ( ~ ( Less @ X3 @ Y3 )
% 0.17/0.38                 => ( ~ ( Less @ Y3 @ X3 )
% 0.17/0.38                   => ( ( lexordp_eq @ A @ Less @ Xs2 @ Ys2 )
% 0.17/0.38                     => ( ( P @ Xs2 @ Ys2 )
% 0.17/0.38                       => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ A @ Y3 @ Ys2 ) ) ) ) ) )
% 0.17/0.38             => ( P @ X12 @ X24 ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % ord.lexordp_eq.inducts
% 0.17/0.38  thf(fact_243_ord_Olexordp__eq_Osimps,axiom,
% 0.17/0.38      ! [A: $tType] :
% 0.17/0.38        ( ( lexordp_eq @ A )
% 0.17/0.38        = ( ^ [Less2: A > A > $o,A12: list @ A,A23: list @ A] :
% 0.17/0.38              ( ? [Ys3: list @ A] :
% 0.17/0.38                  ( ( A12
% 0.17/0.38                    = ( nil @ A ) )
% 0.17/0.38                  & ( A23 = Ys3 ) )
% 0.17/0.38              | ? [X2: A,Y2: A,Xs3: list @ A,Ys3: list @ A] :
% 0.17/0.38                  ( ( A12
% 0.17/0.38                    = ( cons @ A @ X2 @ Xs3 ) )
% 0.17/0.38                  & ( A23
% 0.17/0.38                    = ( cons @ A @ Y2 @ Ys3 ) )
% 0.17/0.38                  & ( Less2 @ X2 @ Y2 ) )
% 0.17/0.38              | ? [X2: A,Y2: A,Xs3: list @ A,Ys3: list @ A] :
% 0.17/0.38                  ( ( A12
% 0.17/0.38                    = ( cons @ A @ X2 @ Xs3 ) )
% 0.17/0.38                  & ( A23
% 0.17/0.38                    = ( cons @ A @ Y2 @ Ys3 ) )
% 0.17/0.38                  & ~ ( Less2 @ X2 @ Y2 )
% 0.17/0.38                  & ~ ( Less2 @ Y2 @ X2 )
% 0.17/0.38                  & ( lexordp_eq @ A @ Less2 @ Xs3 @ Ys3 ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % ord.lexordp_eq.simps
% 0.17/0.38  thf(fact_244_ord_Olexordp__eq_Ocases,axiom,
% 0.17/0.38      ! [A: $tType,Less: A > A > $o,A1: list @ A,A22: list @ A] :
% 0.17/0.38        ( ( lexordp_eq @ A @ Less @ A1 @ A22 )
% 0.17/0.38       => ( ( ( A1
% 0.17/0.38              = ( nil @ A ) )
% 0.17/0.38           => ! [Ys2: list @ A] : ( A22 != Ys2 ) )
% 0.17/0.38         => ( ! [X3: A] :
% 0.17/0.38                ( ? [Xs2: list @ A] :
% 0.17/0.38                    ( A1
% 0.17/0.38                    = ( cons @ A @ X3 @ Xs2 ) )
% 0.17/0.38               => ! [Y3: A] :
% 0.17/0.38                    ( ? [Ys2: list @ A] :
% 0.17/0.38                        ( A22
% 0.17/0.38                        = ( cons @ A @ Y3 @ Ys2 ) )
% 0.17/0.38                   => ~ ( Less @ X3 @ Y3 ) ) )
% 0.17/0.38           => ~ ! [X3: A,Y3: A,Xs2: list @ A] :
% 0.17/0.38                  ( ( A1
% 0.17/0.38                    = ( cons @ A @ X3 @ Xs2 ) )
% 0.17/0.38                 => ! [Ys2: list @ A] :
% 0.17/0.38                      ( ( A22
% 0.17/0.38                        = ( cons @ A @ Y3 @ Ys2 ) )
% 0.17/0.38                     => ( ~ ( Less @ X3 @ Y3 )
% 0.17/0.38                       => ( ~ ( Less @ Y3 @ X3 )
% 0.17/0.38                         => ~ ( lexordp_eq @ A @ Less @ Xs2 @ Ys2 ) ) ) ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % ord.lexordp_eq.cases
% 0.17/0.38  thf(fact_245_ord_Olexordp__eq_OCons,axiom,
% 0.17/0.38      ! [A: $tType,Less: A > A > $o,X: A,Y: A,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( Less @ X @ Y )
% 0.17/0.38       => ( lexordp_eq @ A @ Less @ ( cons @ A @ X @ Xs ) @ ( cons @ A @ Y @ Ys ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % ord.lexordp_eq.Cons
% 0.17/0.38  thf(fact_246_ord_Olexordp__eq_OCons__eq,axiom,
% 0.17/0.38      ! [A: $tType,Less: A > A > $o,X: A,Y: A,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ~ ( Less @ X @ Y )
% 0.17/0.38       => ( ~ ( Less @ Y @ X )
% 0.17/0.38         => ( ( lexordp_eq @ A @ Less @ Xs @ Ys )
% 0.17/0.38           => ( lexordp_eq @ A @ Less @ ( cons @ A @ X @ Xs ) @ ( cons @ A @ Y @ Ys ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % ord.lexordp_eq.Cons_eq
% 0.17/0.38  thf(fact_247_ord_Olexordp__eq_ONil,axiom,
% 0.17/0.38      ! [A: $tType,Less: A > A > $o,Ys: list @ A] : ( lexordp_eq @ A @ Less @ ( nil @ A ) @ Ys ) ).
% 0.17/0.38  
% 0.17/0.38  % ord.lexordp_eq.Nil
% 0.17/0.38  thf(fact_248_list__induct4,axiom,
% 0.17/0.38      ! [C: $tType,A: $tType,B: $tType,D: $tType,Xs: list @ A,Ys: list @ B,Zs: list @ C,Ws: list @ D,P: ( list @ A ) > ( list @ B ) > ( list @ C ) > ( list @ D ) > $o] :
% 0.17/0.38        ( ( ( size_size @ ( list @ A ) @ Xs )
% 0.17/0.38          = ( size_size @ ( list @ B ) @ Ys ) )
% 0.17/0.38       => ( ( ( size_size @ ( list @ B ) @ Ys )
% 0.17/0.38            = ( size_size @ ( list @ C ) @ Zs ) )
% 0.17/0.38         => ( ( ( size_size @ ( list @ C ) @ Zs )
% 0.17/0.38              = ( size_size @ ( list @ D ) @ Ws ) )
% 0.17/0.38           => ( ( P @ ( nil @ A ) @ ( nil @ B ) @ ( nil @ C ) @ ( nil @ D ) )
% 0.17/0.38             => ( ! [X3: A,Xs2: list @ A,Y3: B,Ys2: list @ B,Z3: C,Zs5: list @ C,W: D,Ws2: list @ D] :
% 0.17/0.38                    ( ( ( size_size @ ( list @ A ) @ Xs2 )
% 0.17/0.38                      = ( size_size @ ( list @ B ) @ Ys2 ) )
% 0.17/0.38                   => ( ( ( size_size @ ( list @ B ) @ Ys2 )
% 0.17/0.38                        = ( size_size @ ( list @ C ) @ Zs5 ) )
% 0.17/0.38                     => ( ( ( size_size @ ( list @ C ) @ Zs5 )
% 0.17/0.38                          = ( size_size @ ( list @ D ) @ Ws2 ) )
% 0.17/0.38                       => ( ( P @ Xs2 @ Ys2 @ Zs5 @ Ws2 )
% 0.17/0.38                         => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ B @ Y3 @ Ys2 ) @ ( cons @ C @ Z3 @ Zs5 ) @ ( cons @ D @ W @ Ws2 ) ) ) ) ) )
% 0.17/0.38               => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_induct4
% 0.17/0.38  thf(fact_249_list__induct3,axiom,
% 0.17/0.38      ! [B: $tType,A: $tType,C: $tType,Xs: list @ A,Ys: list @ B,Zs: list @ C,P: ( list @ A ) > ( list @ B ) > ( list @ C ) > $o] :
% 0.17/0.38        ( ( ( size_size @ ( list @ A ) @ Xs )
% 0.17/0.38          = ( size_size @ ( list @ B ) @ Ys ) )
% 0.17/0.38       => ( ( ( size_size @ ( list @ B ) @ Ys )
% 0.17/0.38            = ( size_size @ ( list @ C ) @ Zs ) )
% 0.17/0.38         => ( ( P @ ( nil @ A ) @ ( nil @ B ) @ ( nil @ C ) )
% 0.17/0.38           => ( ! [X3: A,Xs2: list @ A,Y3: B,Ys2: list @ B,Z3: C,Zs5: list @ C] :
% 0.17/0.38                  ( ( ( size_size @ ( list @ A ) @ Xs2 )
% 0.17/0.38                    = ( size_size @ ( list @ B ) @ Ys2 ) )
% 0.17/0.38                 => ( ( ( size_size @ ( list @ B ) @ Ys2 )
% 0.17/0.38                      = ( size_size @ ( list @ C ) @ Zs5 ) )
% 0.17/0.38                   => ( ( P @ Xs2 @ Ys2 @ Zs5 )
% 0.17/0.38                     => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ B @ Y3 @ Ys2 ) @ ( cons @ C @ Z3 @ Zs5 ) ) ) ) )
% 0.17/0.38             => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_induct3
% 0.17/0.38  thf(fact_250_list__induct2,axiom,
% 0.17/0.38      ! [A: $tType,B: $tType,Xs: list @ A,Ys: list @ B,P: ( list @ A ) > ( list @ B ) > $o] :
% 0.17/0.38        ( ( ( size_size @ ( list @ A ) @ Xs )
% 0.17/0.38          = ( size_size @ ( list @ B ) @ Ys ) )
% 0.17/0.38       => ( ( P @ ( nil @ A ) @ ( nil @ B ) )
% 0.17/0.38         => ( ! [X3: A,Xs2: list @ A,Y3: B,Ys2: list @ B] :
% 0.17/0.38                ( ( ( size_size @ ( list @ A ) @ Xs2 )
% 0.17/0.38                  = ( size_size @ ( list @ B ) @ Ys2 ) )
% 0.17/0.38               => ( ( P @ Xs2 @ Ys2 )
% 0.17/0.38                 => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ B @ Y3 @ Ys2 ) ) ) )
% 0.17/0.38           => ( P @ Xs @ Ys ) ) ) ) ).
% 0.17/0.38  
% 0.17/0.38  % list_induct2
% 0.17/0.38  thf(fact_251_ord_Olexordp__eq__refl,axiom,
% 0.17/0.38      ! [A: $tType,Less: A > A > $o,Xs: list @ A] : ( lexordp_eq @ A @ Less @ Xs @ Xs ) ).
% 0.17/0.38  
% 0.17/0.38  % ord.lexordp_eq_refl
% 0.17/0.38  thf(fact_252_neq__if__length__neq,axiom,
% 0.17/0.38      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 0.17/0.38        ( ( ( size_size @ ( list @ A ) @ Xs )
% 0.17/0.38         != ( size_size @ ( list @ A ) @ Ys ) )
% 0.17/0.38       => ( Xs != Ys ) ) ).
% 0.17/0.38  
% 0.17/0.38  % neq_if_length_neq
% 0.17/0.38  
% 0.17/0.38  %----Helper facts (3)
% 0.17/0.38  thf(help_If_3_1_T,axiom,
% 0.17/0.38      ! [P: $o] :
% 0.17/0.38        ( ( P = $true )
% 0.17/0.38        | ( P = $false ) ) ).
% 0.17/0.38  
% 0.17/0.38  thf(help_If_2_1_T,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Y: A] :
% 0.17/0.38        ( ( if @ A @ $false @ X @ Y )
% 0.17/0.38        = Y ) ).
% 0.17/0.38  
% 0.17/0.38  thf(help_If_1_1_T,axiom,
% 0.17/0.38      ! [A: $tType,X: A,Y: A] :
% 0.17/0.38        ( ( if @ A @ $true @ X @ Y )
% 0.17/0.38        = X ) ).
% 0.17/0.38  
% 0.17/0.38  %----Conjectures (1)
% 0.17/0.38  thf(conj_0,conjecture,
% 0.17/0.38      ( ( coindu268472904append @ a @ ( coindu288502823_llist @ a @ f ) @ xs )
% 0.17/0.38      = ( coindu288502823_llist @ a @ f ) ) ).
% 0.17/0.38  
% 0.17/0.38  %------------------------------------------------------------------------------
% 0.17/0.38  ------------------------
% 2.75/1.59  ---- Embedded in THF ---
% 2.75/1.59  %%% This output was generated by embedproblem, version 1.9.5 (library version 1.9).
% 2.75/1.59  %%% Generated on Tue Feb 24 06:08:41 EST 2026
% 2.75/1.59  %%% using '$$dhol' embedding, version 1.3.0.
% 2.75/1.59  %%% Logic specification used:
% 2.75/1.59  %%% thf(spec, logic, $$dhol).
% 2.75/1.59  
% 2.75/1.59  % SZS output start ListOfTHF for /export/starexec/sandbox2/tmp/tmp.HOKmHkkqrB/DTF2DTF17806.p
% 2.75/1.59  thf(ty_t_Coinductive__List__Mirabelle__kmikjhschf_Ollist, type, coindu1593790203_llist: ($tType > $tType)).
% 2.75/1.59  thf(ty_t_List_Olist, type, list: ($tType > $tType)).
% 2.75/1.59  thf(ty_t_Nat_Onat, type, nat: $tType).
% 2.75/1.59  thf(ty_t_itself, type, itself: ($tType > $tType)).
% 2.75/1.59  thf(ty_tf_a, type, a: $tType).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix, type, coindu1571841457prefix: (!> [A:$tType]: (((coindu1593790203_llist @ A) > ((coindu1593790203_llist @ A) > $o))))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Oinf__llist, type, coindu288502823_llist: (!> [A:$tType]: (((nat > A) > (coindu1593790203_llist @ A))))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Oiterates, type, coindu1529956631erates: (!> [A:$tType]: (((A > A) > (A > (coindu1593790203_llist @ A)))))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olappend, type, coindu268472904append: (!> [A:$tType]: (((coindu1593790203_llist @ A) > ((coindu1593790203_llist @ A) > (coindu1593790203_llist @ A)))))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olfinite, type, coindu1213758845finite: (!> [A:$tType]: (((coindu1593790203_llist @ A) > $o)))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olist__of, type, coindu1736001939ist_of: (!> [A:$tType]: (((coindu1593790203_llist @ A) > (list @ A))))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olist__of__aux, type, coindu1542816657of_aux: (!> [A:$tType]: (((list @ A) > ((coindu1593790203_llist @ A) > (list @ A)))))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollast, type, coindu2000965700_llast: (!> [A:$tType]: (((coindu1593790203_llist @ A) > A)))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist_OLCons, type, coindu1121789889_LCons: (!> [A:$tType]: ((A > ((coindu1593790203_llist @ A) > (coindu1593790203_llist @ A)))))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist_OLNil, type, coindu1598213697e_LNil: (!> [A:$tType]: ((coindu1593790203_llist @ A)))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist_Olnull, type, coindu335574135_lnull: (!> [A:$tType]: (((coindu1593790203_llist @ A) > $o)))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist__of, type, coindu1079202755ist_of: (!> [A:$tType]: (((list @ A) > (coindu1593790203_llist @ A))))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olmember, type, coindu567634248member: (!> [A:$tType]: ((A > ((coindu1593790203_llist @ A) > $o))))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olnth, type, coindu749330388e_lnth: (!> [A:$tType]: (((coindu1593790203_llist @ A) > (nat > A))))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olprefix, type, coindu1696667936prefix: (!> [A:$tType]: (((coindu1593790203_llist @ A) > ((coindu1593790203_llist @ A) > $o))))).
% 2.75/1.59  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olstrict__prefix, type, coindu574146665prefix: (!> [A:$tType]: (((coindu1593790203_llist @ A) > ((coindu1593790203_llist @ A) > $o))))).
% 2.75/1.59  thf(sy_c_HOL_Oundefined, type, undefined: (!> [A:$tType]: (A))).
% 2.75/1.59  thf(sy_c_If, type, if: (!> [A:$tType]: (($o > (A > (A > A)))))).
% 2.75/1.59  thf(sy_c_List_Oappend, type, append: (!> [A:$tType]: (((list @ A) > ((list @ A) > (list @ A)))))).
% 2.75/1.59  thf(sy_c_List_Obind, type, bind: (!> [A:$tType,B:$tType]: (((list @ A) > ((A > (list @ B)) > (list @ B)))))).
% 2.75/1.59  thf(sy_c_List_Obutlast, type, butlast: (!> [A:$tType]: (((list @ A) > (list @ A))))).
% 2.75/1.59  thf(sy_c_List_Oinsert, type, insert: (!> [A:$tType]: ((A > ((list @ A) > (list @ A)))))).
% 2.75/1.59  thf(sy_c_List_Olast, type, last: (!> [A:$tType]: (((list @ A) > A)))).
% 2.75/1.59  thf(sy_c_List_Olist_OCons, type, cons: (!> [A:$tType]: ((A > ((list @ A) > (list @ A)))))).
% 2.75/1.59  thf(sy_c_List_Olist_ONil, type, nil: (!> [A:$tType]: ((list @ A)))).
% 2.75/1.59  thf(sy_c_List_Olist_Omap, type, map: (!> [A:$tType,Aa:$tType]: (((A > Aa) > ((list @ A) > (list @ Aa)))))).
% 2.75/1.59  thf(sy_c_List_Olist__ex1, type, list_ex1: (!> [A:$tType]: (((A > $o) > ((list @ A) > $o))))).
% 2.75/1.59  thf(sy_c_List_Omap__tailrec, type, map_tailrec: (!> [A:$tType,B:$tType]: (((A > B) > ((list @ A) > (list @ B)))))).
% 2.75/1.59  thf(sy_c_List_Omap__tailrec__rev, type, map_tailrec_rev: (!> [A:$tType,B:$tType]: (((A > B) > ((list @ A) > ((list @ B) > (list @ B))))))).
% 2.75/1.59  thf(sy_c_List_Omaps, type, maps: (!> [A:$tType,B:$tType]: (((A > (list @ B)) > ((list @ A) > (list @ B)))))).
% 2.75/1.59  thf(sy_c_List_Onth, type, nth: (!> [A:$tType]: (((list @ A) > (nat > A))))).
% 2.75/1.59  thf(sy_c_List_Oord_Olexordp__eq, type, lexordp_eq: (!> [A:$tType]: (((A > (A > $o)) > ((list @ A) > ((list @ A) > $o)))))).
% 2.75/1.59  thf(sy_c_List_Oproduct__lists, type, product_lists: (!> [A:$tType]: (((list @ (list @ A)) > (list @ (list @ A)))))).
% 2.75/1.59  thf(sy_c_List_Orev, type, rev: (!> [A:$tType]: (((list @ A) > (list @ A))))).
% 2.75/1.59  thf(sy_c_List_Orotate1, type, rotate1: (!> [A:$tType]: (((list @ A) > (list @ A))))).
% 2.75/1.59  thf(sy_c_List_Osublists, type, sublists: (!> [A:$tType]: (((list @ A) > (list @ (list @ A)))))).
% 2.75/1.59  thf(sy_c_Nat_Osize__class_Osize, type, size_size: (!> [A:$tType]: ((A > nat)))).
% 2.75/1.59  thf(sy_c_Pure_Otype, type, type: (!> [A:$tType]: ((itself @ A)))).
% 2.75/1.59  thf(sy_c_Sublist_Oprefixes, type, prefixes: (!> [A:$tType]: (((list @ A) > (list @ (list @ A)))))).
% 2.75/1.59  thf(sy_c_Sublist_Oprefixes__rel, type, prefixes_rel: (!> [A:$tType]: (((list @ A) > ((list @ A) > $o))))).
% 2.75/1.59  thf(sy_c_Sublist_Ostrict__suffix, type, strict_suffix: (!> [A:$tType]: (((list @ A) > ((list @ A) > $o))))).
% 2.75/1.59  thf(sy_c_Wellfounded_Oaccp, type, accp: (!> [A:$tType]: (((A > (A > $o)) > (A > $o))))).
% 2.75/1.59  thf(sy_v_f, type, f: (nat > a)).
% 2.75/1.59  thf(sy_v_xs, type, xs: (coindu1593790203_llist @ a)).
% 2.75/1.59  thf(fact_0_inf__llist__inj, axiom, (! [A:$tType,F:(nat > A),G:(nat > A)]: (((((coindu288502823_llist @ A) @ F) = ((coindu288502823_llist @ A) @ G)) = (F = G))))).
% 2.75/1.59  thf(fact_1_lappend__assoc, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A),Zs:(coindu1593790203_llist @ A)]: (((((coindu268472904append @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)) @ Zs) = (((coindu268472904append @ A) @ Xs) @ (((coindu268472904append @ A) @ Ys) @ Zs)))))).
% 2.75/1.59  thf(fact_2_inf__llist__lprefix, axiom, (! [A:$tType,F:(nat > A),Xs:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ ((coindu288502823_llist @ A) @ F)) @ Xs) = (Xs = ((coindu288502823_llist @ A) @ F)))))).
% 2.75/1.59  thf(fact_3_lnth__inf__llist, axiom, (! [A:$tType,F:(nat > A),N:nat]: (((((coindu749330388e_lnth @ A) @ ((coindu288502823_llist @ A) @ F)) @ N) = (F @ N))))).
% 2.75/1.59  thf(fact_4_lappend__code_I1_J, axiom, (! [A:$tType,Ys:(coindu1593790203_llist @ A)]: (((((coindu268472904append @ A) @ (coindu1598213697e_LNil @ A)) @ Ys) = Ys)))).
% 2.75/1.59  thf(fact_5_lappend__LNil2, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: (((((coindu268472904append @ A) @ Xs) @ (coindu1598213697e_LNil @ A)) = Xs)))).
% 2.75/1.59  thf(fact_6_inf__llist__neq__llist__of_I1_J, axiom, (! [A:$tType,Xs:(list @ A),F:(nat > A)]: ((((coindu1079202755ist_of @ A) @ Xs) != ((coindu288502823_llist @ A) @ F))))).
% 2.75/1.59  thf(fact_7_llist__exhaust, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: (((! [Ys2:(list @ A)]: ((Xs != ((coindu1079202755ist_of @ A) @ Ys2)))) => (~ ((! [F2:(nat > A)]: ((Xs != ((coindu288502823_llist @ A) @ F2)))))))))).
% 2.75/1.59  thf(fact_8_lappend__iterates, axiom, (! [A:$tType,F:(A > A),X:A,Xs:(coindu1593790203_llist @ A)]: (((((coindu268472904append @ A) @ (((coindu1529956631erates @ A) @ F) @ X)) @ Xs) = (((coindu1529956631erates @ A) @ F) @ X))))).
% 2.75/1.59  thf(fact_9_lappend__code_I2_J, axiom, (! [A:$tType,Xa:A,X:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((((coindu268472904append @ A) @ (((coindu1121789889_LCons @ A) @ Xa) @ X)) @ Ys) = (((coindu1121789889_LCons @ A) @ Xa) @ (((coindu268472904append @ A) @ X) @ Ys)))))).
% 2.75/1.59  thf(fact_10_lappend_Odisc__iff_I2_J, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((~ (((coindu335574135_lnull @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)))) = ((~ (((coindu335574135_lnull @ A) @ Xs))) | (~ (((coindu335574135_lnull @ A) @ Ys)))))))).
% 2.75/1.59  thf(fact_11_lnull__lappend, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((coindu335574135_lnull @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)) = (((coindu335574135_lnull @ A) @ Xs) & ((coindu335574135_lnull @ A) @ Ys)))))).
% 2.75/1.59  thf(fact_12_inf__llist__neq__LNil, axiom, (! [A:$tType,F:(nat > A)]: ((((coindu288502823_llist @ A) @ F) != (coindu1598213697e_LNil @ A))))).
% 2.75/1.59  thf(fact_13_lfinite__lappend, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((coindu1213758845finite @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)) = (((coindu1213758845finite @ A) @ Xs) & ((coindu1213758845finite @ A) @ Ys)))))).
% 2.75/1.59  thf(fact_14_lprefix__refl, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: ((((coindu1696667936prefix @ A) @ Xs) @ Xs)))).
% 2.75/1.59  thf(fact_15_llist_Oleq__refl, axiom, (! [A:$tType,X:(coindu1593790203_llist @ A)]: ((((coindu1696667936prefix @ A) @ X) @ X)))).
% 2.75/1.59  thf(fact_16_llist_Oinject, axiom, (! [A:$tType,X21:A,X22:(coindu1593790203_llist @ A),Y21:A,Y22:(coindu1593790203_llist @ A)]: ((((((coindu1121789889_LCons @ A) @ X21) @ X22) = (((coindu1121789889_LCons @ A) @ Y21) @ Y22)) = ((X21 = Y21) & (X22 = Y22)))))).
% 2.75/1.59  thf(fact_17_llist__of__inject, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: (((((coindu1079202755ist_of @ A) @ Xs) = ((coindu1079202755ist_of @ A) @ Ys)) = (Xs = Ys))))).
% 2.75/1.59  thf(fact_18_LCons__lprefix__LCons, axiom, (! [A:$tType,X:A,Xs:(coindu1593790203_llist @ A),Y:A,Ys:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)) @ (((coindu1121789889_LCons @ A) @ Y) @ Ys)) = ((X = Y) & (((coindu1696667936prefix @ A) @ Xs) @ Ys)))))).
% 2.75/1.59  thf(fact_19_lprefix__code_I1_J, axiom, (! [A:$tType,Ys:(coindu1593790203_llist @ A)]: ((((coindu1696667936prefix @ A) @ (coindu1598213697e_LNil @ A)) @ Ys)))).
% 2.75/1.59  thf(fact_20_lfinite__code_I2_J, axiom, (! [B:$tType,X:B,Xs:(coindu1593790203_llist @ B)]: ((((coindu1213758845finite @ B) @ (((coindu1121789889_LCons @ B) @ X) @ Xs)) = ((coindu1213758845finite @ B) @ Xs))))).
% 2.75/1.59  thf(fact_21_lfinite__LCons, axiom, (! [A:$tType,X:A,Xs:(coindu1593790203_llist @ A)]: ((((coindu1213758845finite @ A) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)) = ((coindu1213758845finite @ A) @ Xs))))).
% 2.75/1.59  thf(fact_22_lfinite__code_I1_J, axiom, (! [A:$tType]: (((coindu1213758845finite @ A) @ (coindu1598213697e_LNil @ A))))).
% 2.75/1.59  thf(fact_23_lprefix__LNil, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ Xs) @ (coindu1598213697e_LNil @ A)) = ((coindu335574135_lnull @ A) @ Xs))))).
% 2.75/1.59  thf(fact_24_lprefix__lappend__same, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A),Zs:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)) @ (((coindu268472904append @ A) @ Xs) @ Zs)) = (((coindu1213758845finite @ A) @ Xs) => (((coindu1696667936prefix @ A) @ Ys) @ Zs)))))).
% 2.75/1.59  thf(fact_25_inf__llist__lnth, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: (((~ (((coindu1213758845finite @ A) @ Xs))) => (((coindu288502823_llist @ A) @ ((coindu749330388e_lnth @ A) @ Xs)) = Xs))))).
% 2.75/1.59  thf(fact_26_llist_Odisc_I2_J, axiom, (! [A:$tType,X21:A,X22:(coindu1593790203_llist @ A)]: ((~ (((coindu335574135_lnull @ A) @ (((coindu1121789889_LCons @ A) @ X21) @ X22))))))).
% 2.75/1.59  thf(fact_27_llist_Odisc_I1_J, axiom, (! [A:$tType]: (((coindu335574135_lnull @ A) @ (coindu1598213697e_LNil @ A))))).
% 2.75/1.59  thf(fact_28_llist_OdiscI_I2_J, axiom, (! [A:$tType,Llist:(coindu1593790203_llist @ A),X21:A,X22:(coindu1593790203_llist @ A)]: (((Llist = (((coindu1121789889_LCons @ A) @ X21) @ X22)) => (~ (((coindu335574135_lnull @ A) @ Llist))))))).
% 2.75/1.59  thf(fact_29_llist_OdiscI_I1_J, axiom, (! [A:$tType,Llist:(coindu1593790203_llist @ A)]: (((Llist = (coindu1598213697e_LNil @ A)) => ((coindu335574135_lnull @ A) @ Llist))))).
% 2.75/1.59  thf(fact_30_lprefix__code_I2_J, axiom, (! [A:$tType,X:A,Xs:(coindu1593790203_llist @ A)]: ((~ ((((coindu1696667936prefix @ A) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)) @ (coindu1598213697e_LNil @ A))))))).
% 2.75/1.59  thf(fact_31_llist_Ocollapse_I1_J, axiom, (! [A:$tType,Llist:(coindu1593790203_llist @ A)]: ((((coindu335574135_lnull @ A) @ Llist) => (Llist = (coindu1598213697e_LNil @ A)))))).
% 2.75/1.59  thf(fact_32_llist_Odistinct_I1_J, axiom, (! [A:$tType,X21:A,X22:(coindu1593790203_llist @ A)]: (((coindu1598213697e_LNil @ A) != (((coindu1121789889_LCons @ A) @ X21) @ X22))))).
% 2.75/1.59  thf(fact_33_lzip_Oexhaust, axiom, (! [A:$tType,B:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ B)]: (((~ ((((coindu335574135_lnull @ A) @ Xs) | ((coindu335574135_lnull @ B) @ Ys)))) => (~ (((~ (((coindu335574135_lnull @ A) @ Xs))) => ((coindu335574135_lnull @ B) @ Ys)))))))).
% 2.75/1.59  thf(fact_34_iterates_Ocode, axiom, (! [A:$tType]: (((coindu1529956631erates @ A) = (^ [F3:(A > A),X2:A]: ((((coindu1121789889_LCons @ A) @ X2) @ (((coindu1529956631erates @ A) @ F3) @ (F3 @ X2))))))))).
% 2.75/1.59  thf(fact_35_lfinite_Ocases, axiom, (! [A:$tType,A2:(coindu1593790203_llist @ A)]: ((((coindu1213758845finite @ A) @ A2) => ((A2 != (coindu1598213697e_LNil @ A)) => (~ ((! [Xs2:(coindu1593790203_llist @ A)]: (((? [X3:A]: ((A2 = (((coindu1121789889_LCons @ A) @ X3) @ Xs2)))) => (~ (((coindu1213758845finite @ A) @ Xs2))))))))))))).
% 2.75/1.59  thf(fact_36_lfinite_Osimps, axiom, (! [A:$tType]: (((coindu1213758845finite @ A) = (^ [A3:(coindu1593790203_llist @ A)]: (((A3 = (coindu1598213697e_LNil @ A)) | (? [Xs3:(coindu1593790203_llist @ A),X2:A]: (((A3 = (((coindu1121789889_LCons @ A) @ X2) @ Xs3)) & ((coindu1213758845finite @ A) @ Xs3))))))))))).
% 2.75/1.59  thf(fact_37_llist_Oexhaust, axiom, (! [A:$tType,Y:(coindu1593790203_llist @ A)]: (((Y != (coindu1598213697e_LNil @ A)) => (~ ((! [X212:A,X222:(coindu1593790203_llist @ A)]: ((Y != (((coindu1121789889_LCons @ A) @ X212) @ X222)))))))))).
% 2.75/1.59  thf(fact_38_lnull__lprefix, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((coindu335574135_lnull @ A) @ Xs) => (((coindu1696667936prefix @ A) @ Xs) @ Ys))))).
% 2.75/1.59  thf(fact_39_lprefix_Ocases, axiom, (! [A:$tType,A1:(coindu1593790203_llist @ A),A22:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ A1) @ A22) => (((A1 = (coindu1598213697e_LNil @ A)) => (! [Xs2:(coindu1593790203_llist @ A)]: ((A22 != Xs2)))) => (~ ((! [Xs2:(coindu1593790203_llist @ A),Ys2:(coindu1593790203_llist @ A),X3:A]: (((A1 = (((coindu1121789889_LCons @ A) @ X3) @ Xs2)) => ((A22 = (((coindu1121789889_LCons @ A) @ X3) @ Ys2)) => (~ ((((coindu1696667936prefix @ A) @ Xs2) @ Ys2)))))))))))))).
% 2.75/1.59  thf(fact_40_lprefix_Osimps, axiom, (! [A:$tType]: (((coindu1696667936prefix @ A) = (^ [A12:(coindu1593790203_llist @ A),A23:(coindu1593790203_llist @ A)]: (((? [Xs3:(coindu1593790203_llist @ A)]: (((A12 = (coindu1598213697e_LNil @ A)) & (A23 = Xs3)))) | (? [Xs3:(coindu1593790203_llist @ A),Ys3:(coindu1593790203_llist @ A),X2:A]: (((A12 = (((coindu1121789889_LCons @ A) @ X2) @ Xs3)) & ((A23 = (((coindu1121789889_LCons @ A) @ X2) @ Ys3)) & (((coindu1696667936prefix @ A) @ Xs3) @ Ys3)))))))))))).
% 2.75/1.59  thf(fact_41_lprefix__lnull, axiom, (! [A:$tType,Ys:(coindu1593790203_llist @ A),Xs:(coindu1593790203_llist @ A)]: ((((coindu335574135_lnull @ A) @ Ys) => ((((coindu1696667936prefix @ A) @ Xs) @ Ys) = ((coindu335574135_lnull @ A) @ Xs)))))).
% 2.75/1.59  thf(fact_42_lprefix__trans, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A),Zs:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ Xs) @ Ys) => ((((coindu1696667936prefix @ A) @ Ys) @ Zs) => (((coindu1696667936prefix @ A) @ Xs) @ Zs)))))).
% 2.75/1.59  thf(fact_43_neq__LNil__conv, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: (((Xs != (coindu1598213697e_LNil @ A)) = (? [X2:A,Xs4:(coindu1593790203_llist @ A)]: ((Xs = (((coindu1121789889_LCons @ A) @ X2) @ Xs4)))))))).
% 2.75/1.59  thf(fact_44_ext, axiom, (! [B:$tType,A:$tType,F:(A > B),G:(A > B)]: (((! [X3:A]: (((F @ X3) = (G @ X3)))) => (F = G))))).
% 2.75/1.59  thf(fact_45_lprefix__lnullD, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ Xs) @ Ys) => (((coindu335574135_lnull @ A) @ Ys) => ((coindu335574135_lnull @ A) @ Xs)))))).
% 2.75/1.59  thf(fact_46_not__lnull__conv, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: (((~ (((coindu335574135_lnull @ A) @ Xs))) = (? [X2:A,Xs4:(coindu1593790203_llist @ A)]: ((Xs = (((coindu1121789889_LCons @ A) @ X2) @ Xs4)))))))).
% 2.75/1.59  thf(fact_47_lappend_Oexhaust, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((((coindu335574135_lnull @ A) @ Xs) => (~ (((coindu335574135_lnull @ A) @ Ys)))) => ((~ (((coindu335574135_lnull @ A) @ Xs))) | (~ (((coindu335574135_lnull @ A) @ Ys)))))))).
% 2.75/1.59  thf(fact_48_lfinite_Oinducts, axiom, (! [A:$tType,X:(coindu1593790203_llist @ A),P:((coindu1593790203_llist @ A) > $o)]: ((((coindu1213758845finite @ A) @ X) => ((P @ (coindu1598213697e_LNil @ A)) => ((! [Xs2:(coindu1593790203_llist @ A),X3:A]: ((((coindu1213758845finite @ A) @ Xs2) => ((P @ Xs2) => (P @ (((coindu1121789889_LCons @ A) @ X3) @ Xs2)))))) => (P @ X))))))).
% 2.75/1.59  thf(fact_49_llist_Oleq__trans, axiom, (! [A:$tType,X:(coindu1593790203_llist @ A),Y:(coindu1593790203_llist @ A),Z:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ X) @ Y) => ((((coindu1696667936prefix @ A) @ Y) @ Z) => (((coindu1696667936prefix @ A) @ X) @ Z)))))).
% 2.75/1.59  thf(fact_50_lnull__def, axiom, (! [A:$tType]: (((coindu335574135_lnull @ A) = (^ [Llist2:(coindu1593790203_llist @ A)]: ((Llist2 = (coindu1598213697e_LNil @ A)))))))).
% 2.75/1.59  thf(fact_51_lprefix__antisym, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ Xs) @ Ys) => ((((coindu1696667936prefix @ A) @ Ys) @ Xs) => (Xs = Ys)))))).
% 2.75/1.59  thf(fact_52_lfinite__iterates, axiom, (! [A:$tType,F:(A > A),X:A]: ((~ (((coindu1213758845finite @ A) @ (((coindu1529956631erates @ A) @ F) @ X))))))).
% 2.75/1.59  thf(fact_53_lfinite__llist__of, axiom, (! [A:$tType,Xs:(list @ A)]: (((coindu1213758845finite @ A) @ ((coindu1079202755ist_of @ A) @ Xs))))).
% 2.75/1.59  thf(fact_54_Le__LCons, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A),X:A]: (((((coindu1696667936prefix @ A) @ Xs) @ Ys) => (((coindu1696667936prefix @ A) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)) @ (((coindu1121789889_LCons @ A) @ X) @ Ys)))))).
% 2.75/1.59  thf(fact_55_lprefix_Ocoinduct, axiom, (! [A:$tType,X4:((coindu1593790203_llist @ A) > ((coindu1593790203_llist @ A) > $o)),X:(coindu1593790203_llist @ A),Xa:(coindu1593790203_llist @ A)]: ((((X4 @ X) @ Xa) => ((! [X3:(coindu1593790203_llist @ A),Xa2:(coindu1593790203_llist @ A)]: ((((X4 @ X3) @ Xa2) => ((? [Xs5:(coindu1593790203_llist @ A)]: (((X3 = (coindu1598213697e_LNil @ A)) & (Xa2 = Xs5)))) | (? [Xs5:(coindu1593790203_llist @ A),Ys4:(coindu1593790203_llist @ A),Xb:A]: (((X3 = (((coindu1121789889_LCons @ A) @ Xb) @ Xs5)) & ((Xa2 = (((coindu1121789889_LCons @ A) @ Xb) @ Ys4)) & (((X4 @ Xs5) @ Ys4) | (((coindu1696667936prefix @ A) @ Xs5) @ Ys4)))))))))) => (((coindu1696667936prefix @ A) @ X) @ Xa)))))).
% 2.75/1.59  thf(fact_56_lprefix__lfiniteD, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ Xs) @ Ys) => (((coindu1213758845finite @ A) @ Ys) => ((coindu1213758845finite @ A) @ Xs)))))).
% 2.75/1.59  thf(fact_57_iterates_Odisc__iff, axiom, (! [A:$tType,F:(A > A),X:A]: ((~ (((coindu335574135_lnull @ A) @ (((coindu1529956631erates @ A) @ F) @ X))))))).
% 2.75/1.59  thf(fact_58_llist_Oleq__antisym, axiom, (! [A:$tType,X:(coindu1593790203_llist @ A),Y:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ X) @ Y) => ((((coindu1696667936prefix @ A) @ Y) @ X) => (X = Y)))))).
% 2.75/1.59  thf(fact_59_lnull__imp__lfinite, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: ((((coindu335574135_lnull @ A) @ Xs) => ((coindu1213758845finite @ A) @ Xs))))).
% 2.75/1.59  thf(fact_60_LCons__lprefix__conv, axiom, (! [A:$tType,X:A,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)) @ Ys) = (? [Ys5:(coindu1593790203_llist @ A)]: (((Ys = (((coindu1121789889_LCons @ A) @ X) @ Ys5)) & (((coindu1696667936prefix @ A) @ Xs) @ Ys5)))))))).
% 2.75/1.59  thf(fact_61_lfinite__rev__induct, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),P:((coindu1593790203_llist @ A) > $o)]: ((((coindu1213758845finite @ A) @ Xs) => ((P @ (coindu1598213697e_LNil @ A)) => ((! [X3:A,Xs2:(coindu1593790203_llist @ A)]: ((((coindu1213758845finite @ A) @ Xs2) => ((P @ Xs2) => (P @ (((coindu268472904append @ A) @ Xs2) @ (((coindu1121789889_LCons @ A) @ X3) @ (coindu1598213697e_LNil @ A)))))))) => (P @ Xs))))))).
% 2.75/1.59  thf(fact_62_lprefix__LCons__conv, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Y:A,Ys:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ Xs) @ (((coindu1121789889_LCons @ A) @ Y) @ Ys)) = ((Xs = (coindu1598213697e_LNil @ A)) | (? [Xs4:(coindu1593790203_llist @ A)]: (((Xs = (((coindu1121789889_LCons @ A) @ Y) @ Xs4)) & (((coindu1696667936prefix @ A) @ Xs4) @ Ys))))))))).
% 2.75/1.59  thf(fact_63_lprefix__not__lnullD, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ Xs) @ Ys) => ((~ (((coindu335574135_lnull @ A) @ Xs))) => (~ (((coindu335574135_lnull @ A) @ Ys)))))))).
% 2.75/1.59  thf(fact_64_lprefix__down__linear, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Zs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ Xs) @ Zs) => ((((coindu1696667936prefix @ A) @ Ys) @ Zs) => ((((coindu1696667936prefix @ A) @ Xs) @ Ys) | (((coindu1696667936prefix @ A) @ Ys) @ Xs))))))).
% 2.75/1.59  thf(fact_65_lfinite__LNil, axiom, (! [A:$tType]: (((coindu1213758845finite @ A) @ (coindu1598213697e_LNil @ A))))).
% 2.75/1.59  thf(fact_66_LNil__lprefix, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: ((((coindu1696667936prefix @ A) @ (coindu1598213697e_LNil @ A)) @ Xs)))).
% 2.75/1.59  thf(fact_67_lfinite__LConsI, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),X:A]: ((((coindu1213758845finite @ A) @ Xs) => ((coindu1213758845finite @ A) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)))))).
% 2.75/1.59  thf(fact_68_not__lfinite__lprefix__conv__eq, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((~ (((coindu1213758845finite @ A) @ Xs))) => ((((coindu1696667936prefix @ A) @ Xs) @ Ys) = (Xs = Ys)))))).
% 2.75/1.59  thf(fact_69_lappend_Octr_I1_J, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((coindu335574135_lnull @ A) @ Xs) => (((coindu335574135_lnull @ A) @ Ys) => ((((coindu268472904append @ A) @ Xs) @ Ys) = (coindu1598213697e_LNil @ A))))))).
% 2.75/1.59  thf(fact_70_lappend__snocL1__conv__LCons2, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Y:A,Ys:(coindu1593790203_llist @ A)]: (((((coindu268472904append @ A) @ (((coindu268472904append @ A) @ Xs) @ (((coindu1121789889_LCons @ A) @ Y) @ (coindu1598213697e_LNil @ A)))) @ Ys) = (((coindu268472904append @ A) @ Xs) @ (((coindu1121789889_LCons @ A) @ Y) @ Ys)))))).
% 2.75/1.59  thf(fact_71_lappend__inf, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((~ (((coindu1213758845finite @ A) @ Xs))) => ((((coindu268472904append @ A) @ Xs) @ Ys) = Xs))))).
% 2.75/1.59  thf(fact_72_lappend__lnull2, axiom, (! [A:$tType,Ys:(coindu1593790203_llist @ A),Xs:(coindu1593790203_llist @ A)]: ((((coindu335574135_lnull @ A) @ Ys) => ((((coindu268472904append @ A) @ Xs) @ Ys) = Xs))))).
% 2.75/1.59  thf(fact_73_lappend__lnull1, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((coindu335574135_lnull @ A) @ Xs) => ((((coindu268472904append @ A) @ Xs) @ Ys) = Ys))))).
% 2.75/1.59  thf(fact_74_lappend_Odisc_I1_J, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((coindu335574135_lnull @ A) @ Xs) => (((coindu335574135_lnull @ A) @ Ys) => ((coindu335574135_lnull @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys))))))).
% 2.75/1.59  thf(fact_75_lappend_Odisc_I2_J, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((~ (((coindu335574135_lnull @ A) @ Xs))) | (~ (((coindu335574135_lnull @ A) @ Ys)))) => (~ (((coindu335574135_lnull @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)))))))).
% 2.75/1.59  thf(fact_76_lprefix__lappend__sameI, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A),Zs:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ Xs) @ Ys) => (((coindu1696667936prefix @ A) @ (((coindu268472904append @ A) @ Zs) @ Xs)) @ (((coindu268472904append @ A) @ Zs) @ Ys)))))).
% 2.75/1.59  thf(fact_77_lprefix__conv__lappend, axiom, (! [A:$tType]: (((coindu1696667936prefix @ A) = (^ [Xs3:(coindu1593790203_llist @ A),Ys3:(coindu1593790203_llist @ A)]: ((? [Zs2:(coindu1593790203_llist @ A)]: ((Ys3 = (((coindu268472904append @ A) @ Xs3) @ Zs2)))))))))).
% 2.75/1.59  thf(fact_78_lprefix__lappendD, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A),Zs:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ Xs) @ (((coindu268472904append @ A) @ Ys) @ Zs)) => ((((coindu1696667936prefix @ A) @ Xs) @ Ys) | (((coindu1696667936prefix @ A) @ Ys) @ Xs)))))).
% 2.75/1.59  thf(fact_79_lappend__lprefixE, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A),Zs:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)) @ Zs) => (~ ((! [Zs3:(coindu1593790203_llist @ A)]: ((Zs != (((coindu268472904append @ A) @ Xs) @ Zs3)))))))))).
% 2.75/1.59  thf(fact_80_lprefix__lappend, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((coindu1696667936prefix @ A) @ Xs) @ (((coindu268472904append @ A) @ Xs) @ Ys))))).
% 2.75/1.59  thf(fact_81_lappend__eq__LNil__iff, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((((coindu268472904append @ A) @ Xs) @ Ys) = (coindu1598213697e_LNil @ A)) = ((Xs = (coindu1598213697e_LNil @ A)) & (Ys = (coindu1598213697e_LNil @ A))))))).
% 2.75/1.59  thf(fact_82_LNil__eq__lappend__iff, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((coindu1598213697e_LNil @ A) = (((coindu268472904append @ A) @ Xs) @ Ys)) = ((Xs = (coindu1598213697e_LNil @ A)) & (Ys = (coindu1598213697e_LNil @ A))))))).
% 2.75/1.59  thf(fact_83_lappend__LNil__LNil, axiom, (! [A:$tType]: (((((coindu268472904append @ A) @ (coindu1598213697e_LNil @ A)) @ (coindu1598213697e_LNil @ A)) = (coindu1598213697e_LNil @ A))))).
% 2.75/1.59  thf(fact_84_lfinite__inf__llist, axiom, (! [A:$tType,F:(nat > A)]: ((~ (((coindu1213758845finite @ A) @ ((coindu288502823_llist @ A) @ F))))))).
% 2.75/1.59  thf(fact_85_lnull__inf__llist, axiom, (! [A:$tType,F:(nat > A)]: ((~ (((coindu335574135_lnull @ A) @ ((coindu288502823_llist @ A) @ F))))))).
% 2.75/1.59  thf(fact_86_llast__lappend__LCons, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Y:A,Ys:(coindu1593790203_llist @ A)]: ((((coindu1213758845finite @ A) @ Xs) => (((coindu2000965700_llast @ A) @ (((coindu268472904append @ A) @ Xs) @ (((coindu1121789889_LCons @ A) @ Y) @ Ys))) = ((coindu2000965700_llast @ A) @ (((coindu1121789889_LCons @ A) @ Y) @ Ys))))))).
% 2.75/1.59  thf(fact_87_lstrict__prefix__lappend__conv, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((((coindu574146665prefix @ A) @ Xs) @ (((coindu268472904append @ A) @ Xs) @ Ys)) = (((coindu1213758845finite @ A) @ Xs) & (~ (((coindu335574135_lnull @ A) @ Ys)))))))).
% 2.75/1.59  thf(fact_88_llimit__induct, axiom, (! [A:$tType,P:((coindu1593790203_llist @ A) > $o),Xs:(coindu1593790203_llist @ A)]: (((P @ (coindu1598213697e_LNil @ A)) => ((! [X3:A,Xs2:(coindu1593790203_llist @ A)]: ((((coindu1213758845finite @ A) @ Xs2) => ((P @ Xs2) => (P @ (((coindu1121789889_LCons @ A) @ X3) @ Xs2)))))) => (((! [Ys4:(coindu1593790203_llist @ A)]: (((((coindu574146665prefix @ A) @ Ys4) @ Xs) => (P @ Ys4)))) => (P @ Xs)) => (P @ Xs))))))).
% 2.75/1.59  thf(fact_89_Coinductive__List__Mirabelle__kmikjhschf_Olprefix__nitpick__simps, axiom, (! [A:$tType]: (((coindu1696667936prefix @ A) = (^ [Xs3:(coindu1593790203_llist @ A),Ys3:(coindu1593790203_llist @ A)]: (((((coindu1213758845finite @ A) @ Xs3) => (((coindu1571841457prefix @ A) @ Xs3) @ Ys3)) & ((~ (((coindu1213758845finite @ A) @ Xs3))) => (Xs3 = Ys3))))))))).
% 2.75/1.59  thf(fact_90_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix__nitpick__simps_I3_J, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Y:A,Ys:(coindu1593790203_llist @ A)]: (((((coindu1571841457prefix @ A) @ Xs) @ (((coindu1121789889_LCons @ A) @ Y) @ Ys)) = ((Xs = (coindu1598213697e_LNil @ A)) | (? [Xs4:(coindu1593790203_llist @ A)]: (((Xs = (((coindu1121789889_LCons @ A) @ Y) @ Xs4)) & (((coindu1571841457prefix @ A) @ Xs4) @ Ys))))))))).
% 2.75/1.59  thf(fact_91_lstrict__prefix__code_I3_J, axiom, (! [B:$tType,X:B,Xs:(coindu1593790203_llist @ B)]: ((~ ((((coindu574146665prefix @ B) @ (((coindu1121789889_LCons @ B) @ X) @ Xs)) @ (coindu1598213697e_LNil @ B))))))).
% 2.75/1.59  thf(fact_92_lstrict__prefix__code_I2_J, axiom, (! [B:$tType,Y:B,Ys:(coindu1593790203_llist @ B)]: ((((coindu574146665prefix @ B) @ (coindu1598213697e_LNil @ B)) @ (((coindu1121789889_LCons @ B) @ Y) @ Ys))))).
% 2.75/1.59  thf(fact_93_llast__singleton, axiom, (! [A:$tType,X:A]: ((((coindu2000965700_llast @ A) @ (((coindu1121789889_LCons @ A) @ X) @ (coindu1598213697e_LNil @ A))) = X)))).
% 2.75/1.59  thf(fact_94_llist__of__list__of, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: ((((coindu1213758845finite @ A) @ Xs) => (((coindu1079202755ist_of @ A) @ ((coindu1736001939ist_of @ A) @ Xs)) = Xs))))).
% 2.75/1.59  thf(fact_95_lmember__code_I1_J, axiom, (! [A:$tType,X:A]: ((~ ((((coindu567634248member @ A) @ X) @ (coindu1598213697e_LNil @ A))))))).
% 2.75/1.59  thf(fact_96_lmember__code_I2_J, axiom, (! [A:$tType,X:A,Y:A,Ys:(coindu1593790203_llist @ A)]: (((((coindu567634248member @ A) @ X) @ (((coindu1121789889_LCons @ A) @ Y) @ Ys)) = ((X = Y) | (((coindu567634248member @ A) @ X) @ Ys)))))).
% 2.75/1.59  thf(fact_97_llast__LCons2, axiom, (! [A:$tType,X:A,Y:A,Xs:(coindu1593790203_llist @ A)]: ((((coindu2000965700_llast @ A) @ (((coindu1121789889_LCons @ A) @ X) @ (((coindu1121789889_LCons @ A) @ Y) @ Xs))) = ((coindu2000965700_llast @ A) @ (((coindu1121789889_LCons @ A) @ Y) @ Xs)))))).
% 2.75/1.59  thf(fact_98_list__of__llist__of, axiom, (! [A:$tType,Xs:(list @ A)]: ((((coindu1736001939ist_of @ A) @ ((coindu1079202755ist_of @ A) @ Xs)) = Xs)))).
% 2.75/1.59  thf(fact_99_lstrict__prefix__code_I4_J, axiom, (! [B:$tType,X:B,Xs:(coindu1593790203_llist @ B),Y:B,Ys:(coindu1593790203_llist @ B)]: (((((coindu574146665prefix @ B) @ (((coindu1121789889_LCons @ B) @ X) @ Xs)) @ (((coindu1121789889_LCons @ B) @ Y) @ Ys)) = ((X = Y) & (((coindu574146665prefix @ B) @ Xs) @ Ys)))))).
% 2.75/1.59  thf(fact_100_lstrict__prefix__code_I1_J, axiom, (! [A:$tType]: ((~ ((((coindu574146665prefix @ A) @ (coindu1598213697e_LNil @ A)) @ (coindu1598213697e_LNil @ A))))))).
% 2.75/1.59  thf(fact_101_llist__less__induct, axiom, (! [A:$tType,P:((coindu1593790203_llist @ A) > $o),Xs:(coindu1593790203_llist @ A)]: (((! [Xs2:(coindu1593790203_llist @ A)]: (((! [Ys4:(coindu1593790203_llist @ A)]: (((((coindu574146665prefix @ A) @ Ys4) @ Xs2) => (P @ Ys4)))) => (P @ Xs2)))) => (P @ Xs))))).
% 2.75/1.59  thf(fact_102_lstrict__prefix__def, axiom, (! [A:$tType]: (((coindu574146665prefix @ A) = (^ [Xs3:(coindu1593790203_llist @ A),Ys3:(coindu1593790203_llist @ A)]: (((((coindu1696667936prefix @ A) @ Xs3) @ Ys3) & (Xs3 != Ys3)))))))).
% 2.75/1.59  thf(fact_103_lstrict__prefix__lfinite1, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((((coindu574146665prefix @ A) @ Xs) @ Ys) => ((coindu1213758845finite @ A) @ Xs))))).
% 2.75/1.59  thf(fact_104_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix__def, axiom, (! [A:$tType]: (((coindu1571841457prefix @ A) = (coindu1696667936prefix @ A))))).
% 2.75/1.59  thf(fact_105_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix__nitpick__simps_I1_J, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: (((((coindu1571841457prefix @ A) @ Xs) @ (coindu1598213697e_LNil @ A)) = (Xs = (coindu1598213697e_LNil @ A)))))).
% 2.75/1.59  thf(fact_106_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix__nitpick__simps_I2_J, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: ((((coindu1571841457prefix @ A) @ (coindu1598213697e_LNil @ A)) @ Xs)))).
% 2.75/1.59  thf(fact_107_llast__LCons, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),X:A]: (((((coindu335574135_lnull @ A) @ Xs) => (((coindu2000965700_llast @ A) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)) = X)) & ((~ (((coindu335574135_lnull @ A) @ Xs))) => (((coindu2000965700_llast @ A) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)) = ((coindu2000965700_llast @ A) @ Xs))))))).
% 2.75/1.59  thf(fact_108_llast__lappend, axiom, (! [A:$tType,Ys:(coindu1593790203_llist @ A),Xs:(coindu1593790203_llist @ A)]: (((((coindu335574135_lnull @ A) @ Ys) => (((coindu2000965700_llast @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)) = ((coindu2000965700_llast @ A) @ Xs))) & ((~ (((coindu335574135_lnull @ A) @ Ys))) => ((((coindu1213758845finite @ A) @ Xs) => (((coindu2000965700_llast @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)) = ((coindu2000965700_llast @ A) @ Ys))) & ((~ (((coindu1213758845finite @ A) @ Xs))) => (((coindu2000965700_llast @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)) = (undefined @ A))))))))).
% 2.75/1.59  thf(fact_109_list__of__LCons, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),X:A]: ((((coindu1213758845finite @ A) @ Xs) => (((coindu1736001939ist_of @ A) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)) = (((cons @ A) @ X) @ ((coindu1736001939ist_of @ A) @ Xs))))))).
% 2.75/1.59  thf(fact_110_nth__list__of, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: ((((coindu1213758845finite @ A) @ Xs) => (((nth @ A) @ ((coindu1736001939ist_of @ A) @ Xs)) = ((coindu749330388e_lnth @ A) @ Xs)))))).
% 2.75/1.59  thf(fact_111_llast__llist__of, axiom, (! [A:$tType,Xs:(list @ A)]: ((((coindu2000965700_llast @ A) @ ((coindu1079202755ist_of @ A) @ Xs)) = ((last @ A) @ Xs))))).
% 2.75/1.59  thf(fact_112_list__of__lappend, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((coindu1213758845finite @ A) @ Xs) => (((coindu1213758845finite @ A) @ Ys) => (((coindu1736001939ist_of @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)) = (((append @ A) @ ((coindu1736001939ist_of @ A) @ Xs)) @ ((coindu1736001939ist_of @ A) @ Ys)))))))).
% 2.75/1.59  thf(fact_113_lnth__llist__of, axiom, (! [A:$tType,Xs:(list @ A)]: ((((coindu749330388e_lnth @ A) @ ((coindu1079202755ist_of @ A) @ Xs)) = ((nth @ A) @ Xs))))).
% 2.75/1.59  thf(fact_114_list__of__LCons__conv, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),X:A]: (((((coindu1213758845finite @ A) @ Xs) => (((coindu1736001939ist_of @ A) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)) = (((cons @ A) @ X) @ ((coindu1736001939ist_of @ A) @ Xs)))) & ((~ (((coindu1213758845finite @ A) @ Xs))) => (((coindu1736001939ist_of @ A) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)) = (undefined @ (list @ A)))))))).
% 2.75/1.59  thf(fact_115_lnth__LNil, axiom, (! [A:$tType,N:nat]: (((((coindu749330388e_lnth @ A) @ (coindu1598213697e_LNil @ A)) @ N) = ((undefined @ (nat > A)) @ N))))).
% 2.75/1.59  thf(fact_116_lprefix__llist__ofI, axiom, (! [A:$tType,Ys:(list @ A),Xs:(list @ A)]: (((? [Zs4:(list @ A)]: ((Ys = (((append @ A) @ Xs) @ Zs4)))) => (((coindu1696667936prefix @ A) @ ((coindu1079202755ist_of @ A) @ Xs)) @ ((coindu1079202755ist_of @ A) @ Ys)))))).
% 2.75/1.59  thf(fact_117_lappend__llist__of__llist__of, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: (((((coindu268472904append @ A) @ ((coindu1079202755ist_of @ A) @ Xs)) @ ((coindu1079202755ist_of @ A) @ Ys)) = ((coindu1079202755ist_of @ A) @ (((append @ A) @ Xs) @ Ys)))))).
% 2.75/1.59  thf(fact_118_llist__of_Osimps_I2_J, axiom, (! [A:$tType,X:A,Xs:(list @ A)]: ((((coindu1079202755ist_of @ A) @ (((cons @ A) @ X) @ Xs)) = (((coindu1121789889_LCons @ A) @ X) @ ((coindu1079202755ist_of @ A) @ Xs)))))).
% 2.75/1.59  thf(fact_119_llist__of__eq__LCons__conv, axiom, (! [A:$tType,Xs:(list @ A),Y:A,Ys:(coindu1593790203_llist @ A)]: (((((coindu1079202755ist_of @ A) @ Xs) = (((coindu1121789889_LCons @ A) @ Y) @ Ys)) = (? [Xs4:(list @ A)]: (((Xs = (((cons @ A) @ Y) @ Xs4)) & (Ys = ((coindu1079202755ist_of @ A) @ Xs4))))))))).
% 2.75/1.59  thf(fact_120_llast__LNil, axiom, (! [A:$tType]: ((((coindu2000965700_llast @ A) @ (coindu1598213697e_LNil @ A)) = (undefined @ A))))).
% 2.75/1.59  thf(fact_121_llast__linfinite, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: (((~ (((coindu1213758845finite @ A) @ Xs))) => (((coindu2000965700_llast @ A) @ Xs) = (undefined @ A)))))).
% 2.75/1.59  thf(fact_122_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)))))).
% 2.75/1.59  thf(fact_123_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))))).
% 2.75/1.59  thf(fact_124_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))))).
% 2.75/1.59  thf(fact_125_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)))))).
% 2.75/1.59  thf(fact_126_not__Cons__self2, axiom, (! [A:$tType,X:A,Xs:(list @ A)]: (((((cons @ A) @ X) @ Xs) != Xs)))).
% 2.75/1.59  thf(fact_127_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)) = (? [Us:(list @ A)]: ((((Xs = (((append @ A) @ Zs) @ Us)) & ((((append @ A) @ Us) @ Ys) = Ts)) | (((((append @ A) @ Xs) @ Us) = Zs) & (Ys = (((append @ A) @ Us) @ Ts)))))))))).
% 2.75/1.59  thf(fact_128_append__eq__appendI, axiom, (! [A:$tType,Xs:(list @ A),Xs1:(list @ A),Zs:(list @ A),Ys:(list @ A),Us2:(list @ A)]: ((((((append @ A) @ Xs) @ Xs1) = Zs) => ((Ys = (((append @ A) @ Xs1) @ Us2)) => ((((append @ A) @ Xs) @ Ys) = (((append @ A) @ Zs) @ Us2))))))).
% 2.75/1.59  thf(fact_129_append__Cons, axiom, (! [A:$tType,X:A,Xs:(list @ A),Ys:(list @ A)]: (((((append @ A) @ (((cons @ A) @ X) @ Xs)) @ Ys) = (((cons @ A) @ X) @ (((append @ A) @ Xs) @ Ys)))))).
% 2.75/1.59  thf(fact_130_Cons__eq__appendI, axiom, (! [A:$tType,X:A,Xs1:(list @ A),Ys:(list @ A),Xs:(list @ A),Zs:(list @ A)]: ((((((cons @ A) @ X) @ Xs1) = Ys) => ((Xs = (((append @ A) @ Xs1) @ Zs)) => ((((cons @ A) @ X) @ Xs) = (((append @ A) @ Ys) @ Zs))))))).
% 2.75/1.59  thf(fact_131_bind__simps_I2_J, axiom, (! [A:$tType,B:$tType,X:B,Xs:(list @ B),F:(B > (list @ A))]: ((((((bind @ B) @ A) @ (((cons @ B) @ X) @ Xs)) @ F) = (((append @ A) @ (F @ X)) @ ((((bind @ B) @ A) @ Xs) @ F)))))).
% 2.75/1.59  thf(fact_132_lappend__llist__of__LCons, axiom, (! [A:$tType,Xs:(list @ A),Y:A,Ys:(coindu1593790203_llist @ A)]: (((((coindu268472904append @ A) @ ((coindu1079202755ist_of @ A) @ Xs)) @ (((coindu1121789889_LCons @ A) @ Y) @ Ys)) = (((coindu268472904append @ A) @ ((coindu1079202755ist_of @ A) @ (((append @ A) @ Xs) @ (((cons @ A) @ Y) @ (nil @ A))))) @ Ys))))).
% 2.75/1.59  thf(fact_133_list__of__aux__code_I2_J, axiom, (! [A:$tType,Xs:(list @ A),Y:A,Ys:(coindu1593790203_llist @ A)]: (((((coindu1542816657of_aux @ A) @ Xs) @ (((coindu1121789889_LCons @ A) @ Y) @ Ys)) = (((coindu1542816657of_aux @ A) @ (((cons @ A) @ Y) @ Xs)) @ Ys))))).
% 2.75/1.59  thf(fact_134_maps__simps_I1_J, axiom, (! [A:$tType,B:$tType,F:(B > (list @ A)),X:B,Xs:(list @ B)]: ((((((maps @ B) @ A) @ F) @ (((cons @ B) @ X) @ Xs)) = (((append @ A) @ (F @ X)) @ ((((maps @ B) @ A) @ F) @ Xs)))))).
% 2.75/1.59  thf(fact_135_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))))))).
% 2.75/1.59  thf(fact_136_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))))))).
% 2.75/1.59  thf(fact_137_self__append__conv2, axiom, (! [A:$tType,Ys:(list @ A),Xs:(list @ A)]: (((Ys = (((append @ A) @ Xs) @ Ys)) = (Xs = (nil @ A)))))).
% 2.75/1.59  thf(fact_138_append__self__conv2, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: ((((((append @ A) @ Xs) @ Ys) = Ys) = (Xs = (nil @ A)))))).
% 2.75/1.59  thf(fact_139_self__append__conv, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: (((Xs = (((append @ A) @ Xs) @ Ys)) = (Ys = (nil @ A)))))).
% 2.75/1.59  thf(fact_140_append__self__conv, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: ((((((append @ A) @ Xs) @ Ys) = Xs) = (Ys = (nil @ A)))))).
% 2.75/1.59  thf(fact_141_append__Nil2, axiom, (! [A:$tType,Xs:(list @ A)]: (((((append @ A) @ Xs) @ (nil @ A)) = Xs)))).
% 2.75/1.59  thf(fact_142_bind__simps_I1_J, axiom, (! [B:$tType,A:$tType,F:(B > (list @ A))]: ((((((bind @ B) @ A) @ (nil @ B)) @ F) = (nil @ A))))).
% 2.75/1.59  thf(fact_143_append1__eq__conv, axiom, (! [A:$tType,Xs:(list @ A),X:A,Ys:(list @ A),Y:A]: ((((((append @ A) @ Xs) @ (((cons @ A) @ X) @ (nil @ A))) = (((append @ A) @ Ys) @ (((cons @ A) @ Y) @ (nil @ A)))) = ((Xs = Ys) & (X = Y)))))).
% 2.75/1.59  thf(fact_144_lnull__llist__of, axiom, (! [A:$tType,Xs:(list @ A)]: ((((coindu335574135_lnull @ A) @ ((coindu1079202755ist_of @ A) @ Xs)) = (Xs = (nil @ A)))))).
% 2.75/1.59  thf(fact_145_last__appendL, axiom, (! [A:$tType,Ys:(list @ A),Xs:(list @ A)]: (((Ys = (nil @ A)) => (((last @ A) @ (((append @ A) @ Xs) @ Ys)) = ((last @ A) @ Xs)))))).
% 2.75/1.59  thf(fact_146_last__appendR, axiom, (! [A:$tType,Ys:(list @ A),Xs:(list @ A)]: (((Ys != (nil @ A)) => (((last @ A) @ (((append @ A) @ Xs) @ Ys)) = ((last @ A) @ Ys)))))).
% 2.75/1.59  thf(fact_147_list__of__LNil, axiom, (! [A:$tType]: ((((coindu1736001939ist_of @ A) @ (coindu1598213697e_LNil @ A)) = (nil @ A))))).
% 2.75/1.59  thf(fact_148_last__snoc, axiom, (! [A:$tType,Xs:(list @ A),X:A]: ((((last @ A) @ (((append @ A) @ Xs) @ (((cons @ A) @ X) @ (nil @ A)))) = X)))).
% 2.75/1.59  thf(fact_149_list_Odistinct_I1_J, axiom, (! [A:$tType,X21:A,X22:(list @ A)]: (((nil @ A) != (((cons @ A) @ X21) @ X22))))).
% 2.75/1.59  thf(fact_150_list_OdiscI, axiom, (! [A:$tType,List:(list @ A),X21:A,X22:(list @ A)]: (((List = (((cons @ A) @ X21) @ X22)) => (List != (nil @ A)))))).
% 2.75/1.59  thf(fact_151_list_Oexhaust, axiom, (! [A:$tType,Y:(list @ A)]: (((Y != (nil @ A)) => (~ ((! [X212:A,X222:(list @ A)]: ((Y != (((cons @ A) @ X212) @ X222)))))))))).
% 2.75/1.59  thf(fact_152_list_Oinducts, axiom, (! [A:$tType,P:((list @ A) > $o),List:(list @ A)]: (((P @ (nil @ A)) => ((! [X1:A,X23:(list @ A)]: (((P @ X23) => (P @ (((cons @ A) @ X1) @ X23))))) => (P @ List)))))).
% 2.75/1.59  thf(fact_153_neq__Nil__conv, axiom, (! [A:$tType,Xs:(list @ A)]: (((Xs != (nil @ A)) = (? [Y2:A,Ys3:(list @ A)]: ((Xs = (((cons @ A) @ Y2) @ Ys3)))))))).
% 2.75/1.59  thf(fact_154_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)) => ((! [X3:A,Xs2:(list @ A)]: (((P @ (((cons @ A) @ X3) @ Xs2)) @ (nil @ B)))) => ((! [Y3:B,Ys2:(list @ B)]: (((P @ (nil @ A)) @ (((cons @ B) @ Y3) @ Ys2)))) => ((! [X3:A,Xs2:(list @ A),Y3:B,Ys2:(list @ B)]: ((((P @ Xs2) @ Ys2) => ((P @ (((cons @ A) @ X3) @ Xs2)) @ (((cons @ B) @ Y3) @ Ys2))))) => ((P @ Xs) @ Ys)))))))).
% 2.75/1.59  thf(fact_155_splice_Oinduct, axiom, (! [A:$tType,P:((list @ A) > ((list @ A) > $o)),A0:(list @ A),A1:(list @ A)]: (((! [X1:(list @ A)]: (((P @ (nil @ A)) @ X1))) => ((! [V:A,Va:(list @ A)]: (((P @ (((cons @ A) @ V) @ Va)) @ (nil @ A)))) => ((! [X3:A,Xs2:(list @ A),Y3:A,Ys2:(list @ A)]: ((((P @ Xs2) @ Ys2) => ((P @ (((cons @ A) @ X3) @ Xs2)) @ (((cons @ A) @ Y3) @ Ys2))))) => ((P @ A0) @ A1))))))).
% 2.75/1.59  thf(fact_156_eq__Nil__appendI, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: (((Xs = Ys) => (Xs = (((append @ A) @ (nil @ A)) @ Ys)))))).
% 2.75/1.59  thf(fact_157_transpose_Ocases, axiom, (! [A:$tType,X:(list @ (list @ A))]: (((X != (nil @ (list @ A))) => ((! [Xss:(list @ (list @ A))]: ((X != (((cons @ (list @ A)) @ (nil @ A)) @ Xss)))) => (~ ((! [X3:A,Xs2:(list @ A),Xss:(list @ (list @ A))]: ((X != (((cons @ (list @ A)) @ (((cons @ A) @ X3) @ Xs2)) @ Xss))))))))))).
% 2.75/1.59  thf(fact_158_append__Nil, axiom, (! [A:$tType,Ys:(list @ A)]: (((((append @ A) @ (nil @ A)) @ Ys) = Ys)))).
% 2.75/1.59  thf(fact_159_remdups__adj_Ocases, axiom, (! [A:$tType,X:(list @ A)]: (((X != (nil @ A)) => ((! [X3:A]: ((X != (((cons @ A) @ X3) @ (nil @ A))))) => (~ ((! [X3:A,Y3:A,Xs2:(list @ A)]: ((X != (((cons @ A) @ X3) @ (((cons @ A) @ Y3) @ Xs2)))))))))))).
% 2.75/1.59  thf(fact_160_remdups__adj_Oinduct, axiom, (! [A:$tType,P:((list @ A) > $o),A0:(list @ A)]: (((P @ (nil @ A)) => ((! [X3:A]: ((P @ (((cons @ A) @ X3) @ (nil @ A))))) => ((! [X3:A,Y3:A,Xs2:(list @ A)]: ((((X3 = Y3) => (P @ (((cons @ A) @ X3) @ Xs2))) => (((X3 != Y3) => (P @ (((cons @ A) @ Y3) @ Xs2))) => (P @ (((cons @ A) @ X3) @ (((cons @ A) @ Y3) @ Xs2))))))) => (P @ A0))))))).
% 2.75/1.59  thf(fact_161_list__nonempty__induct, axiom, (! [A:$tType,Xs:(list @ A),P:((list @ A) > $o)]: (((Xs != (nil @ A)) => ((! [X3:A]: ((P @ (((cons @ A) @ X3) @ (nil @ A))))) => ((! [X3:A,Xs2:(list @ A)]: (((Xs2 != (nil @ A)) => ((P @ Xs2) => (P @ (((cons @ A) @ X3) @ Xs2)))))) => (P @ Xs))))))).
% 2.75/1.59  thf(fact_162_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),X1:(list @ B)]: ((((P @ F2) @ (nil @ A)) @ X1))) => ((! [F2:(A > B),A4:A,As:(list @ A),Bs:(list @ B)]: (((((P @ F2) @ As) @ (((cons @ B) @ (F2 @ A4)) @ Bs)) => (((P @ F2) @ (((cons @ A) @ A4) @ As)) @ Bs)))) => (((P @ A0) @ A1) @ A22)))))).
% 2.75/1.59  thf(fact_163_maps__simps_I2_J, axiom, (! [B:$tType,A:$tType,F:(B > (list @ A))]: ((((((maps @ B) @ A) @ F) @ (nil @ B)) = (nil @ A))))).
% 2.75/1.59  thf(fact_164_list__of__code, axiom, (! [A:$tType]: (((coindu1736001939ist_of @ A) = ((coindu1542816657of_aux @ A) @ (nil @ A)))))).
% 2.75/1.59  thf(fact_165_rev__induct, axiom, (! [A:$tType,P:((list @ A) > $o),Xs:(list @ A)]: (((P @ (nil @ A)) => ((! [X3:A,Xs2:(list @ A)]: (((P @ Xs2) => (P @ (((append @ A) @ Xs2) @ (((cons @ A) @ X3) @ (nil @ A))))))) => (P @ Xs)))))).
% 2.75/1.59  thf(fact_166_rev__exhaust, axiom, (! [A:$tType,Xs:(list @ A)]: (((Xs != (nil @ A)) => (~ ((! [Ys2:(list @ A),Y3:A]: ((Xs != (((append @ A) @ Ys2) @ (((cons @ A) @ Y3) @ (nil @ A)))))))))))).
% 2.75/1.59  thf(fact_167_Cons__eq__append__conv, axiom, (! [A:$tType,X:A,Xs:(list @ A),Ys:(list @ A),Zs:(list @ A)]: ((((((cons @ A) @ X) @ Xs) = (((append @ A) @ Ys) @ Zs)) = (((Ys = (nil @ A)) & ((((cons @ A) @ X) @ Xs) = Zs)) | (? [Ys5:(list @ A)]: ((((((cons @ A) @ X) @ Ys5) = Ys) & (Xs = (((append @ A) @ Ys5) @ Zs)))))))))).
% 2.75/1.59  thf(fact_168_append__eq__Cons__conv, axiom, (! [A:$tType,Ys:(list @ A),Zs:(list @ A),X:A,Xs:(list @ A)]: ((((((append @ A) @ Ys) @ Zs) = (((cons @ A) @ X) @ Xs)) = (((Ys = (nil @ A)) & (Zs = (((cons @ A) @ X) @ Xs))) | (? [Ys5:(list @ A)]: (((Ys = (((cons @ A) @ X) @ Ys5)) & ((((append @ A) @ Ys5) @ Zs) = Xs))))))))).
% 2.75/1.59  thf(fact_169_rev__nonempty__induct, axiom, (! [A:$tType,Xs:(list @ A),P:((list @ A) > $o)]: (((Xs != (nil @ A)) => ((! [X3:A]: ((P @ (((cons @ A) @ X3) @ (nil @ A))))) => ((! [X3:A,Xs2:(list @ A)]: (((Xs2 != (nil @ A)) => ((P @ Xs2) => (P @ (((append @ A) @ Xs2) @ (((cons @ A) @ X3) @ (nil @ A)))))))) => (P @ Xs))))))).
% 2.75/1.59  thf(fact_170_last_Osimps, axiom, (! [A:$tType,Xs:(list @ A),X:A]: ((((Xs = (nil @ A)) => (((last @ A) @ (((cons @ A) @ X) @ Xs)) = X)) & ((Xs != (nil @ A)) => (((last @ A) @ (((cons @ A) @ X) @ Xs)) = ((last @ A) @ Xs))))))).
% 2.75/1.59  thf(fact_171_last__ConsL, axiom, (! [A:$tType,Xs:(list @ A),X:A]: (((Xs = (nil @ A)) => (((last @ A) @ (((cons @ A) @ X) @ Xs)) = X))))).
% 2.75/1.59  thf(fact_172_last__ConsR, axiom, (! [A:$tType,Xs:(list @ A),X:A]: (((Xs != (nil @ A)) => (((last @ A) @ (((cons @ A) @ X) @ Xs)) = ((last @ A) @ Xs)))))).
% 2.75/1.59  thf(fact_173_llist__of_Osimps_I1_J, axiom, (! [A:$tType]: ((((coindu1079202755ist_of @ A) @ (nil @ A)) = (coindu1598213697e_LNil @ A))))).
% 2.75/1.59  thf(fact_174_llist__of__eq__LNil__conv, axiom, (! [A:$tType,Xs:(list @ A)]: (((((coindu1079202755ist_of @ A) @ Xs) = (coindu1598213697e_LNil @ A)) = (Xs = (nil @ A)))))).
% 2.75/1.59  thf(fact_175_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))))))).
% 2.75/1.59  thf(fact_176_longest__common__suffix, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: ((? [Ss:(list @ A),Xs6:(list @ A),Ys6:(list @ A)]: (((Xs = (((append @ A) @ Xs6) @ Ss)) & ((Ys = (((append @ A) @ Ys6) @ Ss)) & ((Xs6 = (nil @ A)) | ((Ys6 = (nil @ A)) | (((last @ A) @ Xs6) != ((last @ A) @ Ys6))))))))))).
% 2.75/1.59  thf(fact_177_longest__common__prefix_Oinduct, axiom, (! [A:$tType,P:((list @ A) > ((list @ A) > $o)),A0:(list @ A),A1:(list @ A)]: (((! [X3:A,Xs2:(list @ A),Y3:A,Ys2:(list @ A)]: ((((X3 = Y3) => ((P @ Xs2) @ Ys2)) => ((P @ (((cons @ A) @ X3) @ Xs2)) @ (((cons @ A) @ Y3) @ Ys2))))) => ((! [X1:(list @ A)]: (((P @ (nil @ A)) @ X1))) => ((! [Uu:(list @ A)]: (((P @ Uu) @ (nil @ A)))) => ((P @ A0) @ A1))))))).
% 2.75/1.59  thf(fact_178_prefixes_Oinduct, axiom, (! [A:$tType,P:((list @ A) > $o),A0:(list @ A)]: (((P @ (nil @ A)) => ((! [X3:A,Xs2:(list @ A)]: (((P @ Xs2) => (P @ (((cons @ A) @ X3) @ Xs2))))) => (P @ A0)))))).
% 2.75/1.59  thf(fact_179_prefixes_Ocases, axiom, (! [A:$tType,X:(list @ A)]: (((X != (nil @ A)) => (~ ((! [X3:A,Xs2:(list @ A)]: ((X != (((cons @ A) @ X3) @ Xs2)))))))))).
% 2.75/1.59  thf(fact_180_list__of__aux__def, axiom, (! [A:$tType]: (((coindu1542816657of_aux @ A) = (^ [Xs3:(list @ A),Ys3:(coindu1593790203_llist @ A)]: (((((if @ (list @ A)) @ ((coindu1213758845finite @ A) @ Ys3)) @ (((append @ A) @ ((rev @ A) @ Xs3)) @ ((coindu1736001939ist_of @ A) @ Ys3))) @ (undefined @ (list @ A))))))))).
% 2.75/1.59  thf(fact_181_rev__rev__ident, axiom, (! [A:$tType,Xs:(list @ A)]: ((((rev @ A) @ ((rev @ A) @ Xs)) = Xs)))).
% 2.75/1.59  thf(fact_182_rev__is__rev__conv, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: (((((rev @ A) @ Xs) = ((rev @ A) @ Ys)) = (Xs = Ys))))).
% 2.75/1.59  thf(fact_183_rev__is__Nil__conv, axiom, (! [A:$tType,Xs:(list @ A)]: (((((rev @ A) @ Xs) = (nil @ A)) = (Xs = (nil @ A)))))).
% 2.75/1.59  thf(fact_184_Nil__is__rev__conv, axiom, (! [A:$tType,Xs:(list @ A)]: ((((nil @ A) = ((rev @ A) @ Xs)) = (Xs = (nil @ A)))))).
% 2.75/1.59  thf(fact_185_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)))))).
% 2.75/1.59  thf(fact_186_singleton__rev__conv, axiom, (! [A:$tType,X:A,Xs:(list @ A)]: ((((((cons @ A) @ X) @ (nil @ A)) = ((rev @ A) @ Xs)) = (Xs = (((cons @ A) @ X) @ (nil @ A))))))).
% 2.75/1.59  thf(fact_187_rev__singleton__conv, axiom, (! [A:$tType,Xs:(list @ A),X:A]: (((((rev @ A) @ Xs) = (((cons @ A) @ X) @ (nil @ A))) = (Xs = (((cons @ A) @ X) @ (nil @ A))))))).
% 2.75/1.59  thf(fact_188_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)))))))).
% 2.75/1.59  thf(fact_189_rev_Osimps_I1_J, axiom, (! [A:$tType]: ((((rev @ A) @ (nil @ A)) = (nil @ A))))).
% 2.75/1.59  thf(fact_190_rev__swap, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: (((((rev @ A) @ Xs) = Ys) = (Xs = ((rev @ A) @ Ys)))))).
% 2.75/1.59  thf(fact_191_list__of__aux__code_I1_J, axiom, (! [A:$tType,Xs:(list @ A)]: (((((coindu1542816657of_aux @ A) @ Xs) @ (coindu1598213697e_LNil @ A)) = ((rev @ A) @ Xs))))).
% 2.75/1.59  thf(fact_192_rev_Osimps_I2_J, axiom, (! [A:$tType,X:A,Xs:(list @ A)]: ((((rev @ A) @ (((cons @ A) @ X) @ Xs)) = (((append @ A) @ ((rev @ A) @ Xs)) @ (((cons @ A) @ X) @ (nil @ A))))))).
% 2.75/1.59  thf(fact_193_prefixes__snoc, axiom, (! [A:$tType,Xs:(list @ A),X:A]: ((((prefixes @ A) @ (((append @ A) @ Xs) @ (((cons @ A) @ X) @ (nil @ A)))) = (((append @ (list @ A)) @ ((prefixes @ A) @ Xs)) @ (((cons @ (list @ A)) @ (((append @ A) @ Xs) @ (((cons @ A) @ X) @ (nil @ A)))) @ (nil @ (list @ A)))))))).
% 2.75/1.59  thf(fact_194_prefixes__eq__Snoc, axiom, (! [A:$tType,Ys:(list @ A),Xs:(list @ (list @ A)),X:(list @ A)]: (((((prefixes @ A) @ Ys) = (((append @ (list @ A)) @ Xs) @ (((cons @ (list @ A)) @ X) @ (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)))))) & (X = Ys)))))).
% 2.75/1.59  thf(fact_195_sublists_Osimps_I1_J, axiom, (! [A:$tType]: ((((sublists @ A) @ (nil @ A)) = (((cons @ (list @ A)) @ (nil @ A)) @ (nil @ (list @ A))))))).
% 2.75/1.59  thf(fact_196_prefixes_Osimps_I1_J, axiom, (! [A:$tType]: ((((prefixes @ A) @ (nil @ A)) = (((cons @ (list @ A)) @ (nil @ A)) @ (nil @ (list @ A))))))).
% 2.75/1.59  thf(fact_197_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))))).
% 2.75/1.59  thf(fact_198_product__lists_Osimps_I1_J, axiom, (! [A:$tType]: ((((product_lists @ A) @ (nil @ (list @ A))) = (((cons @ (list @ A)) @ (nil @ A)) @ (nil @ (list @ A))))))).
% 2.75/1.59  thf(fact_199_butlast__snoc, axiom, (! [A:$tType,Xs:(list @ A),X:A]: ((((butlast @ A) @ (((append @ A) @ Xs) @ (((cons @ A) @ X) @ (nil @ A)))) = Xs)))).
% 2.75/1.59  thf(fact_200_butlast_Osimps_I2_J, axiom, (! [A:$tType,Xs:(list @ A),X:A]: ((((Xs = (nil @ A)) => (((butlast @ A) @ (((cons @ A) @ X) @ Xs)) = (nil @ A))) & ((Xs != (nil @ A)) => (((butlast @ A) @ (((cons @ A) @ X) @ Xs)) = (((cons @ A) @ X) @ ((butlast @ A) @ Xs)))))))).
% 2.75/1.59  thf(fact_201_butlast_Osimps_I1_J, axiom, (! [A:$tType]: ((((butlast @ A) @ (nil @ A)) = (nil @ A))))).
% 2.75/1.59  thf(fact_202_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)))))))).
% 2.75/1.59  thf(fact_203_snoc__eq__iff__butlast, axiom, (! [A:$tType,Xs:(list @ A),X:A,Ys:(list @ A)]: ((((((append @ A) @ Xs) @ (((cons @ A) @ X) @ (nil @ A))) = Ys) = ((Ys != (nil @ A)) & ((((butlast @ A) @ Ys) = Xs) & (((last @ A) @ Ys) = X))))))).
% 2.75/1.59  thf(fact_204_prefixes_Oelims, axiom, (! [A:$tType,X:(list @ A),Y:(list @ (list @ A))]: (((((prefixes @ A) @ X) = Y) => (((X = (nil @ A)) => (Y != (((cons @ (list @ A)) @ (nil @ A)) @ (nil @ (list @ A))))) => (~ ((! [X3:A,Xs2:(list @ A)]: (((X = (((cons @ A) @ X3) @ Xs2)) => (Y != (((cons @ (list @ A)) @ (nil @ A)) @ ((((map @ (list @ A)) @ (list @ A)) @ ((cons @ A) @ X3)) @ ((prefixes @ A) @ Xs2)))))))))))))).
% 2.75/1.59  thf(fact_205_insert__Nil, axiom, (! [A:$tType,X:A]: (((((insert @ A) @ X) @ (nil @ A)) = (((cons @ A) @ X) @ (nil @ A)))))).
% 2.75/1.59  thf(fact_206_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)))))).
% 2.75/1.59  thf(fact_207_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)))))).
% 2.75/1.59  thf(fact_208_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)))))).
% 2.75/1.59  thf(fact_209_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)))))).
% 2.75/1.59  thf(fact_210_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)))))).
% 2.75/1.59  thf(fact_211_list_Osimps_I8_J, axiom, (! [A:$tType,B:$tType,F:(A > B)]: ((((((map @ A) @ B) @ F) @ (nil @ A)) = (nil @ B))))).
% 2.75/1.59  thf(fact_212_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)))))).
% 2.75/1.59  thf(fact_213_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))))))))).
% 2.75/1.59  thf(fact_214_Cons__eq__map__conv, axiom, (! [A:$tType,B:$tType,X:A,Xs:(list @ A),F:(B > A),Ys:(list @ B)]: ((((((cons @ A) @ X) @ Xs) = ((((map @ B) @ A) @ F) @ Ys)) = (? [Z2:B,Zs2:(list @ B)]: (((Ys = (((cons @ B) @ Z2) @ Zs2)) & ((X = (F @ Z2)) & (Xs = ((((map @ B) @ A) @ F) @ Zs2)))))))))).
% 2.75/1.59  thf(fact_215_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,Zs5:(list @ B)]: (((Xs = (((cons @ B) @ Z3) @ Zs5)) & (((F @ Z3) = Y) & (((((map @ B) @ A) @ F) @ Zs5) = Ys))))))))).
% 2.75/1.59  thf(fact_216_Cons__eq__map__D, axiom, (! [A:$tType,B:$tType,X:A,Xs:(list @ A),F:(B > A),Ys:(list @ B)]: ((((((cons @ A) @ X) @ Xs) = ((((map @ B) @ A) @ F) @ Ys)) => (? [Z3:B,Zs5:(list @ B)]: (((Ys = (((cons @ B) @ Z3) @ Zs5)) & ((X = (F @ Z3)) & (Xs = ((((map @ B) @ A) @ F) @ Zs5)))))))))).
% 2.75/1.59  thf(fact_217_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)))))).
% 2.75/1.59  thf(fact_218_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))))))).
% 2.75/1.59  thf(fact_219_prefixes_Osimps_I2_J, axiom, (! [A:$tType,X:A,Xs:(list @ A)]: ((((prefixes @ A) @ (((cons @ A) @ X) @ Xs)) = (((cons @ (list @ A)) @ (nil @ A)) @ ((((map @ (list @ A)) @ (list @ A)) @ ((cons @ A) @ X)) @ ((prefixes @ A) @ Xs))))))).
% 2.75/1.59  thf(fact_220_map__tailrec__rev, axiom, (! [A:$tType,B:$tType]: ((((map_tailrec_rev @ B) @ A) = (^ [F3:(B > A),As2:(list @ B)]: (((append @ A) @ ((rev @ A) @ ((((map @ B) @ A) @ F3) @ As2))))))))).
% 2.75/1.59  thf(fact_221_prefixes_Opelims, axiom, (! [A:$tType,X:(list @ A),Y:(list @ (list @ A))]: (((((prefixes @ A) @ X) = Y) => ((((accp @ (list @ A)) @ (prefixes_rel @ A)) @ X) => (((X = (nil @ A)) => ((Y = (((cons @ (list @ A)) @ (nil @ A)) @ (nil @ (list @ A)))) => (~ ((((accp @ (list @ A)) @ (prefixes_rel @ A)) @ (nil @ A)))))) => (~ ((! [X3:A,Xs2:(list @ A)]: (((X = (((cons @ A) @ X3) @ Xs2)) => ((Y = (((cons @ (list @ A)) @ (nil @ A)) @ ((((map @ (list @ A)) @ (list @ A)) @ ((cons @ A) @ X3)) @ ((prefixes @ A) @ Xs2)))) => (~ ((((accp @ (list @ A)) @ (prefixes_rel @ A)) @ (((cons @ A) @ X3) @ Xs2)))))))))))))))).
% 2.75/1.59  thf(fact_222_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)))).
% 2.75/1.59  thf(fact_223_map__tailrec__rev_Osimps_I2_J, axiom, (! [A:$tType,B:$tType,F:(A > B),A2:A,As3:(list @ A),Bs2:(list @ B)]: (((((((map_tailrec_rev @ A) @ B) @ F) @ (((cons @ A) @ A2) @ As3)) @ Bs2) = (((((map_tailrec_rev @ A) @ B) @ F) @ As3) @ (((cons @ B) @ (F @ A2)) @ Bs2)))))).
% 2.75/1.59  thf(fact_224_map__tailrec__rev_Oelims, axiom, (! [A:$tType,B:$tType,X:(A > B),Xa:(list @ A),Xb2:(list @ B),Y:(list @ B)]: ((((((((map_tailrec_rev @ A) @ B) @ X) @ Xa) @ Xb2) = Y) => (((Xa = (nil @ A)) => (Y != Xb2)) => (~ ((! [A4:A,As:(list @ A)]: (((Xa = (((cons @ A) @ A4) @ As)) => (Y != (((((map_tailrec_rev @ A) @ B) @ X) @ As) @ (((cons @ B) @ (X @ A4)) @ Xb2))))))))))))).
% 2.75/1.59  thf(fact_225_map__tailrec__def, axiom, (! [B:$tType,A:$tType]: ((((map_tailrec @ A) @ B) = (^ [F3:(A > B),As2:(list @ A)]: (((rev @ B) @ (((((map_tailrec_rev @ A) @ B) @ F3) @ As2) @ (nil @ B))))))))).
% 2.75/1.59  thf(fact_226_rotate1_Osimps_I2_J, axiom, (! [A:$tType,X:A,Xs:(list @ A)]: ((((rotate1 @ A) @ (((cons @ A) @ X) @ Xs)) = (((append @ A) @ Xs) @ (((cons @ A) @ X) @ (nil @ A))))))).
% 2.75/1.59  thf(fact_227_rotate1__is__Nil__conv, axiom, (! [A:$tType,Xs:(list @ A)]: (((((rotate1 @ A) @ Xs) = (nil @ A)) = (Xs = (nil @ A)))))).
% 2.75/1.59  thf(fact_228_rotate1_Osimps_I1_J, axiom, (! [A:$tType]: ((((rotate1 @ A) @ (nil @ A)) = (nil @ A))))).
% 2.75/1.59  thf(fact_229_map__eq__map__tailrec, axiom, (! [B:$tType,A:$tType]: ((((map @ A) @ B) = ((map_tailrec @ A) @ B))))).
% 2.75/1.59  thf(fact_230_list__ex1__simps_I1_J, axiom, (! [A:$tType,P:(A > $o)]: ((~ ((((list_ex1 @ A) @ P) @ (nil @ A))))))).
% 2.75/1.59  thf(fact_231_strict__suffix__def, axiom, (! [A:$tType]: (((strict_suffix @ A) = (^ [Xs3:(list @ A),Ys3:(list @ A)]: ((? [Us:(list @ A)]: (((Ys3 = (((append @ A) @ Us) @ Xs3)) & (Us != (nil @ A))))))))))).
% 2.75/1.59  thf(fact_232_ord_Olexordp__eq__simps_I3_J, axiom, (! [A:$tType,Less:(A > (A > $o)),X:A,Xs:(list @ A)]: ((~ (((((lexordp_eq @ A) @ Less) @ (((cons @ A) @ X) @ Xs)) @ (nil @ A))))))).
% 2.75/1.59  thf(fact_233_nth__append__length, axiom, (! [A:$tType,Xs:(list @ A),X:A,Ys:(list @ A)]: (((((nth @ A) @ (((append @ A) @ Xs) @ (((cons @ A) @ X) @ Ys))) @ ((size_size @ (list @ A)) @ Xs)) = X)))).
% 2.75/1.59  thf(fact_234_length__map, axiom, (! [A:$tType,B:$tType,F:(B > A),Xs:(list @ B)]: ((((size_size @ (list @ A)) @ ((((map @ B) @ A) @ F) @ Xs)) = ((size_size @ (list @ B)) @ Xs))))).
% 2.75/1.59  thf(fact_235_append__eq__append__conv, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A),Us2:(list @ A),Vs:(list @ A)]: ((((((size_size @ (list @ A)) @ Xs) = ((size_size @ (list @ A)) @ Ys)) | (((size_size @ (list @ A)) @ Us2) = ((size_size @ (list @ A)) @ Vs))) => (((((append @ A) @ Xs) @ Us2) = (((append @ A) @ Ys) @ Vs)) = ((Xs = Ys) & (Us2 = Vs))))))).
% 2.75/1.59  thf(fact_236_length__rev, axiom, (! [A:$tType,Xs:(list @ A)]: ((((size_size @ (list @ A)) @ ((rev @ A) @ Xs)) = ((size_size @ (list @ A)) @ Xs))))).
% 2.75/1.59  thf(fact_237_ord_Olexordp__eq__simps_I4_J, axiom, (! [A:$tType,Less:(A > (A > $o)),X:A,Xs:(list @ A),Y:A,Ys:(list @ A)]: ((((((lexordp_eq @ A) @ Less) @ (((cons @ A) @ X) @ Xs)) @ (((cons @ A) @ Y) @ Ys)) = (((Less @ X) @ Y) | ((~ (((Less @ Y) @ X))) & ((((lexordp_eq @ A) @ Less) @ Xs) @ Ys))))))).
% 2.75/1.59  thf(fact_238_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)))))).
% 2.75/1.59  thf(fact_239_ord_Olexordp__eq__simps_I1_J, axiom, (! [A:$tType,Less:(A > (A > $o)),Ys:(list @ A)]: (((((lexordp_eq @ A) @ Less) @ (nil @ A)) @ Ys)))).
% 2.75/1.59  thf(fact_240_length__rotate1, axiom, (! [A:$tType,Xs:(list @ A)]: ((((size_size @ (list @ A)) @ ((rotate1 @ A) @ Xs)) = ((size_size @ (list @ A)) @ Xs))))).
% 2.75/1.59  thf(fact_241_map__eq__imp__length__eq, axiom, (! [A:$tType,B:$tType,C:$tType,F:(B > A),Xs:(list @ B),G:(C > A),Ys:(list @ C)]: (((((((map @ B) @ A) @ F) @ Xs) = ((((map @ C) @ A) @ G) @ Ys)) => (((size_size @ (list @ B)) @ Xs) = ((size_size @ (list @ C)) @ Ys)))))).
% 2.75/1.59  thf(fact_242_ord_Olexordp__eq_Oinducts, axiom, (! [A:$tType,Less:(A > (A > $o)),X12:(list @ A),X24:(list @ A),P:((list @ A) > ((list @ A) > $o))]: ((((((lexordp_eq @ A) @ Less) @ X12) @ X24) => ((! [X1:(list @ A)]: (((P @ (nil @ A)) @ X1))) => ((! [X3:A,Y3:A,Xs2:(list @ A),Ys2:(list @ A)]: ((((Less @ X3) @ Y3) => ((P @ (((cons @ A) @ X3) @ Xs2)) @ (((cons @ A) @ Y3) @ Ys2))))) => ((! [X3:A,Y3:A,Xs2:(list @ A),Ys2:(list @ A)]: (((~ (((Less @ X3) @ Y3))) => ((~ (((Less @ Y3) @ X3))) => (((((lexordp_eq @ A) @ Less) @ Xs2) @ Ys2) => (((P @ Xs2) @ Ys2) => ((P @ (((cons @ A) @ X3) @ Xs2)) @ (((cons @ A) @ Y3) @ Ys2)))))))) => ((P @ X12) @ X24)))))))).
% 2.75/1.59  thf(fact_243_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)))) | ((? [X2:A,Y2:A,Xs3:(list @ A),Ys3:(list @ A)]: (((A12 = (((cons @ A) @ X2) @ Xs3)) & ((A23 = (((cons @ A) @ Y2) @ Ys3)) & ((Less2 @ X2) @ Y2))))) | (? [X2:A,Y2:A,Xs3:(list @ A),Ys3:(list @ A)]: (((A12 = (((cons @ A) @ X2) @ Xs3)) & ((A23 = (((cons @ A) @ Y2) @ Ys3)) & ((~ (((Less2 @ X2) @ Y2))) & ((~ (((Less2 @ Y2) @ X2))) & ((((lexordp_eq @ A) @ Less2) @ Xs3) @ Ys3))))))))))))))).
% 2.75/1.59  thf(fact_244_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)))) => ((! [X3:A]: (((? [Xs2:(list @ A)]: ((A1 = (((cons @ A) @ X3) @ Xs2)))) => (! [Y3:A]: (((? [Ys2:(list @ A)]: ((A22 = (((cons @ A) @ Y3) @ Ys2)))) => (~ (((Less @ X3) @ Y3))))))))) => (~ ((! [X3:A,Y3:A,Xs2:(list @ A)]: (((A1 = (((cons @ A) @ X3) @ Xs2)) => (! [Ys2:(list @ A)]: (((A22 = (((cons @ A) @ Y3) @ Ys2)) => ((~ (((Less @ X3) @ Y3))) => ((~ (((Less @ Y3) @ X3))) => (~ (((((lexordp_eq @ A) @ Less) @ Xs2) @ Ys2))))))))))))))))))).
% 2.75/1.59  thf(fact_245_ord_Olexordp__eq_OCons, axiom, (! [A:$tType,Less:(A > (A > $o)),X:A,Y:A,Xs:(list @ A),Ys:(list @ A)]: ((((Less @ X) @ Y) => ((((lexordp_eq @ A) @ Less) @ (((cons @ A) @ X) @ Xs)) @ (((cons @ A) @ Y) @ Ys)))))).
% 2.75/1.59  thf(fact_246_ord_Olexordp__eq_OCons__eq, axiom, (! [A:$tType,Less:(A > (A > $o)),X:A,Y:A,Xs:(list @ A),Ys:(list @ A)]: (((~ (((Less @ X) @ Y))) => ((~ (((Less @ Y) @ X))) => (((((lexordp_eq @ A) @ Less) @ Xs) @ Ys) => ((((lexordp_eq @ A) @ Less) @ (((cons @ A) @ X) @ Xs)) @ (((cons @ A) @ Y) @ Ys)))))))).
% 2.75/1.59  thf(fact_247_ord_Olexordp__eq_ONil, axiom, (! [A:$tType,Less:(A > (A > $o)),Ys:(list @ A)]: (((((lexordp_eq @ A) @ Less) @ (nil @ A)) @ Ys)))).
% 2.75/1.59  thf(fact_248_list__induct4, axiom, (! [C:$tType,A:$tType,B:$tType,D:$tType,Xs:(list @ A),Ys:(list @ B),Zs:(list @ C),Ws:(list @ D),P:((list @ A) > ((list @ B) > ((list @ C) > ((list @ D) > $o))))]: (((((size_size @ (list @ A)) @ Xs) = ((size_size @ (list @ B)) @ Ys)) => ((((size_size @ (list @ B)) @ Ys) = ((size_size @ (list @ C)) @ Zs)) => ((((size_size @ (list @ C)) @ Zs) = ((size_size @ (list @ D)) @ Ws)) => (((((P @ (nil @ A)) @ (nil @ B)) @ (nil @ C)) @ (nil @ D)) => ((! [X3:A,Xs2:(list @ A),Y3:B,Ys2:(list @ B),Z3:C,Zs5:(list @ C),W:D,Ws2:(list @ D)]: (((((size_size @ (list @ A)) @ Xs2) = ((size_size @ (list @ B)) @ Ys2)) => ((((size_size @ (list @ B)) @ Ys2) = ((size_size @ (list @ C)) @ Zs5)) => ((((size_size @ (list @ C)) @ Zs5) = ((size_size @ (list @ D)) @ Ws2)) => (((((P @ Xs2) @ Ys2) @ Zs5) @ Ws2) => ((((P @ (((cons @ A) @ X3) @ Xs2)) @ (((cons @ B) @ Y3) @ Ys2)) @ (((cons @ C) @ Z3) @ Zs5)) @ (((cons @ D) @ W) @ Ws2)))))))) => ((((P @ Xs) @ Ys) @ Zs) @ Ws))))))))).
% 2.75/1.59  thf(fact_249_list__induct3, axiom, (! [B:$tType,A:$tType,C:$tType,Xs:(list @ A),Ys:(list @ B),Zs:(list @ C),P:((list @ A) > ((list @ B) > ((list @ C) > $o)))]: (((((size_size @ (list @ A)) @ Xs) = ((size_size @ (list @ B)) @ Ys)) => ((((size_size @ (list @ B)) @ Ys) = ((size_size @ (list @ C)) @ Zs)) => ((((P @ (nil @ A)) @ (nil @ B)) @ (nil @ C)) => ((! [X3:A,Xs2:(list @ A),Y3:B,Ys2:(list @ B),Z3:C,Zs5:(list @ C)]: (((((size_size @ (list @ A)) @ Xs2) = ((size_size @ (list @ B)) @ Ys2)) => ((((size_size @ (list @ B)) @ Ys2) = ((size_size @ (list @ C)) @ Zs5)) => ((((P @ Xs2) @ Ys2) @ Zs5) => (((P @ (((cons @ A) @ X3) @ Xs2)) @ (((cons @ B) @ Y3) @ Ys2)) @ (((cons @ C) @ Z3) @ Zs5))))))) => (((P @ Xs) @ Ys) @ Zs)))))))).
% 2.75/1.59  thf(fact_250_list__induct2, axiom, (! [A:$tType,B:$tType,Xs:(list @ A),Ys:(list @ B),P:((list @ A) > ((list @ B) > $o))]: (((((size_size @ (list @ A)) @ Xs) = ((size_size @ (list @ B)) @ Ys)) => (((P @ (nil @ A)) @ (nil @ B)) => ((! [X3:A,Xs2:(list @ A),Y3:B,Ys2:(list @ B)]: (((((size_size @ (list @ A)) @ Xs2) = ((size_size @ (list @ B)) @ Ys2)) => (((P @ Xs2) @ Ys2) => ((P @ (((cons @ A) @ X3) @ Xs2)) @ (((cons @ B) @ Y3) @ Ys2)))))) => ((P @ Xs) @ Ys))))))).
% 2.75/1.59  thf(fact_251_ord_Olexordp__eq__refl, axiom, (! [A:$tType,Less:(A > (A > $o)),Xs:(list @ A)]: (((((lexordp_eq @ A) @ Less) @ Xs) @ Xs)))).
% 2.75/1.59  thf(fact_252_neq__if__length__neq, axiom, (! [A:$tType,Xs:(list @ A),Ys:(list @ A)]: (((((size_size @ (list @ A)) @ Xs) != ((size_size @ (list @ A)) @ Ys)) => (Xs != Ys))))).
% 2.75/1.59  thf(help_If_3_1_T, axiom, (! [P:$o]: (((P = $true) | (P = $false))))).
% 2.75/1.59  thf(help_If_2_1_T, axiom, (! [A:$tType,X:A,Y:A]: ((((((if @ A) @ $false) @ X) @ Y) = Y)))).
% 2.75/1.59  thf(help_If_1_1_T, axiom, (! [A:$tType,X:A,Y:A]: ((((((if @ A) @ $true) @ X) @ Y) = X)))).
% 2.75/1.59  thf(conj_0, conjecture, ((((coindu268472904append @ a) @ ((coindu288502823_llist @ a) @ f)) @ xs) = ((coindu288502823_llist @ a) @ f))).
% 2.75/1.59  % SZS output end ListOfTHF for /export/starexec/sandbox2/tmp/tmp.HOKmHkkqrB/DTF2DTF17806.p
% 2.75/1.59  ------------------------
% 3.04/1.64  ---- Cleaned THF ---
% 3.04/1.64  thf(ty_t_Coinductive__List__Mirabelle__kmikjhschf_Ollist,type,
% 3.04/1.64      coindu1593790203_llist: $tType > $tType ).
% 3.04/1.64  
% 3.04/1.64  thf(ty_t_List_Olist,type,
% 3.04/1.64      list: $tType > $tType ).
% 3.04/1.64  
% 3.04/1.64  thf(ty_t_Nat_Onat,type,
% 3.04/1.64      nat: $tType ).
% 3.04/1.64  
% 3.04/1.64  thf(ty_t_itself,type,
% 3.04/1.64      itself: $tType > $tType ).
% 3.04/1.64  
% 3.04/1.64  thf(ty_tf_a,type,
% 3.04/1.64      a: $tType ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix,type,
% 3.04/1.64      coindu1571841457prefix: 
% 3.04/1.64        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > $o ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Oinf__llist,type,
% 3.04/1.64      coindu288502823_llist: 
% 3.04/1.64        !>[A: $tType] : ( ( nat > A ) > ( coindu1593790203_llist @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Oiterates,type,
% 3.04/1.64      coindu1529956631erates: 
% 3.04/1.64        !>[A: $tType] : ( ( A > A ) > A > ( coindu1593790203_llist @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olappend,type,
% 3.04/1.64      coindu268472904append: 
% 3.04/1.64        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olfinite,type,
% 3.04/1.64      coindu1213758845finite: 
% 3.04/1.64        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > $o ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olist__of,type,
% 3.04/1.64      coindu1736001939ist_of: 
% 3.04/1.64        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( list @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olist__of__aux,type,
% 3.04/1.64      coindu1542816657of_aux: 
% 3.04/1.64        !>[A: $tType] : ( ( list @ A ) > ( coindu1593790203_llist @ A ) > ( list @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollast,type,
% 3.04/1.64      coindu2000965700_llast: 
% 3.04/1.64        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > A ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist_OLCons,type,
% 3.04/1.64      coindu1121789889_LCons: 
% 3.04/1.64        !>[A: $tType] : ( A > ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist_OLNil,type,
% 3.04/1.64      coindu1598213697e_LNil: 
% 3.04/1.64        !>[A: $tType] : ( coindu1593790203_llist @ A ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist_Olnull,type,
% 3.04/1.64      coindu335574135_lnull: 
% 3.04/1.64        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > $o ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist__of,type,
% 3.04/1.64      coindu1079202755ist_of: 
% 3.04/1.64        !>[A: $tType] : ( ( list @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olmember,type,
% 3.04/1.64      coindu567634248member: 
% 3.04/1.64        !>[A: $tType] : ( A > ( coindu1593790203_llist @ A ) > $o ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olnth,type,
% 3.04/1.64      coindu749330388e_lnth: 
% 3.04/1.64        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > nat > A ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olprefix,type,
% 3.04/1.64      coindu1696667936prefix: 
% 3.04/1.64        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > $o ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olstrict__prefix,type,
% 3.04/1.64      coindu574146665prefix: 
% 3.04/1.64        !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > $o ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_HOL_Oundefined,type,
% 3.04/1.64      undefined: 
% 3.04/1.64        !>[A: $tType] : A ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_If,type,
% 3.04/1.64      if: 
% 3.04/1.64        !>[A: $tType] : ( $o > A > A > A ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Oappend,type,
% 3.04/1.64      append: 
% 3.04/1.64        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) > ( list @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Obind,type,
% 3.04/1.64      bind: 
% 3.04/1.64        !>[A: $tType,B: $tType] : ( ( list @ A ) > ( A > ( list @ B ) ) > ( list @ B ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Obutlast,type,
% 3.04/1.64      butlast: 
% 3.04/1.64        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Oinsert,type,
% 3.04/1.64      insert: 
% 3.04/1.64        !>[A: $tType] : ( A > ( list @ A ) > ( list @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Olast,type,
% 3.04/1.64      last: 
% 3.04/1.64        !>[A: $tType] : ( ( list @ A ) > A ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Olist_OCons,type,
% 3.04/1.64      cons: 
% 3.04/1.64        !>[A: $tType] : ( A > ( list @ A ) > ( list @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Olist_ONil,type,
% 3.04/1.64      nil: 
% 3.04/1.64        !>[A: $tType] : ( list @ A ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Olist_Omap,type,
% 3.04/1.64      map: 
% 3.04/1.64        !>[A: $tType,Aa: $tType] : ( ( A > Aa ) > ( list @ A ) > ( list @ Aa ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Olist__ex1,type,
% 3.04/1.64      list_ex1: 
% 3.04/1.64        !>[A: $tType] : ( ( A > $o ) > ( list @ A ) > $o ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Omap__tailrec,type,
% 3.04/1.64      map_tailrec: 
% 3.04/1.64        !>[A: $tType,B: $tType] : ( ( A > B ) > ( list @ A ) > ( list @ B ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Omap__tailrec__rev,type,
% 3.04/1.64      map_tailrec_rev: 
% 3.04/1.64        !>[A: $tType,B: $tType] : ( ( A > B ) > ( list @ A ) > ( list @ B ) > ( list @ B ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Omaps,type,
% 3.04/1.64      maps: 
% 3.04/1.64        !>[A: $tType,B: $tType] : ( ( A > ( list @ B ) ) > ( list @ A ) > ( list @ B ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Onth,type,
% 3.04/1.64      nth: 
% 3.04/1.64        !>[A: $tType] : ( ( list @ A ) > nat > A ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Oord_Olexordp__eq,type,
% 3.04/1.64      lexordp_eq: 
% 3.04/1.64        !>[A: $tType] : ( ( A > A > $o ) > ( list @ A ) > ( list @ A ) > $o ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Oproduct__lists,type,
% 3.04/1.64      product_lists: 
% 3.04/1.64        !>[A: $tType] : ( ( list @ ( list @ A ) ) > ( list @ ( list @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Orev,type,
% 3.04/1.64      rev: 
% 3.04/1.64        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Orotate1,type,
% 3.04/1.64      rotate1: 
% 3.04/1.64        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_List_Osublists,type,
% 3.04/1.64      sublists: 
% 3.04/1.64        !>[A: $tType] : ( ( list @ A ) > ( list @ ( list @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Nat_Osize__class_Osize,type,
% 3.04/1.64      size_size: 
% 3.04/1.64        !>[A: $tType] : ( A > nat ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Pure_Otype,type,
% 3.04/1.64      type: 
% 3.04/1.64        !>[A: $tType] : ( itself @ A ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Sublist_Oprefixes,type,
% 3.04/1.64      prefixes: 
% 3.04/1.64        !>[A: $tType] : ( ( list @ A ) > ( list @ ( list @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Sublist_Oprefixes__rel,type,
% 3.04/1.64      prefixes_rel: 
% 3.04/1.64        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) > $o ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Sublist_Ostrict__suffix,type,
% 3.04/1.64      strict_suffix: 
% 3.04/1.64        !>[A: $tType] : ( ( list @ A ) > ( list @ A ) > $o ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_c_Wellfounded_Oaccp,type,
% 3.04/1.64      accp: 
% 3.04/1.64        !>[A: $tType] : ( ( A > A > $o ) > A > $o ) ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_v_f,type,
% 3.04/1.64      f: nat > a ).
% 3.04/1.64  
% 3.04/1.64  thf(sy_v_xs,type,
% 3.04/1.64      xs: coindu1593790203_llist @ a ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_0_inf__llist__inj,axiom,
% 3.04/1.64      ! [A: $tType,F: nat > A,G: nat > A] :
% 3.04/1.64        ( ( ( coindu288502823_llist @ A @ F )
% 3.04/1.64          = ( coindu288502823_llist @ A @ G ) )
% 3.04/1.64        = ( F = G ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_1_lappend__assoc,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu268472904append @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ Zs )
% 3.04/1.64        = ( coindu268472904append @ A @ Xs @ ( coindu268472904append @ A @ Ys @ Zs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_2_inf__llist__lprefix,axiom,
% 3.04/1.64      ! [A: $tType,F: nat > A,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ ( coindu288502823_llist @ A @ F ) @ Xs )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( coindu288502823_llist @ A @ F ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_3_lnth__inf__llist,axiom,
% 3.04/1.64      ! [A: $tType,F: nat > A,N: nat] :
% 3.04/1.64        ( ( coindu749330388e_lnth @ A @ ( coindu288502823_llist @ A @ F ) @ N )
% 3.04/1.64        = ( F @ N ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_4_lappend__code_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu268472904append @ A @ ( coindu1598213697e_LNil @ A ) @ Ys )
% 3.04/1.64        = Ys ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_5_lappend__LNil2,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu268472904append @ A @ Xs @ ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64        = Xs ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_6_inf__llist__neq__llist__of_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,F: nat > A] :
% 3.04/1.64        ( ( coindu1079202755ist_of @ A @ Xs )
% 3.04/1.64       != ( coindu288502823_llist @ A @ F ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_7_llist__exhaust,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ! [Ys2: list @ A] :
% 3.04/1.64            ( Xs
% 3.04/1.64           != ( coindu1079202755ist_of @ A @ Ys2 ) )
% 3.04/1.64       => ~ ! [F2: nat > A] :
% 3.04/1.64              ( Xs
% 3.04/1.64             != ( coindu288502823_llist @ A @ F2 ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_8_lappend__iterates,axiom,
% 3.04/1.64      ! [A: $tType,F: A > A,X: A,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu268472904append @ A @ ( coindu1529956631erates @ A @ F @ X ) @ Xs )
% 3.04/1.64        = ( coindu1529956631erates @ A @ F @ X ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_9_lappend__code_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,Xa: A,X: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu268472904append @ A @ ( coindu1121789889_LCons @ A @ Xa @ X ) @ Ys )
% 3.04/1.64        = ( coindu1121789889_LCons @ A @ Xa @ ( coindu268472904append @ A @ X @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_10_lappend_Odisc__iff_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( ~ ( coindu335574135_lnull @ A @ ( coindu268472904append @ A @ Xs @ Ys ) ) )
% 3.04/1.64        = ( ~ ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64          | ~ ( coindu335574135_lnull @ A @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_11_lnull__lappend,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu335574135_lnull @ A @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 3.04/1.64        = ( ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64          & ( coindu335574135_lnull @ A @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_12_inf__llist__neq__LNil,axiom,
% 3.04/1.64      ! [A: $tType,F: nat > A] :
% 3.04/1.64        ( ( coindu288502823_llist @ A @ F )
% 3.04/1.64       != ( coindu1598213697e_LNil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_13_lfinite__lappend,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1213758845finite @ A @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 3.04/1.64        = ( ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64          & ( coindu1213758845finite @ A @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_14_lprefix__refl,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] : ( coindu1696667936prefix @ A @ Xs @ Xs ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_15_llist_Oleq__refl,axiom,
% 3.04/1.64      ! [A: $tType,X: coindu1593790203_llist @ A] : ( coindu1696667936prefix @ A @ X @ X ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_16_llist_Oinject,axiom,
% 3.04/1.64      ! [A: $tType,X21: A,X22: coindu1593790203_llist @ A,Y21: A,Y22: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( ( coindu1121789889_LCons @ A @ X21 @ X22 )
% 3.04/1.64          = ( coindu1121789889_LCons @ A @ Y21 @ Y22 ) )
% 3.04/1.64        = ( ( X21 = Y21 )
% 3.04/1.64          & ( X22 = Y22 ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_17_llist__of__inject,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( ( coindu1079202755ist_of @ A @ Xs )
% 3.04/1.64          = ( coindu1079202755ist_of @ A @ Ys ) )
% 3.04/1.64        = ( Xs = Ys ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_18_LCons__lprefix__LCons,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) @ ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 3.04/1.64        = ( ( X = Y )
% 3.04/1.64          & ( coindu1696667936prefix @ A @ Xs @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_19_lprefix__code_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,Ys: coindu1593790203_llist @ A] : ( coindu1696667936prefix @ A @ ( coindu1598213697e_LNil @ A ) @ Ys ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_20_lfinite__code_I2_J,axiom,
% 3.04/1.64      ! [B: $tType,X: B,Xs: coindu1593790203_llist @ B] :
% 3.04/1.64        ( ( coindu1213758845finite @ B @ ( coindu1121789889_LCons @ B @ X @ Xs ) )
% 3.04/1.64        = ( coindu1213758845finite @ B @ Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_21_lfinite__LCons,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1213758845finite @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 3.04/1.64        = ( coindu1213758845finite @ A @ Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_22_lfinite__code_I1_J,axiom,
% 3.04/1.64      ! [A: $tType] : ( coindu1213758845finite @ A @ ( coindu1598213697e_LNil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_23_lprefix__LNil,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ Xs @ ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64        = ( coindu335574135_lnull @ A @ Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_24_lprefix__lappend__same,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ ( coindu268472904append @ A @ Xs @ Zs ) )
% 3.04/1.64        = ( ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64         => ( coindu1696667936prefix @ A @ Ys @ Zs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_25_inf__llist__lnth,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ~ ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64       => ( ( coindu288502823_llist @ A @ ( coindu749330388e_lnth @ A @ Xs ) )
% 3.04/1.64          = Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_26_llist_Odisc_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,X21: A,X22: coindu1593790203_llist @ A] :
% 3.04/1.64        ~ ( coindu335574135_lnull @ A @ ( coindu1121789889_LCons @ A @ X21 @ X22 ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_27_llist_Odisc_I1_J,axiom,
% 3.04/1.64      ! [A: $tType] : ( coindu335574135_lnull @ A @ ( coindu1598213697e_LNil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_28_llist_OdiscI_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,Llist: coindu1593790203_llist @ A,X21: A,X22: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( Llist
% 3.04/1.64          = ( coindu1121789889_LCons @ A @ X21 @ X22 ) )
% 3.04/1.64       => ~ ( coindu335574135_lnull @ A @ Llist ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_29_llist_OdiscI_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,Llist: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( Llist
% 3.04/1.64          = ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64       => ( coindu335574135_lnull @ A @ Llist ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_30_lprefix__code_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ~ ( coindu1696667936prefix @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) @ ( coindu1598213697e_LNil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_31_llist_Ocollapse_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,Llist: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu335574135_lnull @ A @ Llist )
% 3.04/1.64       => ( Llist
% 3.04/1.64          = ( coindu1598213697e_LNil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_32_llist_Odistinct_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,X21: A,X22: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1598213697e_LNil @ A )
% 3.04/1.64       != ( coindu1121789889_LCons @ A @ X21 @ X22 ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_33_lzip_Oexhaust,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ B] :
% 3.04/1.64        ( ~ ( ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64            | ( coindu335574135_lnull @ B @ Ys ) )
% 3.04/1.64       => ~ ( ~ ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64           => ( coindu335574135_lnull @ B @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_34_iterates_Ocode,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu1529956631erates @ A )
% 3.04/1.64        = ( ^ [F3: A > A,X2: A] : ( coindu1121789889_LCons @ A @ X2 @ ( coindu1529956631erates @ A @ F3 @ ( F3 @ X2 ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_35_lfinite_Ocases,axiom,
% 3.04/1.64      ! [A: $tType,A2: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1213758845finite @ A @ A2 )
% 3.04/1.64       => ( ( A2
% 3.04/1.64           != ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64         => ~ ! [Xs2: coindu1593790203_llist @ A] :
% 3.04/1.64                ( ? [X3: A] :
% 3.04/1.64                    ( A2
% 3.04/1.64                    = ( coindu1121789889_LCons @ A @ X3 @ Xs2 ) )
% 3.04/1.64               => ~ ( coindu1213758845finite @ A @ Xs2 ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_36_lfinite_Osimps,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu1213758845finite @ A )
% 3.04/1.64        = ( ^ [A3: coindu1593790203_llist @ A] :
% 3.04/1.64              ( ( A3
% 3.04/1.64                = ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64              | ? [Xs3: coindu1593790203_llist @ A,X2: A] :
% 3.04/1.64                  ( ( A3
% 3.04/1.64                    = ( coindu1121789889_LCons @ A @ X2 @ Xs3 ) )
% 3.04/1.64                  & ( coindu1213758845finite @ A @ Xs3 ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_37_llist_Oexhaust,axiom,
% 3.04/1.64      ! [A: $tType,Y: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( Y
% 3.04/1.64         != ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64       => ~ ! [X212: A,X222: coindu1593790203_llist @ A] :
% 3.04/1.64              ( Y
% 3.04/1.64             != ( coindu1121789889_LCons @ A @ X212 @ X222 ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_38_lnull__lprefix,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64       => ( coindu1696667936prefix @ A @ Xs @ Ys ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_39_lprefix_Ocases,axiom,
% 3.04/1.64      ! [A: $tType,A1: coindu1593790203_llist @ A,A22: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ A1 @ A22 )
% 3.04/1.64       => ( ( ( A1
% 3.04/1.64              = ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64           => ! [Xs2: coindu1593790203_llist @ A] : ( A22 != Xs2 ) )
% 3.04/1.64         => ~ ! [Xs2: coindu1593790203_llist @ A,Ys2: coindu1593790203_llist @ A,X3: A] :
% 3.04/1.64                ( ( A1
% 3.04/1.64                  = ( coindu1121789889_LCons @ A @ X3 @ Xs2 ) )
% 3.04/1.64               => ( ( A22
% 3.04/1.64                    = ( coindu1121789889_LCons @ A @ X3 @ Ys2 ) )
% 3.04/1.64                 => ~ ( coindu1696667936prefix @ A @ Xs2 @ Ys2 ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_40_lprefix_Osimps,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A )
% 3.04/1.64        = ( ^ [A12: coindu1593790203_llist @ A,A23: coindu1593790203_llist @ A] :
% 3.04/1.64              ( ? [Xs3: coindu1593790203_llist @ A] :
% 3.04/1.64                  ( ( A12
% 3.04/1.64                    = ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64                  & ( A23 = Xs3 ) )
% 3.04/1.64              | ? [Xs3: coindu1593790203_llist @ A,Ys3: coindu1593790203_llist @ A,X2: A] :
% 3.04/1.64                  ( ( A12
% 3.04/1.64                    = ( coindu1121789889_LCons @ A @ X2 @ Xs3 ) )
% 3.04/1.64                  & ( A23
% 3.04/1.64                    = ( coindu1121789889_LCons @ A @ X2 @ Ys3 ) )
% 3.04/1.64                  & ( coindu1696667936prefix @ A @ Xs3 @ Ys3 ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_41_lprefix__lnull,axiom,
% 3.04/1.64      ! [A: $tType,Ys: coindu1593790203_llist @ A,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu335574135_lnull @ A @ Ys )
% 3.04/1.64       => ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 3.04/1.64          = ( coindu335574135_lnull @ A @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_42_lprefix__trans,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 3.04/1.64       => ( ( coindu1696667936prefix @ A @ Ys @ Zs )
% 3.04/1.64         => ( coindu1696667936prefix @ A @ Xs @ Zs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_43_neq__LNil__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( Xs
% 3.04/1.64         != ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64        = ( ? [X2: A,Xs4: coindu1593790203_llist @ A] :
% 3.04/1.64              ( Xs
% 3.04/1.64              = ( coindu1121789889_LCons @ A @ X2 @ Xs4 ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_44_ext,axiom,
% 3.04/1.64      ! [B: $tType,A: $tType,F: A > B,G: A > B] :
% 3.04/1.64        ( ! [X3: A] :
% 3.04/1.64            ( ( F @ X3 )
% 3.04/1.64            = ( G @ X3 ) )
% 3.04/1.64       => ( F = G ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_45_lprefix__lnullD,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 3.04/1.64       => ( ( coindu335574135_lnull @ A @ Ys )
% 3.04/1.64         => ( coindu335574135_lnull @ A @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_46_not__lnull__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( ~ ( coindu335574135_lnull @ A @ Xs ) )
% 3.04/1.64        = ( ? [X2: A,Xs4: coindu1593790203_llist @ A] :
% 3.04/1.64              ( Xs
% 3.04/1.64              = ( coindu1121789889_LCons @ A @ X2 @ Xs4 ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_47_lappend_Oexhaust,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64         => ~ ( coindu335574135_lnull @ A @ Ys ) )
% 3.04/1.64       => ( ~ ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64          | ~ ( coindu335574135_lnull @ A @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_48_lfinite_Oinducts,axiom,
% 3.04/1.64      ! [A: $tType,X: coindu1593790203_llist @ A,P: ( coindu1593790203_llist @ A ) > $o] :
% 3.04/1.64        ( ( coindu1213758845finite @ A @ X )
% 3.04/1.64       => ( ( P @ ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64         => ( ! [Xs2: coindu1593790203_llist @ A,X3: A] :
% 3.04/1.64                ( ( coindu1213758845finite @ A @ Xs2 )
% 3.04/1.64               => ( ( P @ Xs2 )
% 3.04/1.64                 => ( P @ ( coindu1121789889_LCons @ A @ X3 @ Xs2 ) ) ) )
% 3.04/1.64           => ( P @ X ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_49_llist_Oleq__trans,axiom,
% 3.04/1.64      ! [A: $tType,X: coindu1593790203_llist @ A,Y: coindu1593790203_llist @ A,Z: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ X @ Y )
% 3.04/1.64       => ( ( coindu1696667936prefix @ A @ Y @ Z )
% 3.04/1.64         => ( coindu1696667936prefix @ A @ X @ Z ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_50_lnull__def,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu335574135_lnull @ A )
% 3.04/1.64        = ( ^ [Llist2: coindu1593790203_llist @ A] :
% 3.04/1.64              ( Llist2
% 3.04/1.64              = ( coindu1598213697e_LNil @ A ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_51_lprefix__antisym,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 3.04/1.64       => ( ( coindu1696667936prefix @ A @ Ys @ Xs )
% 3.04/1.64         => ( Xs = Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_52_lfinite__iterates,axiom,
% 3.04/1.64      ! [A: $tType,F: A > A,X: A] :
% 3.04/1.64        ~ ( coindu1213758845finite @ A @ ( coindu1529956631erates @ A @ F @ X ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_53_lfinite__llist__of,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] : ( coindu1213758845finite @ A @ ( coindu1079202755ist_of @ A @ Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_54_Le__LCons,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,X: A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 3.04/1.64       => ( coindu1696667936prefix @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) @ ( coindu1121789889_LCons @ A @ X @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_55_lprefix_Ocoinduct,axiom,
% 3.04/1.64      ! [A: $tType,X4: ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > $o,X: coindu1593790203_llist @ A,Xa: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( X4 @ X @ Xa )
% 3.04/1.64       => ( ! [X3: coindu1593790203_llist @ A,Xa2: coindu1593790203_llist @ A] :
% 3.04/1.64              ( ( X4 @ X3 @ Xa2 )
% 3.04/1.64             => ( ? [Xs5: coindu1593790203_llist @ A] :
% 3.04/1.64                    ( ( X3
% 3.04/1.64                      = ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64                    & ( Xa2 = Xs5 ) )
% 3.04/1.64                | ? [Xs5: coindu1593790203_llist @ A,Ys4: coindu1593790203_llist @ A,Xb: A] :
% 3.04/1.64                    ( ( X3
% 3.04/1.64                      = ( coindu1121789889_LCons @ A @ Xb @ Xs5 ) )
% 3.04/1.64                    & ( Xa2
% 3.04/1.64                      = ( coindu1121789889_LCons @ A @ Xb @ Ys4 ) )
% 3.04/1.64                    & ( ( X4 @ Xs5 @ Ys4 )
% 3.04/1.64                      | ( coindu1696667936prefix @ A @ Xs5 @ Ys4 ) ) ) ) )
% 3.04/1.64         => ( coindu1696667936prefix @ A @ X @ Xa ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_56_lprefix__lfiniteD,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 3.04/1.64       => ( ( coindu1213758845finite @ A @ Ys )
% 3.04/1.64         => ( coindu1213758845finite @ A @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_57_iterates_Odisc__iff,axiom,
% 3.04/1.64      ! [A: $tType,F: A > A,X: A] :
% 3.04/1.64        ~ ( coindu335574135_lnull @ A @ ( coindu1529956631erates @ A @ F @ X ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_58_llist_Oleq__antisym,axiom,
% 3.04/1.64      ! [A: $tType,X: coindu1593790203_llist @ A,Y: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ X @ Y )
% 3.04/1.64       => ( ( coindu1696667936prefix @ A @ Y @ X )
% 3.04/1.64         => ( X = Y ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_59_lnull__imp__lfinite,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64       => ( coindu1213758845finite @ A @ Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_60_LCons__lprefix__conv,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) @ Ys )
% 3.04/1.64        = ( ? [Ys5: coindu1593790203_llist @ A] :
% 3.04/1.64              ( ( Ys
% 3.04/1.64                = ( coindu1121789889_LCons @ A @ X @ Ys5 ) )
% 3.04/1.64              & ( coindu1696667936prefix @ A @ Xs @ Ys5 ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_61_lfinite__rev__induct,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,P: ( coindu1593790203_llist @ A ) > $o] :
% 3.04/1.64        ( ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64       => ( ( P @ ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64         => ( ! [X3: A,Xs2: coindu1593790203_llist @ A] :
% 3.04/1.64                ( ( coindu1213758845finite @ A @ Xs2 )
% 3.04/1.64               => ( ( P @ Xs2 )
% 3.04/1.64                 => ( P @ ( coindu268472904append @ A @ Xs2 @ ( coindu1121789889_LCons @ A @ X3 @ ( coindu1598213697e_LNil @ A ) ) ) ) ) )
% 3.04/1.64           => ( P @ Xs ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_62_lprefix__LCons__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ Xs @ ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 3.04/1.64        = ( ( Xs
% 3.04/1.64            = ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64          | ? [Xs4: coindu1593790203_llist @ A] :
% 3.04/1.64              ( ( Xs
% 3.04/1.64                = ( coindu1121789889_LCons @ A @ Y @ Xs4 ) )
% 3.04/1.64              & ( coindu1696667936prefix @ A @ Xs4 @ Ys ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_63_lprefix__not__lnullD,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 3.04/1.64       => ( ~ ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64         => ~ ( coindu335574135_lnull @ A @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_64_lprefix__down__linear,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ Xs @ Zs )
% 3.04/1.64       => ( ( coindu1696667936prefix @ A @ Ys @ Zs )
% 3.04/1.64         => ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 3.04/1.64            | ( coindu1696667936prefix @ A @ Ys @ Xs ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_65_lfinite__LNil,axiom,
% 3.04/1.64      ! [A: $tType] : ( coindu1213758845finite @ A @ ( coindu1598213697e_LNil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_66_LNil__lprefix,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] : ( coindu1696667936prefix @ A @ ( coindu1598213697e_LNil @ A ) @ Xs ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_67_lfinite__LConsI,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,X: A] :
% 3.04/1.64        ( ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64       => ( coindu1213758845finite @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_68_not__lfinite__lprefix__conv__eq,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ~ ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64       => ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 3.04/1.64          = ( Xs = Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_69_lappend_Octr_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64       => ( ( coindu335574135_lnull @ A @ Ys )
% 3.04/1.64         => ( ( coindu268472904append @ A @ Xs @ Ys )
% 3.04/1.64            = ( coindu1598213697e_LNil @ A ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_70_lappend__snocL1__conv__LCons2,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu268472904append @ A @ ( coindu268472904append @ A @ Xs @ ( coindu1121789889_LCons @ A @ Y @ ( coindu1598213697e_LNil @ A ) ) ) @ Ys )
% 3.04/1.64        = ( coindu268472904append @ A @ Xs @ ( coindu1121789889_LCons @ A @ Y @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_71_lappend__inf,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ~ ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64       => ( ( coindu268472904append @ A @ Xs @ Ys )
% 3.04/1.64          = Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_72_lappend__lnull2,axiom,
% 3.04/1.64      ! [A: $tType,Ys: coindu1593790203_llist @ A,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu335574135_lnull @ A @ Ys )
% 3.04/1.64       => ( ( coindu268472904append @ A @ Xs @ Ys )
% 3.04/1.64          = Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_73_lappend__lnull1,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64       => ( ( coindu268472904append @ A @ Xs @ Ys )
% 3.04/1.64          = Ys ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_74_lappend_Odisc_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64       => ( ( coindu335574135_lnull @ A @ Ys )
% 3.04/1.64         => ( coindu335574135_lnull @ A @ ( coindu268472904append @ A @ Xs @ Ys ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_75_lappend_Odisc_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( ~ ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64          | ~ ( coindu335574135_lnull @ A @ Ys ) )
% 3.04/1.64       => ~ ( coindu335574135_lnull @ A @ ( coindu268472904append @ A @ Xs @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_76_lprefix__lappend__sameI,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 3.04/1.64       => ( coindu1696667936prefix @ A @ ( coindu268472904append @ A @ Zs @ Xs ) @ ( coindu268472904append @ A @ Zs @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_77_lprefix__conv__lappend,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A )
% 3.04/1.64        = ( ^ [Xs3: coindu1593790203_llist @ A,Ys3: coindu1593790203_llist @ A] :
% 3.04/1.64            ? [Zs2: coindu1593790203_llist @ A] :
% 3.04/1.64              ( Ys3
% 3.04/1.64              = ( coindu268472904append @ A @ Xs3 @ Zs2 ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_78_lprefix__lappendD,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ Xs @ ( coindu268472904append @ A @ Ys @ Zs ) )
% 3.04/1.64       => ( ( coindu1696667936prefix @ A @ Xs @ Ys )
% 3.04/1.64          | ( coindu1696667936prefix @ A @ Ys @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_79_lappend__lprefixE,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ Zs )
% 3.04/1.64       => ~ ! [Zs3: coindu1593790203_llist @ A] :
% 3.04/1.64              ( Zs
% 3.04/1.64             != ( coindu268472904append @ A @ Xs @ Zs3 ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_80_lprefix__lappend,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] : ( coindu1696667936prefix @ A @ Xs @ ( coindu268472904append @ A @ Xs @ Ys ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_81_lappend__eq__LNil__iff,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( ( coindu268472904append @ A @ Xs @ Ys )
% 3.04/1.64          = ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64        = ( ( Xs
% 3.04/1.64            = ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64          & ( Ys
% 3.04/1.64            = ( coindu1598213697e_LNil @ A ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_82_LNil__eq__lappend__iff,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( ( coindu1598213697e_LNil @ A )
% 3.04/1.64          = ( coindu268472904append @ A @ Xs @ Ys ) )
% 3.04/1.64        = ( ( Xs
% 3.04/1.64            = ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64          & ( Ys
% 3.04/1.64            = ( coindu1598213697e_LNil @ A ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_83_lappend__LNil__LNil,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu268472904append @ A @ ( coindu1598213697e_LNil @ A ) @ ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64        = ( coindu1598213697e_LNil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_84_lfinite__inf__llist,axiom,
% 3.04/1.64      ! [A: $tType,F: nat > A] :
% 3.04/1.64        ~ ( coindu1213758845finite @ A @ ( coindu288502823_llist @ A @ F ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_85_lnull__inf__llist,axiom,
% 3.04/1.64      ! [A: $tType,F: nat > A] :
% 3.04/1.64        ~ ( coindu335574135_lnull @ A @ ( coindu288502823_llist @ A @ F ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_86_llast__lappend__LCons,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64       => ( ( coindu2000965700_llast @ A @ ( coindu268472904append @ A @ Xs @ ( coindu1121789889_LCons @ A @ Y @ Ys ) ) )
% 3.04/1.64          = ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ Y @ Ys ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_87_lstrict__prefix__lappend__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu574146665prefix @ A @ Xs @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 3.04/1.64        = ( ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64          & ~ ( coindu335574135_lnull @ A @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_88_llimit__induct,axiom,
% 3.04/1.64      ! [A: $tType,P: ( coindu1593790203_llist @ A ) > $o,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( P @ ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64       => ( ! [X3: A,Xs2: coindu1593790203_llist @ A] :
% 3.04/1.64              ( ( coindu1213758845finite @ A @ Xs2 )
% 3.04/1.64             => ( ( P @ Xs2 )
% 3.04/1.64               => ( P @ ( coindu1121789889_LCons @ A @ X3 @ Xs2 ) ) ) )
% 3.04/1.64         => ( ( ! [Ys4: coindu1593790203_llist @ A] :
% 3.04/1.64                  ( ( coindu574146665prefix @ A @ Ys4 @ Xs )
% 3.04/1.64                 => ( P @ Ys4 ) )
% 3.04/1.64             => ( P @ Xs ) )
% 3.04/1.64           => ( P @ Xs ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_89_Coinductive__List__Mirabelle__kmikjhschf_Olprefix__nitpick__simps,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu1696667936prefix @ A )
% 3.04/1.64        = ( ^ [Xs3: coindu1593790203_llist @ A,Ys3: coindu1593790203_llist @ A] :
% 3.04/1.64              ( ( ( coindu1213758845finite @ A @ Xs3 )
% 3.04/1.64               => ( coindu1571841457prefix @ A @ Xs3 @ Ys3 ) )
% 3.04/1.64              & ( ~ ( coindu1213758845finite @ A @ Xs3 )
% 3.04/1.64               => ( Xs3 = Ys3 ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_90_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix__nitpick__simps_I3_J,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1571841457prefix @ A @ Xs @ ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 3.04/1.64        = ( ( Xs
% 3.04/1.64            = ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64          | ? [Xs4: coindu1593790203_llist @ A] :
% 3.04/1.64              ( ( Xs
% 3.04/1.64                = ( coindu1121789889_LCons @ A @ Y @ Xs4 ) )
% 3.04/1.64              & ( coindu1571841457prefix @ A @ Xs4 @ Ys ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_91_lstrict__prefix__code_I3_J,axiom,
% 3.04/1.64      ! [B: $tType,X: B,Xs: coindu1593790203_llist @ B] :
% 3.04/1.64        ~ ( coindu574146665prefix @ B @ ( coindu1121789889_LCons @ B @ X @ Xs ) @ ( coindu1598213697e_LNil @ B ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_92_lstrict__prefix__code_I2_J,axiom,
% 3.04/1.64      ! [B: $tType,Y: B,Ys: coindu1593790203_llist @ B] : ( coindu574146665prefix @ B @ ( coindu1598213697e_LNil @ B ) @ ( coindu1121789889_LCons @ B @ Y @ Ys ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_93_llast__singleton,axiom,
% 3.04/1.64      ! [A: $tType,X: A] :
% 3.04/1.64        ( ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ X @ ( coindu1598213697e_LNil @ A ) ) )
% 3.04/1.64        = X ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_94_llist__of__list__of,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64       => ( ( coindu1079202755ist_of @ A @ ( coindu1736001939ist_of @ A @ Xs ) )
% 3.04/1.64          = Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_95_lmember__code_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,X: A] :
% 3.04/1.64        ~ ( coindu567634248member @ A @ X @ ( coindu1598213697e_LNil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_96_lmember__code_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Y: A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu567634248member @ A @ X @ ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 3.04/1.64        = ( ( X = Y )
% 3.04/1.64          | ( coindu567634248member @ A @ X @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_97_llast__LCons2,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Y: A,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ X @ ( coindu1121789889_LCons @ A @ Y @ Xs ) ) )
% 3.04/1.64        = ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ Y @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_98_list__of__llist__of,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( coindu1736001939ist_of @ A @ ( coindu1079202755ist_of @ A @ Xs ) )
% 3.04/1.64        = Xs ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_99_lstrict__prefix__code_I4_J,axiom,
% 3.04/1.64      ! [B: $tType,X: B,Xs: coindu1593790203_llist @ B,Y: B,Ys: coindu1593790203_llist @ B] :
% 3.04/1.64        ( ( coindu574146665prefix @ B @ ( coindu1121789889_LCons @ B @ X @ Xs ) @ ( coindu1121789889_LCons @ B @ Y @ Ys ) )
% 3.04/1.64        = ( ( X = Y )
% 3.04/1.64          & ( coindu574146665prefix @ B @ Xs @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_100_lstrict__prefix__code_I1_J,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ~ ( coindu574146665prefix @ A @ ( coindu1598213697e_LNil @ A ) @ ( coindu1598213697e_LNil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_101_llist__less__induct,axiom,
% 3.04/1.64      ! [A: $tType,P: ( coindu1593790203_llist @ A ) > $o,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ! [Xs2: coindu1593790203_llist @ A] :
% 3.04/1.64            ( ! [Ys4: coindu1593790203_llist @ A] :
% 3.04/1.64                ( ( coindu574146665prefix @ A @ Ys4 @ Xs2 )
% 3.04/1.64               => ( P @ Ys4 ) )
% 3.04/1.64           => ( P @ Xs2 ) )
% 3.04/1.64       => ( P @ Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_102_lstrict__prefix__def,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu574146665prefix @ A )
% 3.04/1.64        = ( ^ [Xs3: coindu1593790203_llist @ A,Ys3: coindu1593790203_llist @ A] :
% 3.04/1.64              ( ( coindu1696667936prefix @ A @ Xs3 @ Ys3 )
% 3.04/1.64              & ( Xs3 != Ys3 ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_103_lstrict__prefix__lfinite1,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu574146665prefix @ A @ Xs @ Ys )
% 3.04/1.64       => ( coindu1213758845finite @ A @ Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_104_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix__def,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu1571841457prefix @ A )
% 3.04/1.64        = ( coindu1696667936prefix @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_105_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix__nitpick__simps_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1571841457prefix @ A @ Xs @ ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( coindu1598213697e_LNil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_106_Coinductive__List__Mirabelle__kmikjhschf_Ofinite__lprefix__nitpick__simps_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] : ( coindu1571841457prefix @ A @ ( coindu1598213697e_LNil @ A ) @ Xs ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_107_llast__LCons,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,X: A] :
% 3.04/1.64        ( ( ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64         => ( ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 3.04/1.64            = X ) )
% 3.04/1.64        & ( ~ ( coindu335574135_lnull @ A @ Xs )
% 3.04/1.64         => ( ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 3.04/1.64            = ( coindu2000965700_llast @ A @ Xs ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_108_llast__lappend,axiom,
% 3.04/1.64      ! [A: $tType,Ys: coindu1593790203_llist @ A,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( ( coindu335574135_lnull @ A @ Ys )
% 3.04/1.64         => ( ( coindu2000965700_llast @ A @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 3.04/1.64            = ( coindu2000965700_llast @ A @ Xs ) ) )
% 3.04/1.64        & ( ~ ( coindu335574135_lnull @ A @ Ys )
% 3.04/1.64         => ( ( ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64             => ( ( coindu2000965700_llast @ A @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 3.04/1.64                = ( coindu2000965700_llast @ A @ Ys ) ) )
% 3.04/1.64            & ( ~ ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64             => ( ( coindu2000965700_llast @ A @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 3.04/1.64                = ( undefined @ A ) ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_109_list__of__LCons,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,X: A] :
% 3.04/1.64        ( ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64       => ( ( coindu1736001939ist_of @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 3.04/1.64          = ( cons @ A @ X @ ( coindu1736001939ist_of @ A @ Xs ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_110_nth__list__of,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64       => ( ( nth @ A @ ( coindu1736001939ist_of @ A @ Xs ) )
% 3.04/1.64          = ( coindu749330388e_lnth @ A @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_111_llast__llist__of,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( coindu2000965700_llast @ A @ ( coindu1079202755ist_of @ A @ Xs ) )
% 3.04/1.64        = ( last @ A @ Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_112_list__of__lappend,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64       => ( ( coindu1213758845finite @ A @ Ys )
% 3.04/1.64         => ( ( coindu1736001939ist_of @ A @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 3.04/1.64            = ( append @ A @ ( coindu1736001939ist_of @ A @ Xs ) @ ( coindu1736001939ist_of @ A @ Ys ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_113_lnth__llist__of,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( coindu749330388e_lnth @ A @ ( coindu1079202755ist_of @ A @ Xs ) )
% 3.04/1.64        = ( nth @ A @ Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_114_list__of__LCons__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A,X: A] :
% 3.04/1.64        ( ( ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64         => ( ( coindu1736001939ist_of @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 3.04/1.64            = ( cons @ A @ X @ ( coindu1736001939ist_of @ A @ Xs ) ) ) )
% 3.04/1.64        & ( ~ ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64         => ( ( coindu1736001939ist_of @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 3.04/1.64            = ( undefined @ ( list @ A ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_115_lnth__LNil,axiom,
% 3.04/1.64      ! [A: $tType,N: nat] :
% 3.04/1.64        ( ( coindu749330388e_lnth @ A @ ( coindu1598213697e_LNil @ A ) @ N )
% 3.04/1.64        = ( undefined @ ( nat > A ) @ N ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_116_lprefix__llist__ofI,axiom,
% 3.04/1.64      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 3.04/1.64        ( ? [Zs4: list @ A] :
% 3.04/1.64            ( Ys
% 3.04/1.64            = ( append @ A @ Xs @ Zs4 ) )
% 3.04/1.64       => ( coindu1696667936prefix @ A @ ( coindu1079202755ist_of @ A @ Xs ) @ ( coindu1079202755ist_of @ A @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_117_lappend__llist__of__llist__of,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( coindu268472904append @ A @ ( coindu1079202755ist_of @ A @ Xs ) @ ( coindu1079202755ist_of @ A @ Ys ) )
% 3.04/1.64        = ( coindu1079202755ist_of @ A @ ( append @ A @ Xs @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_118_llist__of_Osimps_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Xs: list @ A] :
% 3.04/1.64        ( ( coindu1079202755ist_of @ A @ ( cons @ A @ X @ Xs ) )
% 3.04/1.64        = ( coindu1121789889_LCons @ A @ X @ ( coindu1079202755ist_of @ A @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_119_llist__of__eq__LCons__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( ( coindu1079202755ist_of @ A @ Xs )
% 3.04/1.64          = ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 3.04/1.64        = ( ? [Xs4: list @ A] :
% 3.04/1.64              ( ( Xs
% 3.04/1.64                = ( cons @ A @ Y @ Xs4 ) )
% 3.04/1.64              & ( Ys
% 3.04/1.64                = ( coindu1079202755ist_of @ A @ Xs4 ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_120_llast__LNil,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu2000965700_llast @ A @ ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64        = ( undefined @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_121_llast__linfinite,axiom,
% 3.04/1.64      ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ~ ( coindu1213758845finite @ A @ Xs )
% 3.04/1.64       => ( ( coindu2000965700_llast @ A @ Xs )
% 3.04/1.64          = ( undefined @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_122_append__assoc,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 3.04/1.64        ( ( append @ A @ ( append @ A @ Xs @ Ys ) @ Zs )
% 3.04/1.64        = ( append @ A @ Xs @ ( append @ A @ Ys @ Zs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_123_append__same__eq,axiom,
% 3.04/1.64      ! [A: $tType,Ys: list @ A,Xs: list @ A,Zs: list @ A] :
% 3.04/1.64        ( ( ( append @ A @ Ys @ Xs )
% 3.04/1.64          = ( append @ A @ Zs @ Xs ) )
% 3.04/1.64        = ( Ys = Zs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_124_same__append__eq,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 3.04/1.64        ( ( ( append @ A @ Xs @ Ys )
% 3.04/1.64          = ( append @ A @ Xs @ Zs ) )
% 3.04/1.64        = ( Ys = Zs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_125_list_Oinject,axiom,
% 3.04/1.64      ! [A: $tType,X21: A,X22: list @ A,Y21: A,Y22: list @ A] :
% 3.04/1.64        ( ( ( cons @ A @ X21 @ X22 )
% 3.04/1.64          = ( cons @ A @ Y21 @ Y22 ) )
% 3.04/1.64        = ( ( X21 = Y21 )
% 3.04/1.64          & ( X22 = Y22 ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_126_not__Cons__self2,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Xs: list @ A] :
% 3.04/1.64        ( ( cons @ A @ X @ Xs )
% 3.04/1.64       != Xs ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_127_append__eq__append__conv2,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A,Zs: list @ A,Ts: list @ A] :
% 3.04/1.64        ( ( ( append @ A @ Xs @ Ys )
% 3.04/1.64          = ( append @ A @ Zs @ Ts ) )
% 3.04/1.64        = ( ? [Us: list @ A] :
% 3.04/1.64              ( ( ( Xs
% 3.04/1.64                  = ( append @ A @ Zs @ Us ) )
% 3.04/1.64                & ( ( append @ A @ Us @ Ys )
% 3.04/1.64                  = Ts ) )
% 3.04/1.64              | ( ( ( append @ A @ Xs @ Us )
% 3.04/1.64                  = Zs )
% 3.04/1.64                & ( Ys
% 3.04/1.64                  = ( append @ A @ Us @ Ts ) ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_128_append__eq__appendI,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Xs1: list @ A,Zs: list @ A,Ys: list @ A,Us2: list @ A] :
% 3.04/1.64        ( ( ( append @ A @ Xs @ Xs1 )
% 3.04/1.64          = Zs )
% 3.04/1.64       => ( ( Ys
% 3.04/1.64            = ( append @ A @ Xs1 @ Us2 ) )
% 3.04/1.64         => ( ( append @ A @ Xs @ Ys )
% 3.04/1.64            = ( append @ A @ Zs @ Us2 ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_129_append__Cons,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( append @ A @ ( cons @ A @ X @ Xs ) @ Ys )
% 3.04/1.64        = ( cons @ A @ X @ ( append @ A @ Xs @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_130_Cons__eq__appendI,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Xs1: list @ A,Ys: list @ A,Xs: list @ A,Zs: list @ A] :
% 3.04/1.64        ( ( ( cons @ A @ X @ Xs1 )
% 3.04/1.64          = Ys )
% 3.04/1.64       => ( ( Xs
% 3.04/1.64            = ( append @ A @ Xs1 @ Zs ) )
% 3.04/1.64         => ( ( cons @ A @ X @ Xs )
% 3.04/1.64            = ( append @ A @ Ys @ Zs ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_131_bind__simps_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,X: B,Xs: list @ B,F: B > ( list @ A )] :
% 3.04/1.64        ( ( bind @ B @ A @ ( cons @ B @ X @ Xs ) @ F )
% 3.04/1.64        = ( append @ A @ ( F @ X ) @ ( bind @ B @ A @ Xs @ F ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_132_lappend__llist__of__LCons,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu268472904append @ A @ ( coindu1079202755ist_of @ A @ Xs ) @ ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 3.04/1.64        = ( coindu268472904append @ A @ ( coindu1079202755ist_of @ A @ ( append @ A @ Xs @ ( cons @ A @ Y @ ( nil @ A ) ) ) ) @ Ys ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_133_list__of__aux__code_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 3.04/1.64        ( ( coindu1542816657of_aux @ A @ Xs @ ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 3.04/1.64        = ( coindu1542816657of_aux @ A @ ( cons @ A @ Y @ Xs ) @ Ys ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_134_maps__simps_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,F: B > ( list @ A ),X: B,Xs: list @ B] :
% 3.04/1.64        ( ( maps @ B @ A @ F @ ( cons @ B @ X @ Xs ) )
% 3.04/1.64        = ( append @ A @ ( F @ X ) @ ( maps @ B @ A @ F @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_135_append__is__Nil__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( ( append @ A @ Xs @ Ys )
% 3.04/1.64          = ( nil @ A ) )
% 3.04/1.64        = ( ( Xs
% 3.04/1.64            = ( nil @ A ) )
% 3.04/1.64          & ( Ys
% 3.04/1.64            = ( nil @ A ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_136_Nil__is__append__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( ( nil @ A )
% 3.04/1.64          = ( append @ A @ Xs @ Ys ) )
% 3.04/1.64        = ( ( Xs
% 3.04/1.64            = ( nil @ A ) )
% 3.04/1.64          & ( Ys
% 3.04/1.64            = ( nil @ A ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_137_self__append__conv2,axiom,
% 3.04/1.64      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 3.04/1.64        ( ( Ys
% 3.04/1.64          = ( append @ A @ Xs @ Ys ) )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_138_append__self__conv2,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( ( append @ A @ Xs @ Ys )
% 3.04/1.64          = Ys )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_139_self__append__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( Xs
% 3.04/1.64          = ( append @ A @ Xs @ Ys ) )
% 3.04/1.64        = ( Ys
% 3.04/1.64          = ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_140_append__self__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( ( append @ A @ Xs @ Ys )
% 3.04/1.64          = Xs )
% 3.04/1.64        = ( Ys
% 3.04/1.64          = ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_141_append__Nil2,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( append @ A @ Xs @ ( nil @ A ) )
% 3.04/1.64        = Xs ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_142_bind__simps_I1_J,axiom,
% 3.04/1.64      ! [B: $tType,A: $tType,F: B > ( list @ A )] :
% 3.04/1.64        ( ( bind @ B @ A @ ( nil @ B ) @ F )
% 3.04/1.64        = ( nil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_143_append1__eq__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,X: A,Ys: list @ A,Y: A] :
% 3.04/1.64        ( ( ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) )
% 3.04/1.64          = ( append @ A @ Ys @ ( cons @ A @ Y @ ( nil @ A ) ) ) )
% 3.04/1.64        = ( ( Xs = Ys )
% 3.04/1.64          & ( X = Y ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_144_lnull__llist__of,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( coindu335574135_lnull @ A @ ( coindu1079202755ist_of @ A @ Xs ) )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_145_last__appendL,axiom,
% 3.04/1.64      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 3.04/1.64        ( ( Ys
% 3.04/1.64          = ( nil @ A ) )
% 3.04/1.64       => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 3.04/1.64          = ( last @ A @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_146_last__appendR,axiom,
% 3.04/1.64      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 3.04/1.64        ( ( Ys
% 3.04/1.64         != ( nil @ A ) )
% 3.04/1.64       => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 3.04/1.64          = ( last @ A @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_147_list__of__LNil,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu1736001939ist_of @ A @ ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64        = ( nil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_148_last__snoc,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,X: A] :
% 3.04/1.64        ( ( last @ A @ ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) ) )
% 3.04/1.64        = X ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_149_list_Odistinct_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,X21: A,X22: list @ A] :
% 3.04/1.64        ( ( nil @ A )
% 3.04/1.64       != ( cons @ A @ X21 @ X22 ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_150_list_OdiscI,axiom,
% 3.04/1.64      ! [A: $tType,List: list @ A,X21: A,X22: list @ A] :
% 3.04/1.64        ( ( List
% 3.04/1.64          = ( cons @ A @ X21 @ X22 ) )
% 3.04/1.64       => ( List
% 3.04/1.64         != ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_151_list_Oexhaust,axiom,
% 3.04/1.64      ! [A: $tType,Y: list @ A] :
% 3.04/1.64        ( ( Y
% 3.04/1.64         != ( nil @ A ) )
% 3.04/1.64       => ~ ! [X212: A,X222: list @ A] :
% 3.04/1.64              ( Y
% 3.04/1.64             != ( cons @ A @ X212 @ X222 ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_152_list_Oinducts,axiom,
% 3.04/1.64      ! [A: $tType,P: ( list @ A ) > $o,List: list @ A] :
% 3.04/1.64        ( ( P @ ( nil @ A ) )
% 3.04/1.64       => ( ! [X1: A,X23: list @ A] :
% 3.04/1.64              ( ( P @ X23 )
% 3.04/1.64             => ( P @ ( cons @ A @ X1 @ X23 ) ) )
% 3.04/1.64         => ( P @ List ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_153_neq__Nil__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( Xs
% 3.04/1.64         != ( nil @ A ) )
% 3.04/1.64        = ( ? [Y2: A,Ys3: list @ A] :
% 3.04/1.64              ( Xs
% 3.04/1.64              = ( cons @ A @ Y2 @ Ys3 ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_154_list__induct2_H,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,P: ( list @ A ) > ( list @ B ) > $o,Xs: list @ A,Ys: list @ B] :
% 3.04/1.64        ( ( P @ ( nil @ A ) @ ( nil @ B ) )
% 3.04/1.64       => ( ! [X3: A,Xs2: list @ A] : ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( nil @ B ) )
% 3.04/1.64         => ( ! [Y3: B,Ys2: list @ B] : ( P @ ( nil @ A ) @ ( cons @ B @ Y3 @ Ys2 ) )
% 3.04/1.64           => ( ! [X3: A,Xs2: list @ A,Y3: B,Ys2: list @ B] :
% 3.04/1.64                  ( ( P @ Xs2 @ Ys2 )
% 3.04/1.64                 => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ B @ Y3 @ Ys2 ) ) )
% 3.04/1.64             => ( P @ Xs @ Ys ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_155_splice_Oinduct,axiom,
% 3.04/1.64      ! [A: $tType,P: ( list @ A ) > ( list @ A ) > $o,A0: list @ A,A1: list @ A] :
% 3.04/1.64        ( ! [X1: list @ A] : ( P @ ( nil @ A ) @ X1 )
% 3.04/1.64       => ( ! [V: A,Va: list @ A] : ( P @ ( cons @ A @ V @ Va ) @ ( nil @ A ) )
% 3.04/1.64         => ( ! [X3: A,Xs2: list @ A,Y3: A,Ys2: list @ A] :
% 3.04/1.64                ( ( P @ Xs2 @ Ys2 )
% 3.04/1.64               => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ A @ Y3 @ Ys2 ) ) )
% 3.04/1.64           => ( P @ A0 @ A1 ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_156_eq__Nil__appendI,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( Xs = Ys )
% 3.04/1.64       => ( Xs
% 3.04/1.64          = ( append @ A @ ( nil @ A ) @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_157_transpose_Ocases,axiom,
% 3.04/1.64      ! [A: $tType,X: list @ ( list @ A )] :
% 3.04/1.64        ( ( X
% 3.04/1.64         != ( nil @ ( list @ A ) ) )
% 3.04/1.64       => ( ! [Xss: list @ ( list @ A )] :
% 3.04/1.64              ( X
% 3.04/1.64             != ( cons @ ( list @ A ) @ ( nil @ A ) @ Xss ) )
% 3.04/1.64         => ~ ! [X3: A,Xs2: list @ A,Xss: list @ ( list @ A )] :
% 3.04/1.64                ( X
% 3.04/1.64               != ( cons @ ( list @ A ) @ ( cons @ A @ X3 @ Xs2 ) @ Xss ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_158_append__Nil,axiom,
% 3.04/1.64      ! [A: $tType,Ys: list @ A] :
% 3.04/1.64        ( ( append @ A @ ( nil @ A ) @ Ys )
% 3.04/1.64        = Ys ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_159_remdups__adj_Ocases,axiom,
% 3.04/1.64      ! [A: $tType,X: list @ A] :
% 3.04/1.64        ( ( X
% 3.04/1.64         != ( nil @ A ) )
% 3.04/1.64       => ( ! [X3: A] :
% 3.04/1.64              ( X
% 3.04/1.64             != ( cons @ A @ X3 @ ( nil @ A ) ) )
% 3.04/1.64         => ~ ! [X3: A,Y3: A,Xs2: list @ A] :
% 3.04/1.64                ( X
% 3.04/1.64               != ( cons @ A @ X3 @ ( cons @ A @ Y3 @ Xs2 ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_160_remdups__adj_Oinduct,axiom,
% 3.04/1.64      ! [A: $tType,P: ( list @ A ) > $o,A0: list @ A] :
% 3.04/1.64        ( ( P @ ( nil @ A ) )
% 3.04/1.64       => ( ! [X3: A] : ( P @ ( cons @ A @ X3 @ ( nil @ A ) ) )
% 3.04/1.64         => ( ! [X3: A,Y3: A,Xs2: list @ A] :
% 3.04/1.64                ( ( ( X3 = Y3 )
% 3.04/1.64                 => ( P @ ( cons @ A @ X3 @ Xs2 ) ) )
% 3.04/1.64               => ( ( ( X3 != Y3 )
% 3.04/1.64                   => ( P @ ( cons @ A @ Y3 @ Xs2 ) ) )
% 3.04/1.64                 => ( P @ ( cons @ A @ X3 @ ( cons @ A @ Y3 @ Xs2 ) ) ) ) )
% 3.04/1.64           => ( P @ A0 ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_161_list__nonempty__induct,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,P: ( list @ A ) > $o] :
% 3.04/1.64        ( ( Xs
% 3.04/1.64         != ( nil @ A ) )
% 3.04/1.64       => ( ! [X3: A] : ( P @ ( cons @ A @ X3 @ ( nil @ A ) ) )
% 3.04/1.64         => ( ! [X3: A,Xs2: list @ A] :
% 3.04/1.64                ( ( Xs2
% 3.04/1.64                 != ( nil @ A ) )
% 3.04/1.64               => ( ( P @ Xs2 )
% 3.04/1.64                 => ( P @ ( cons @ A @ X3 @ Xs2 ) ) ) )
% 3.04/1.64           => ( P @ Xs ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_162_map__tailrec__rev_Oinduct,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,P: ( A > B ) > ( list @ A ) > ( list @ B ) > $o,A0: A > B,A1: list @ A,A22: list @ B] :
% 3.04/1.64        ( ! [F2: A > B,X1: list @ B] : ( P @ F2 @ ( nil @ A ) @ X1 )
% 3.04/1.64       => ( ! [F2: A > B,A4: A,As: list @ A,Bs: list @ B] :
% 3.04/1.64              ( ( P @ F2 @ As @ ( cons @ B @ ( F2 @ A4 ) @ Bs ) )
% 3.04/1.64             => ( P @ F2 @ ( cons @ A @ A4 @ As ) @ Bs ) )
% 3.04/1.64         => ( P @ A0 @ A1 @ A22 ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_163_maps__simps_I2_J,axiom,
% 3.04/1.64      ! [B: $tType,A: $tType,F: B > ( list @ A )] :
% 3.04/1.64        ( ( maps @ B @ A @ F @ ( nil @ B ) )
% 3.04/1.64        = ( nil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_164_list__of__code,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu1736001939ist_of @ A )
% 3.04/1.64        = ( coindu1542816657of_aux @ A @ ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_165_rev__induct,axiom,
% 3.04/1.64      ! [A: $tType,P: ( list @ A ) > $o,Xs: list @ A] :
% 3.04/1.64        ( ( P @ ( nil @ A ) )
% 3.04/1.64       => ( ! [X3: A,Xs2: list @ A] :
% 3.04/1.64              ( ( P @ Xs2 )
% 3.04/1.64             => ( P @ ( append @ A @ Xs2 @ ( cons @ A @ X3 @ ( nil @ A ) ) ) ) )
% 3.04/1.64         => ( P @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_166_rev__exhaust,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( Xs
% 3.04/1.64         != ( nil @ A ) )
% 3.04/1.64       => ~ ! [Ys2: list @ A,Y3: A] :
% 3.04/1.64              ( Xs
% 3.04/1.64             != ( append @ A @ Ys2 @ ( cons @ A @ Y3 @ ( nil @ A ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_167_Cons__eq__append__conv,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Xs: list @ A,Ys: list @ A,Zs: list @ A] :
% 3.04/1.64        ( ( ( cons @ A @ X @ Xs )
% 3.04/1.64          = ( append @ A @ Ys @ Zs ) )
% 3.04/1.64        = ( ( ( Ys
% 3.04/1.64              = ( nil @ A ) )
% 3.04/1.64            & ( ( cons @ A @ X @ Xs )
% 3.04/1.64              = Zs ) )
% 3.04/1.64          | ? [Ys5: list @ A] :
% 3.04/1.64              ( ( ( cons @ A @ X @ Ys5 )
% 3.04/1.64                = Ys )
% 3.04/1.64              & ( Xs
% 3.04/1.64                = ( append @ A @ Ys5 @ Zs ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_168_append__eq__Cons__conv,axiom,
% 3.04/1.64      ! [A: $tType,Ys: list @ A,Zs: list @ A,X: A,Xs: list @ A] :
% 3.04/1.64        ( ( ( append @ A @ Ys @ Zs )
% 3.04/1.64          = ( cons @ A @ X @ Xs ) )
% 3.04/1.64        = ( ( ( Ys
% 3.04/1.64              = ( nil @ A ) )
% 3.04/1.64            & ( Zs
% 3.04/1.64              = ( cons @ A @ X @ Xs ) ) )
% 3.04/1.64          | ? [Ys5: list @ A] :
% 3.04/1.64              ( ( Ys
% 3.04/1.64                = ( cons @ A @ X @ Ys5 ) )
% 3.04/1.64              & ( ( append @ A @ Ys5 @ Zs )
% 3.04/1.64                = Xs ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_169_rev__nonempty__induct,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,P: ( list @ A ) > $o] :
% 3.04/1.64        ( ( Xs
% 3.04/1.64         != ( nil @ A ) )
% 3.04/1.64       => ( ! [X3: A] : ( P @ ( cons @ A @ X3 @ ( nil @ A ) ) )
% 3.04/1.64         => ( ! [X3: A,Xs2: list @ A] :
% 3.04/1.64                ( ( Xs2
% 3.04/1.64                 != ( nil @ A ) )
% 3.04/1.64               => ( ( P @ Xs2 )
% 3.04/1.64                 => ( P @ ( append @ A @ Xs2 @ ( cons @ A @ X3 @ ( nil @ A ) ) ) ) ) )
% 3.04/1.64           => ( P @ Xs ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_170_last_Osimps,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,X: A] :
% 3.04/1.64        ( ( ( Xs
% 3.04/1.64            = ( nil @ A ) )
% 3.04/1.64         => ( ( last @ A @ ( cons @ A @ X @ Xs ) )
% 3.04/1.64            = X ) )
% 3.04/1.64        & ( ( Xs
% 3.04/1.64           != ( nil @ A ) )
% 3.04/1.64         => ( ( last @ A @ ( cons @ A @ X @ Xs ) )
% 3.04/1.64            = ( last @ A @ Xs ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_171_last__ConsL,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,X: A] :
% 3.04/1.64        ( ( Xs
% 3.04/1.64          = ( nil @ A ) )
% 3.04/1.64       => ( ( last @ A @ ( cons @ A @ X @ Xs ) )
% 3.04/1.64          = X ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_172_last__ConsR,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,X: A] :
% 3.04/1.64        ( ( Xs
% 3.04/1.64         != ( nil @ A ) )
% 3.04/1.64       => ( ( last @ A @ ( cons @ A @ X @ Xs ) )
% 3.04/1.64          = ( last @ A @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_173_llist__of_Osimps_I1_J,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu1079202755ist_of @ A @ ( nil @ A ) )
% 3.04/1.64        = ( coindu1598213697e_LNil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_174_llist__of__eq__LNil__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( ( coindu1079202755ist_of @ A @ Xs )
% 3.04/1.64          = ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_175_last__append,axiom,
% 3.04/1.64      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 3.04/1.64        ( ( ( Ys
% 3.04/1.64            = ( nil @ A ) )
% 3.04/1.64         => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 3.04/1.64            = ( last @ A @ Xs ) ) )
% 3.04/1.64        & ( ( Ys
% 3.04/1.64           != ( nil @ A ) )
% 3.04/1.64         => ( ( last @ A @ ( append @ A @ Xs @ Ys ) )
% 3.04/1.64            = ( last @ A @ Ys ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_176_longest__common__suffix,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64      ? [Ss: list @ A,Xs6: list @ A,Ys6: list @ A] :
% 3.04/1.64        ( ( Xs
% 3.04/1.64          = ( append @ A @ Xs6 @ Ss ) )
% 3.04/1.64        & ( Ys
% 3.04/1.64          = ( append @ A @ Ys6 @ Ss ) )
% 3.04/1.64        & ( ( Xs6
% 3.04/1.64            = ( nil @ A ) )
% 3.04/1.64          | ( Ys6
% 3.04/1.64            = ( nil @ A ) )
% 3.04/1.64          | ( ( last @ A @ Xs6 )
% 3.04/1.64           != ( last @ A @ Ys6 ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_177_longest__common__prefix_Oinduct,axiom,
% 3.04/1.64      ! [A: $tType,P: ( list @ A ) > ( list @ A ) > $o,A0: list @ A,A1: list @ A] :
% 3.04/1.64        ( ! [X3: A,Xs2: list @ A,Y3: A,Ys2: list @ A] :
% 3.04/1.64            ( ( ( X3 = Y3 )
% 3.04/1.64             => ( P @ Xs2 @ Ys2 ) )
% 3.04/1.64           => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ A @ Y3 @ Ys2 ) ) )
% 3.04/1.64       => ( ! [X1: list @ A] : ( P @ ( nil @ A ) @ X1 )
% 3.04/1.64         => ( ! [Uu: list @ A] : ( P @ Uu @ ( nil @ A ) )
% 3.04/1.64           => ( P @ A0 @ A1 ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_178_prefixes_Oinduct,axiom,
% 3.04/1.64      ! [A: $tType,P: ( list @ A ) > $o,A0: list @ A] :
% 3.04/1.64        ( ( P @ ( nil @ A ) )
% 3.04/1.64       => ( ! [X3: A,Xs2: list @ A] :
% 3.04/1.64              ( ( P @ Xs2 )
% 3.04/1.64             => ( P @ ( cons @ A @ X3 @ Xs2 ) ) )
% 3.04/1.64         => ( P @ A0 ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_179_prefixes_Ocases,axiom,
% 3.04/1.64      ! [A: $tType,X: list @ A] :
% 3.04/1.64        ( ( X
% 3.04/1.64         != ( nil @ A ) )
% 3.04/1.64       => ~ ! [X3: A,Xs2: list @ A] :
% 3.04/1.64              ( X
% 3.04/1.64             != ( cons @ A @ X3 @ Xs2 ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_180_list__of__aux__def,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( coindu1542816657of_aux @ A )
% 3.04/1.64        = ( ^ [Xs3: list @ A,Ys3: coindu1593790203_llist @ A] : ( if @ ( list @ A ) @ ( coindu1213758845finite @ A @ Ys3 ) @ ( append @ A @ ( rev @ A @ Xs3 ) @ ( coindu1736001939ist_of @ A @ Ys3 ) ) @ ( undefined @ ( list @ A ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_181_rev__rev__ident,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( rev @ A @ ( rev @ A @ Xs ) )
% 3.04/1.64        = Xs ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_182_rev__is__rev__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( ( rev @ A @ Xs )
% 3.04/1.64          = ( rev @ A @ Ys ) )
% 3.04/1.64        = ( Xs = Ys ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_183_rev__is__Nil__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( ( rev @ A @ Xs )
% 3.04/1.64          = ( nil @ A ) )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_184_Nil__is__rev__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( ( nil @ A )
% 3.04/1.64          = ( rev @ A @ Xs ) )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_185_rev__append,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( rev @ A @ ( append @ A @ Xs @ Ys ) )
% 3.04/1.64        = ( append @ A @ ( rev @ A @ Ys ) @ ( rev @ A @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_186_singleton__rev__conv,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Xs: list @ A] :
% 3.04/1.64        ( ( ( cons @ A @ X @ ( nil @ A ) )
% 3.04/1.64          = ( rev @ A @ Xs ) )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( cons @ A @ X @ ( nil @ A ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_187_rev__singleton__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,X: A] :
% 3.04/1.64        ( ( ( rev @ A @ Xs )
% 3.04/1.64          = ( cons @ A @ X @ ( nil @ A ) ) )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( cons @ A @ X @ ( nil @ A ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_188_rev__eq__Cons__iff,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Y: A,Ys: list @ A] :
% 3.04/1.64        ( ( ( rev @ A @ Xs )
% 3.04/1.64          = ( cons @ A @ Y @ Ys ) )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( append @ A @ ( rev @ A @ Ys ) @ ( cons @ A @ Y @ ( nil @ A ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_189_rev_Osimps_I1_J,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( rev @ A @ ( nil @ A ) )
% 3.04/1.64        = ( nil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_190_rev__swap,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( ( rev @ A @ Xs )
% 3.04/1.64          = Ys )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( rev @ A @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_191_list__of__aux__code_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( coindu1542816657of_aux @ A @ Xs @ ( coindu1598213697e_LNil @ A ) )
% 3.04/1.64        = ( rev @ A @ Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_192_rev_Osimps_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Xs: list @ A] :
% 3.04/1.64        ( ( rev @ A @ ( cons @ A @ X @ Xs ) )
% 3.04/1.64        = ( append @ A @ ( rev @ A @ Xs ) @ ( cons @ A @ X @ ( nil @ A ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_193_prefixes__snoc,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,X: A] :
% 3.04/1.64        ( ( prefixes @ A @ ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) ) )
% 3.04/1.64        = ( append @ ( list @ A ) @ ( prefixes @ A @ Xs ) @ ( cons @ ( list @ A ) @ ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) ) @ ( nil @ ( list @ A ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_194_prefixes__eq__Snoc,axiom,
% 3.04/1.64      ! [A: $tType,Ys: list @ A,Xs: list @ ( list @ A ),X: list @ A] :
% 3.04/1.64        ( ( ( prefixes @ A @ Ys )
% 3.04/1.64          = ( append @ ( list @ A ) @ Xs @ ( cons @ ( list @ A ) @ X @ ( nil @ ( list @ A ) ) ) ) )
% 3.04/1.64        = ( ( ( ( Ys
% 3.04/1.64                = ( nil @ A ) )
% 3.04/1.64              & ( Xs
% 3.04/1.64                = ( nil @ ( list @ A ) ) ) )
% 3.04/1.64            | ? [Z2: A,Zs2: list @ A] :
% 3.04/1.64                ( ( Ys
% 3.04/1.64                  = ( append @ A @ Zs2 @ ( cons @ A @ Z2 @ ( nil @ A ) ) ) )
% 3.04/1.64                & ( Xs
% 3.04/1.64                  = ( prefixes @ A @ Zs2 ) ) ) )
% 3.04/1.64          & ( X = Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_195_sublists_Osimps_I1_J,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( sublists @ A @ ( nil @ A ) )
% 3.04/1.64        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_196_prefixes_Osimps_I1_J,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( prefixes @ A @ ( nil @ A ) )
% 3.04/1.64        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_197_append__butlast__last__id,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( Xs
% 3.04/1.64         != ( nil @ A ) )
% 3.04/1.64       => ( ( append @ A @ ( butlast @ A @ Xs ) @ ( cons @ A @ ( last @ A @ Xs ) @ ( nil @ A ) ) )
% 3.04/1.64          = Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_198_product__lists_Osimps_I1_J,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( product_lists @ A @ ( nil @ ( list @ A ) ) )
% 3.04/1.64        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_199_butlast__snoc,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,X: A] :
% 3.04/1.64        ( ( butlast @ A @ ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) ) )
% 3.04/1.64        = Xs ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_200_butlast_Osimps_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,X: A] :
% 3.04/1.64        ( ( ( Xs
% 3.04/1.64            = ( nil @ A ) )
% 3.04/1.64         => ( ( butlast @ A @ ( cons @ A @ X @ Xs ) )
% 3.04/1.64            = ( nil @ A ) ) )
% 3.04/1.64        & ( ( Xs
% 3.04/1.64           != ( nil @ A ) )
% 3.04/1.64         => ( ( butlast @ A @ ( cons @ A @ X @ Xs ) )
% 3.04/1.64            = ( cons @ A @ X @ ( butlast @ A @ Xs ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_201_butlast_Osimps_I1_J,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( butlast @ A @ ( nil @ A ) )
% 3.04/1.64        = ( nil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_202_butlast__append,axiom,
% 3.04/1.64      ! [A: $tType,Ys: list @ A,Xs: list @ A] :
% 3.04/1.64        ( ( ( Ys
% 3.04/1.64            = ( nil @ A ) )
% 3.04/1.64         => ( ( butlast @ A @ ( append @ A @ Xs @ Ys ) )
% 3.04/1.64            = ( butlast @ A @ Xs ) ) )
% 3.04/1.64        & ( ( Ys
% 3.04/1.64           != ( nil @ A ) )
% 3.04/1.64         => ( ( butlast @ A @ ( append @ A @ Xs @ Ys ) )
% 3.04/1.64            = ( append @ A @ Xs @ ( butlast @ A @ Ys ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_203_snoc__eq__iff__butlast,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,X: A,Ys: list @ A] :
% 3.04/1.64        ( ( ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) )
% 3.04/1.64          = Ys )
% 3.04/1.64        = ( ( Ys
% 3.04/1.64           != ( nil @ A ) )
% 3.04/1.64          & ( ( butlast @ A @ Ys )
% 3.04/1.64            = Xs )
% 3.04/1.64          & ( ( last @ A @ Ys )
% 3.04/1.64            = X ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_204_prefixes_Oelims,axiom,
% 3.04/1.64      ! [A: $tType,X: list @ A,Y: list @ ( list @ A )] :
% 3.04/1.64        ( ( ( prefixes @ A @ X )
% 3.04/1.64          = Y )
% 3.04/1.64       => ( ( ( X
% 3.04/1.64              = ( nil @ A ) )
% 3.04/1.64           => ( Y
% 3.04/1.64             != ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) ) )
% 3.04/1.64         => ~ ! [X3: A,Xs2: list @ A] :
% 3.04/1.64                ( ( X
% 3.04/1.64                  = ( cons @ A @ X3 @ Xs2 ) )
% 3.04/1.64               => ( Y
% 3.04/1.64                 != ( cons @ ( list @ A ) @ ( nil @ A ) @ ( map @ ( list @ A ) @ ( list @ A ) @ ( cons @ A @ X3 ) @ ( prefixes @ A @ Xs2 ) ) ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_205_insert__Nil,axiom,
% 3.04/1.64      ! [A: $tType,X: A] :
% 3.04/1.64        ( ( insert @ A @ X @ ( nil @ A ) )
% 3.04/1.64        = ( cons @ A @ X @ ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_206_list_Omap__disc__iff,axiom,
% 3.04/1.64      ! [B: $tType,A: $tType,F: A > B,A2: list @ A] :
% 3.04/1.64        ( ( ( map @ A @ B @ F @ A2 )
% 3.04/1.64          = ( nil @ B ) )
% 3.04/1.64        = ( A2
% 3.04/1.64          = ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_207_map__is__Nil__conv,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 3.04/1.64        ( ( ( map @ B @ A @ F @ Xs )
% 3.04/1.64          = ( nil @ A ) )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( nil @ B ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_208_Nil__is__map__conv,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 3.04/1.64        ( ( ( nil @ A )
% 3.04/1.64          = ( map @ B @ A @ F @ Xs ) )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( nil @ B ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_209_map__append,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B,Ys: list @ B] :
% 3.04/1.64        ( ( map @ B @ A @ F @ ( append @ B @ Xs @ Ys ) )
% 3.04/1.64        = ( append @ A @ ( map @ B @ A @ F @ Xs ) @ ( map @ B @ A @ F @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_210_map__butlast,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 3.04/1.64        ( ( map @ B @ A @ F @ ( butlast @ B @ Xs ) )
% 3.04/1.64        = ( butlast @ A @ ( map @ B @ A @ F @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_211_list_Osimps_I8_J,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,F: A > B] :
% 3.04/1.64        ( ( map @ A @ B @ F @ ( nil @ A ) )
% 3.04/1.64        = ( nil @ B ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_212_rev__map,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 3.04/1.64        ( ( rev @ A @ ( map @ B @ A @ F @ Xs ) )
% 3.04/1.64        = ( map @ B @ A @ F @ ( rev @ B @ Xs ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_213_map__eq__Cons__conv,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B,Y: A,Ys: list @ A] :
% 3.04/1.64        ( ( ( map @ B @ A @ F @ Xs )
% 3.04/1.64          = ( cons @ A @ Y @ Ys ) )
% 3.04/1.64        = ( ? [Z2: B,Zs2: list @ B] :
% 3.04/1.64              ( ( Xs
% 3.04/1.64                = ( cons @ B @ Z2 @ Zs2 ) )
% 3.04/1.64              & ( ( F @ Z2 )
% 3.04/1.64                = Y )
% 3.04/1.64              & ( ( map @ B @ A @ F @ Zs2 )
% 3.04/1.64                = Ys ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_214_Cons__eq__map__conv,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,X: A,Xs: list @ A,F: B > A,Ys: list @ B] :
% 3.04/1.64        ( ( ( cons @ A @ X @ Xs )
% 3.04/1.64          = ( map @ B @ A @ F @ Ys ) )
% 3.04/1.64        = ( ? [Z2: B,Zs2: list @ B] :
% 3.04/1.64              ( ( Ys
% 3.04/1.64                = ( cons @ B @ Z2 @ Zs2 ) )
% 3.04/1.64              & ( X
% 3.04/1.64                = ( F @ Z2 ) )
% 3.04/1.64              & ( Xs
% 3.04/1.64                = ( map @ B @ A @ F @ Zs2 ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_215_map__eq__Cons__D,axiom,
% 3.04/1.64      ! [B: $tType,A: $tType,F: B > A,Xs: list @ B,Y: A,Ys: list @ A] :
% 3.04/1.64        ( ( ( map @ B @ A @ F @ Xs )
% 3.04/1.64          = ( cons @ A @ Y @ Ys ) )
% 3.04/1.64       => ? [Z3: B,Zs5: list @ B] :
% 3.04/1.64            ( ( Xs
% 3.04/1.64              = ( cons @ B @ Z3 @ Zs5 ) )
% 3.04/1.64            & ( ( F @ Z3 )
% 3.04/1.64              = Y )
% 3.04/1.64            & ( ( map @ B @ A @ F @ Zs5 )
% 3.04/1.64              = Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_216_Cons__eq__map__D,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,X: A,Xs: list @ A,F: B > A,Ys: list @ B] :
% 3.04/1.64        ( ( ( cons @ A @ X @ Xs )
% 3.04/1.64          = ( map @ B @ A @ F @ Ys ) )
% 3.04/1.64       => ? [Z3: B,Zs5: list @ B] :
% 3.04/1.64            ( ( Ys
% 3.04/1.64              = ( cons @ B @ Z3 @ Zs5 ) )
% 3.04/1.64            & ( X
% 3.04/1.64              = ( F @ Z3 ) )
% 3.04/1.64            & ( Xs
% 3.04/1.64              = ( map @ B @ A @ F @ Zs5 ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_217_list_Osimps_I9_J,axiom,
% 3.04/1.64      ! [B: $tType,A: $tType,F: A > B,X21: A,X22: list @ A] :
% 3.04/1.64        ( ( map @ A @ B @ F @ ( cons @ A @ X21 @ X22 ) )
% 3.04/1.64        = ( cons @ B @ ( F @ X21 ) @ ( map @ A @ B @ F @ X22 ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_218_last__map,axiom,
% 3.04/1.64      ! [B: $tType,A: $tType,Xs: list @ A,F: A > B] :
% 3.04/1.64        ( ( Xs
% 3.04/1.64         != ( nil @ A ) )
% 3.04/1.64       => ( ( last @ B @ ( map @ A @ B @ F @ Xs ) )
% 3.04/1.64          = ( F @ ( last @ A @ Xs ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_219_prefixes_Osimps_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Xs: list @ A] :
% 3.04/1.64        ( ( prefixes @ A @ ( cons @ A @ X @ Xs ) )
% 3.04/1.64        = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( map @ ( list @ A ) @ ( list @ A ) @ ( cons @ A @ X ) @ ( prefixes @ A @ Xs ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_220_map__tailrec__rev,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType] :
% 3.04/1.64        ( ( map_tailrec_rev @ B @ A )
% 3.04/1.64        = ( ^ [F3: B > A,As2: list @ B] : ( append @ A @ ( rev @ A @ ( map @ B @ A @ F3 @ As2 ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_221_prefixes_Opelims,axiom,
% 3.04/1.64      ! [A: $tType,X: list @ A,Y: list @ ( list @ A )] :
% 3.04/1.64        ( ( ( prefixes @ A @ X )
% 3.04/1.64          = Y )
% 3.04/1.64       => ( ( accp @ ( list @ A ) @ ( prefixes_rel @ A ) @ X )
% 3.04/1.64         => ( ( ( X
% 3.04/1.64                = ( nil @ A ) )
% 3.04/1.64             => ( ( Y
% 3.04/1.64                  = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( nil @ ( list @ A ) ) ) )
% 3.04/1.64               => ~ ( accp @ ( list @ A ) @ ( prefixes_rel @ A ) @ ( nil @ A ) ) ) )
% 3.04/1.64           => ~ ! [X3: A,Xs2: list @ A] :
% 3.04/1.64                  ( ( X
% 3.04/1.64                    = ( cons @ A @ X3 @ Xs2 ) )
% 3.04/1.64                 => ( ( Y
% 3.04/1.64                      = ( cons @ ( list @ A ) @ ( nil @ A ) @ ( map @ ( list @ A ) @ ( list @ A ) @ ( cons @ A @ X3 ) @ ( prefixes @ A @ Xs2 ) ) ) )
% 3.04/1.64                   => ~ ( accp @ ( list @ A ) @ ( prefixes_rel @ A ) @ ( cons @ A @ X3 @ Xs2 ) ) ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_222_map__tailrec__rev_Osimps_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,F: A > B,Bs2: list @ B] :
% 3.04/1.64        ( ( map_tailrec_rev @ A @ B @ F @ ( nil @ A ) @ Bs2 )
% 3.04/1.64        = Bs2 ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_223_map__tailrec__rev_Osimps_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,F: A > B,A2: A,As3: list @ A,Bs2: list @ B] :
% 3.04/1.64        ( ( map_tailrec_rev @ A @ B @ F @ ( cons @ A @ A2 @ As3 ) @ Bs2 )
% 3.04/1.64        = ( map_tailrec_rev @ A @ B @ F @ As3 @ ( cons @ B @ ( F @ A2 ) @ Bs2 ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_224_map__tailrec__rev_Oelims,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,X: A > B,Xa: list @ A,Xb2: list @ B,Y: list @ B] :
% 3.04/1.64        ( ( ( map_tailrec_rev @ A @ B @ X @ Xa @ Xb2 )
% 3.04/1.64          = Y )
% 3.04/1.64       => ( ( ( Xa
% 3.04/1.64              = ( nil @ A ) )
% 3.04/1.64           => ( Y != Xb2 ) )
% 3.04/1.64         => ~ ! [A4: A,As: list @ A] :
% 3.04/1.64                ( ( Xa
% 3.04/1.64                  = ( cons @ A @ A4 @ As ) )
% 3.04/1.64               => ( Y
% 3.04/1.64                 != ( map_tailrec_rev @ A @ B @ X @ As @ ( cons @ B @ ( X @ A4 ) @ Xb2 ) ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_225_map__tailrec__def,axiom,
% 3.04/1.64      ! [B: $tType,A: $tType] :
% 3.04/1.64        ( ( map_tailrec @ A @ B )
% 3.04/1.64        = ( ^ [F3: A > B,As2: list @ A] : ( rev @ B @ ( map_tailrec_rev @ A @ B @ F3 @ As2 @ ( nil @ B ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_226_rotate1_Osimps_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Xs: list @ A] :
% 3.04/1.64        ( ( rotate1 @ A @ ( cons @ A @ X @ Xs ) )
% 3.04/1.64        = ( append @ A @ Xs @ ( cons @ A @ X @ ( nil @ A ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_227_rotate1__is__Nil__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( ( rotate1 @ A @ Xs )
% 3.04/1.64          = ( nil @ A ) )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_228_rotate1_Osimps_I1_J,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( rotate1 @ A @ ( nil @ A ) )
% 3.04/1.64        = ( nil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_229_map__eq__map__tailrec,axiom,
% 3.04/1.64      ! [B: $tType,A: $tType] :
% 3.04/1.64        ( ( map @ A @ B )
% 3.04/1.64        = ( map_tailrec @ A @ B ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_230_list__ex1__simps_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,P: A > $o] :
% 3.04/1.64        ~ ( list_ex1 @ A @ P @ ( nil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_231_strict__suffix__def,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( strict_suffix @ A )
% 3.04/1.64        = ( ^ [Xs3: list @ A,Ys3: list @ A] :
% 3.04/1.64            ? [Us: list @ A] :
% 3.04/1.64              ( ( Ys3
% 3.04/1.64                = ( append @ A @ Us @ Xs3 ) )
% 3.04/1.64              & ( Us
% 3.04/1.64               != ( nil @ A ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_232_ord_Olexordp__eq__simps_I3_J,axiom,
% 3.04/1.64      ! [A: $tType,Less: A > A > $o,X: A,Xs: list @ A] :
% 3.04/1.64        ~ ( lexordp_eq @ A @ Less @ ( cons @ A @ X @ Xs ) @ ( nil @ A ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_233_nth__append__length,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,X: A,Ys: list @ A] :
% 3.04/1.64        ( ( nth @ A @ ( append @ A @ Xs @ ( cons @ A @ X @ Ys ) ) @ ( size_size @ ( list @ A ) @ Xs ) )
% 3.04/1.64        = X ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_234_length__map,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,F: B > A,Xs: list @ B] :
% 3.04/1.64        ( ( size_size @ ( list @ A ) @ ( map @ B @ A @ F @ Xs ) )
% 3.04/1.64        = ( size_size @ ( list @ B ) @ Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_235_append__eq__append__conv,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A,Us2: list @ A,Vs: list @ A] :
% 3.04/1.64        ( ( ( ( size_size @ ( list @ A ) @ Xs )
% 3.04/1.64            = ( size_size @ ( list @ A ) @ Ys ) )
% 3.04/1.64          | ( ( size_size @ ( list @ A ) @ Us2 )
% 3.04/1.64            = ( size_size @ ( list @ A ) @ Vs ) ) )
% 3.04/1.64       => ( ( ( append @ A @ Xs @ Us2 )
% 3.04/1.64            = ( append @ A @ Ys @ Vs ) )
% 3.04/1.64          = ( ( Xs = Ys )
% 3.04/1.64            & ( Us2 = Vs ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_236_length__rev,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( size_size @ ( list @ A ) @ ( rev @ A @ Xs ) )
% 3.04/1.64        = ( size_size @ ( list @ A ) @ Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_237_ord_Olexordp__eq__simps_I4_J,axiom,
% 3.04/1.64      ! [A: $tType,Less: A > A > $o,X: A,Xs: list @ A,Y: A,Ys: list @ A] :
% 3.04/1.64        ( ( lexordp_eq @ A @ Less @ ( cons @ A @ X @ Xs ) @ ( cons @ A @ Y @ Ys ) )
% 3.04/1.64        = ( ( Less @ X @ Y )
% 3.04/1.64          | ( ~ ( Less @ Y @ X )
% 3.04/1.64            & ( lexordp_eq @ A @ Less @ Xs @ Ys ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_238_ord_Olexordp__eq__simps_I2_J,axiom,
% 3.04/1.64      ! [A: $tType,Less: A > A > $o,Xs: list @ A] :
% 3.04/1.64        ( ( lexordp_eq @ A @ Less @ Xs @ ( nil @ A ) )
% 3.04/1.64        = ( Xs
% 3.04/1.64          = ( nil @ A ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_239_ord_Olexordp__eq__simps_I1_J,axiom,
% 3.04/1.64      ! [A: $tType,Less: A > A > $o,Ys: list @ A] : ( lexordp_eq @ A @ Less @ ( nil @ A ) @ Ys ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_240_length__rotate1,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A] :
% 3.04/1.64        ( ( size_size @ ( list @ A ) @ ( rotate1 @ A @ Xs ) )
% 3.04/1.64        = ( size_size @ ( list @ A ) @ Xs ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_241_map__eq__imp__length__eq,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,C: $tType,F: B > A,Xs: list @ B,G: C > A,Ys: list @ C] :
% 3.04/1.64        ( ( ( map @ B @ A @ F @ Xs )
% 3.04/1.64          = ( map @ C @ A @ G @ Ys ) )
% 3.04/1.64       => ( ( size_size @ ( list @ B ) @ Xs )
% 3.04/1.64          = ( size_size @ ( list @ C ) @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_242_ord_Olexordp__eq_Oinducts,axiom,
% 3.04/1.64      ! [A: $tType,Less: A > A > $o,X12: list @ A,X24: list @ A,P: ( list @ A ) > ( list @ A ) > $o] :
% 3.04/1.64        ( ( lexordp_eq @ A @ Less @ X12 @ X24 )
% 3.04/1.64       => ( ! [X1: list @ A] : ( P @ ( nil @ A ) @ X1 )
% 3.04/1.64         => ( ! [X3: A,Y3: A,Xs2: list @ A,Ys2: list @ A] :
% 3.04/1.64                ( ( Less @ X3 @ Y3 )
% 3.04/1.64               => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ A @ Y3 @ Ys2 ) ) )
% 3.04/1.64           => ( ! [X3: A,Y3: A,Xs2: list @ A,Ys2: list @ A] :
% 3.04/1.64                  ( ~ ( Less @ X3 @ Y3 )
% 3.04/1.64                 => ( ~ ( Less @ Y3 @ X3 )
% 3.04/1.64                   => ( ( lexordp_eq @ A @ Less @ Xs2 @ Ys2 )
% 3.04/1.64                     => ( ( P @ Xs2 @ Ys2 )
% 3.04/1.64                       => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ A @ Y3 @ Ys2 ) ) ) ) ) )
% 3.04/1.64             => ( P @ X12 @ X24 ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_243_ord_Olexordp__eq_Osimps,axiom,
% 3.04/1.64      ! [A: $tType] :
% 3.04/1.64        ( ( lexordp_eq @ A )
% 3.04/1.64        = ( ^ [Less2: A > A > $o,A12: list @ A,A23: list @ A] :
% 3.04/1.64              ( ? [Ys3: list @ A] :
% 3.04/1.64                  ( ( A12
% 3.04/1.64                    = ( nil @ A ) )
% 3.04/1.64                  & ( A23 = Ys3 ) )
% 3.04/1.64              | ? [X2: A,Y2: A,Xs3: list @ A,Ys3: list @ A] :
% 3.04/1.64                  ( ( A12
% 3.04/1.64                    = ( cons @ A @ X2 @ Xs3 ) )
% 3.04/1.64                  & ( A23
% 3.04/1.64                    = ( cons @ A @ Y2 @ Ys3 ) )
% 3.04/1.64                  & ( Less2 @ X2 @ Y2 ) )
% 3.04/1.64              | ? [X2: A,Y2: A,Xs3: list @ A,Ys3: list @ A] :
% 3.04/1.64                  ( ( A12
% 3.04/1.64                    = ( cons @ A @ X2 @ Xs3 ) )
% 3.04/1.64                  & ( A23
% 3.04/1.64                    = ( cons @ A @ Y2 @ Ys3 ) )
% 3.04/1.64                  & ~ ( Less2 @ X2 @ Y2 )
% 3.04/1.64                  & ~ ( Less2 @ Y2 @ X2 )
% 3.04/1.64                  & ( lexordp_eq @ A @ Less2 @ Xs3 @ Ys3 ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_244_ord_Olexordp__eq_Ocases,axiom,
% 3.04/1.64      ! [A: $tType,Less: A > A > $o,A1: list @ A,A22: list @ A] :
% 3.04/1.64        ( ( lexordp_eq @ A @ Less @ A1 @ A22 )
% 3.04/1.64       => ( ( ( A1
% 3.04/1.64              = ( nil @ A ) )
% 3.04/1.64           => ! [Ys2: list @ A] : ( A22 != Ys2 ) )
% 3.04/1.64         => ( ! [X3: A] :
% 3.04/1.64                ( ? [Xs2: list @ A] :
% 3.04/1.64                    ( A1
% 3.04/1.64                    = ( cons @ A @ X3 @ Xs2 ) )
% 3.04/1.64               => ! [Y3: A] :
% 3.04/1.64                    ( ? [Ys2: list @ A] :
% 3.04/1.64                        ( A22
% 3.04/1.64                        = ( cons @ A @ Y3 @ Ys2 ) )
% 3.04/1.64                   => ~ ( Less @ X3 @ Y3 ) ) )
% 3.04/1.64           => ~ ! [X3: A,Y3: A,Xs2: list @ A] :
% 3.04/1.64                  ( ( A1
% 3.04/1.64                    = ( cons @ A @ X3 @ Xs2 ) )
% 3.04/1.64                 => ! [Ys2: list @ A] :
% 3.04/1.64                      ( ( A22
% 3.04/1.64                        = ( cons @ A @ Y3 @ Ys2 ) )
% 3.04/1.64                     => ( ~ ( Less @ X3 @ Y3 )
% 3.04/1.64                       => ( ~ ( Less @ Y3 @ X3 )
% 3.04/1.64                         => ~ ( lexordp_eq @ A @ Less @ Xs2 @ Ys2 ) ) ) ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_245_ord_Olexordp__eq_OCons,axiom,
% 3.04/1.64      ! [A: $tType,Less: A > A > $o,X: A,Y: A,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( Less @ X @ Y )
% 3.04/1.64       => ( lexordp_eq @ A @ Less @ ( cons @ A @ X @ Xs ) @ ( cons @ A @ Y @ Ys ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_246_ord_Olexordp__eq_OCons__eq,axiom,
% 3.04/1.64      ! [A: $tType,Less: A > A > $o,X: A,Y: A,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ~ ( Less @ X @ Y )
% 3.04/1.64       => ( ~ ( Less @ Y @ X )
% 3.04/1.64         => ( ( lexordp_eq @ A @ Less @ Xs @ Ys )
% 3.04/1.64           => ( lexordp_eq @ A @ Less @ ( cons @ A @ X @ Xs ) @ ( cons @ A @ Y @ Ys ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_247_ord_Olexordp__eq_ONil,axiom,
% 3.04/1.64      ! [A: $tType,Less: A > A > $o,Ys: list @ A] : ( lexordp_eq @ A @ Less @ ( nil @ A ) @ Ys ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_248_list__induct4,axiom,
% 3.04/1.64      ! [C: $tType,A: $tType,B: $tType,D: $tType,Xs: list @ A,Ys: list @ B,Zs: list @ C,Ws: list @ D,P: ( list @ A ) > ( list @ B ) > ( list @ C ) > ( list @ D ) > $o] :
% 3.04/1.64        ( ( ( size_size @ ( list @ A ) @ Xs )
% 3.04/1.64          = ( size_size @ ( list @ B ) @ Ys ) )
% 3.04/1.64       => ( ( ( size_size @ ( list @ B ) @ Ys )
% 3.04/1.64            = ( size_size @ ( list @ C ) @ Zs ) )
% 3.04/1.64         => ( ( ( size_size @ ( list @ C ) @ Zs )
% 3.04/1.64              = ( size_size @ ( list @ D ) @ Ws ) )
% 3.04/1.64           => ( ( P @ ( nil @ A ) @ ( nil @ B ) @ ( nil @ C ) @ ( nil @ D ) )
% 3.04/1.64             => ( ! [X3: A,Xs2: list @ A,Y3: B,Ys2: list @ B,Z3: C,Zs5: list @ C,W: D,Ws2: list @ D] :
% 3.04/1.64                    ( ( ( size_size @ ( list @ A ) @ Xs2 )
% 3.04/1.64                      = ( size_size @ ( list @ B ) @ Ys2 ) )
% 3.04/1.64                   => ( ( ( size_size @ ( list @ B ) @ Ys2 )
% 3.04/1.64                        = ( size_size @ ( list @ C ) @ Zs5 ) )
% 3.04/1.64                     => ( ( ( size_size @ ( list @ C ) @ Zs5 )
% 3.04/1.64                          = ( size_size @ ( list @ D ) @ Ws2 ) )
% 3.04/1.64                       => ( ( P @ Xs2 @ Ys2 @ Zs5 @ Ws2 )
% 3.04/1.64                         => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ B @ Y3 @ Ys2 ) @ ( cons @ C @ Z3 @ Zs5 ) @ ( cons @ D @ W @ Ws2 ) ) ) ) ) )
% 3.04/1.64               => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_249_list__induct3,axiom,
% 3.04/1.64      ! [B: $tType,A: $tType,C: $tType,Xs: list @ A,Ys: list @ B,Zs: list @ C,P: ( list @ A ) > ( list @ B ) > ( list @ C ) > $o] :
% 3.04/1.64        ( ( ( size_size @ ( list @ A ) @ Xs )
% 3.04/1.64          = ( size_size @ ( list @ B ) @ Ys ) )
% 3.04/1.64       => ( ( ( size_size @ ( list @ B ) @ Ys )
% 3.04/1.64            = ( size_size @ ( list @ C ) @ Zs ) )
% 3.04/1.64         => ( ( P @ ( nil @ A ) @ ( nil @ B ) @ ( nil @ C ) )
% 3.04/1.64           => ( ! [X3: A,Xs2: list @ A,Y3: B,Ys2: list @ B,Z3: C,Zs5: list @ C] :
% 3.04/1.64                  ( ( ( size_size @ ( list @ A ) @ Xs2 )
% 3.04/1.64                    = ( size_size @ ( list @ B ) @ Ys2 ) )
% 3.04/1.64                 => ( ( ( size_size @ ( list @ B ) @ Ys2 )
% 3.04/1.64                      = ( size_size @ ( list @ C ) @ Zs5 ) )
% 3.04/1.64                   => ( ( P @ Xs2 @ Ys2 @ Zs5 )
% 3.04/1.64                     => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ B @ Y3 @ Ys2 ) @ ( cons @ C @ Z3 @ Zs5 ) ) ) ) )
% 3.04/1.64             => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_250_list__induct2,axiom,
% 3.04/1.64      ! [A: $tType,B: $tType,Xs: list @ A,Ys: list @ B,P: ( list @ A ) > ( list @ B ) > $o] :
% 3.04/1.64        ( ( ( size_size @ ( list @ A ) @ Xs )
% 3.04/1.64          = ( size_size @ ( list @ B ) @ Ys ) )
% 3.04/1.64       => ( ( P @ ( nil @ A ) @ ( nil @ B ) )
% 3.04/1.64         => ( ! [X3: A,Xs2: list @ A,Y3: B,Ys2: list @ B] :
% 3.04/1.64                ( ( ( size_size @ ( list @ A ) @ Xs2 )
% 3.04/1.64                  = ( size_size @ ( list @ B ) @ Ys2 ) )
% 3.04/1.64               => ( ( P @ Xs2 @ Ys2 )
% 3.04/1.64                 => ( P @ ( cons @ A @ X3 @ Xs2 ) @ ( cons @ B @ Y3 @ Ys2 ) ) ) )
% 3.04/1.64           => ( P @ Xs @ Ys ) ) ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_251_ord_Olexordp__eq__refl,axiom,
% 3.04/1.64      ! [A: $tType,Less: A > A > $o,Xs: list @ A] : ( lexordp_eq @ A @ Less @ Xs @ Xs ) ).
% 3.04/1.64  
% 3.04/1.64  thf(fact_252_neq__if__length__neq,axiom,
% 3.04/1.64      ! [A: $tType,Xs: list @ A,Ys: list @ A] :
% 3.04/1.64        ( ( ( size_size @ ( list @ A ) @ Xs )
% 3.04/1.64         != ( size_size @ ( list @ A ) @ Ys ) )
% 3.04/1.64       => ( Xs != Ys ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(help_If_3_1_T,axiom,
% 3.04/1.64      ! [P: $o] :
% 3.04/1.64        ( ( P = $true )
% 3.04/1.64        | ( P = $false ) ) ).
% 3.04/1.64  
% 3.04/1.64  thf(help_If_2_1_T,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Y: A] :
% 3.04/1.64        ( ( if @ A @ $false @ X @ Y )
% 3.04/1.64        = Y ) ).
% 3.04/1.64  
% 3.04/1.64  thf(help_If_1_1_T,axiom,
% 3.04/1.64      ! [A: $tType,X: A,Y: A] :
% 3.04/1.64        ( ( if @ A @ $true @ X @ Y )
% 3.04/1.64        = X ) ).
% 3.04/1.64  
% 3.04/1.64  thf(conj_0,conjecture,
% 3.04/1.64      ( ( coindu268472904append @ a @ ( coindu288502823_llist @ a @ f ) @ xs )
% 3.04/1.64      = ( coindu288502823_llist @ a @ f ) ) ).
% 3.04/1.64  ------------------------
% 3.04/1.68  % (17909)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_17806 for (2999ds/2Mi)
% 3.04/1.68  % (17910)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_17806 for (2999ds/275Mi)
% 3.04/1.68  % (17911)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on DTF2THF_17806 for (2999ds/18Mi)
% 3.04/1.68  % (17906)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_17806 for (2999ds/4Mi)
% 3.04/1.68  % (17905)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on DTF2THF_17806 for (2999ds/183Mi)
% 3.04/1.68  % (17907)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_17806 for (2999ds/27Mi)
% 3.04/1.68  % (17908)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on DTF2THF_17806 for (2999ds/2Mi)
% 3.04/1.68  % (17908)Instruction limit reached!
% 3.04/1.68  % (17908)------------------------------
% 3.04/1.68  % (17908)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.04/1.68  % (17908)Termination reason: Unknown
% 3.04/1.68  % (17908)Termination phase: shuffling
% 3.04/1.68  
% 3.04/1.68  % (17908)Memory used [KB]: 1279
% 3.04/1.68  % (17908)Time elapsed: 0.003 s
% 3.04/1.68  % (17908)Instructions burned: 2 (million)
% 3.04/1.68  % (17909)Instruction limit reached!
% 3.04/1.68  % (17909)------------------------------
% 3.04/1.68  % (17909)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.04/1.68  % (17908)------------------------------
% 3.04/1.68  % (17908)------------------------------
% 3.04/1.68  % (17909)Termination reason: Unknown
% 3.04/1.68  % (17909)Termination phase: shuffling
% 3.04/1.68  
% 3.04/1.68  % (17909)Memory used [KB]: 1279
% 3.04/1.68  % (17909)Time elapsed: 0.003 s
% 3.04/1.68  % (17909)Instructions burned: 2 (million)
% 3.04/1.68  % (17909)------------------------------
% 3.04/1.68  % (17909)------------------------------
% 3.04/1.68  % (17906)Instruction limit reached!
% 3.04/1.68  % (17906)------------------------------
% 3.04/1.68  % (17906)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.04/1.68  % (17906)Termination reason: Unknown
% 3.04/1.68  % (17906)Termination phase: shuffling
% 3.04/1.68  
% 3.04/1.68  % (17906)Memory used [KB]: 1407
% 3.04/1.68  % (17906)Time elapsed: 0.004 s
% 3.04/1.68  % (17906)Instructions burned: 4 (million)
% 3.04/1.68  % (17906)------------------------------
% 3.04/1.68  % (17906)------------------------------
% 3.04/1.68  % (17911)Instruction limit reached!
% 3.04/1.68  % (17911)------------------------------
% 3.04/1.68  % (17911)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.04/1.68  % (17911)Termination reason: Unknown
% 3.04/1.68  % (17911)Termination phase: Property scanning
% 3.04/1.68  
% 3.04/1.68  % (17911)Memory used [KB]: 1663
% 3.04/1.68  % (17911)Time elapsed: 0.011 s
% 3.04/1.68  % (17911)Instructions burned: 18 (million)
% 3.04/1.68  % (17911)------------------------------
% 3.04/1.68  % (17911)------------------------------
% 3.04/1.69  % (17907)Instruction limit reached!
% 3.04/1.69  % (17907)------------------------------
% 3.04/1.69  % (17907)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.04/1.69  % (17907)Termination reason: Unknown
% 3.04/1.69  % (17907)Termination phase: Property scanning
% 3.04/1.69  
% 3.04/1.69  % (17907)Memory used [KB]: 1663
% 3.04/1.69  % (17907)Time elapsed: 0.016 s
% 3.04/1.69  % (17907)Instructions burned: 29 (million)
% 3.04/1.69  % (17907)------------------------------
% 3.04/1.69  % (17907)------------------------------
% 3.04/1.69  % (17912)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_17806 for (2999ds/3Mi)
% 3.04/1.69  % (17913)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_17806 for (2999ds/37Mi)
% 3.04/1.69  % (17914)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_17806 for (2999ds/15Mi)
% 3.04/1.69  % (17912)Instruction limit reached!
% 3.04/1.69  % (17912)------------------------------
% 3.04/1.69  % (17912)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.04/1.69  % (17912)Termination reason: Unknown
% 3.04/1.69  % (17912)Termination phase: shuffling
% 3.04/1.69  
% 3.04/1.69  % (17912)Memory used [KB]: 1279
% 3.04/1.69  % (17912)Time elapsed: 0.003 s
% 3.04/1.69  % (17912)Instructions burned: 3 (million)
% 3.04/1.69  % (17912)------------------------------
% 3.04/1.69  % (17912)------------------------------
% 3.09/1.70  % (17915)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_17806 for (2999ds/3Mi)
% 3.09/1.70  % (17914)Instruction limit reached!
% 3.09/1.70  % (17914)------------------------------
% 3.09/1.70  % (17914)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.09/1.70  % (17914)Termination reason: Unknown
% 3.09/1.70  % (17914)Termination phase: shuffling
% 3.09/1.70  
% 3.09/1.70  % (17914)Memory used [KB]: 1535
% 3.09/1.70  % (17914)Time elapsed: 0.009 s
% 3.09/1.70  % (17914)Instructions burned: 15 (million)
% 3.09/1.70  % (17914)------------------------------
% 3.09/1.70  % (17914)------------------------------
% 3.09/1.70  % (17915)Instruction limit reached!
% 3.09/1.70  % (17915)------------------------------
% 3.09/1.70  % (17915)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.09/1.70  % (17915)Termination reason: Unknown
% 3.09/1.70  % (17915)Termination phase: shuffling
% 3.09/1.70  
% 3.09/1.70  % (17915)Memory used [KB]: 1279
% 3.09/1.70  % (17915)Time elapsed: 0.003 s
% 3.09/1.70  % (17915)Instructions burned: 3 (million)
% 3.09/1.70  % (17915)------------------------------
% 3.09/1.70  % (17915)------------------------------
% 3.09/1.70  % (17910)First to succeed.
% 3.09/1.71  % (17916)lrs+1002_1:1_aac=none:au=on:cnfonf=lazy_gen:plsq=on:plsqc=1:plsqr=4203469,65536:i=1041:si=on:rtra=on_0 on DTF2THF_17806 for (2999ds/1041Mi)
% 3.09/1.71  % (17910)Refutation found. Thanks to Tanya!
% 3.09/1.71  % SZS status Theorem for DTF2THF_17806
% 3.09/1.71  % SZS output start Proof for DTF2THF_17806
% 3.09/1.71  thf(type_def_5, type, coindu1593790203_llist: ($tType) > $tType).
% 3.09/1.71  thf(type_def_7, type, nat: $tType).
% 3.09/1.71  thf(type_def_8, type, list: ($tType) > $tType).
% 3.09/1.71  thf(type_def_9, type, itself: ($tType) > $tType).
% 3.09/1.71  thf(type_def_10, type, a: $tType).
% 3.09/1.71  thf(func_def_0, type, coindu1593790203_llist: ($tType) > $tType).
% 3.09/1.71  thf(func_def_1, type, list: ($tType) > $tType).
% 3.09/1.71  thf(func_def_2, type, nat: $tType).
% 3.09/1.71  thf(func_def_3, type, itself: ($tType) > $tType).
% 3.09/1.71  thf(func_def_4, type, a: $tType).
% 3.09/1.71  thf(func_def_5, type, coindu1571841457prefix: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0 > $o)).
% 3.09/1.71  thf(func_def_6, type, coindu288502823_llist: !>[X0: $tType]:((nat > X0) > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_7, type, coindu1529956631erates: !>[X0: $tType]:((X0 > X0) > X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_8, type, coindu268472904append: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_9, type, coindu1213758845finite: !>[X0: $tType]:(coindu1593790203_llist @ X0 > $o)).
% 3.09/1.71  thf(func_def_10, type, coindu1736001939ist_of: !>[X0: $tType]:(coindu1593790203_llist @ X0 > list @ X0)).
% 3.09/1.71  thf(func_def_11, type, coindu1542816657of_aux: !>[X0: $tType]:(list @ X0 > coindu1593790203_llist @ X0 > list @ X0)).
% 3.09/1.71  thf(func_def_12, type, coindu2000965700_llast: !>[X0: $tType]:(coindu1593790203_llist @ X0 > X0)).
% 3.09/1.71  thf(func_def_13, type, coindu1121789889_LCons: !>[X0: $tType]:(X0 > coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_14, type, coindu1598213697e_LNil: !>[X0: $tType]:(coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_15, type, coindu335574135_lnull: !>[X0: $tType]:(coindu1593790203_llist @ X0 > $o)).
% 3.09/1.71  thf(func_def_16, type, coindu1079202755ist_of: !>[X0: $tType]:(list @ X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_17, type, coindu567634248member: !>[X0: $tType]:(X0 > coindu1593790203_llist @ X0 > $o)).
% 3.09/1.71  thf(func_def_18, type, coindu749330388e_lnth: !>[X0: $tType]:(coindu1593790203_llist @ X0 > nat > X0)).
% 3.09/1.71  thf(func_def_19, type, coindu1696667936prefix: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0 > $o)).
% 3.09/1.71  thf(func_def_20, type, coindu574146665prefix: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0 > $o)).
% 3.09/1.71  thf(func_def_21, type, undefined: !>[X0: $tType]:(X0)).
% 3.09/1.71  thf(func_def_22, type, if: !>[X0: $tType]:($o > X0 > X0 > X0)).
% 3.09/1.71  thf(func_def_23, type, append: !>[X0: $tType]:(list @ X0 > list @ X0 > list @ X0)).
% 3.09/1.71  thf(func_def_24, type, bind: !>[X0: $tType, X1: $tType]:(list @ X0 > (X0 > list @ X1) > list @ X1)).
% 3.09/1.71  thf(func_def_25, type, butlast: !>[X0: $tType]:(list @ X0 > list @ X0)).
% 3.09/1.71  thf(func_def_26, type, insert: !>[X0: $tType]:(X0 > list @ X0 > list @ X0)).
% 3.09/1.71  thf(func_def_27, type, last: !>[X0: $tType]:(list @ X0 > X0)).
% 3.09/1.71  thf(func_def_28, type, cons: !>[X0: $tType]:(X0 > list @ X0 > list @ X0)).
% 3.09/1.71  thf(func_def_29, type, nil: !>[X0: $tType]:(list @ X0)).
% 3.09/1.71  thf(func_def_30, type, map: !>[X0: $tType, X1: $tType]:((X0 > X1) > list @ X0 > list @ X1)).
% 3.09/1.71  thf(func_def_31, type, list_ex1: !>[X0: $tType]:((X0 > $o) > list @ X0 > $o)).
% 3.09/1.71  thf(func_def_32, type, map_tailrec: !>[X0: $tType, X1: $tType]:((X0 > X1) > list @ X0 > list @ X1)).
% 3.09/1.71  thf(func_def_33, type, map_tailrec_rev: !>[X0: $tType, X1: $tType]:((X0 > X1) > list @ X0 > list @ X1 > list @ X1)).
% 3.09/1.71  thf(func_def_34, type, maps: !>[X0: $tType, X1: $tType]:((X0 > list @ X1) > list @ X0 > list @ X1)).
% 3.09/1.71  thf(func_def_35, type, nth: !>[X0: $tType]:(list @ X0 > nat > X0)).
% 3.09/1.71  thf(func_def_36, type, lexordp_eq: !>[X0: $tType]:((X0 > X0 > $o) > list @ X0 > list @ X0 > $o)).
% 3.09/1.71  thf(func_def_37, type, product_lists: !>[X0: $tType]:(list @ list @ X0 > list @ list @ X0)).
% 3.09/1.71  thf(func_def_38, type, rev: !>[X0: $tType]:(list @ X0 > list @ X0)).
% 3.09/1.71  thf(func_def_39, type, rotate1: !>[X0: $tType]:(list @ X0 > list @ X0)).
% 3.09/1.71  thf(func_def_40, type, sublists: !>[X0: $tType]:(list @ X0 > list @ list @ X0)).
% 3.09/1.71  thf(func_def_41, type, size_size: !>[X0: $tType]:(X0 > nat)).
% 3.09/1.71  thf(func_def_42, type, type: !>[X0: $tType]:(itself @ X0)).
% 3.09/1.71  thf(func_def_43, type, prefixes: !>[X0: $tType]:(list @ X0 > list @ list @ X0)).
% 3.09/1.71  thf(func_def_44, type, prefixes_rel: !>[X0: $tType]:(list @ X0 > list @ X0 > $o)).
% 3.09/1.71  thf(func_def_45, type, strict_suffix: !>[X0: $tType]:(list @ X0 > list @ X0 > $o)).
% 3.09/1.71  thf(func_def_46, type, accp: !>[X0: $tType]:((X0 > X0 > $o) > X0 > $o)).
% 3.09/1.71  thf(func_def_47, type, f: nat > a).
% 3.09/1.71  thf(func_def_48, type, xs: coindu1593790203_llist @ a).
% 3.09/1.71  thf(func_def_66, type, sK0: !>[X0: $tType, X1: $tType]:((X1 > X0) > (X1 > X0) > X1)).
% 3.09/1.71  thf(func_def_67, type, sK1: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_68, type, sK2: !>[X0: $tType]:(coindu1593790203_llist @ X0 > X0)).
% 3.09/1.71  thf(func_def_69, type, sK3: !>[X0: $tType]:(coindu1593790203_llist @ X0 > X0 > list @ X0 > list @ X0)).
% 3.09/1.71  thf(func_def_70, type, sK4: !>[X0: $tType]:((coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0 > $o) > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_71, type, sK5: !>[X0: $tType]:((coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0 > $o) > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_72, type, sK6: !>[X0: $tType]:(coindu1593790203_llist @ X0 > nat > X0)).
% 3.09/1.71  thf(func_def_73, type, sK7: !>[X0: $tType]:(coindu1593790203_llist @ X0 > list @ X0)).
% 3.09/1.71  thf(func_def_74, type, sK8: !>[X0: $tType]:(coindu1593790203_llist @ X0 > X0)).
% 3.09/1.71  thf(func_def_75, type, sK9: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_76, type, sK10: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_77, type, sK11: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0 > X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_78, type, sK12: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_79, type, sK13: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_80, type, sK14: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0 > X0)).
% 3.09/1.71  thf(func_def_81, type, sK15: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_82, type, sK16: !>[X0: $tType]:((coindu1593790203_llist @ X0 > $o) > X0)).
% 3.09/1.71  thf(func_def_83, type, sK17: !>[X0: $tType]:((coindu1593790203_llist @ X0 > $o) > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_84, type, sK18: !>[X0: $tType]:(coindu1593790203_llist @ X0 > X0)).
% 3.09/1.71  thf(func_def_85, type, sK19: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_86, type, sK20: !>[X0: $tType]:((coindu1593790203_llist @ X0 > $o) > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_87, type, sK21: !>[X0: $tType]:((coindu1593790203_llist @ X0 > $o) > X0)).
% 3.09/1.71  thf(func_def_88, type, sK22: !>[X0: $tType]:(coindu1593790203_llist @ X0 > X0 > coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_89, type, sK23: !>[X0: $tType]:(coindu1593790203_llist @ X0 > X0)).
% 3.09/1.71  thf(func_def_90, type, sK24: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 3.09/1.71  thf(func_def_92, type, ph26: !>[X0: $tType]:(X0)).
% 3.09/1.71  thf(f944,plain,(
% 3.09/1.71    $false),
% 3.09/1.71    inference(subsumption_resolution,[status(thm)],[f943,f747])).
% 3.09/1.71  thf(f747,plain,(
% 3.09/1.71    ( ! [X0 : $tType,X1 : nat > X0] : (($true != (coindu1213758845finite @ X0 @ (coindu288502823_llist @ X0 @ X1)))) )),
% 3.09/1.71    inference(cnf_transformation,[status(thm)],[f585])).
% 3.09/1.71  thf(f585,plain,(
% 3.09/1.71    ! [X0 : $tType,X1 : nat > X0] : ($true != (coindu1213758845finite @ X0 @ (coindu288502823_llist @ X0 @ X1)))),
% 3.09/1.71    inference(flattening,[status(thm)],[f333])).
% 3.09/1.71  thf(f333,plain,(
% 3.09/1.71    ! [X0 : $tType,X1 : nat > X0] : ~($true = (coindu1213758845finite @ X0 @ (coindu288502823_llist @ X0 @ X1)))),
% 3.09/1.71    inference(fool_elimination,[status(thm)],[f332])).
% 3.09/1.71  thf(f332,plain,(
% 3.09/1.71    ! [X0 : $tType,X1 : nat > X0] : ~(coindu1213758845finite @ X0 @ (coindu288502823_llist @ X0 @ X1))),
% 3.09/1.71    inference(rectify,[status(thm)],[f85])).
% 3.09/1.71  thf(f85,axiom,(
% 3.09/1.71    ! [X0 : $tType,X3 : nat > X0] : ~(coindu1213758845finite @ X0 @ (coindu288502823_llist @ X0 @ X3))),
% 3.09/1.71    file('/export/starexec/sandbox2/tmp/tmp.HOKmHkkqrB/DTF2THF_17806.p',fact_84_lfinite__inf__llist)).
% 3.09/1.71  thf(f943,plain,(
% 3.09/1.71    ($true = (coindu1213758845finite @ a @ (coindu288502823_llist @ a @ f)))),
% 3.09/1.71    inference(trivial_inequality_removal,[status(thm)],[f940])).
% 3.09/1.71  thf(f940,plain,(
% 3.09/1.71    ($true = (coindu1213758845finite @ a @ (coindu288502823_llist @ a @ f))) | ((coindu288502823_llist @ a @ f) != (coindu288502823_llist @ a @ f))),
% 3.09/1.71    inference(superposition,[status(thm)],[f750,f820])).
% 3.09/1.71  thf(f820,plain,(
% 3.09/1.71    ( ! [X0 : $tType,X2 : coindu1593790203_llist @ X0,X1 : coindu1593790203_llist @ X0] : (((coindu268472904append @ X0 @ X1 @ X2) = X1) | ((coindu1213758845finite @ X0 @ X1) = $true)) )),
% 3.09/1.71    inference(cnf_transformation,[status(thm)],[f659])).
% 3.09/1.71  thf(f659,plain,(
% 3.09/1.71    ! [X0 : $tType,X1 : coindu1593790203_llist @ X0,X2 : coindu1593790203_llist @ X0] : (((coindu268472904append @ X0 @ X1 @ X2) = X1) | ((coindu1213758845finite @ X0 @ X1) = $true))),
% 3.09/1.71    inference(ennf_transformation,[status(thm)],[f588])).
% 3.09/1.71  thf(f588,plain,(
% 3.09/1.71    ! [X0 : $tType,X1 : coindu1593790203_llist @ X0,X2 : coindu1593790203_llist @ X0] : (((coindu1213758845finite @ X0 @ X1) != $true) => ((coindu268472904append @ X0 @ X1 @ X2) = X1))),
% 3.09/1.71    inference(flattening,[status(thm)],[f415])).
% 3.09/1.71  thf(f415,plain,(
% 3.09/1.71    ! [X0 : $tType,X1 : coindu1593790203_llist @ X0,X2 : coindu1593790203_llist @ X0] : (~((coindu1213758845finite @ X0 @ X1) = $true) => ((coindu268472904append @ X0 @ X1 @ X2) = X1))),
% 3.09/1.71    inference(fool_elimination,[status(thm)],[f414])).
% 3.09/1.71  thf(f414,plain,(
% 3.09/1.71    ! [X0 : $tType,X1 : coindu1593790203_llist @ X0,X2 : coindu1593790203_llist @ X0] : (~(coindu1213758845finite @ X0 @ X1) => ((coindu268472904append @ X0 @ X1 @ X2) = X1))),
% 3.09/1.71    inference(rectify,[status(thm)],[f72])).
% 3.09/1.71  thf(f72,axiom,(
% 3.09/1.71    ! [X0 : $tType,X5 : coindu1593790203_llist @ X0,X6 : coindu1593790203_llist @ X0] : (~(coindu1213758845finite @ X0 @ X5) => ((coindu268472904append @ X0 @ X5 @ X6) = X5))),
% 3.09/1.71    file('/export/starexec/sandbox2/tmp/tmp.HOKmHkkqrB/DTF2THF_17806.p',fact_71_lappend__inf)).
% 3.09/1.71  thf(f750,plain,(
% 3.09/1.71    ((coindu288502823_llist @ a @ f) != (coindu268472904append @ a @ (coindu288502823_llist @ a @ f) @ xs))),
% 3.09/1.71    inference(cnf_transformation,[status(thm)],[f580])).
% 3.09/1.71  thf(f580,plain,(
% 3.09/1.71    ((coindu288502823_llist @ a @ f) != (coindu268472904append @ a @ (coindu288502823_llist @ a @ f) @ xs))),
% 3.09/1.71    inference(flattening,[status(thm)],[f258])).
% 3.09/1.71  thf(f258,negated_conjecture,(
% 3.09/1.71    ~((coindu288502823_llist @ a @ f) = (coindu268472904append @ a @ (coindu288502823_llist @ a @ f) @ xs))),
% 3.09/1.71    inference(negated_conjecture,[status(cth)],[f257])).
% 3.09/1.71  thf(f257,conjecture,(
% 3.09/1.71    ((coindu288502823_llist @ a @ f) = (coindu268472904append @ a @ (coindu288502823_llist @ a @ f) @ xs))),
% 3.09/1.71    file('/export/starexec/sandbox2/tmp/tmp.HOKmHkkqrB/DTF2THF_17806.p',conj_0)).
% 3.09/1.71  % SZS output end Proof for DTF2THF_17806
% 3.09/1.71  % (17910)------------------------------
% 3.09/1.71  % (17910)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.09/1.71  % (17910)Termination reason: Refutation
% 3.09/1.71  
% 3.09/1.71  % (17910)Memory used [KB]: 6524
% 3.09/1.71  % (17910)Time elapsed: 0.031 s
% 3.09/1.71  % (17910)Instructions burned: 56 (million)
% 3.09/1.71  % (17910)------------------------------
% 3.09/1.71  % (17910)------------------------------
% 3.09/1.71  % (17904)Success in time 0.059 s
%------------------------------------------------------------------------------