ITP001 Axioms: ITP054_7.ax


%------------------------------------------------------------------------------
% File     : ITP054_7 : TPTP v8.2.0. Bugfixed v7.5.0.
% Domain   : Interactive Theorem Proving
% Axioms   : HOL4 syntactic export, chainy mode
% Version  : [BG+19] axioms.
% English  :

% Refs     : [BG+19] Brown et al. (2019), GRUNGE: A Grand Unified ATP Chall
%          : [Gau19] Gauthier (2019), Email to Geoff Sutcliffe
% Source   : [BG+19]
% Names    : string.ax [Gau19]
%          : HL4054_7.ax [TPAP]

% Status   : Satisfiable
% Syntax   : Number of formulae    :  385 ( 130 unt; 177 typ;   0 def)
%            Number of atoms       :  376 ( 248 equ)
%            Maximal formula atoms :   10 (   0 avg)
%            Number of connectives :  180 (  12   ~;  13   |;  59   &)
%                                         (  52 <=>;  44  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   15 (   4 avg)
%            Maximal term depth    :   12 (   2 avg)
%            Number of types       :    4 (   3 usr)
%            Number of type conns  :  131 (  85   >;  46   *;   0   +;   0  <<)
%            Number of predicates  :    2 (   1 usr;   0 prp; 1-2 aty)
%            Number of functors    :  173 ( 173 usr;  54 con; 0-5 aty)
%            Number of variables   :  577 ( 473   !;   9   ?; 577   :)
%                                         (  95  !>;   0  ?*;   0  @-;   0  @+)
% SPC      : TF1_SAT_EQU_NAR

% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
tff(tyop_2Elist_2Elist,type,
    tyop_2Elist_2Elist: $tType > $tType ).

tff(tyop_2Emin_2Ebool,type,
    tyop_2Emin_2Ebool: $tType ).

tff(tyop_2Emin_2Efun,type,
    tyop_2Emin_2Efun: ( $tType * $tType ) > $tType ).

tff(tyop_2Enum_2Enum,type,
    tyop_2Enum_2Enum: $tType ).

tff(tyop_2Eoption_2Eoption,type,
    tyop_2Eoption_2Eoption: $tType > $tType ).

tff(tyop_2Epair_2Eprod,type,
    tyop_2Epair_2Eprod: ( $tType * $tType ) > $tType ).

tff(tyop_2Estring_2Echar,type,
    tyop_2Estring_2Echar: $tType ).

tff(app_2E2,type,
    app_2E2: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Emin_2Efun(A_27a,A_27b) * A_27a ) > A_27b ) ).

tff(p,type,
    p: tyop_2Emin_2Ebool > $o ).

tff(combin_i_2E0,type,
    combin_i_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(A_27a,A_27a) ).

tff(combin_k_2E0,type,
    combin_k_2E0: 
      !>[A_27a: $tType,A_27b: $tType] : tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27b,A_27a)) ).

tff(combin_s_2E0,type,
    combin_s_2E0: 
      !>[A_27a: $tType,A_27b: $tType,A_27c: $tType] : tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27b,A_27c)),tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,A_27b),tyop_2Emin_2Efun(A_27a,A_27c))) ).

tff(c_2Ebool_2E_21_2E0,type,
    c_2Ebool_2E_21_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool),tyop_2Emin_2Ebool) ).

tff(c_2Ebool_2E_21_2E1,type,
    c_2Ebool_2E_21_2E1: 
      !>[A_27a: $tType] : ( tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool) > tyop_2Emin_2Ebool ) ).

tff(c_2Earithmetic_2E_2B_2E0,type,
    c_2Earithmetic_2E_2B_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Enum_2Enum)) ).

tff(c_2Earithmetic_2E_2B_2E2,type,
    c_2Earithmetic_2E_2B_2E2: ( tyop_2Enum_2Enum * tyop_2Enum_2Enum ) > tyop_2Enum_2Enum ).

tff(c_2Epair_2E_2C_2E0,type,
    c_2Epair_2E_2C_2E0: 
      !>[A_27a: $tType,A_27b: $tType] : tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27b,tyop_2Epair_2Eprod(A_27a,A_27b))) ).

tff(c_2Epair_2E_2C_2E2,type,
    c_2Epair_2E_2C_2E2: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27a * A_27b ) > tyop_2Epair_2Eprod(A_27a,A_27b) ) ).

tff(c_2Earithmetic_2E_2D_2E0,type,
    c_2Earithmetic_2E_2D_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Enum_2Enum)) ).

tff(c_2Earithmetic_2E_2D_2E2,type,
    c_2Earithmetic_2E_2D_2E2: ( tyop_2Enum_2Enum * tyop_2Enum_2Enum ) > tyop_2Enum_2Enum ).

tff(c_2Ebool_2E_2F_5C_2E0,type,
    c_2Ebool_2E_2F_5C_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(tyop_2Emin_2Ebool,tyop_2Emin_2Ebool)) ).

tff(c_2Ebool_2E_2F_5C_2E2,type,
    c_2Ebool_2E_2F_5C_2E2: ( tyop_2Emin_2Ebool * tyop_2Emin_2Ebool ) > tyop_2Emin_2Ebool ).

tff(c_2Enum_2E0_2E0,type,
    c_2Enum_2E0_2E0: tyop_2Enum_2Enum ).

tff(c_2Eprim__rec_2E_3C_2E0,type,
    c_2Eprim__rec_2E_3C_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Ebool)) ).

tff(c_2Eprim__rec_2E_3C_2E2,type,
    c_2Eprim__rec_2E_3C_2E2: ( tyop_2Enum_2Enum * tyop_2Enum_2Enum ) > tyop_2Emin_2Ebool ).

tff(c_2Earithmetic_2E_3C_3D_2E0,type,
    c_2Earithmetic_2E_3C_3D_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Ebool)) ).

tff(c_2Earithmetic_2E_3C_3D_2E2,type,
    c_2Earithmetic_2E_3C_3D_2E2: ( tyop_2Enum_2Enum * tyop_2Enum_2Enum ) > tyop_2Emin_2Ebool ).

tff(c_2Emin_2E_3D_2E0,type,
    c_2Emin_2E_3D_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool)) ).

tff(c_2Emin_2E_3D_2E2,type,
    c_2Emin_2E_3D_2E2: 
      !>[A_27a: $tType] : ( ( A_27a * A_27a ) > tyop_2Emin_2Ebool ) ).

tff(c_2Emin_2E_3D_3D_3E_2E0,type,
    c_2Emin_2E_3D_3D_3E_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(tyop_2Emin_2Ebool,tyop_2Emin_2Ebool)) ).

tff(c_2Emin_2E_3D_3D_3E_2E2,type,
    c_2Emin_2E_3D_3D_3E_2E2: ( tyop_2Emin_2Ebool * tyop_2Emin_2Ebool ) > tyop_2Emin_2Ebool ).

tff(c_2Earithmetic_2E_3E_2E0,type,
    c_2Earithmetic_2E_3E_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Ebool)) ).

tff(c_2Earithmetic_2E_3E_2E2,type,
    c_2Earithmetic_2E_3E_2E2: ( tyop_2Enum_2Enum * tyop_2Enum_2Enum ) > tyop_2Emin_2Ebool ).

tff(c_2Earithmetic_2E_3E_3D_2E0,type,
    c_2Earithmetic_2E_3E_3D_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Ebool)) ).

tff(c_2Earithmetic_2E_3E_3D_2E2,type,
    c_2Earithmetic_2E_3E_3D_2E2: ( tyop_2Enum_2Enum * tyop_2Enum_2Enum ) > tyop_2Emin_2Ebool ).

tff(c_2Ebool_2E_3F_2E0,type,
    c_2Ebool_2E_3F_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool),tyop_2Emin_2Ebool) ).

tff(c_2Ebool_2E_3F_2E1,type,
    c_2Ebool_2E_3F_2E1: 
      !>[A_27a: $tType] : ( tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool) > tyop_2Emin_2Ebool ) ).

tff(c_2Emin_2E_40_2E0,type,
    c_2Emin_2E_40_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool),A_27a) ).

tff(c_2Emin_2E_40_2E1,type,
    c_2Emin_2E_40_2E1: 
      !>[A_27a: $tType] : ( tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool) > A_27a ) ).

tff(c_2Elist_2EAPPEND_2E0,type,
    c_2Elist_2EAPPEND_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),tyop_2Elist_2Elist(A_27a))) ).

tff(c_2Elist_2EAPPEND_2E2,type,
    c_2Elist_2EAPPEND_2E2: 
      !>[A_27a: $tType] : ( ( tyop_2Elist_2Elist(A_27a) * tyop_2Elist_2Elist(A_27a) ) > tyop_2Elist_2Elist(A_27a) ) ).

tff(c_2Ebool_2EARB_2E0,type,
    c_2Ebool_2EARB_2E0: 
      !>[A_27a: $tType] : A_27a ).

tff(c_2Earithmetic_2EBIT1_2E0,type,
    c_2Earithmetic_2EBIT1_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Enum_2Enum) ).

tff(c_2Earithmetic_2EBIT1_2E1,type,
    c_2Earithmetic_2EBIT1_2E1: tyop_2Enum_2Enum > tyop_2Enum_2Enum ).

tff(c_2Earithmetic_2EBIT2_2E0,type,
    c_2Earithmetic_2EBIT2_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Enum_2Enum) ).

tff(c_2Earithmetic_2EBIT2_2E1,type,
    c_2Earithmetic_2EBIT2_2E1: tyop_2Enum_2Enum > tyop_2Enum_2Enum ).

tff(c_2Estring_2ECHR_2E0,type,
    c_2Estring_2ECHR_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Estring_2Echar) ).

tff(c_2Estring_2ECHR_2E1,type,
    c_2Estring_2ECHR_2E1: tyop_2Enum_2Enum > tyop_2Estring_2Echar ).

tff(c_2Ebool_2ECOND_2E0,type,
    c_2Ebool_2ECOND_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27a,A_27a))) ).

tff(c_2Ebool_2ECOND_2E3,type,
    c_2Ebool_2ECOND_2E3: 
      !>[A_27a: $tType] : ( ( tyop_2Emin_2Ebool * A_27a * A_27a ) > A_27a ) ).

tff(c_2Elist_2ECONS_2E0,type,
    c_2Elist_2ECONS_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),tyop_2Elist_2Elist(A_27a))) ).

tff(c_2Elist_2ECONS_2E2,type,
    c_2Elist_2ECONS_2E2: 
      !>[A_27a: $tType] : ( ( A_27a * tyop_2Elist_2Elist(A_27a) ) > tyop_2Elist_2Elist(A_27a) ) ).

tff(c_2Estring_2EDEST__STRING_2E0,type,
    c_2Estring_2EDEST__STRING_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)))) ).

tff(c_2Estring_2EDEST__STRING_2E1,type,
    c_2Estring_2EDEST__STRING_2E1: tyop_2Elist_2Elist(tyop_2Estring_2Echar) > tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))) ).

tff(c_2Elist_2EEL_2E0,type,
    c_2Elist_2EEL_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),A_27a)) ).

tff(c_2Elist_2EEL_2E2,type,
    c_2Elist_2EEL_2E2: 
      !>[A_27a: $tType] : ( ( tyop_2Enum_2Enum * tyop_2Elist_2Elist(A_27a) ) > A_27a ) ).

tff(c_2Estring_2EEXPLODE_2E0,type,
    c_2Estring_2EEXPLODE_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)) ).

tff(c_2Estring_2EEXPLODE_2E1,type,
    c_2Estring_2EEXPLODE_2E1: tyop_2Elist_2Elist(tyop_2Estring_2Echar) > tyop_2Elist_2Elist(tyop_2Estring_2Echar) ).

tff(c_2Estring_2EEXTRACT_2E0,type,
    c_2Estring_2EEXTRACT_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)) ).

tff(c_2Estring_2EEXTRACT_2E1,type,
    c_2Estring_2EEXTRACT_2E1: tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))) > tyop_2Elist_2Elist(tyop_2Estring_2Echar) ).

tff(c_2Ebool_2EF_2E0,type,
    c_2Ebool_2EF_2E0: tyop_2Emin_2Ebool ).

tff(c_2Ecombin_2EFAIL_2E0,type,
    c_2Ecombin_2EFAIL_2E0: 
      !>[A_27a: $tType,A_27b: $tType] : tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27b,A_27a)) ).

tff(c_2Ecombin_2EFAIL_2E2,type,
    c_2Ecombin_2EFAIL_2E2: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( A_27a * A_27b ) > A_27a ) ).

tff(c_2Estring_2EFIELDS_2E0,type,
    c_2Estring_2EFIELDS_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)))) ).

tff(c_2Estring_2EFIELDS_2E2,type,
    c_2Estring_2EFIELDS_2E2: ( tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) * tyop_2Elist_2Elist(tyop_2Estring_2Echar) ) > tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)) ).

tff(c_2Elist_2EFLAT_2E0,type,
    c_2Elist_2EFLAT_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Elist_2Elist(A_27a)),tyop_2Elist_2Elist(A_27a)) ).

tff(c_2Elist_2EFLAT_2E1,type,
    c_2Elist_2EFLAT_2E1: 
      !>[A_27a: $tType] : ( tyop_2Elist_2Elist(tyop_2Elist_2Elist(A_27a)) > tyop_2Elist_2Elist(A_27a) ) ).

tff(c_2Elist_2EFOLDR_2E0,type,
    c_2Elist_2EFOLDR_2E0: 
      !>[A_27a: $tType,A_27b: $tType] : tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27b,A_27b)),tyop_2Emin_2Efun(A_27b,tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),A_27b))) ).

tff(c_2Elist_2EFOLDR_2E3,type,
    c_2Elist_2EFOLDR_2E3: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27b,A_27b)) * A_27b * tyop_2Elist_2Elist(A_27a) ) > A_27b ) ).

tff(c_2Ecombin_2EI_2E0,type,
    c_2Ecombin_2EI_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(A_27a,A_27a) ).

tff(c_2Ecombin_2EI_2E1,type,
    c_2Ecombin_2EI_2E1: 
      !>[A_27a: $tType] : ( A_27a > A_27a ) ).

tff(c_2Estring_2EIMPLODE_2E0,type,
    c_2Estring_2EIMPLODE_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)) ).

tff(c_2Estring_2EIMPLODE_2E1,type,
    c_2Estring_2EIMPLODE_2E1: tyop_2Elist_2Elist(tyop_2Estring_2Echar) > tyop_2Elist_2Elist(tyop_2Estring_2Echar) ).

tff(c_2Elist_2ELENGTH_2E0,type,
    c_2Elist_2ELENGTH_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),tyop_2Enum_2Enum) ).

tff(c_2Elist_2ELENGTH_2E1,type,
    c_2Elist_2ELENGTH_2E1: 
      !>[A_27a: $tType] : ( tyop_2Elist_2Elist(A_27a) > tyop_2Enum_2Enum ) ).

tff(c_2Ebool_2ELET_2E0,type,
    c_2Ebool_2ELET_2E0: 
      !>[A_27a: $tType,A_27b: $tType] : tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,A_27b),tyop_2Emin_2Efun(A_27a,A_27b)) ).

tff(c_2Ebool_2ELET_2E2,type,
    c_2Ebool_2ELET_2E2: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Emin_2Efun(A_27a,A_27b) * A_27a ) > A_27b ) ).

tff(c_2Elist_2EMAP_2E0,type,
    c_2Elist_2EMAP_2E0: 
      !>[A_27a: $tType,A_27b: $tType] : tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,A_27b),tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),tyop_2Elist_2Elist(A_27b))) ).

tff(c_2Elist_2EMAP_2E2,type,
    c_2Elist_2EMAP_2E2: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Emin_2Efun(A_27a,A_27b) * tyop_2Elist_2Elist(A_27a) ) > tyop_2Elist_2Elist(A_27b) ) ).

tff(c_2Elist_2ENIL_2E0,type,
    c_2Elist_2ENIL_2E0: 
      !>[A_27a: $tType] : tyop_2Elist_2Elist(A_27a) ).

tff(c_2Eoption_2ENONE_2E0,type,
    c_2Eoption_2ENONE_2E0: 
      !>[A_27a: $tType] : tyop_2Eoption_2Eoption(A_27a) ).

tff(c_2Elist_2ENULL_2E0,type,
    c_2Elist_2ENULL_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),tyop_2Emin_2Ebool) ).

tff(c_2Elist_2ENULL_2E1,type,
    c_2Elist_2ENULL_2E1: 
      !>[A_27a: $tType] : ( tyop_2Elist_2Elist(A_27a) > tyop_2Emin_2Ebool ) ).

tff(c_2Earithmetic_2ENUMERAL_2E0,type,
    c_2Earithmetic_2ENUMERAL_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Enum_2Enum) ).

tff(c_2Earithmetic_2ENUMERAL_2E1,type,
    c_2Earithmetic_2ENUMERAL_2E1: tyop_2Enum_2Enum > tyop_2Enum_2Enum ).

tff(c_2Estring_2EORD_2E0,type,
    c_2Estring_2EORD_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Enum_2Enum) ).

tff(c_2Estring_2EORD_2E1,type,
    c_2Estring_2EORD_2E1: tyop_2Estring_2Echar > tyop_2Enum_2Enum ).

tff(c_2Erich__list_2ESEG_2E0,type,
    c_2Erich__list_2ESEG_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),tyop_2Elist_2Elist(A_27a)))) ).

tff(c_2Erich__list_2ESEG_2E3,type,
    c_2Erich__list_2ESEG_2E3: 
      !>[A_27a: $tType] : ( ( tyop_2Enum_2Enum * tyop_2Enum_2Enum * tyop_2Elist_2Elist(A_27a) ) > tyop_2Elist_2Elist(A_27a) ) ).

tff(c_2Eoption_2ESOME_2E0,type,
    c_2Eoption_2ESOME_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(A_27a,tyop_2Eoption_2Eoption(A_27a)) ).

tff(c_2Eoption_2ESOME_2E1,type,
    c_2Eoption_2ESOME_2E1: 
      !>[A_27a: $tType] : ( A_27a > tyop_2Eoption_2Eoption(A_27a) ) ).

tff(c_2Erich__list_2ESPLITP_2E0,type,
    c_2Erich__list_2ESPLITP_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),tyop_2Epair_2Eprod(tyop_2Elist_2Elist(A_27a),tyop_2Elist_2Elist(A_27a)))) ).

tff(c_2Erich__list_2ESPLITP_2E2,type,
    c_2Erich__list_2ESPLITP_2E2: 
      !>[A_27a: $tType] : ( ( tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool) * tyop_2Elist_2Elist(A_27a) ) > tyop_2Epair_2Eprod(tyop_2Elist_2Elist(A_27a),tyop_2Elist_2Elist(A_27a)) ) ).

tff(c_2Estring_2ESTR_2E0,type,
    c_2Estring_2ESTR_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)) ).

tff(c_2Estring_2ESTR_2E1,type,
    c_2Estring_2ESTR_2E1: tyop_2Estring_2Echar > tyop_2Elist_2Elist(tyop_2Estring_2Echar) ).

tff(c_2Estring_2ESUB_2E0,type,
    c_2Estring_2ESUB_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Enum_2Enum),tyop_2Estring_2Echar) ).

tff(c_2Estring_2ESUB_2E1,type,
    c_2Estring_2ESUB_2E1: tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Enum_2Enum) > tyop_2Estring_2Echar ).

tff(c_2Estring_2ESUBSTRING_2E0,type,
    c_2Estring_2ESUBSTRING_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum)),tyop_2Elist_2Elist(tyop_2Estring_2Echar)) ).

tff(c_2Estring_2ESUBSTRING_2E1,type,
    c_2Estring_2ESUBSTRING_2E1: tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum)) > tyop_2Elist_2Elist(tyop_2Estring_2Echar) ).

tff(c_2Enum_2ESUC_2E0,type,
    c_2Enum_2ESUC_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Enum_2Enum) ).

tff(c_2Enum_2ESUC_2E1,type,
    c_2Enum_2ESUC_2E1: tyop_2Enum_2Enum > tyop_2Enum_2Enum ).

tff(c_2Ebool_2ET_2E0,type,
    c_2Ebool_2ET_2E0: tyop_2Emin_2Ebool ).

tff(c_2Elist_2ETL_2E0,type,
    c_2Elist_2ETL_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),tyop_2Elist_2Elist(A_27a)) ).

tff(c_2Elist_2ETL_2E1,type,
    c_2Elist_2ETL_2E1: 
      !>[A_27a: $tType] : ( tyop_2Elist_2Elist(A_27a) > tyop_2Elist_2Elist(A_27a) ) ).

tff(c_2Estring_2ETOCHAR_2E0,type,
    c_2Estring_2ETOCHAR_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar) ).

tff(c_2Estring_2ETOCHAR_2E1,type,
    c_2Estring_2ETOCHAR_2E1: tyop_2Elist_2Elist(tyop_2Estring_2Echar) > tyop_2Estring_2Echar ).

tff(c_2Estring_2ETOKENS_2E0,type,
    c_2Estring_2ETOKENS_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)))) ).

tff(c_2Estring_2ETOKENS_2E2,type,
    c_2Estring_2ETOKENS_2E2: ( tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) * tyop_2Elist_2Elist(tyop_2Estring_2Echar) ) > tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)) ).

tff(c_2Estring_2ETRANSLATE_2E0,type,
    c_2Estring_2ETRANSLATE_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar))) ).

tff(c_2Estring_2ETRANSLATE_2E2,type,
    c_2Estring_2ETRANSLATE_2E2: ( tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)) * tyop_2Elist_2Elist(tyop_2Estring_2Echar) ) > tyop_2Elist_2Elist(tyop_2Estring_2Echar) ).

tff(c_2Ebool_2ETYPE__DEFINITION_2E0,type,
    c_2Ebool_2ETYPE__DEFINITION_2E0: 
      !>[A_27a: $tType,A_27b: $tType] : tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27b,A_27a),tyop_2Emin_2Ebool)) ).

tff(c_2Ebool_2ETYPE__DEFINITION_2E2,type,
    c_2Ebool_2ETYPE__DEFINITION_2E2: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool) * tyop_2Emin_2Efun(A_27b,A_27a) ) > tyop_2Emin_2Ebool ) ).

tff(c_2Epair_2EUNCURRY_2E0,type,
    c_2Epair_2EUNCURRY_2E0: 
      !>[A_27a: $tType,A_27b: $tType,A_27c: $tType] : tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27b,A_27c)),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(A_27a,A_27b),A_27c)) ).

tff(c_2Epair_2EUNCURRY_2E1,type,
    c_2Epair_2EUNCURRY_2E1: 
      !>[A_27a: $tType,A_27b: $tType,A_27c: $tType] : ( tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27b,A_27c)) > tyop_2Emin_2Efun(tyop_2Epair_2Eprod(A_27a,A_27b),A_27c) ) ).

tff(c_2Erelation_2EWF_2E0,type,
    c_2Erelation_2EWF_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool) ).

tff(c_2Erelation_2EWF_2E1,type,
    c_2Erelation_2EWF_2E1: 
      !>[A_27a: $tType] : ( tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool)) > tyop_2Emin_2Ebool ) ).

tff(c_2Erelation_2EWFREC_2E0,type,
    c_2Erelation_2EWFREC_2E0: 
      !>[A_27a: $tType,A_27b: $tType] : tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool)),tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,A_27b),tyop_2Emin_2Efun(A_27a,A_27b)),tyop_2Emin_2Efun(A_27a,A_27b))) ).

tff(c_2Erelation_2EWFREC_2E2,type,
    c_2Erelation_2EWFREC_2E2: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool)) * tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,A_27b),tyop_2Emin_2Efun(A_27a,A_27b)) ) > tyop_2Emin_2Efun(A_27a,A_27b) ) ).

tff(c_2Earithmetic_2EZERO_2E0,type,
    c_2Earithmetic_2EZERO_2E0: tyop_2Enum_2Enum ).

tff(c_2Ebool_2E_5C_2F_2E0,type,
    c_2Ebool_2E_5C_2F_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(tyop_2Emin_2Ebool,tyop_2Emin_2Ebool)) ).

tff(c_2Ebool_2E_5C_2F_2E2,type,
    c_2Ebool_2E_5C_2F_2E2: ( tyop_2Emin_2Ebool * tyop_2Emin_2Ebool ) > tyop_2Emin_2Ebool ).

tff(c_2Estring_2Echar__ge_2E0,type,
    c_2Estring_2Echar__ge_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool)) ).

tff(c_2Estring_2Echar__ge_2E2,type,
    c_2Estring_2Echar__ge_2E2: ( tyop_2Estring_2Echar * tyop_2Estring_2Echar ) > tyop_2Emin_2Ebool ).

tff(c_2Estring_2Echar__gt_2E0,type,
    c_2Estring_2Echar__gt_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool)) ).

tff(c_2Estring_2Echar__gt_2E2,type,
    c_2Estring_2Echar__gt_2E2: ( tyop_2Estring_2Echar * tyop_2Estring_2Echar ) > tyop_2Emin_2Ebool ).

tff(c_2Estring_2Echar__le_2E0,type,
    c_2Estring_2Echar__le_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool)) ).

tff(c_2Estring_2Echar__le_2E2,type,
    c_2Estring_2Echar__le_2E2: ( tyop_2Estring_2Echar * tyop_2Estring_2Echar ) > tyop_2Emin_2Ebool ).

tff(c_2Estring_2Echar__lt_2E0,type,
    c_2Estring_2Echar__lt_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool)) ).

tff(c_2Estring_2Echar__lt_2E2,type,
    c_2Estring_2Echar__lt_2E2: ( tyop_2Estring_2Echar * tyop_2Estring_2Echar ) > tyop_2Emin_2Ebool ).

tff(c_2Estring_2Echar__size_2E0,type,
    c_2Estring_2Echar__size_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Enum_2Enum) ).

tff(c_2Estring_2Echar__size_2E1,type,
    c_2Estring_2Echar__size_2E1: tyop_2Estring_2Echar > tyop_2Enum_2Enum ).

tff(c_2Estring_2EisAlpha_2E0,type,
    c_2Estring_2EisAlpha_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) ).

tff(c_2Estring_2EisAlpha_2E1,type,
    c_2Estring_2EisAlpha_2E1: tyop_2Estring_2Echar > tyop_2Emin_2Ebool ).

tff(c_2Estring_2EisAlphaNum_2E0,type,
    c_2Estring_2EisAlphaNum_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) ).

tff(c_2Estring_2EisAlphaNum_2E1,type,
    c_2Estring_2EisAlphaNum_2E1: tyop_2Estring_2Echar > tyop_2Emin_2Ebool ).

tff(c_2Estring_2EisAscii_2E0,type,
    c_2Estring_2EisAscii_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) ).

tff(c_2Estring_2EisAscii_2E1,type,
    c_2Estring_2EisAscii_2E1: tyop_2Estring_2Echar > tyop_2Emin_2Ebool ).

tff(c_2Estring_2EisCntrl_2E0,type,
    c_2Estring_2EisCntrl_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) ).

tff(c_2Estring_2EisCntrl_2E1,type,
    c_2Estring_2EisCntrl_2E1: tyop_2Estring_2Echar > tyop_2Emin_2Ebool ).

tff(c_2Estring_2EisDigit_2E0,type,
    c_2Estring_2EisDigit_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) ).

tff(c_2Estring_2EisDigit_2E1,type,
    c_2Estring_2EisDigit_2E1: tyop_2Estring_2Echar > tyop_2Emin_2Ebool ).

tff(c_2Estring_2EisGraph_2E0,type,
    c_2Estring_2EisGraph_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) ).

tff(c_2Estring_2EisGraph_2E1,type,
    c_2Estring_2EisGraph_2E1: tyop_2Estring_2Echar > tyop_2Emin_2Ebool ).

tff(c_2Estring_2EisHexDigit_2E0,type,
    c_2Estring_2EisHexDigit_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) ).

tff(c_2Estring_2EisHexDigit_2E1,type,
    c_2Estring_2EisHexDigit_2E1: tyop_2Estring_2Echar > tyop_2Emin_2Ebool ).

tff(c_2Estring_2EisLower_2E0,type,
    c_2Estring_2EisLower_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) ).

tff(c_2Estring_2EisLower_2E1,type,
    c_2Estring_2EisLower_2E1: tyop_2Estring_2Echar > tyop_2Emin_2Ebool ).

tff(c_2Elist_2EisPREFIX_2E0,type,
    c_2Elist_2EisPREFIX_2E0: 
      !>[A_27a: $tType] : tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),tyop_2Emin_2Ebool)) ).

tff(c_2Elist_2EisPREFIX_2E2,type,
    c_2Elist_2EisPREFIX_2E2: 
      !>[A_27a: $tType] : ( ( tyop_2Elist_2Elist(A_27a) * tyop_2Elist_2Elist(A_27a) ) > tyop_2Emin_2Ebool ) ).

tff(c_2Estring_2EisPrint_2E0,type,
    c_2Estring_2EisPrint_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) ).

tff(c_2Estring_2EisPrint_2E1,type,
    c_2Estring_2EisPrint_2E1: tyop_2Estring_2Echar > tyop_2Emin_2Ebool ).

tff(c_2Estring_2EisPunct_2E0,type,
    c_2Estring_2EisPunct_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) ).

tff(c_2Estring_2EisPunct_2E1,type,
    c_2Estring_2EisPunct_2E1: tyop_2Estring_2Echar > tyop_2Emin_2Ebool ).

tff(c_2Estring_2EisSpace_2E0,type,
    c_2Estring_2EisSpace_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) ).

tff(c_2Estring_2EisSpace_2E1,type,
    c_2Estring_2EisSpace_2E1: tyop_2Estring_2Echar > tyop_2Emin_2Ebool ).

tff(c_2Estring_2EisUpper_2E0,type,
    c_2Estring_2EisUpper_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool) ).

tff(c_2Estring_2EisUpper_2E1,type,
    c_2Estring_2EisUpper_2E1: tyop_2Estring_2Echar > tyop_2Emin_2Ebool ).

tff(c_2Elist_2Elist__CASE_2E0,type,
    c_2Elist_2Elist__CASE_2E0: 
      !>[A_27a: $tType,A_27b: $tType] : tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),tyop_2Emin_2Efun(A_27b,tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),A_27b)),A_27b))) ).

tff(c_2Elist_2Elist__CASE_2E3,type,
    c_2Elist_2Elist__CASE_2E3: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Elist_2Elist(A_27a) * A_27b * tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(tyop_2Elist_2Elist(A_27a),A_27b)) ) > A_27b ) ).

tff(c_2Eoption_2Eoption__CASE_2E0,type,
    c_2Eoption_2Eoption__CASE_2E0: 
      !>[A_27a: $tType,A_27b: $tType] : tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(A_27a),tyop_2Emin_2Efun(A_27b,tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,A_27b),A_27b))) ).

tff(c_2Eoption_2Eoption__CASE_2E3,type,
    c_2Eoption_2Eoption__CASE_2E3: 
      !>[A_27a: $tType,A_27b: $tType] : ( ( tyop_2Eoption_2Eoption(A_27a) * A_27b * tyop_2Emin_2Efun(A_27a,A_27b) ) > A_27b ) ).

tff(c_2Epair_2Epair__CASE_2E0,type,
    c_2Epair_2Epair__CASE_2E0: 
      !>[A_27a: $tType,A_27b: $tType,A_27c: $tType] : tyop_2Emin_2Efun(tyop_2Epair_2Eprod(A_27b,A_27c),tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27b,tyop_2Emin_2Efun(A_27c,A_27a)),A_27a)) ).

tff(c_2Epair_2Epair__CASE_2E2,type,
    c_2Epair_2Epair__CASE_2E2: 
      !>[A_27a: $tType,A_27b: $tType,A_27c: $tType] : ( ( tyop_2Epair_2Eprod(A_27b,A_27c) * tyop_2Emin_2Efun(A_27b,tyop_2Emin_2Efun(A_27c,A_27a)) ) > A_27a ) ).

tff(c_2Estring_2Estring__ge_2E0,type,
    c_2Estring_2Estring__ge_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)) ).

tff(c_2Estring_2Estring__ge_2E2,type,
    c_2Estring_2Estring__ge_2E2: ( tyop_2Elist_2Elist(tyop_2Estring_2Echar) * tyop_2Elist_2Elist(tyop_2Estring_2Echar) ) > tyop_2Emin_2Ebool ).

tff(c_2Estring_2Estring__gt_2E0,type,
    c_2Estring_2Estring__gt_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)) ).

tff(c_2Estring_2Estring__gt_2E2,type,
    c_2Estring_2Estring__gt_2E2: ( tyop_2Elist_2Elist(tyop_2Estring_2Echar) * tyop_2Elist_2Elist(tyop_2Estring_2Echar) ) > tyop_2Emin_2Ebool ).

tff(c_2Estring_2Estring__le_2E0,type,
    c_2Estring_2Estring__le_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)) ).

tff(c_2Estring_2Estring__le_2E2,type,
    c_2Estring_2Estring__le_2E2: ( tyop_2Elist_2Elist(tyop_2Estring_2Echar) * tyop_2Elist_2Elist(tyop_2Estring_2Echar) ) > tyop_2Emin_2Ebool ).

tff(c_2Estring_2Estring__lt_2E0,type,
    c_2Estring_2Estring__lt_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)) ).

tff(c_2Estring_2Estring__lt_2E2,type,
    c_2Estring_2Estring__lt_2E2: ( tyop_2Elist_2Elist(tyop_2Estring_2Echar) * tyop_2Elist_2Elist(tyop_2Estring_2Echar) ) > tyop_2Emin_2Ebool ).

tff(c_2Estring_2EtoLower_2E0,type,
    c_2Estring_2EtoLower_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Estring_2Echar) ).

tff(c_2Estring_2EtoLower_2E1,type,
    c_2Estring_2EtoLower_2E1: tyop_2Estring_2Echar > tyop_2Estring_2Echar ).

tff(c_2Estring_2EtoUpper_2E0,type,
    c_2Estring_2EtoUpper_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Estring_2Echar) ).

tff(c_2Estring_2EtoUpper_2E1,type,
    c_2Estring_2EtoUpper_2E1: tyop_2Estring_2Echar > tyop_2Estring_2Echar ).

tff(c_2Ebool_2E_7E_2E0,type,
    c_2Ebool_2E_7E_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Ebool,tyop_2Emin_2Ebool) ).

tff(c_2Ebool_2E_7E_2E1,type,
    c_2Ebool_2E_7E_2E1: tyop_2Emin_2Ebool > tyop_2Emin_2Ebool ).

tff(thm_2Eextra_2Dho_2Eeq__ext,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0f_2E0: tyop_2Emin_2Efun(A_27a,A_27b),V1g_2E0: tyop_2Emin_2Efun(A_27a,A_27b)] :
      ( ! [V2x_2E0: A_27a] : ( app_2E2(A_27a,A_27b,V0f_2E0,V2x_2E0) = app_2E2(A_27a,A_27b,V1g_2E0,V2x_2E0) )
     => ( V0f_2E0 = V1g_2E0 ) ) ).

tff(thm_2Eextra_2Dho_2Eboolext,axiom,
    ! [V0_2E0: tyop_2Emin_2Ebool,V1_2E0: tyop_2Emin_2Ebool] :
      ( ( p(V0_2E0)
      <=> p(V1_2E0) )
     => ( V0_2E0 = V1_2E0 ) ) ).

tff(thm_2Eextra_2Dho_2Etruth,axiom,
    p(c_2Ebool_2ET_2E0) ).

tff(thm_2Eextra_2Dho_2Enotfalse,axiom,
    ~ p(c_2Ebool_2EF_2E0) ).

tff(thm_2Eextra_2Dho_2Ebool__cases__ax,axiom,
    ! [V0t_2E0: tyop_2Emin_2Ebool] :
      ( ( V0t_2E0 = c_2Ebool_2ET_2E0 )
      | ( V0t_2E0 = c_2Ebool_2EF_2E0 ) ) ).

tff(thm_2Eextra_2Dho_2Ei__thm,axiom,
    ! [A_27a: $tType,V0x_2E0: A_27a] : ( app_2E2(A_27a,A_27a,combin_i_2E0(A_27a),V0x_2E0) = V0x_2E0 ) ).

tff(thm_2Eextra_2Dho_2Ek__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType,V0x_2E0: A_27a,V1y_2E0: A_27b] : ( app_2E2(A_27b,A_27a,app_2E2(A_27a,tyop_2Emin_2Efun(A_27b,A_27a),combin_k_2E0(A_27a,A_27b),V0x_2E0),V1y_2E0) = V0x_2E0 ) ).

tff(thm_2Eextra_2Dho_2Es__thm,axiom,
    ! [A_27a: $tType,A_27b: $tType,A_27c: $tType,V0f_2E0: tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27b,A_27c)),V1g_2E0: tyop_2Emin_2Efun(A_27a,A_27b),V2x_2E0: A_27a] : ( app_2E2(A_27a,A_27c,app_2E2(tyop_2Emin_2Efun(A_27a,A_27b),tyop_2Emin_2Efun(A_27a,A_27c),app_2E2(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Efun(A_27b,A_27c)),tyop_2Emin_2Efun(tyop_2Emin_2Efun(A_27a,A_27b),tyop_2Emin_2Efun(A_27a,A_27c)),combin_s_2E0(A_27a,A_27b,A_27c),V0f_2E0),V1g_2E0),V2x_2E0) = app_2E2(A_27b,A_27c,app_2E2(A_27a,tyop_2Emin_2Efun(A_27b,A_27c),V0f_2E0,V2x_2E0),app_2E2(A_27a,A_27b,V1g_2E0,V2x_2E0)) ) ).

tff(logicdef_2E_2F_5C,axiom,
    ! [V0_2E0: tyop_2Emin_2Ebool,V1_2E0: tyop_2Emin_2Ebool] :
      ( p(c_2Ebool_2E_2F_5C_2E2(V0_2E0,V1_2E0))
    <=> ( p(V0_2E0)
        & p(V1_2E0) ) ) ).

tff(logicdef_2E_5C_2F,axiom,
    ! [V0_2E0: tyop_2Emin_2Ebool,V1_2E0: tyop_2Emin_2Ebool] :
      ( p(c_2Ebool_2E_5C_2F_2E2(V0_2E0,V1_2E0))
    <=> ( p(V0_2E0)
        | p(V1_2E0) ) ) ).

tff(logicdef_2E_7E,axiom,
    ! [V0_2E0: tyop_2Emin_2Ebool] :
      ( p(c_2Ebool_2E_7E_2E1(V0_2E0))
    <=> ~ p(V0_2E0) ) ).

tff(logicdef_2E_3D_3D_3E,axiom,
    ! [V0_2E0: tyop_2Emin_2Ebool,V1_2E0: tyop_2Emin_2Ebool] :
      ( p(c_2Emin_2E_3D_3D_3E_2E2(V0_2E0,V1_2E0))
    <=> ( p(V0_2E0)
       => p(V1_2E0) ) ) ).

tff(logicdef_2E_3D,axiom,
    ! [A_27a: $tType,V0_2E0: A_27a,V1_2E0: A_27a] :
      ( p(c_2Emin_2E_3D_2E2(A_27a,V0_2E0,V1_2E0))
    <=> ( V0_2E0 = V1_2E0 ) ) ).

tff(quantdef_2E_21,axiom,
    ! [A_27a: $tType,V0f_2E0: tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool)] :
      ( p(c_2Ebool_2E_21_2E1(A_27a,V0f_2E0))
    <=> ! [V1x_2E0: A_27a] : p(app_2E2(A_27a,tyop_2Emin_2Ebool,V0f_2E0,V1x_2E0)) ) ).

tff(quantdef_2E_3F,axiom,
    ! [A_27a: $tType,V0f_2E0: tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool)] :
      ( p(c_2Ebool_2E_3F_2E1(A_27a,V0f_2E0))
    <=> ? [V1x_2E0: A_27a] : p(app_2E2(A_27a,tyop_2Emin_2Ebool,V0f_2E0,V1x_2E0)) ) ).

tff(arityeq1_2Ec_2Ebool_2E_21_2E1_2Emono_2EA_27a,axiom,
    ! [A_27a: $tType,X0_2E0: tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool)] : ( c_2Ebool_2E_21_2E1(A_27a,X0_2E0) = app_2E2(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool),tyop_2Emin_2Ebool,c_2Ebool_2E_21_2E0(A_27a),X0_2E0) ) ).

tff(arityeq2_2Ec_2Earithmetic_2E_2B_2E2,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum,X1_2E0: tyop_2Enum_2Enum] : ( c_2Earithmetic_2E_2B_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Enum_2Enum,app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Enum_2Enum),c_2Earithmetic_2E_2B_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Epair_2E_2C_2E2_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar,X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Epair_2E_2C_2E2(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Epair_2E_2C_2E0(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Epair_2E_2C_2E2_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Epair_2E_2C_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Epair_2E_2C_2E2_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Enum_2Enum,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X1_2E0: tyop_2Enum_2Enum] : ( c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Enum_2Enum,X0_2E0,X1_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Enum_2Enum),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Enum_2Enum)),c_2Epair_2E_2C_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Enum_2Enum),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Epair_2E_2C_2E2_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X1_2E0: tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum)] : ( c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum),X0_2E0,X1_2E0) = app_2E2(tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum),tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum)),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum),tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum))),c_2Epair_2E_2C_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum)),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Epair_2E_2C_2E2_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X1_2E0: tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))] : ( c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),X0_2E0,X1_2E0) = app_2E2(tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)))),c_2Epair_2E_2C_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Epair_2E_2C_2E2_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum,X1_2E0: tyop_2Enum_2Enum] : ( c_2Epair_2E_2C_2E2(tyop_2Enum_2Enum,tyop_2Enum_2Enum,X0_2E0,X1_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum),app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum)),c_2Epair_2E_2C_2E0(tyop_2Enum_2Enum,tyop_2Enum_2Enum),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Epair_2E_2C_2E2_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum,X1_2E0: tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)] : ( c_2Epair_2E_2C_2E2(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),X0_2E0,X1_2E0) = app_2E2(tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),c_2Epair_2E_2C_2E0(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Epair_2E_2C_2E2_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29,axiom,
    ! [X0_2E0: tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),X1_2E0: tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)))] : ( c_2Epair_2E_2C_2E2(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),X0_2E0,X1_2E0) = app_2E2(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Epair_2Eprod(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)))),app_2E2(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Epair_2Eprod(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))))),c_2Epair_2E_2C_2E0(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)))),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Earithmetic_2E_2D_2E2,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum,X1_2E0: tyop_2Enum_2Enum] : ( c_2Earithmetic_2E_2D_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Enum_2Enum,app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Enum_2Enum),c_2Earithmetic_2E_2D_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Ebool_2E_2F_5C_2E2,axiom,
    ! [X0_2E0: tyop_2Emin_2Ebool,X1_2E0: tyop_2Emin_2Ebool] :
      ( ( p(X0_2E0)
        & p(X1_2E0) )
    <=> p(app_2E2(tyop_2Emin_2Ebool,tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(tyop_2Emin_2Ebool,tyop_2Emin_2Ebool),c_2Ebool_2E_2F_5C_2E0,X0_2E0),X1_2E0)) ) ).

tff(arityeq2_2Ec_2Eprim__rec_2E_3C_2E2,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum,X1_2E0: tyop_2Enum_2Enum] : ( c_2Eprim__rec_2E_3C_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Ebool,app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Ebool),c_2Eprim__rec_2E_3C_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Earithmetic_2E_3C_3D_2E2,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum,X1_2E0: tyop_2Enum_2Enum] : ( c_2Earithmetic_2E_3C_3D_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Ebool,app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Ebool),c_2Earithmetic_2E_3C_3D_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Emin_2E_3D_2E2_2Emono_2EA_27a,axiom,
    ! [A_27a: $tType,X0_2E0: A_27a,X1_2E0: A_27a] :
      ( ( X0_2E0 = X1_2E0 )
    <=> p(app_2E2(A_27a,tyop_2Emin_2Ebool,app_2E2(A_27a,tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool),c_2Emin_2E_3D_2E0(A_27a),X0_2E0),X1_2E0)) ) ).

tff(arityeq2_2Ec_2Emin_2E_3D_3D_3E_2E2,axiom,
    ! [X0_2E0: tyop_2Emin_2Ebool,X1_2E0: tyop_2Emin_2Ebool] :
      ( ( p(X0_2E0)
       => p(X1_2E0) )
    <=> p(app_2E2(tyop_2Emin_2Ebool,tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(tyop_2Emin_2Ebool,tyop_2Emin_2Ebool),c_2Emin_2E_3D_3D_3E_2E0,X0_2E0),X1_2E0)) ) ).

tff(arityeq2_2Ec_2Earithmetic_2E_3E_2E2,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum,X1_2E0: tyop_2Enum_2Enum] : ( c_2Earithmetic_2E_3E_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Ebool,app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Ebool),c_2Earithmetic_2E_3E_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Earithmetic_2E_3E_3D_2E2,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum,X1_2E0: tyop_2Enum_2Enum] : ( c_2Earithmetic_2E_3E_3D_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Ebool,app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Ebool),c_2Earithmetic_2E_3E_3D_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq1_2Ec_2Ebool_2E_3F_2E1_2Emono_2EA_27a,axiom,
    ! [A_27a: $tType,X0_2E0: tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool)] : ( c_2Ebool_2E_3F_2E1(A_27a,X0_2E0) = app_2E2(tyop_2Emin_2Efun(A_27a,tyop_2Emin_2Ebool),tyop_2Emin_2Ebool,c_2Ebool_2E_3F_2E0(A_27a),X0_2E0) ) ).

tff(arityeq1_2Ec_2Emin_2E_40_2E1_2Emono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool)] : ( c_2Emin_2E_40_2E1(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),X0_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),c_2Emin_2E_40_2E0(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool))),X0_2E0) ) ).

tff(arityeq1_2Ec_2Emin_2E_40_2E1_2Emono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool)] : ( c_2Emin_2E_40_2E1(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool)),X0_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool)),c_2Emin_2E_40_2E0(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool))),X0_2E0) ) ).

tff(arityeq2_2Ec_2Elist_2EAPPEND_2E2_2Emono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Elist_2EAPPEND_2E0(tyop_2Estring_2Echar),X0_2E0),X1_2E0) ) ).

tff(arityeq1_2Ec_2Earithmetic_2EBIT1_2E1,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum] : ( c_2Earithmetic_2EBIT1_2E1(X0_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Enum_2Enum,c_2Earithmetic_2EBIT1_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Earithmetic_2EBIT2_2E1,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum] : ( c_2Earithmetic_2EBIT2_2E1(X0_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Enum_2Enum,c_2Earithmetic_2EBIT2_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2ECHR_2E1,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum] : ( c_2Estring_2ECHR_2E1(X0_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Estring_2Echar,c_2Estring_2ECHR_2E0,X0_2E0) ) ).

tff(arityeq3_2Ec_2Ebool_2ECOND_2E3_2Emono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Emin_2Ebool,X1_2E0: tyop_2Estring_2Echar,X2_2E0: tyop_2Estring_2Echar] : ( c_2Ebool_2ECOND_2E3(tyop_2Estring_2Echar,X0_2E0,X1_2E0,X2_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Estring_2Echar,app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Estring_2Echar),app_2E2(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Estring_2Echar)),c_2Ebool_2ECOND_2E0(tyop_2Estring_2Echar),X0_2E0),X1_2E0),X2_2E0) ) ).

tff(arityeq3_2Ec_2Ebool_2ECOND_2E3_2Emono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29,axiom,
    ! [X0_2E0: tyop_2Emin_2Ebool,X1_2E0: tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X2_2E0: tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))] : ( c_2Ebool_2ECOND_2E3(tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0,X1_2E0,X2_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),app_2E2(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)))),c_2Ebool_2ECOND_2E0(tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),X0_2E0),X1_2E0),X2_2E0) ) ).

tff(arityeq3_2Ec_2Ebool_2ECOND_2E3_2Emono_2Etyop_2Enum_2Enum,axiom,
    ! [X0_2E0: tyop_2Emin_2Ebool,X1_2E0: tyop_2Enum_2Enum,X2_2E0: tyop_2Enum_2Enum] : ( c_2Ebool_2ECOND_2E3(tyop_2Enum_2Enum,X0_2E0,X1_2E0,X2_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Enum_2Enum,app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Enum_2Enum),app_2E2(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Enum_2Enum)),c_2Ebool_2ECOND_2E0(tyop_2Enum_2Enum),X0_2E0),X1_2E0),X2_2E0) ) ).

tff(arityeq2_2Ec_2Elist_2ECONS_2E2_2Emono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar,X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Elist_2ECONS_2E0(tyop_2Estring_2Echar),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Elist_2ECONS_2E2_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X1_2E0: tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))] : ( c_2Elist_2ECONS_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Elist_2ECONS_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0),X1_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EDEST__STRING_2E1,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2EDEST__STRING_2E1(X0_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Estring_2EDEST__STRING_2E0,X0_2E0) ) ).

tff(arityeq2_2Ec_2Elist_2EEL_2E2_2Emono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum,X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2EEL_2E2(tyop_2Estring_2Echar,X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar,app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar),c_2Elist_2EEL_2E0(tyop_2Estring_2Echar),X0_2E0),X1_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EEXPLODE_2E1,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2EEXPLODE_2E1(X0_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Estring_2EEXPLODE_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EEXTRACT_2E1,axiom,
    ! [X0_2E0: tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)))] : ( c_2Estring_2EEXTRACT_2E1(X0_2E0) = app_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Estring_2EEXTRACT_2E0,X0_2E0) ) ).

tff(arityeq2_2Ec_2Ecombin_2EFAIL_2E2_2Emono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Emin_2Ebool,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Enum_2Enum),X1_2E0: tyop_2Emin_2Ebool] : ( c_2Ecombin_2EFAIL_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Enum_2Enum),tyop_2Emin_2Ebool,X0_2E0,X1_2E0) = app_2E2(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Enum_2Enum),app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Enum_2Enum),tyop_2Emin_2Efun(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Enum_2Enum)),c_2Ecombin_2EFAIL_2E0(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Enum_2Enum),tyop_2Emin_2Ebool),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Estring_2EFIELDS_2E2,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2EFIELDS_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Estring_2EFIELDS_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq1_2Ec_2Elist_2EFLAT_2E1_2Emono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))] : ( c_2Elist_2EFLAT_2E1(tyop_2Estring_2Echar,X0_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Elist_2EFLAT_2E0(tyop_2Estring_2Echar),X0_2E0) ) ).

tff(arityeq3_2Ec_2Elist_2EFOLDR_2E3_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2EFOLDR_2E3(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),X0_2E0,X1_2E0,X2_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Elist_2EFOLDR_2E0(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0),X1_2E0),X2_2E0) ) ).

tff(arityeq1_2Ec_2Ecombin_2EI_2E1_2Emono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Ecombin_2EI_2E1(tyop_2Estring_2Echar,X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Estring_2Echar,c_2Ecombin_2EI_2E0(tyop_2Estring_2Echar),X0_2E0) ) ).

tff(arityeq1_2Ec_2Ecombin_2EI_2E1_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Ecombin_2EI_2E1(tyop_2Elist_2Elist(tyop_2Estring_2Echar),X0_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Ecombin_2EI_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EIMPLODE_2E1,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2EIMPLODE_2E1(X0_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Estring_2EIMPLODE_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Elist_2ELENGTH_2E1_2Emono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,X0_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Enum_2Enum,c_2Elist_2ELENGTH_2E0(tyop_2Estring_2Echar),X0_2E0) ) ).

tff(arityeq2_2Ec_2Ebool_2ELET_2E2_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),X1_2E0: tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar))] : ( c_2Ebool_2ELET_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0,X1_2E0) = app_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Ebool_2ELET_2E0(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Elist_2EMAP_2E2_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2EMAP_2E2(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Elist_2EMAP_2E0(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0),X1_2E0) ) ).

tff(arityeq1_2Ec_2Elist_2ENULL_2E1_2Emono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2ENULL_2E1(tyop_2Estring_2Echar,X0_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,c_2Elist_2ENULL_2E0(tyop_2Estring_2Echar),X0_2E0) ) ).

tff(arityeq1_2Ec_2Earithmetic_2ENUMERAL_2E1,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum] : ( c_2Earithmetic_2ENUMERAL_2E1(X0_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Enum_2Enum,c_2Earithmetic_2ENUMERAL_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EORD_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EORD_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Enum_2Enum,c_2Estring_2EORD_2E0,X0_2E0) ) ).

tff(arityeq3_2Ec_2Erich__list_2ESEG_2E3_2Emono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum,X1_2E0: tyop_2Enum_2Enum,X2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Erich__list_2ESEG_2E3(tyop_2Estring_2Echar,X0_2E0,X1_2E0,X2_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Erich__list_2ESEG_2E0(tyop_2Estring_2Echar),X0_2E0),X1_2E0),X2_2E0) ) ).

tff(arityeq1_2Ec_2Eoption_2ESOME_2E1_2Emono_2Etyop_2Enum_2Enum,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum] : ( c_2Eoption_2ESOME_2E1(tyop_2Enum_2Enum,X0_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),c_2Eoption_2ESOME_2E0(tyop_2Enum_2Enum),X0_2E0) ) ).

tff(arityeq1_2Ec_2Eoption_2ESOME_2E1_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29,axiom,
    ! [X0_2E0: tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))] : ( c_2Eoption_2ESOME_2E1(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0) = app_2E2(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Eoption_2ESOME_2E0(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),X0_2E0) ) ).

tff(arityeq2_2Ec_2Erich__list_2ESPLITP_2E2_2Emono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Erich__list_2ESPLITP_2E2(tyop_2Estring_2Echar,X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Erich__list_2ESPLITP_2E0(tyop_2Estring_2Echar),X0_2E0),X1_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2ESTR_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2ESTR_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Estring_2ESTR_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2ESUB_2E1,axiom,
    ! [X0_2E0: tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Enum_2Enum)] : ( c_2Estring_2ESUB_2E1(X0_2E0) = app_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Enum_2Enum),tyop_2Estring_2Echar,c_2Estring_2ESUB_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2ESUBSTRING_2E1,axiom,
    ! [X0_2E0: tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum))] : ( c_2Estring_2ESUBSTRING_2E1(X0_2E0) = app_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum)),tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Estring_2ESUBSTRING_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Enum_2ESUC_2E1,axiom,
    ! [X0_2E0: tyop_2Enum_2Enum] : ( c_2Enum_2ESUC_2E1(X0_2E0) = app_2E2(tyop_2Enum_2Enum,tyop_2Enum_2Enum,c_2Enum_2ESUC_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Elist_2ETL_2E1_2Emono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2ETL_2E1(tyop_2Estring_2Echar,X0_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Elist_2ETL_2E0(tyop_2Estring_2Echar),X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2ETOCHAR_2E1,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2ETOCHAR_2E1(X0_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar,c_2Estring_2ETOCHAR_2E0,X0_2E0) ) ).

tff(arityeq2_2Ec_2Estring_2ETOKENS_2E2,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2ETOKENS_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Estring_2ETOKENS_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Estring_2ETRANSLATE_2E2,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2ETRANSLATE_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Estring_2ETRANSLATE_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Ebool_2ETYPE__DEFINITION_2E2_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Ebool),X1_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Enum_2Enum)] : ( c_2Ebool_2ETYPE__DEFINITION_2E2(tyop_2Enum_2Enum,tyop_2Estring_2Echar,X0_2E0,X1_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Enum_2Enum),tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Enum_2Enum),tyop_2Emin_2Ebool),c_2Ebool_2ETYPE__DEFINITION_2E0(tyop_2Enum_2Enum,tyop_2Estring_2Echar),X0_2E0),X1_2E0) ) ).

tff(arityeq1_2Ec_2Epair_2EUNCURRY_2E1_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))))] : ( c_2Epair_2EUNCURRY_2E1(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Epair_2EUNCURRY_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),X0_2E0) ) ).

tff(arityeq1_2Ec_2Erelation_2EWF_2E1_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool))] : ( c_2Erelation_2EWF_2E1(tyop_2Elist_2Elist(tyop_2Estring_2Echar),X0_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool,c_2Erelation_2EWF_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0) ) ).

tff(arityeq1_2Ec_2Erelation_2EWF_2E1_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool))] : ( c_2Erelation_2EWF_2E1(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),X0_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool,c_2Erelation_2EWF_2E0(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)))),X0_2E0) ) ).

tff(arityeq2_2Ec_2Erelation_2EWFREC_2E2_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),X1_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar))] : ( c_2Erelation_2EWFREC_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar,X0_2E0,X1_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar),app_2E2(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar)),c_2Erelation_2EWFREC_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Erelation_2EWFREC_2E2_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29,axiom,
    ! [X0_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool)),X1_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)))] : ( c_2Erelation_2EWFREC_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar),X0_2E0,X1_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool)),tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Erelation_2EWFREC_2E0(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Ebool_2E_5C_2F_2E2,axiom,
    ! [X0_2E0: tyop_2Emin_2Ebool,X1_2E0: tyop_2Emin_2Ebool] :
      ( ( p(X0_2E0)
        | p(X1_2E0) )
    <=> p(app_2E2(tyop_2Emin_2Ebool,tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(tyop_2Emin_2Ebool,tyop_2Emin_2Ebool),c_2Ebool_2E_5C_2F_2E0,X0_2E0),X1_2E0)) ) ).

tff(arityeq2_2Ec_2Estring_2Echar__ge_2E2,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar,X1_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2Echar__ge_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),c_2Estring_2Echar__ge_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Estring_2Echar__gt_2E2,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar,X1_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2Echar__gt_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),c_2Estring_2Echar__gt_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Estring_2Echar__le_2E2,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar,X1_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2Echar__le_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),c_2Estring_2Echar__le_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Estring_2Echar__lt_2E2,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar,X1_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2Echar__lt_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),c_2Estring_2Echar__lt_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2Echar__size_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2Echar__size_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Enum_2Enum,c_2Estring_2Echar__size_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EisAlpha_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EisAlpha_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,c_2Estring_2EisAlpha_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EisAlphaNum_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EisAlphaNum_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,c_2Estring_2EisAlphaNum_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EisAscii_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EisAscii_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,c_2Estring_2EisAscii_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EisCntrl_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EisCntrl_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,c_2Estring_2EisCntrl_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EisDigit_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EisDigit_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,c_2Estring_2EisDigit_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EisGraph_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EisGraph_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,c_2Estring_2EisGraph_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EisHexDigit_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EisHexDigit_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,c_2Estring_2EisHexDigit_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EisLower_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EisLower_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,c_2Estring_2EisLower_2E0,X0_2E0) ) ).

tff(arityeq2_2Ec_2Elist_2EisPREFIX_2E2_2Emono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2EisPREFIX_2E2(tyop_2Estring_2Echar,X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),c_2Elist_2EisPREFIX_2E0(tyop_2Estring_2Echar),X0_2E0),X1_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EisPrint_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EisPrint_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,c_2Estring_2EisPrint_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EisPunct_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EisPunct_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,c_2Estring_2EisPunct_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EisSpace_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EisSpace_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,c_2Estring_2EisSpace_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EisUpper_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EisUpper_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,c_2Estring_2EisUpper_2E0,X0_2E0) ) ).

tff(arityeq3_2Ec_2Elist_2Elist__CASE_2E3_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Estring_2Echar,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X1_2E0: tyop_2Estring_2Echar,X2_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar))] : ( c_2Elist_2Elist__CASE_2E3(tyop_2Estring_2Echar,tyop_2Estring_2Echar,X0_2E0,X1_2E0,X2_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar)),tyop_2Estring_2Echar,app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar)),tyop_2Estring_2Echar),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar)),tyop_2Estring_2Echar)),c_2Elist_2Elist__CASE_2E0(tyop_2Estring_2Echar,tyop_2Estring_2Echar),X0_2E0),X1_2E0),X2_2E0) ) ).

tff(arityeq3_2Ec_2Eoption_2Eoption__CASE_2E3_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29,axiom,
    ! [X0_2E0: tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X2_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Elist_2Elist(tyop_2Estring_2Echar))] : ( c_2Eoption_2Eoption__CASE_2E3(tyop_2Enum_2Enum,tyop_2Elist_2Elist(tyop_2Estring_2Echar),X0_2E0,X1_2E0,X2_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Eoption_2Eoption__CASE_2E0(tyop_2Enum_2Enum,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0),X1_2E0),X2_2E0) ) ).

tff(arityeq3_2Ec_2Eoption_2Eoption__CASE_2E3_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Emin_2Ebool,axiom,
    ! [X0_2E0: tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),X1_2E0: tyop_2Emin_2Ebool,X2_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool)] : ( c_2Eoption_2Eoption__CASE_2E3(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool,X0_2E0,X1_2E0,X2_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool),tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool),tyop_2Emin_2Ebool),app_2E2(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Emin_2Ebool,tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool),tyop_2Emin_2Ebool)),c_2Eoption_2Eoption__CASE_2E0(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool),X0_2E0),X1_2E0),X2_2E0) ) ).

tff(arityeq3_2Ec_2Eoption_2Eoption__CASE_2E3_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29,axiom,
    ! [X0_2E0: tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X2_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar))] : ( c_2Eoption_2Eoption__CASE_2E3(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar),X0_2E0,X1_2E0,X2_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Eoption_2Eoption__CASE_2E0(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0),X1_2E0),X2_2E0) ) ).

tff(arityeq2_2Ec_2Epair_2Epair__CASE_2E2_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29,axiom,
    ! [X0_2E0: tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X1_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool))] : ( c_2Epair_2Epair__CASE_2E2(tyop_2Emin_2Ebool,tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),X0_2E0,X1_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool,app_2E2(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool),c_2Epair_2Epair__CASE_2E0(tyop_2Emin_2Ebool,tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Epair_2Epair__CASE_2E2_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29,axiom,
    ! [X0_2E0: tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X1_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)))] : ( c_2Epair_2Epair__CASE_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),X0_2E0,X1_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Epair_2Epair__CASE_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Epair_2Epair__CASE_2E2_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29,axiom,
    ! [X0_2E0: tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),X1_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),tyop_2Elist_2Elist(tyop_2Estring_2Echar)))] : ( c_2Epair_2Epair__CASE_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),X0_2E0,X1_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Epair_2Epair__CASE_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Epair_2Epair__CASE_2E2_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29,axiom,
    ! [X0_2E0: tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),X1_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),tyop_2Elist_2Elist(tyop_2Estring_2Echar)))] : ( c_2Epair_2Epair__CASE_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),X0_2E0,X1_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Epair_2Epair__CASE_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Epair_2Epair__CASE_2E2_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29,axiom,
    ! [X0_2E0: tyop_2Epair_2Eprod(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)))),X1_2E0: tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Ebool))] : ( c_2Epair_2Epair__CASE_2E2(tyop_2Emin_2Ebool,tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),X0_2E0,X1_2E0) = app_2E2(tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool,app_2E2(tyop_2Epair_2Eprod(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)))),tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool),c_2Epair_2Epair__CASE_2E0(tyop_2Emin_2Ebool,tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)))),X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Estring_2Estring__ge_2E2,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2Estring__ge_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),c_2Estring_2Estring__ge_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Estring_2Estring__gt_2E2,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2Estring__gt_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),c_2Estring_2Estring__gt_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Estring_2Estring__le_2E2,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2Estring__le_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),c_2Estring_2Estring__le_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq2_2Ec_2Estring_2Estring__lt_2E2,axiom,
    ! [X0_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),X1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2Estring__lt_2E2(X0_2E0,X1_2E0) = app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),c_2Estring_2Estring__lt_2E0,X0_2E0),X1_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EtoLower_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EtoLower_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Estring_2Echar,c_2Estring_2EtoLower_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Estring_2EtoUpper_2E1,axiom,
    ! [X0_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EtoUpper_2E1(X0_2E0) = app_2E2(tyop_2Estring_2Echar,tyop_2Estring_2Echar,c_2Estring_2EtoUpper_2E0,X0_2E0) ) ).

tff(arityeq1_2Ec_2Ebool_2E_7E_2E1,axiom,
    ! [X0_2E0: tyop_2Emin_2Ebool] :
      ( ~ p(X0_2E0)
    <=> p(app_2E2(tyop_2Emin_2Ebool,tyop_2Emin_2Ebool,c_2Ebool_2E_7E_2E0,X0_2E0)) ) ).

tff(thm_2Estring_2EDEST__STRING__def,axiom,
    ( ( c_2Estring_2EDEST__STRING_2E1(c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)) = c_2Eoption_2ENONE_2E0(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))) )
    & ! [V0c_2E0: tyop_2Estring_2Echar,V1rst_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2EDEST__STRING_2E1(c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,V1rst_2E0)) = c_2Eoption_2ESOME_2E1(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Epair_2E_2C_2E2(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),V0c_2E0,V1rst_2E0)) ) ) ).

tff(thm_2Estring_2Echar__TY__DEF,axiom,
    ! [F0_2E0: tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Ebool)] :
      ( ! [V1n_2E0: tyop_2Enum_2Enum] : ( app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Ebool,F0_2E0,V1n_2E0) = c_2Eprim__rec_2E_3C_2E2(V1n_2E0,c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))))))) )
     => ? [V0rep_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Enum_2Enum)] : p(c_2Ebool_2ETYPE__DEFINITION_2E2(tyop_2Enum_2Enum,tyop_2Estring_2Echar,F0_2E0,V0rep_2E0)) ) ).

tff(thm_2Estring_2Echar__BIJ,axiom,
    ( ! [V0a_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2ECHR_2E1(c_2Estring_2EORD_2E1(V0a_2E0)) = V0a_2E0 )
    & ! [V1r_2E0: tyop_2Enum_2Enum] :
        ( p(c_2Eprim__rec_2E_3C_2E2(V1r_2E0,c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))))))))
      <=> ( c_2Estring_2EORD_2E1(c_2Estring_2ECHR_2E1(V1r_2E0)) = V1r_2E0 ) ) ) ).

tff(thm_2Estring_2EisLower__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] :
      ( p(c_2Estring_2EisLower_2E1(V0c_2E0))
    <=> ( p(c_2Earithmetic_2E_3C_3D_2E2(c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EZERO_2E0))))))),c_2Estring_2EORD_2E1(V0c_2E0)))
        & p(c_2Earithmetic_2E_3C_3D_2E2(c_2Estring_2EORD_2E1(V0c_2E0),c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EZERO_2E0))))))))) ) ) ).

tff(thm_2Estring_2EisUpper__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] :
      ( p(c_2Estring_2EisUpper_2E1(V0c_2E0))
    <=> ( p(c_2Earithmetic_2E_3C_3D_2E2(c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0))))))),c_2Estring_2EORD_2E1(V0c_2E0)))
        & p(c_2Earithmetic_2E_3C_3D_2E2(c_2Estring_2EORD_2E1(V0c_2E0),c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0))))))))) ) ) ).

tff(thm_2Estring_2EisDigit__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] :
      ( p(c_2Estring_2EisDigit_2E1(V0c_2E0))
    <=> ( p(c_2Earithmetic_2E_3C_3D_2E2(c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EZERO_2E0)))))),c_2Estring_2EORD_2E1(V0c_2E0)))
        & p(c_2Earithmetic_2E_3C_3D_2E2(c_2Estring_2EORD_2E1(V0c_2E0),c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EZERO_2E0)))))))) ) ) ).

tff(thm_2Estring_2EisAlpha__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] :
      ( p(c_2Estring_2EisAlpha_2E1(V0c_2E0))
    <=> ( p(c_2Estring_2EisLower_2E1(V0c_2E0))
        | p(c_2Estring_2EisUpper_2E1(V0c_2E0)) ) ) ).

tff(thm_2Estring_2EisHexDigit__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] :
      ( p(c_2Estring_2EisHexDigit_2E1(V0c_2E0))
    <=> ( ( p(c_2Earithmetic_2E_3C_3D_2E2(c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EZERO_2E0)))))),c_2Estring_2EORD_2E1(V0c_2E0)))
          & p(c_2Earithmetic_2E_3C_3D_2E2(c_2Estring_2EORD_2E1(V0c_2E0),c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EZERO_2E0)))))))) )
        | ( p(c_2Earithmetic_2E_3C_3D_2E2(c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EZERO_2E0))))))),c_2Estring_2EORD_2E1(V0c_2E0)))
          & p(c_2Earithmetic_2E_3C_3D_2E2(c_2Estring_2EORD_2E1(V0c_2E0),c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EZERO_2E0))))))))) )
        | ( p(c_2Earithmetic_2E_3C_3D_2E2(c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0))))))),c_2Estring_2EORD_2E1(V0c_2E0)))
          & p(c_2Earithmetic_2E_3C_3D_2E2(c_2Estring_2EORD_2E1(V0c_2E0),c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0))))))))) ) ) ) ).

tff(thm_2Estring_2EisAlphaNum__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] :
      ( p(c_2Estring_2EisAlphaNum_2E1(V0c_2E0))
    <=> ( p(c_2Estring_2EisAlpha_2E1(V0c_2E0))
        | p(c_2Estring_2EisDigit_2E1(V0c_2E0)) ) ) ).

tff(thm_2Estring_2EisPrint__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] :
      ( p(c_2Estring_2EisPrint_2E1(V0c_2E0))
    <=> ( p(c_2Earithmetic_2E_3C_3D_2E2(c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))),c_2Estring_2EORD_2E1(V0c_2E0)))
        & p(c_2Eprim__rec_2E_3C_2E2(c_2Estring_2EORD_2E1(V0c_2E0),c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))))))) ) ) ).

tff(thm_2Estring_2EisSpace__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] :
      ( p(c_2Estring_2EisSpace_2E1(V0c_2E0))
    <=> ( ( c_2Estring_2EORD_2E1(V0c_2E0) = c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))) )
        | ( p(c_2Earithmetic_2E_3C_3D_2E2(c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))),c_2Estring_2EORD_2E1(V0c_2E0)))
          & p(c_2Earithmetic_2E_3C_3D_2E2(c_2Estring_2EORD_2E1(V0c_2E0),c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EZERO_2E0)))))) ) ) ) ).

tff(thm_2Estring_2EisGraph__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] :
      ( p(c_2Estring_2EisGraph_2E1(V0c_2E0))
    <=> ( p(c_2Estring_2EisPrint_2E1(V0c_2E0))
        & ~ p(c_2Estring_2EisSpace_2E1(V0c_2E0)) ) ) ).

tff(thm_2Estring_2EisPunct__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] :
      ( p(c_2Estring_2EisPunct_2E1(V0c_2E0))
    <=> ( p(c_2Estring_2EisGraph_2E1(V0c_2E0))
        & ~ p(c_2Estring_2EisAlphaNum_2E1(V0c_2E0)) ) ) ).

tff(thm_2Estring_2EisAscii__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EisAscii_2E1(V0c_2E0) = c_2Earithmetic_2E_3C_3D_2E2(c_2Estring_2EORD_2E1(V0c_2E0),c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0))))))))) ) ).

tff(thm_2Estring_2EisCntrl__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] :
      ( p(c_2Estring_2EisCntrl_2E1(V0c_2E0))
    <=> ( p(c_2Eprim__rec_2E_3C_2E2(c_2Estring_2EORD_2E1(V0c_2E0),c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0))))))))
        | p(c_2Earithmetic_2E_3C_3D_2E2(c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))))),c_2Estring_2EORD_2E1(V0c_2E0))) ) ) ).

tff(thm_2Estring_2EtoLower__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EtoLower_2E1(V0c_2E0) = c_2Ebool_2ECOND_2E3(tyop_2Estring_2Echar,c_2Estring_2EisUpper_2E1(V0c_2E0),c_2Estring_2ECHR_2E1(c_2Earithmetic_2E_2B_2E2(c_2Estring_2EORD_2E1(V0c_2E0),c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))))),V0c_2E0) ) ).

tff(thm_2Estring_2EtoUpper__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2EtoUpper_2E1(V0c_2E0) = c_2Ebool_2ECOND_2E3(tyop_2Estring_2Echar,c_2Estring_2EisLower_2E1(V0c_2E0),c_2Estring_2ECHR_2E1(c_2Earithmetic_2E_2D_2E2(c_2Estring_2EORD_2E1(V0c_2E0),c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))))),V0c_2E0) ) ).

tff(thm_2Estring_2Echar__lt__def,axiom,
    ! [V0a_2E0: tyop_2Estring_2Echar,V1b_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2Echar__lt_2E2(V0a_2E0,V1b_2E0) = c_2Eprim__rec_2E_3C_2E2(c_2Estring_2EORD_2E1(V0a_2E0),c_2Estring_2EORD_2E1(V1b_2E0)) ) ).

tff(thm_2Estring_2Echar__le__def,axiom,
    ! [V0a_2E0: tyop_2Estring_2Echar,V1b_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2Echar__le_2E2(V0a_2E0,V1b_2E0) = c_2Earithmetic_2E_3C_3D_2E2(c_2Estring_2EORD_2E1(V0a_2E0),c_2Estring_2EORD_2E1(V1b_2E0)) ) ).

tff(thm_2Estring_2Echar__gt__def,axiom,
    ! [V0a_2E0: tyop_2Estring_2Echar,V1b_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2Echar__gt_2E2(V0a_2E0,V1b_2E0) = c_2Earithmetic_2E_3E_2E2(c_2Estring_2EORD_2E1(V0a_2E0),c_2Estring_2EORD_2E1(V1b_2E0)) ) ).

tff(thm_2Estring_2Echar__ge__def,axiom,
    ! [V0a_2E0: tyop_2Estring_2Echar,V1b_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2Echar__ge_2E2(V0a_2E0,V1b_2E0) = c_2Earithmetic_2E_3E_3D_2E2(c_2Estring_2EORD_2E1(V0a_2E0),c_2Estring_2EORD_2E1(V1b_2E0)) ) ).

tff(thm_2Estring_2Echar__size__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2Echar__size_2E1(V0c_2E0) = c_2Enum_2E0_2E0 ) ).

tff(thm_2Estring_2ESUB__def,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1n_2E0: tyop_2Enum_2Enum] : ( c_2Estring_2ESUB_2E1(c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Enum_2Enum,V0s_2E0,V1n_2E0)) = c_2Elist_2EEL_2E2(tyop_2Estring_2Echar,V1n_2E0,V0s_2E0) ) ).

tff(thm_2Estring_2ESTR__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2ESTR_2E1(V0c_2E0) = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)) ) ).

tff(thm_2Estring_2ETOCHAR__primitive__def,axiom,
    ! [F0_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool),F3_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar)),F2_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar)),F1_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar))] :
      ( ! [V0R_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool))] : ( app_2E2(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool,F0_2E0,V0R_2E0) = c_2Erelation_2EWF_2E1(tyop_2Elist_2Elist(tyop_2Estring_2Echar),V0R_2E0) )
     => ( ! [V5v2_2E0: tyop_2Estring_2Echar,V6v3_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar,app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar),F3_2E0,V5v2_2E0),V6v3_2E0) = c_2Ebool_2EARB_2E0(tyop_2Estring_2Echar) )
       => ( ! [V3c_2E0: tyop_2Estring_2Echar,V4v1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar,app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar),F2_2E0,V3c_2E0),V4v1_2E0) = c_2Elist_2Elist__CASE_2E3(tyop_2Estring_2Echar,tyop_2Estring_2Echar,V4v1_2E0,c_2Ecombin_2EI_2E1(tyop_2Estring_2Echar,V3c_2E0),F3_2E0) )
         => ( ! [V1TOCHAR_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar),V2a_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar,app_2E2(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar),F1_2E0,V1TOCHAR_2E0),V2a_2E0) = c_2Elist_2Elist__CASE_2E3(tyop_2Estring_2Echar,tyop_2Estring_2Echar,V2a_2E0,c_2Ebool_2EARB_2E0(tyop_2Estring_2Echar),F2_2E0) )
           => ( c_2Estring_2ETOCHAR_2E0 = c_2Erelation_2EWFREC_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar,c_2Emin_2E_40_2E1(tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),F0_2E0),F1_2E0) ) ) ) ) ) ).

tff(thm_2Estring_2ESUBSTRING__def,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1i_2E0: tyop_2Enum_2Enum,V2n_2E0: tyop_2Enum_2Enum] : ( c_2Estring_2ESUBSTRING_2E1(c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum),V0s_2E0,c_2Epair_2E_2C_2E2(tyop_2Enum_2Enum,tyop_2Enum_2Enum,V1i_2E0,V2n_2E0))) = c_2Erich__list_2ESEG_2E3(tyop_2Estring_2Echar,V2n_2E0,V1i_2E0,V0s_2E0) ) ).

tff(thm_2Estring_2ETRANSLATE__def,axiom,
    ! [V0f_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),V1s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2ETRANSLATE_2E2(V0f_2E0,V1s_2E0) = c_2Elist_2EFLAT_2E1(tyop_2Estring_2Echar,c_2Elist_2EMAP_2E2(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),V0f_2E0,V1s_2E0)) ) ).

tff(thm_2Estring_2EIMPLODE__def,axiom,
    ( ( c_2Estring_2EIMPLODE_2E1(c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)) = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) )
    & ! [V0c_2E0: tyop_2Estring_2Echar,V1cs_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2EIMPLODE_2E1(c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,V1cs_2E0)) = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,c_2Estring_2EIMPLODE_2E1(V1cs_2E0)) ) ) ).

tff(thm_2Estring_2EEXPLODE__def,axiom,
    ( ( c_2Estring_2EEXPLODE_2E1(c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)) = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) )
    & ! [V0c_2E0: tyop_2Estring_2Echar,V1s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2EEXPLODE_2E1(c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,V1s_2E0)) = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,c_2Estring_2EEXPLODE_2E1(V1s_2E0)) ) ) ).

tff(thm_2Estring_2EEXTRACT__primitive__def,axiom,
    ! [F4_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Elist_2Elist(tyop_2Estring_2Echar)))),F3_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),tyop_2Elist_2Elist(tyop_2Estring_2Echar)))),F2_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),F1_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),F0_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool)] :
      ( ! [V3s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V5i_2E0: tyop_2Enum_2Enum,V7n_2E0: tyop_2Enum_2Enum] : ( app_2E2(tyop_2Enum_2Enum,tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),F4_2E0,V3s_2E0),V5i_2E0),V7n_2E0) = c_2Ecombin_2EI_2E1(tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Estring_2ESUBSTRING_2E1(c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum),V3s_2E0,c_2Epair_2E_2C_2E2(tyop_2Enum_2Enum,tyop_2Enum_2Enum,V5i_2E0,V7n_2E0)))) )
     => ( ! [V3s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V5i_2E0: tyop_2Enum_2Enum,V6v3_2E0: tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)] : ( app_2E2(tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),F3_2E0,V3s_2E0),V5i_2E0),V6v3_2E0) = c_2Eoption_2Eoption__CASE_2E3(tyop_2Enum_2Enum,tyop_2Elist_2Elist(tyop_2Estring_2Echar),V6v3_2E0,c_2Ecombin_2EI_2E1(tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Estring_2ESUBSTRING_2E1(c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum),V3s_2E0,c_2Epair_2E_2C_2E2(tyop_2Enum_2Enum,tyop_2Enum_2Enum,V5i_2E0,c_2Earithmetic_2E_2D_2E2(c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,V3s_2E0),V5i_2E0))))),app_2E2(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),F4_2E0,V3s_2E0),V5i_2E0)) )
       => ( ! [V3s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V4v1_2E0: tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))] : ( app_2E2(tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),F2_2E0,V3s_2E0),V4v1_2E0) = c_2Epair_2Epair__CASE_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),V4v1_2E0,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Enum_2Enum,tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),F3_2E0,V3s_2E0)) )
         => ( ! [V1EXTRACT_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),V2a_2E0: tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)))] : ( app_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),F1_2E0,V1EXTRACT_2E0),V2a_2E0) = c_2Epair_2Epair__CASE_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),V2a_2E0,F2_2E0) )
           => ( ! [V0R_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool))] : ( app_2E2(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool)),tyop_2Emin_2Ebool,F0_2E0,V0R_2E0) = c_2Erelation_2EWF_2E1(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),V0R_2E0) )
             => ( c_2Estring_2EEXTRACT_2E0 = c_2Erelation_2EWFREC_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Emin_2E_40_2E1(tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool)),F0_2E0),F1_2E0) ) ) ) ) ) ) ).

tff(thm_2Estring_2Estring__le__def,axiom,
    ! [V0s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1s2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( p(c_2Estring_2Estring__le_2E2(V0s1_2E0,V1s2_2E0))
    <=> ( ( V0s1_2E0 = V1s2_2E0 )
        | p(c_2Estring_2Estring__lt_2E2(V0s1_2E0,V1s2_2E0)) ) ) ).

tff(thm_2Estring_2Estring__gt__def,axiom,
    ! [V0s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1s2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2Estring__gt_2E2(V0s1_2E0,V1s2_2E0) = c_2Estring_2Estring__lt_2E2(V1s2_2E0,V0s1_2E0) ) ).

tff(thm_2Estring_2Estring__ge__def,axiom,
    ! [V0s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1s2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2Estring__ge_2E2(V0s1_2E0,V1s2_2E0) = c_2Estring_2Estring__le_2E2(V1s2_2E0,V0s1_2E0) ) ).

tff(thm_2Estring_2EIMPLODE__STRING,axiom,
    ! [V0clist_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2EIMPLODE_2E1(V0clist_2E0) = c_2Elist_2EFOLDR_2E3(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Elist_2ECONS_2E0(tyop_2Estring_2Echar),c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar),V0clist_2E0) ) ).

tff(thm_2Estring_2EEXPLODE__DEST__STRING,axiom,
    ! [F1_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar))),F0_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar))] :
      ( ! [V2c_2E0: tyop_2Estring_2Echar,V3t_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),F1_2E0,V2c_2E0),V3t_2E0) = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V2c_2E0,c_2Estring_2EEXPLODE_2E1(V3t_2E0)) )
     => ( ! [V1v_2E0: tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))] : ( app_2E2(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar),F0_2E0,V1v_2E0) = c_2Epair_2Epair__CASE_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1v_2E0,F1_2E0) )
       => ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2EEXPLODE_2E1(V0s_2E0) = c_2Eoption_2Eoption__CASE_2E3(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Estring_2EDEST__STRING_2E1(V0s_2E0),c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar),F0_2E0) ) ) ) ).

tff(thm_2Estring_2EIMPLODE__EQ__THM,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar,V1s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V2l_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( ( ( c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,V1s_2E0) = c_2Estring_2EIMPLODE_2E1(V2l_2E0) )
      <=> ( V2l_2E0 = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,c_2Estring_2EEXPLODE_2E1(V1s_2E0)) ) )
      & ( ( c_2Estring_2EIMPLODE_2E1(V2l_2E0) = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,V1s_2E0) )
      <=> ( V2l_2E0 = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,c_2Estring_2EEXPLODE_2E1(V1s_2E0)) ) ) ) ).

tff(thm_2Estring_2EEXPLODE__EQ__THM,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1h_2E0: tyop_2Estring_2Echar,V2t_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( ( ( c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V1h_2E0,V2t_2E0) = c_2Estring_2EEXPLODE_2E1(V0s_2E0) )
      <=> ( V0s_2E0 = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V1h_2E0,c_2Estring_2EIMPLODE_2E1(V2t_2E0)) ) )
      & ( ( c_2Estring_2EEXPLODE_2E1(V0s_2E0) = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V1h_2E0,V2t_2E0) )
      <=> ( V0s_2E0 = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V1h_2E0,c_2Estring_2EIMPLODE_2E1(V2t_2E0)) ) ) ) ).

tff(thm_2Estring_2EEXPLODE__EQ__NIL,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( ( ( c_2Estring_2EEXPLODE_2E1(V0s_2E0) = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) )
      <=> ( V0s_2E0 = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) ) )
      & ( ( c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) = c_2Estring_2EEXPLODE_2E1(V0s_2E0) )
      <=> ( V0s_2E0 = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) ) ) ) ).

tff(thm_2Estring_2EIMPLODE__EQ__EMPTYSTRING,axiom,
    ! [V0l_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( ( ( c_2Estring_2EIMPLODE_2E1(V0l_2E0) = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) )
      <=> ( V0l_2E0 = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) ) )
      & ( ( c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) = c_2Estring_2EIMPLODE_2E1(V0l_2E0) )
      <=> ( V0l_2E0 = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) ) ) ) ).

tff(thm_2Estring_2EIMPLODE__EQNS,axiom,
    ( ( c_2Estring_2EIMPLODE_2E1(c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)) = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) )
    & ! [V0c_2E0: tyop_2Estring_2Echar,V1cs_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2EIMPLODE_2E1(c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,V1cs_2E0)) = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,c_2Estring_2EIMPLODE_2E1(V1cs_2E0)) ) ) ).

tff(thm_2Estring_2EEXPLODE__EQNS,axiom,
    ( ( c_2Estring_2EEXPLODE_2E1(c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)) = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) )
    & ! [V0c_2E0: tyop_2Estring_2Echar,V1s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2EEXPLODE_2E1(c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,V1s_2E0)) = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,c_2Estring_2EEXPLODE_2E1(V1s_2E0)) ) ) ).

tff(thm_2Estring_2EDEST__STRING__LEMS,axiom,
    ! [V0t_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1c_2E0: tyop_2Estring_2Echar,V2s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( ( ( c_2Estring_2EDEST__STRING_2E1(V2s_2E0) = c_2Eoption_2ENONE_2E0(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))) )
      <=> ( V2s_2E0 = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) ) )
      & ( ( c_2Estring_2EDEST__STRING_2E1(V2s_2E0) = c_2Eoption_2ESOME_2E1(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Epair_2E_2C_2E2(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1c_2E0,V0t_2E0)) )
      <=> ( V2s_2E0 = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V1c_2E0,V0t_2E0) ) ) ) ).

tff(thm_2Estring_2ESTRLEN__EXPLODE__THM,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,V0s_2E0) = c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,c_2Estring_2EEXPLODE_2E1(V0s_2E0)) ) ).

tff(thm_2Estring_2EORD__11,axiom,
    ! [V0a_2E0: tyop_2Estring_2Echar,V1a_27_2E0: tyop_2Estring_2Echar] :
      ( ( c_2Estring_2EORD_2E1(V0a_2E0) = c_2Estring_2EORD_2E1(V1a_27_2E0) )
    <=> ( V0a_2E0 = V1a_27_2E0 ) ) ).

tff(thm_2Estring_2ECHR__11,axiom,
    ! [V0r_2E0: tyop_2Enum_2Enum,V1r_27_2E0: tyop_2Enum_2Enum] :
      ( p(c_2Eprim__rec_2E_3C_2E2(V0r_2E0,c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))))))))
     => ( p(c_2Eprim__rec_2E_3C_2E2(V1r_27_2E0,c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))))))))
       => ( ( c_2Estring_2ECHR_2E1(V0r_2E0) = c_2Estring_2ECHR_2E1(V1r_27_2E0) )
        <=> ( V0r_2E0 = V1r_27_2E0 ) ) ) ) ).

tff(thm_2Estring_2EORD__ONTO,axiom,
    ! [V0r_2E0: tyop_2Enum_2Enum] :
      ( p(c_2Eprim__rec_2E_3C_2E2(V0r_2E0,c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))))))))
    <=> ? [V1a_2E0: tyop_2Estring_2Echar] : ( V0r_2E0 = c_2Estring_2EORD_2E1(V1a_2E0) ) ) ).

tff(thm_2Estring_2ECHR__ONTO,axiom,
    ! [V0a_2E0: tyop_2Estring_2Echar] :
    ? [V1r_2E0: tyop_2Enum_2Enum] :
      ( ( V0a_2E0 = c_2Estring_2ECHR_2E1(V1r_2E0) )
      & p(c_2Eprim__rec_2E_3C_2E2(V1r_2E0,c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0))))))))))) ) ).

tff(thm_2Estring_2ECHR__ORD,axiom,
    ! [V0a_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2ECHR_2E1(c_2Estring_2EORD_2E1(V0a_2E0)) = V0a_2E0 ) ).

tff(thm_2Estring_2EORD__CHR,axiom,
    ! [V0r_2E0: tyop_2Enum_2Enum] :
      ( p(c_2Eprim__rec_2E_3C_2E2(V0r_2E0,c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))))))))
    <=> ( c_2Estring_2EORD_2E1(c_2Estring_2ECHR_2E1(V0r_2E0)) = V0r_2E0 ) ) ).

tff(thm_2Estring_2EORD__CHR__RWT,axiom,
    ! [V0r_2E0: tyop_2Enum_2Enum] :
      ( p(c_2Eprim__rec_2E_3C_2E2(V0r_2E0,c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))))))))
     => ( c_2Estring_2EORD_2E1(c_2Estring_2ECHR_2E1(V0r_2E0)) = V0r_2E0 ) ) ).

tff(thm_2Estring_2EORD__CHR__COMPUTE,axiom,
    ! [V0_3E_20255_2E0: tyop_2Emin_2Ebool,V1n_2E0: tyop_2Enum_2Enum] : ( c_2Estring_2EORD_2E1(c_2Estring_2ECHR_2E1(V1n_2E0)) = c_2Ebool_2ECOND_2E3(tyop_2Enum_2Enum,c_2Eprim__rec_2E_3C_2E2(V1n_2E0,c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))))))),V1n_2E0,app_2E2(tyop_2Estring_2Echar,tyop_2Enum_2Enum,c_2Ecombin_2EFAIL_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Enum_2Enum),tyop_2Emin_2Ebool,c_2Estring_2EORD_2E0,V0_3E_20255_2E0),c_2Estring_2ECHR_2E1(V1n_2E0))) ) ).

tff(thm_2Estring_2EORD__BOUND,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] : p(c_2Eprim__rec_2E_3C_2E2(c_2Estring_2EORD_2E1(V0c_2E0),c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0))))))))))) ).

tff(thm_2Estring_2Echar__nchotomy,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] :
    ? [V1n_2E0: tyop_2Enum_2Enum] : ( V0c_2E0 = c_2Estring_2ECHR_2E1(V1n_2E0) ) ).

tff(thm_2Estring_2Eranged__char__nchotomy,axiom,
    ! [V0a_2E0: tyop_2Estring_2Echar] :
    ? [V1r_2E0: tyop_2Enum_2Enum] :
      ( ( V0a_2E0 = c_2Estring_2ECHR_2E1(V1r_2E0) )
      & p(c_2Eprim__rec_2E_3C_2E2(V1r_2E0,c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0))))))))))) ) ).

tff(thm_2Estring_2ECHAR__EQ__THM,axiom,
    ! [V0c1_2E0: tyop_2Estring_2Echar,V1c2_2E0: tyop_2Estring_2Echar] :
      ( ( V0c1_2E0 = V1c2_2E0 )
    <=> ( c_2Estring_2EORD_2E1(V0c1_2E0) = c_2Estring_2EORD_2E1(V1c2_2E0) ) ) ).

tff(thm_2Estring_2ECHAR__INDUCT__THM,axiom,
    ! [V0P_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool)] :
      ( ! [V1n_2E0: tyop_2Enum_2Enum] :
          ( p(c_2Eprim__rec_2E_3C_2E2(V1n_2E0,c_2Earithmetic_2ENUMERAL_2E1(c_2Earithmetic_2EBIT2_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EBIT1_2E1(c_2Earithmetic_2EZERO_2E0)))))))))))
         => p(app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,V0P_2E0,c_2Estring_2ECHR_2E1(V1n_2E0))) )
     => ! [V2c_2E0: tyop_2Estring_2Echar] : p(app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Ebool,V0P_2E0,V2c_2E0)) ) ).

tff(thm_2Estring_2ETOCHAR__ind,axiom,
    ! [V0P_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)] :
      ( ( ! [V1c_2E0: tyop_2Estring_2Echar] : p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,V0P_2E0,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V1c_2E0,c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar))))
        & p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,V0P_2E0,c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)))
        & ! [V2v6_2E0: tyop_2Estring_2Echar,V3v4_2E0: tyop_2Estring_2Echar,V4v5_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,V0P_2E0,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V2v6_2E0,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V3v4_2E0,V4v5_2E0)))) )
     => ! [V5v_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,V0P_2E0,V5v_2E0)) ) ).

tff(thm_2Estring_2ETOCHAR__def,axiom,
    ! [V0c_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2ETOCHAR_2E1(c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0c_2E0,c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar))) = V0c_2E0 ) ).

tff(thm_2Estring_2ETOKENS__ind,axiom,
    ! [V0P_27_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool))] :
      ( ( ! [V1P_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool)] : p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_27_2E0,V1P_2E0),c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)))
        & ! [V2P_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),V3h_2E0: tyop_2Estring_2Echar,V4t_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
            ( ( ! [V5l_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V6r_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
                  ( ( ( c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),V5l_2E0,V6r_2E0) = c_2Erich__list_2ESPLITP_2E2(tyop_2Estring_2Echar,V2P_2E0,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V3h_2E0,V4t_2E0)) )
                    & p(c_2Elist_2ENULL_2E1(tyop_2Estring_2Echar,V5l_2E0)) )
                 => p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_27_2E0,V2P_2E0),c_2Elist_2ETL_2E1(tyop_2Estring_2Echar,V6r_2E0))) )
              & ! [V7l_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V8r_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
                  ( ( ( c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),V7l_2E0,V8r_2E0) = c_2Erich__list_2ESPLITP_2E2(tyop_2Estring_2Echar,V2P_2E0,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V3h_2E0,V4t_2E0)) )
                    & ~ p(c_2Elist_2ENULL_2E1(tyop_2Estring_2Echar,V7l_2E0)) )
                 => p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_27_2E0,V2P_2E0),V8r_2E0)) ) )
           => p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_27_2E0,V2P_2E0),c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V3h_2E0,V4t_2E0))) ) )
     => ! [V9v_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),V10v1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_27_2E0,V9v_2E0),V10v1_2E0)) ) ).

tff(thm_2Estring_2ETOKENS__def,axiom,
    ! [F0_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)))))] :
      ( ! [V3P_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),V4l_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V5r_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)))),F0_2E0,V3P_2E0),V4l_2E0),V5r_2E0) = c_2Ebool_2ECOND_2E3(tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Elist_2ENULL_2E1(tyop_2Estring_2Echar,V4l_2E0),c_2Estring_2ETOKENS_2E2(V3P_2E0,c_2Elist_2ETL_2E1(tyop_2Estring_2Echar,V5r_2E0)),c_2Elist_2ECONS_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),V4l_2E0,c_2Estring_2ETOKENS_2E2(V3P_2E0,V5r_2E0))) )
     => ( ! [V0P_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool)] : ( c_2Estring_2ETOKENS_2E2(V0P_2E0,c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)) = c_2Elist_2ENIL_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar)) )
        & ! [V1t_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V2h_2E0: tyop_2Estring_2Echar,V3P_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool)] : ( c_2Estring_2ETOKENS_2E2(V3P_2E0,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V2h_2E0,V1t_2E0)) = c_2Ebool_2ELET_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Epair_2EUNCURRY_2E1(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)))),F0_2E0,V3P_2E0)),c_2Erich__list_2ESPLITP_2E2(tyop_2Estring_2Echar,V3P_2E0,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V2h_2E0,V1t_2E0))) ) ) ) ).

tff(thm_2Estring_2EFIELDS__ind,axiom,
    ! [V0P_27_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool))] :
      ( ( ! [V1P_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool)] : p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_27_2E0,V1P_2E0),c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)))
        & ! [V2P_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),V3h_2E0: tyop_2Estring_2Echar,V4t_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
            ( ( ! [V5l_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V6r_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
                  ( ( ( c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),V5l_2E0,V6r_2E0) = c_2Erich__list_2ESPLITP_2E2(tyop_2Estring_2Echar,V2P_2E0,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V3h_2E0,V4t_2E0)) )
                    & p(c_2Elist_2ENULL_2E1(tyop_2Estring_2Echar,V5l_2E0)) )
                 => p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_27_2E0,V2P_2E0),c_2Elist_2ETL_2E1(tyop_2Estring_2Echar,V6r_2E0))) )
              & ! [V7l_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V8r_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
                  ( ( ( c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),V7l_2E0,V8r_2E0) = c_2Erich__list_2ESPLITP_2E2(tyop_2Estring_2Echar,V2P_2E0,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V3h_2E0,V4t_2E0)) )
                    & ~ p(c_2Elist_2ENULL_2E1(tyop_2Estring_2Echar,V7l_2E0))
                    & ~ p(c_2Elist_2ENULL_2E1(tyop_2Estring_2Echar,V8r_2E0)) )
                 => p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_27_2E0,V2P_2E0),c_2Elist_2ETL_2E1(tyop_2Estring_2Echar,V8r_2E0))) ) )
           => p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_27_2E0,V2P_2E0),c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V3h_2E0,V4t_2E0))) ) )
     => ! [V9v_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),V10v1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_27_2E0,V9v_2E0),V10v1_2E0)) ) ).

tff(thm_2Estring_2EFIELDS__def,axiom,
    ! [F0_2E0: tyop_2Emin_2Efun(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)))))] :
      ( ! [V3P_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),V4l_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V5r_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)))),F0_2E0,V3P_2E0),V4l_2E0),V5r_2E0) = c_2Ebool_2ECOND_2E3(tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Elist_2ENULL_2E1(tyop_2Estring_2Echar,V4l_2E0),c_2Elist_2ECONS_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar),c_2Estring_2EFIELDS_2E2(V3P_2E0,c_2Elist_2ETL_2E1(tyop_2Estring_2Echar,V5r_2E0))),c_2Ebool_2ECOND_2E3(tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Elist_2ENULL_2E1(tyop_2Estring_2Echar,V5r_2E0),c_2Elist_2ECONS_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),V4l_2E0,c_2Elist_2ENIL_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Elist_2ECONS_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),V4l_2E0,c_2Estring_2EFIELDS_2E2(V3P_2E0,c_2Elist_2ETL_2E1(tyop_2Estring_2Echar,V5r_2E0))))) )
     => ( ! [V0P_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool)] : ( c_2Estring_2EFIELDS_2E2(V0P_2E0,c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)) = c_2Elist_2ECONS_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar),c_2Elist_2ENIL_2E0(tyop_2Elist_2Elist(tyop_2Estring_2Echar))) )
        & ! [V1t_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V2h_2E0: tyop_2Estring_2Echar,V3P_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool)] : ( c_2Estring_2EFIELDS_2E2(V3P_2E0,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V2h_2E0,V1t_2E0)) = c_2Ebool_2ELET_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Epair_2EUNCURRY_2E1(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)),app_2E2(tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Ebool),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Elist_2Elist(tyop_2Elist_2Elist(tyop_2Estring_2Echar)))),F0_2E0,V3P_2E0)),c_2Erich__list_2ESPLITP_2E2(tyop_2Estring_2Echar,V3P_2E0,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V2h_2E0,V1t_2E0))) ) ) ) ).

tff(thm_2Estring_2EIMPLODE__EXPLODE__I,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( ( c_2Estring_2EEXPLODE_2E1(V0s_2E0) = V0s_2E0 )
      & ( c_2Estring_2EIMPLODE_2E1(V0s_2E0) = V0s_2E0 ) ) ).

tff(thm_2Estring_2EIMPLODE__EXPLODE,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2EIMPLODE_2E1(c_2Estring_2EEXPLODE_2E1(V0s_2E0)) = V0s_2E0 ) ).

tff(thm_2Estring_2EEXPLODE__IMPLODE,axiom,
    ! [V0cs_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2EEXPLODE_2E1(c_2Estring_2EIMPLODE_2E1(V0cs_2E0)) = V0cs_2E0 ) ).

tff(thm_2Estring_2EEXPLODE__ONTO,axiom,
    ! [V0cs_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
    ? [V1s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( V0cs_2E0 = c_2Estring_2EEXPLODE_2E1(V1s_2E0) ) ).

tff(thm_2Estring_2EIMPLODE__ONTO,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
    ? [V1cs_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( V0s_2E0 = c_2Estring_2EIMPLODE_2E1(V1cs_2E0) ) ).

tff(thm_2Estring_2EEXPLODE__11,axiom,
    ! [V0s2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( ( c_2Estring_2EEXPLODE_2E1(V1s1_2E0) = c_2Estring_2EEXPLODE_2E1(V0s2_2E0) )
    <=> ( V1s1_2E0 = V0s2_2E0 ) ) ).

tff(thm_2Estring_2EIMPLODE__11,axiom,
    ! [V0cs2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1cs1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( ( c_2Estring_2EIMPLODE_2E1(V1cs1_2E0) = c_2Estring_2EIMPLODE_2E1(V0cs2_2E0) )
    <=> ( V1cs1_2E0 = V0cs2_2E0 ) ) ).

tff(thm_2Estring_2ESTRING__ACYCLIC,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1c_2E0: tyop_2Estring_2Echar] :
      ( ( c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V1c_2E0,V0s_2E0) != V0s_2E0 )
      & ( V0s_2E0 != c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V1c_2E0,V0s_2E0) ) ) ).

tff(thm_2Estring_2EEXTRACT__ind,axiom,
    ! [V0P_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool)] :
      ( ( ! [V1s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V2i_2E0: tyop_2Enum_2Enum] : p(app_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool,V0P_2E0,c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),V1s_2E0,c_2Epair_2E_2C_2E2(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),V2i_2E0,c_2Eoption_2ENONE_2E0(tyop_2Enum_2Enum)))))
        & ! [V3s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V4i_2E0: tyop_2Enum_2Enum,V5n_2E0: tyop_2Enum_2Enum] : p(app_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool,V0P_2E0,c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),V3s_2E0,c_2Epair_2E_2C_2E2(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),V4i_2E0,c_2Eoption_2ESOME_2E1(tyop_2Enum_2Enum,V5n_2E0))))) )
     => ! [V6v_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V7v1_2E0: tyop_2Enum_2Enum,V8v2_2E0: tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)] : p(app_2E2(tyop_2Epair_2Eprod(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum))),tyop_2Emin_2Ebool,V0P_2E0,c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),V6v_2E0,c_2Epair_2E_2C_2E2(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),V7v1_2E0,V8v2_2E0)))) ) ).

tff(thm_2Estring_2EEXTRACT__def,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1n_2E0: tyop_2Enum_2Enum,V2i_2E0: tyop_2Enum_2Enum] :
      ( ( c_2Estring_2EEXTRACT_2E1(c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),V0s_2E0,c_2Epair_2E_2C_2E2(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),V2i_2E0,c_2Eoption_2ENONE_2E0(tyop_2Enum_2Enum)))) = c_2Estring_2ESUBSTRING_2E1(c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum),V0s_2E0,c_2Epair_2E_2C_2E2(tyop_2Enum_2Enum,tyop_2Enum_2Enum,V2i_2E0,c_2Earithmetic_2E_2D_2E2(c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,V0s_2E0),V2i_2E0)))) )
      & ( c_2Estring_2EEXTRACT_2E1(c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum)),V0s_2E0,c_2Epair_2E_2C_2E2(tyop_2Enum_2Enum,tyop_2Eoption_2Eoption(tyop_2Enum_2Enum),V2i_2E0,c_2Eoption_2ESOME_2E1(tyop_2Enum_2Enum,V1n_2E0)))) = c_2Estring_2ESUBSTRING_2E1(c_2Epair_2E_2C_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Epair_2Eprod(tyop_2Enum_2Enum,tyop_2Enum_2Enum),V0s_2E0,c_2Epair_2E_2C_2E2(tyop_2Enum_2Enum,tyop_2Enum_2Enum,V2i_2E0,V1n_2E0))) ) ) ).

tff(thm_2Estring_2ESTRLEN__EQ__0,axiom,
    ! [V0l_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( ( c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,V0l_2E0) = c_2Enum_2E0_2E0 )
    <=> ( V0l_2E0 = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) ) ) ).

tff(thm_2Estring_2ESTRLEN__THM,axiom,
    ( ( c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)) = c_2Enum_2E0_2E0 )
    & ! [V0h_2E0: tyop_2Estring_2Echar,V1t_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0h_2E0,V1t_2E0)) = c_2Enum_2ESUC_2E1(c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,V1t_2E0)) ) ) ).

tff(thm_2Estring_2ESTRLEN__DEF,axiom,
    ( ( c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)) = c_2Enum_2E0_2E0 )
    & ! [V0h_2E0: tyop_2Estring_2Echar,V1t_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V0h_2E0,V1t_2E0)) = c_2Enum_2ESUC_2E1(c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,V1t_2E0)) ) ) ).

tff(thm_2Estring_2ESTRCAT__def,axiom,
    ( ! [V0l_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar),V0l_2E0) = V0l_2E0 )
    & ! [V1l1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V2l2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V3h_2E0: tyop_2Estring_2Echar] : ( c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V3h_2E0,V1l1_2E0),V2l2_2E0) = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V3h_2E0,c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V1l1_2E0,V2l2_2E0)) ) ) ).

tff(thm_2Estring_2ESTRCAT,axiom,
    ! [V0s2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V1s1_2E0,V0s2_2E0) = c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V1s1_2E0,V0s2_2E0) ) ).

tff(thm_2Estring_2ESTRCAT__EQNS,axiom,
    ! [V0s2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V2s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V3c_2E0: tyop_2Estring_2Echar] :
      ( ( c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar),V2s_2E0) = V2s_2E0 )
      & ( c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V2s_2E0,c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)) = V2s_2E0 )
      & ( c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V3c_2E0,V1s1_2E0),V0s2_2E0) = c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V3c_2E0,c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V1s1_2E0,V0s2_2E0)) ) ) ).

tff(thm_2Estring_2ESTRCAT__ASSOC,axiom,
    ! [V0l1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1l2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V2l3_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V0l1_2E0,c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V1l2_2E0,V2l3_2E0)) = c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V0l1_2E0,V1l2_2E0),V2l3_2E0) ) ).

tff(thm_2Estring_2ESTRCAT__11,axiom,
    ( ! [V0l1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1l2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V2l3_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
        ( ( c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V0l1_2E0,V1l2_2E0) = c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V0l1_2E0,V2l3_2E0) )
      <=> ( V1l2_2E0 = V2l3_2E0 ) )
    & ! [V3l1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V4l2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V5l3_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
        ( ( c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V4l2_2E0,V3l1_2E0) = c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V5l3_2E0,V3l1_2E0) )
      <=> ( V4l2_2E0 = V5l3_2E0 ) ) ) ).

tff(thm_2Estring_2ESTRCAT__ACYCLIC,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( ( ( V0s_2E0 = c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V0s_2E0,V1s1_2E0) )
      <=> ( V1s1_2E0 = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) ) )
      & ( ( V0s_2E0 = c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V1s1_2E0,V0s_2E0) )
      <=> ( V1s1_2E0 = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) ) ) ) ).

tff(thm_2Estring_2ESTRCAT__EXPLODE,axiom,
    ! [V0s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1s2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V0s1_2E0,V1s2_2E0) = c_2Elist_2EFOLDR_2E3(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),c_2Elist_2ECONS_2E0(tyop_2Estring_2Echar),V1s2_2E0,c_2Estring_2EEXPLODE_2E1(V0s1_2E0)) ) ).

tff(thm_2Estring_2ESTRCAT__EQ__EMPTY,axiom,
    ! [V0l1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1l2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( ( c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V0l1_2E0,V1l2_2E0) = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) )
    <=> ( ( V0l1_2E0 = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) )
        & ( V1l2_2E0 = c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar) ) ) ) ).

tff(thm_2Estring_2ESTRLEN__CAT,axiom,
    ! [V0l1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1l2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V0l1_2E0,V1l2_2E0)) = c_2Earithmetic_2E_2B_2E2(c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,V0l1_2E0),c_2Elist_2ELENGTH_2E1(tyop_2Estring_2Echar,V1l2_2E0)) ) ).

tff(thm_2Estring_2EisPREFIX__DEF,axiom,
    ! [F4_2E0: tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)))),F3_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool))),F2_2E0: tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool)),F1_2E0: tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool)),F0_2E0: tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Ebool))] :
      ( ! [V6c2_2E0: tyop_2Estring_2Echar,V7t2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V8c1_2E0: tyop_2Estring_2Echar,V9t1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
          ( p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool))),F4_2E0,V6c2_2E0),V7t2_2E0),V8c1_2E0),V9t1_2E0))
        <=> ( ( V8c1_2E0 = V6c2_2E0 )
            & p(c_2Elist_2EisPREFIX_2E2(tyop_2Estring_2Echar,V9t1_2E0,V7t2_2E0)) ) )
     => ( ! [V4v2_2E0: tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),V6c2_2E0: tyop_2Estring_2Echar,V7t2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),app_2E2(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),F3_2E0,V4v2_2E0),V6c2_2E0),V7t2_2E0) = c_2Epair_2Epair__CASE_2E2(tyop_2Emin_2Ebool,tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),V4v2_2E0,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),app_2E2(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool))),F4_2E0,V6c2_2E0),V7t2_2E0)) )
       => ( ! [V4v2_2E0: tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),V5v3_2E0: tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))] : ( app_2E2(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool,app_2E2(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool),F2_2E0,V4v2_2E0),V5v3_2E0) = c_2Epair_2Epair__CASE_2E2(tyop_2Emin_2Ebool,tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),V5v3_2E0,app_2E2(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Estring_2Echar,tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool)),F3_2E0,V4v2_2E0)) )
         => ( ! [V3v1_2E0: tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),V4v2_2E0: tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))] : ( app_2E2(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool,app_2E2(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool),F1_2E0,V3v1_2E0),V4v2_2E0) = c_2Eoption_2Eoption__CASE_2E3(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool,V3v1_2E0,c_2Ebool_2EF_2E0,app_2E2(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool),F2_2E0,V4v2_2E0)) )
           => ( ! [V2v_2E0: tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),V3v1_2E0: tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)))] : ( app_2E2(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Ebool,app_2E2(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Ebool),F0_2E0,V2v_2E0),V3v1_2E0) = c_2Eoption_2Eoption__CASE_2E3(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool,V2v_2E0,c_2Ebool_2ET_2E0,app_2E2(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Emin_2Efun(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),tyop_2Emin_2Ebool),F1_2E0,V3v1_2E0)) )
             => ! [V0s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1s2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Elist_2EisPREFIX_2E2(tyop_2Estring_2Echar,V0s1_2E0,V1s2_2E0) = c_2Epair_2Epair__CASE_2E2(tyop_2Emin_2Ebool,tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Epair_2E_2C_2E2(tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),tyop_2Eoption_2Eoption(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar))),c_2Estring_2EDEST__STRING_2E1(V0s1_2E0),c_2Estring_2EDEST__STRING_2E1(V1s2_2E0)),F0_2E0) ) ) ) ) ) ) ).

tff(thm_2Estring_2EisPREFIX__IND,axiom,
    ! [V0P_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool))] :
      ( ! [V1s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V2s2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
          ( ! [V3c_2E0: tyop_2Estring_2Echar,V4t1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V5t2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
              ( ( ( c_2Estring_2EDEST__STRING_2E1(V1s1_2E0) = c_2Eoption_2ESOME_2E1(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Epair_2E_2C_2E2(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),V3c_2E0,V4t1_2E0)) )
                & ( c_2Estring_2EDEST__STRING_2E1(V2s2_2E0) = c_2Eoption_2ESOME_2E1(tyop_2Epair_2Eprod(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar)),c_2Epair_2E_2C_2E2(tyop_2Estring_2Echar,tyop_2Elist_2Elist(tyop_2Estring_2Echar),V3c_2E0,V5t2_2E0)) ) )
             => p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_2E0,V4t1_2E0),V5t2_2E0)) )
         => p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_2E0,V1s1_2E0),V2s2_2E0)) )
     => ! [V6v_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V7v1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_2E0,V6v_2E0),V7v1_2E0)) ) ).

tff(thm_2Estring_2EisPREFIX__STRCAT,axiom,
    ! [V0s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1s2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( p(c_2Elist_2EisPREFIX_2E2(tyop_2Estring_2Echar,V0s1_2E0,V1s2_2E0))
    <=> ? [V2s3_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( V1s2_2E0 = c_2Elist_2EAPPEND_2E2(tyop_2Estring_2Echar,V0s1_2E0,V2s3_2E0) ) ) ).

tff(thm_2Estring_2Estring__lt__ind,axiom,
    ! [V0P_2E0: tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool))] :
      ( ( ! [V1s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_2E0,V1s_2E0),c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)))
        & ! [V2c_2E0: tyop_2Estring_2Echar,V3s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_2E0,c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)),c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V2c_2E0,V3s_2E0)))
        & ! [V4c1_2E0: tyop_2Estring_2Echar,V5s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V6c2_2E0: tyop_2Estring_2Echar,V7s2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
            ( p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_2E0,V5s1_2E0),V7s2_2E0))
           => p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_2E0,c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V4c1_2E0,V5s1_2E0)),c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V6c2_2E0,V7s2_2E0))) ) )
     => ! [V8v_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V9v1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : p(app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool,app_2E2(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Efun(tyop_2Elist_2Elist(tyop_2Estring_2Echar),tyop_2Emin_2Ebool),V0P_2E0,V8v_2E0),V9v1_2E0)) ) ).

tff(thm_2Estring_2Estring__lt__def,axiom,
    ( ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ( c_2Estring_2Estring__lt_2E2(V0s_2E0,c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar)) = c_2Ebool_2EF_2E0 )
    & ! [V1s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V2c_2E0: tyop_2Estring_2Echar] : ( c_2Estring_2Estring__lt_2E2(c_2Elist_2ENIL_2E0(tyop_2Estring_2Echar),c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V2c_2E0,V1s_2E0)) = c_2Ebool_2ET_2E0 )
    & ! [V3s2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V4s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V5c2_2E0: tyop_2Estring_2Echar,V6c1_2E0: tyop_2Estring_2Echar] :
        ( p(c_2Estring_2Estring__lt_2E2(c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V6c1_2E0,V4s1_2E0),c_2Elist_2ECONS_2E2(tyop_2Estring_2Echar,V5c2_2E0,V3s2_2E0)))
      <=> ( p(c_2Estring_2Echar__lt_2E2(V6c1_2E0,V5c2_2E0))
          | ( ( V6c1_2E0 = V5c2_2E0 )
            & p(c_2Estring_2Estring__lt_2E2(V4s1_2E0,V3s2_2E0)) ) ) ) ) ).

tff(thm_2Estring_2Estring__lt__nonrefl,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] : ~ p(c_2Estring_2Estring__lt_2E2(V0s_2E0,V0s_2E0)) ).

tff(thm_2Estring_2Estring__lt__antisym,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1t_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ~ ( p(c_2Estring_2Estring__lt_2E2(V0s_2E0,V1t_2E0))
        & p(c_2Estring_2Estring__lt_2E2(V1t_2E0,V0s_2E0)) ) ).

tff(thm_2Estring_2Estring__lt__cases,axiom,
    ! [V0s_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1t_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( ( V0s_2E0 = V1t_2E0 )
      | p(c_2Estring_2Estring__lt_2E2(V0s_2E0,V1t_2E0))
      | p(c_2Estring_2Estring__lt_2E2(V1t_2E0,V0s_2E0)) ) ).

tff(thm_2Estring_2Estring__lt__trans,axiom,
    ! [V0s1_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V1s2_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar),V2s3_2E0: tyop_2Elist_2Elist(tyop_2Estring_2Echar)] :
      ( ( p(c_2Estring_2Estring__lt_2E2(V0s1_2E0,V1s2_2E0))
        & p(c_2Estring_2Estring__lt_2E2(V1s2_2E0,V2s3_2E0)) )
     => p(c_2Estring_2Estring__lt_2E2(V0s1_2E0,V2s3_2E0)) ) ).

%------------------------------------------------------------------------------