%------------------------------------------------------------------------------
% File : DT2H2X---1.9.5
% Problem : ITP166^1 : TPTP v9.2.1. Released v7.5.0.
% Transfm : none
% Format : tptp:raw
% Command : /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% Computer : n012.cluster.edu
% Model : x86_64 x86_64
% CPU : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory : 8042.1875MB
% OS : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit : 300s
% DateTime : Wed Feb 25 08:56:05 AM UTC 2026
% Result : Theorem 2.54s 1.67s
% Output : Refutation 2.54s
% Verified :
% SZS Type : Refutation
% Derivation depth : 13
% Number of leaves : 5
% Syntax : Number of formulae : 30 ( 17 unt; 0 typ; 0 def)
% Number of atoms : 139 ( 36 equ; 0 cnn)
% Maximal formula atoms : 5 ( 4 avg)
% Number of connectives : 268 ( 27 ~; 15 |; 12 &; 214 @)
% ( 0 <=>; 0 =>; 0 <=; 0 <~>)
% Maximal formula depth : 13 ( 4 avg)
% Number of types : 28 ( 27 usr)
% Number of type conns : 12 ( 12 >; 0 *; 0 +; 0 <<)
% Number of symbols : 195 ( 192 usr; 9 con; 0-8 aty)
% Number of variables : 12 ( 0 ^; 4 !; 8 ?; 12 :)
% Comments :
%------------------------------------------------------------------------------
thf(type_def_5,type,
bexp: $tType ).
thf(type_def_6,type,
list_char: $tType ).
thf(type_def_7,type,
int: $tType ).
thf(type_def_9,type,
set_list_typerep: $tType ).
thf(type_def_10,type,
typerep: $tType ).
thf(type_def_11,type,
list_typerep: $tType ).
thf(type_def_12,type,
set_typerep: $tType ).
thf(type_def_13,type,
set_Pr1148378109ar_int: $tType ).
thf(type_def_14,type,
produc1260470173ar_int: $tType ).
thf(type_def_15,type,
com: $tType ).
thf(type_def_16,type,
nat: $tType ).
thf(type_def_17,type,
set_Pr1986765409at_nat: $tType ).
thf(type_def_18,type,
set_nat: $tType ).
thf(type_def_19,type,
set_Pr1333062727ar_int: $tType ).
thf(type_def_20,type,
aexp: $tType ).
thf(type_def_21,type,
product_prod_nat_nat: $tType ).
thf(type_def_22,type,
list_nat: $tType ).
thf(type_def_23,type,
set_Pr1560408065st_nat: $tType ).
thf(type_def_24,type,
set_Pr1097818217yperep: $tType ).
thf(type_def_25,type,
set_Pr446800905yperep: $tType ).
thf(type_def_26,type,
list_P1741976099ar_int: $tType ).
thf(type_def_27,type,
set_li1762364675ar_int: $tType ).
thf(type_def_28,type,
produc1699244961st_nat: $tType ).
thf(type_def_29,type,
produc490010537yperep: $tType ).
thf(type_def_30,type,
produc1346207591ar_int: $tType ).
thf(type_def_31,type,
produc1788831497yperep: $tType ).
thf(type_def_32,type,
literal: $tType ).
thf(func_def_0,type,
set_Pr1333062727ar_int: $tType ).
thf(func_def_1,type,
produc1346207591ar_int: $tType ).
thf(func_def_2,type,
set_li1762364675ar_int: $tType ).
thf(func_def_3,type,
set_Pr446800905yperep: $tType ).
thf(func_def_4,type,
list_P1741976099ar_int: $tType ).
thf(func_def_5,type,
set_Pr1148378109ar_int: $tType ).
thf(func_def_6,type,
set_Pr1560408065st_nat: $tType ).
thf(func_def_7,type,
produc490010537yperep: $tType ).
thf(func_def_8,type,
produc1260470173ar_int: $tType ).
thf(func_def_9,type,
produc1699244961st_nat: $tType ).
thf(func_def_10,type,
set_Pr1097818217yperep: $tType ).
thf(func_def_11,type,
set_Pr1986765409at_nat: $tType ).
thf(func_def_12,type,
produc1788831497yperep: $tType ).
thf(func_def_13,type,
product_prod_nat_nat: $tType ).
thf(func_def_14,type,
set_list_typerep: $tType ).
thf(func_def_15,type,
list_typerep: $tType ).
thf(func_def_16,type,
set_typerep: $tType ).
thf(func_def_17,type,
list_char: $tType ).
thf(func_def_18,type,
list_nat: $tType ).
thf(func_def_19,type,
set_nat: $tType ).
thf(func_def_20,type,
typerep: $tType ).
thf(func_def_21,type,
literal: $tType ).
thf(func_def_22,type,
bexp: $tType ).
thf(func_def_23,type,
aexp: $tType ).
thf(func_def_24,type,
nat: $tType ).
thf(func_def_25,type,
int: $tType ).
thf(func_def_26,type,
com: $tType ).
thf(func_def_27,type,
bval: bexp > ( list_char > int ) > $o ).
thf(func_def_28,type,
bNF_Gr457912949yperep: set_list_typerep > typerep > set_list_typerep ).
thf(func_def_29,type,
bNF_Gr1303086585yperep: set_list_typerep > list_typerep > set_typerep ).
thf(func_def_30,type,
bNF_Gr202451329ar_int: set_Pr1148378109ar_int > ( produc1260470173ar_int > com ) > ( produc1260470173ar_int > list_char > int ) > set_Pr1148378109ar_int ).
thf(func_def_31,type,
bNF_Gr749752805at_nat: set_Pr1148378109ar_int > ( produc1260470173ar_int > nat ) > ( produc1260470173ar_int > nat ) > set_Pr1986765409at_nat ).
thf(func_def_32,type,
bNF_Gr1247133574at_nat: set_Pr1986765409at_nat > ( nat > nat ) > set_Pr1986765409at_nat ).
thf(func_def_33,type,
bNF_Gr808751971at_nat: set_nat > set_Pr1986765409at_nat > ( nat > nat ) > set_Pr1986765409at_nat ).
thf(func_def_34,type,
bNF_Gr1143394412nt_nat: set_Pr1148378109ar_int > set_Pr1986765409at_nat > ( produc1260470173ar_int > nat ) > set_Pr1333062727ar_int ).
thf(func_def_35,type,
big_big_step: produc1260470173ar_int > ( list_char > int ) > $o ).
thf(func_def_36,type,
assign: list_char > aexp > com ).
thf(func_def_37,type,
if: bexp > com > com > com ).
thf(func_def_38,type,
skip: com ).
thf(func_def_39,type,
seq: com > com > com ).
thf(func_def_40,type,
while: bexp > com > com ).
thf(func_def_41,type,
size_com: com > nat ).
thf(func_def_42,type,
unique1592618082ux_nat: product_prod_nat_nat > $o ).
thf(func_def_43,type,
plus_plus_nat: nat > nat > nat ).
thf(func_def_44,type,
zero_zero_nat: nat ).
thf(func_def_45,type,
append_nat: list_nat > list_nat > list_nat ).
thf(func_def_46,type,
append_typerep: list_typerep > list_typerep > list_typerep ).
thf(func_def_47,type,
gen_length_typerep: nat > list_typerep > nat ).
thf(func_def_48,type,
lex_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).
thf(func_def_49,type,
lex_typerep: set_Pr1097818217yperep > set_Pr446800905yperep ).
thf(func_def_50,type,
lexord_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).
thf(func_def_51,type,
lexord_typerep: set_Pr1097818217yperep > set_Pr446800905yperep ).
thf(func_def_52,type,
cons_nat: nat > list_nat > list_nat ).
thf(func_def_53,type,
cons_P1254790739ar_int: produc1260470173ar_int > list_P1741976099ar_int > list_P1741976099ar_int ).
thf(func_def_54,type,
cons_typerep: typerep > list_typerep > list_typerep ).
thf(func_def_55,type,
size_list_typerep: ( typerep > nat ) > list_typerep > nat ).
thf(func_def_56,type,
listrel1_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).
thf(func_def_57,type,
listrel1_typerep: set_Pr1097818217yperep > set_Pr446800905yperep ).
thf(func_def_58,type,
set_Co1954412371ar_int: set_Pr1148378109ar_int > set_li1762364675ar_int > set_li1762364675ar_int ).
thf(func_def_59,type,
set_Cons_typerep: set_typerep > set_list_typerep > set_list_typerep ).
thf(func_def_60,type,
suc: nat > nat ).
thf(func_def_61,type,
size_size_com: com > nat ).
thf(func_def_62,type,
size_size_list_nat: list_nat > nat ).
thf(func_def_63,type,
size_s416147576yperep: list_typerep > nat ).
thf(func_def_64,type,
size_size_typerep: typerep > nat ).
thf(func_def_65,type,
produc1193801173ar_int: com > ( list_char > int ) > produc1260470173ar_int ).
thf(func_def_66,type,
produc1625736153st_nat: list_nat > list_nat > produc1699244961st_nat ).
thf(func_def_67,type,
produc1695567329yperep: list_typerep > list_typerep > produc490010537yperep ).
thf(func_def_68,type,
product_Pair_nat_nat: nat > nat > product_prod_nat_nat ).
thf(func_def_69,type,
produc317451735ar_int: produc1260470173ar_int > produc1260470173ar_int > produc1346207591ar_int ).
thf(func_def_70,type,
produc2071514689yperep: typerep > typerep > produc1788831497yperep ).
thf(func_def_71,type,
relati186416454e_flip: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( list_char > int ) > ( list_char > int ) > $o ).
thf(func_def_72,type,
relati23543761ar_int: ( ( list_char > int ) > ( list_char > int ) > $o ) > bexp > com > nat > ( list_char > int ) > ( list_char > int ) > $o ).
thf(func_def_73,type,
relati2102071307_hoare: ( ( list_char > int ) > ( list_char > int ) > $o ) > com > com > ( ( list_char > int ) > ( list_char > int ) > $o ) > $o ).
thf(func_def_74,type,
relati775585786_valid: ( ( list_char > int ) > ( list_char > int ) > $o ) > com > com > ( ( list_char > int ) > ( list_char > int ) > $o ) > $o ).
thf(func_def_75,type,
collec672902542ar_int: ( list_P1741976099ar_int > $o ) > set_li1762364675ar_int ).
thf(func_def_76,type,
collect_list_typerep: ( list_typerep > $o ) > set_list_typerep ).
thf(func_def_77,type,
collec770796680ar_int: ( produc1260470173ar_int > $o ) > set_Pr1148378109ar_int ).
thf(func_def_78,type,
collec7649004at_nat: ( product_prod_nat_nat > $o ) > set_Pr1986765409at_nat ).
thf(func_def_79,type,
collec1834387154ar_int: ( produc1346207591ar_int > $o ) > set_Pr1333062727ar_int ).
thf(func_def_80,type,
typerep2: literal > list_typerep > typerep ).
thf(func_def_81,type,
size_typerep: typerep > nat ).
thf(func_def_82,type,
member2052091212ar_int: list_P1741976099ar_int > set_li1762364675ar_int > $o ).
thf(func_def_83,type,
member_list_typerep: list_typerep > set_list_typerep > $o ).
thf(func_def_84,type,
member_nat: nat > set_nat > $o ).
thf(func_def_85,type,
member92250950ar_int: produc1260470173ar_int > set_Pr1148378109ar_int > $o ).
thf(func_def_86,type,
member1926390090st_nat: produc1699244961st_nat > set_Pr1560408065st_nat > $o ).
thf(func_def_87,type,
member1812711762yperep: produc490010537yperep > set_Pr446800905yperep > $o ).
thf(func_def_88,type,
member701585322at_nat: product_prod_nat_nat > set_Pr1986765409at_nat > $o ).
thf(func_def_89,type,
member100911538yperep: produc1788831497yperep > set_Pr1097818217yperep > $o ).
thf(func_def_90,type,
member_typerep: typerep > set_typerep > $o ).
thf(func_def_91,type,
p: ( list_char > int ) > ( list_char > int ) > $o ).
thf(func_def_92,type,
q: ( list_char > int ) > ( list_char > int ) > $o ).
thf(func_def_93,type,
b: bexp ).
thf(func_def_94,type,
c: com ).
thf(func_def_95,type,
c2: com ).
thf(func_def_96,type,
k: nat ).
thf(func_def_97,type,
ka: nat ).
thf(func_def_98,type,
s: list_char > int ).
thf(func_def_99,type,
s_a: list_char > int ).
thf(func_def_100,type,
s2: list_char > int ).
thf(func_def_101,type,
sa: list_char > int ).
thf(func_def_102,type,
t: list_char > int ).
thf(func_def_103,type,
t_a: list_char > int ).
thf(func_def_104,type,
t2: list_char > int ).
thf(func_def_105,type,
ta: list_char > int ).
thf(func_def_106,type,
u: list_char > int ).
thf(func_def_107,type,
ua: list_char > int ).
thf(func_def_127,type,
sP0: ( com > $o ) > $o ).
thf(func_def_128,type,
sP1: bexp > com > ( list_char > int ) > ( nat > ( list_char > int ) > ( list_char > int ) > $o ) > nat > com > ( list_char > int ) > $o ).
thf(func_def_129,type,
sK2: ( produc1260470173ar_int > $o ) > list_char > int ).
thf(func_def_130,type,
sK3: ( produc1260470173ar_int > $o ) > com ).
thf(func_def_131,type,
sK4: nat > nat ).
thf(func_def_132,type,
sK5: set_Pr1097818217yperep > typerep > list_typerep > list_typerep > typerep ).
thf(func_def_133,type,
sK6: set_Pr1097818217yperep > typerep > list_typerep > list_typerep > list_typerep ).
thf(func_def_134,type,
sK7: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_135,type,
sK8: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_136,type,
sK9: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_137,type,
sK10: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_138,type,
sK11: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > com > list_char > int ).
thf(func_def_139,type,
sK12: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > com > list_char > int ).
thf(func_def_140,type,
sK13: produc1260470173ar_int > list_char > int ).
thf(func_def_141,type,
sK14: produc1260470173ar_int > com ).
thf(func_def_142,type,
sK15: list_typerep > nat > typerep ).
thf(func_def_143,type,
sK16: list_typerep > nat > list_typerep ).
thf(func_def_144,type,
sK17: ( com > $o ) > com ).
thf(func_def_145,type,
sK18: ( com > $o ) > com ).
thf(func_def_146,type,
sK19: ( com > $o ) > bexp ).
thf(func_def_147,type,
sK20: ( com > $o ) > com ).
thf(func_def_148,type,
sK21: ( com > $o ) > com ).
thf(func_def_149,type,
sK22: ( com > $o ) > com ).
thf(func_def_150,type,
sK23: ( com > $o ) > bexp ).
thf(func_def_151,type,
sK24: ( com > $o ) > list_char ).
thf(func_def_152,type,
sK25: ( com > $o ) > aexp ).
thf(func_def_153,type,
sK26: ( produc1260470173ar_int > $o ) > com ).
thf(func_def_154,type,
sK27: ( produc1260470173ar_int > $o ) > list_char > int ).
thf(func_def_155,type,
sK28: com > com > list_char > int ).
thf(func_def_156,type,
sK29: com > com > list_char > int ).
thf(func_def_157,type,
sK30: ( list_char > int ) > ( list_char > int ) > com > com > list_char > int ).
thf(func_def_158,type,
sK31: bexp > com > ( list_char > int ) > ( nat > ( list_char > int ) > ( list_char > int ) > $o ) > nat > com > ( list_char > int ) > list_char > int ).
thf(func_def_159,type,
sK32: bexp > com > ( list_char > int ) > ( nat > ( list_char > int ) > ( list_char > int ) > $o ) > nat > com > ( list_char > int ) > list_char > int ).
thf(func_def_160,type,
sK33: nat > bexp > ( ( list_char > int ) > ( list_char > int ) > $o ) > ( nat > ( list_char > int ) > ( list_char > int ) > $o ) > com > com > list_char > int ).
thf(func_def_161,type,
sK34: nat > bexp > ( ( list_char > int ) > ( list_char > int ) > $o ) > ( nat > ( list_char > int ) > ( list_char > int ) > $o ) > com > com > list_char > int ).
thf(func_def_162,type,
sK35: nat > bexp > ( nat > ( list_char > int ) > ( list_char > int ) > $o ) > com > nat ).
thf(func_def_163,type,
sK36: nat > bexp > ( nat > ( list_char > int ) > ( list_char > int ) > $o ) > com > list_char > int ).
thf(func_def_164,type,
sK37: nat > bexp > ( nat > ( list_char > int ) > ( list_char > int ) > $o ) > com > list_char > int ).
thf(func_def_165,type,
sK38: list_nat > set_Pr1986765409at_nat > list_nat > nat > list_nat ).
thf(func_def_166,type,
sK39: list_nat > set_Pr1986765409at_nat > list_nat > nat > nat ).
thf(func_def_167,type,
sK40: ( product_prod_nat_nat > $o ) > nat ).
thf(func_def_168,type,
sK41: ( product_prod_nat_nat > $o ) > nat ).
thf(func_def_169,type,
sK42: ( list_char > int ) > ( list_char > int ) > list_char > int ).
thf(func_def_170,type,
sK43: ( list_char > int ) > ( list_char > int ) > list_char > int ).
thf(func_def_171,type,
sK44: list_typerep > nat > typerep ).
thf(func_def_172,type,
sK45: list_typerep > nat > list_typerep ).
thf(func_def_173,type,
sK46: list_nat > nat > set_Pr1986765409at_nat > list_nat > nat ).
thf(func_def_174,type,
sK47: list_nat > nat > set_Pr1986765409at_nat > list_nat > list_nat ).
thf(func_def_175,type,
sK48: ( list_char > int ) > ( list_char > int ) > com > bexp > list_char > int ).
thf(func_def_176,type,
sK49: com > bexp ).
thf(func_def_177,type,
sK50: com > com ).
thf(func_def_178,type,
sK51: com > com ).
thf(func_def_179,type,
sK52: com > com ).
thf(func_def_180,type,
sK53: com > com ).
thf(func_def_181,type,
sK54: com > com ).
thf(func_def_182,type,
sK55: com > bexp ).
thf(func_def_183,type,
sK56: com > list_char ).
thf(func_def_184,type,
sK57: com > aexp ).
thf(func_def_185,type,
sK58: ( nat > $o ) > nat ).
thf(func_def_186,type,
sK59: produc1260470173ar_int > com ).
thf(func_def_187,type,
sK60: produc1260470173ar_int > list_char > int ).
thf(func_def_188,type,
sK61: list_typerep > list_typerep > set_Pr1097818217yperep > typerep > typerep ).
thf(func_def_189,type,
sK62: list_typerep > list_typerep > set_Pr1097818217yperep > typerep > list_typerep ).
thf(func_def_190,type,
sK63: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_191,type,
sK64: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_192,type,
sK65: com > com > list_char > int ).
thf(func_def_193,type,
sK66: com > com > list_char > int ).
thf(func_def_194,type,
sK67: com > com > list_char > int ).
thf(func_def_195,type,
sK68: com > com > list_char > int ).
thf(func_def_196,type,
sK69: com > com > list_char > int ).
thf(func_def_197,type,
sK70: com > com > list_char > int ).
thf(func_def_198,type,
sK71: com > com > list_char > int ).
thf(func_def_199,type,
sK72: com > com > list_char > int ).
thf(func_def_200,type,
sK73: com > com > list_char > int ).
thf(func_def_201,type,
sK74: com > com > list_char > int ).
thf(func_def_202,type,
sK75: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > com > list_char > int ).
thf(func_def_203,type,
sK76: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > com > list_char > int ).
thf(func_def_204,type,
sK77: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_205,type,
sK78: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_206,type,
sK79: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_207,type,
sK80: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_208,type,
sK81: set_Pr1986765409at_nat > nat ).
thf(func_def_209,type,
sK82: ( nat > $o ) > nat ).
thf(func_def_210,type,
sK83: ( nat > nat > $o ) > nat ).
thf(func_def_211,type,
sK84: ( nat > nat > $o ) > nat ).
thf(func_def_212,type,
sK85: ( nat > nat > $o ) > nat ).
thf(func_def_213,type,
sK86: ( nat > nat > $o ) > nat ).
thf(func_def_214,type,
sK87: bexp > ( nat > ( list_char > int ) > ( list_char > int ) > $o ) > com > nat ).
thf(func_def_215,type,
sK88: nat > nat ).
thf(func_def_216,type,
sK89: product_prod_nat_nat > nat ).
thf(func_def_217,type,
sK90: product_prod_nat_nat > nat ).
thf(func_def_218,type,
sK91: set_Pr1097818217yperep > typerep ).
thf(func_def_219,type,
sK92: com > ( nat > ( list_char > int ) > ( list_char > int ) > $o ) > bexp > nat ).
thf(func_def_220,type,
sK93: set_Pr1986765409at_nat > nat ).
thf(func_def_221,type,
sK94: ( product_prod_nat_nat > $o ) > nat ).
thf(func_def_222,type,
sK95: ( product_prod_nat_nat > $o ) > nat ).
thf(func_def_223,type,
sK96: set_Pr1986765409at_nat > nat ).
thf(func_def_224,type,
sK97: set_Pr1986765409at_nat > nat ).
thf(func_def_225,type,
sK98: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_226,type,
sK99: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_227,type,
sK100: product_prod_nat_nat > nat ).
thf(func_def_228,type,
sK101: product_prod_nat_nat > nat ).
thf(func_def_229,type,
sK102: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_230,type,
sK103: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( ( list_char > int ) > ( list_char > int ) > $o ) > list_char > int ).
thf(func_def_231,type,
sK104: ( nat > $o ) > nat ).
thf(func_def_232,type,
sK105: ( nat > nat > $o ) > nat ).
thf(func_def_233,type,
sK106: ( nat > nat > $o ) > nat ).
thf(func_def_234,type,
sK107: ( nat > nat > $o ) > nat ).
thf(func_def_235,type,
sK108: ( nat > nat > $o ) > nat ).
thf(func_def_236,type,
sK109: ( nat > nat > $o ) > nat ).
thf(func_def_238,type,
ph111:
!>[X0: $tType] : X0 ).
thf(f1404,plain,
$false,
inference(trivial_inequality_removal,[status(thm)],[f1403]) ).
thf(f1403,plain,
$true != $true,
inference(superposition,[status(thm)],[f1401,f1194]) ).
thf(f1194,plain,
( ( big_big_step @ ( produc1193801173ar_int @ c2 @ s_a ) @ t_a )
= $true ),
inference(cnf_transformation,[status(thm)],[f354]) ).
thf(f354,plain,
( ( big_big_step @ ( produc1193801173ar_int @ c2 @ s_a ) @ t_a )
= $true ),
inference(fool_elimination,[status(thm)],[f353]) ).
thf(f353,plain,
big_big_step @ ( produc1193801173ar_int @ c2 @ s_a ) @ t_a,
inference(rectify,[status(thm)],[f4]) ).
thf(f4,axiom,
big_big_step @ ( produc1193801173ar_int @ c2 @ s_a ) @ t_a,
file('/export/starexec/sandbox2/tmp/tmp.FZqnfaVoyV/DTF2THF_21556.p',fact_3_Suc_Oprems_I4_J) ).
thf(f1401,plain,
( ( big_big_step @ ( produc1193801173ar_int @ c2 @ s_a ) @ t_a )
!= $true ),
inference(trivial_inequality_removal,[status(thm)],[f1400]) ).
thf(f1400,plain,
( ( ( big_big_step @ ( produc1193801173ar_int @ c2 @ s_a ) @ t_a )
!= $true )
| ( $true != $true ) ),
inference(forward_demodulation,[status(thm)],[f1399,f1057]) ).
thf(f1057,plain,
( ( big_big_step @ ( produc1193801173ar_int @ c @ sa ) @ ta )
= $true ),
inference(cnf_transformation,[status(thm)],[f314]) ).
thf(f314,plain,
( ( big_big_step @ ( produc1193801173ar_int @ c @ sa ) @ ta )
= $true ),
inference(fool_elimination,[status(thm)],[f313]) ).
thf(f313,plain,
big_big_step @ ( produc1193801173ar_int @ c @ sa ) @ ta,
inference(rectify,[status(thm)],[f3]) ).
thf(f3,axiom,
big_big_step @ ( produc1193801173ar_int @ c @ sa ) @ ta,
file('/export/starexec/sandbox2/tmp/tmp.FZqnfaVoyV/DTF2THF_21556.p',fact_2_Suc_Oprems_I3_J) ).
thf(f1399,plain,
( ( ( big_big_step @ ( produc1193801173ar_int @ c @ sa ) @ ta )
!= $true )
| ( ( big_big_step @ ( produc1193801173ar_int @ c2 @ s_a ) @ t_a )
!= $true ) ),
inference(trivial_inequality_removal,[status(thm)],[f1398]) ).
thf(f1398,plain,
( ( $true != $true )
| ( ( big_big_step @ ( produc1193801173ar_int @ c2 @ s_a ) @ t_a )
!= $true )
| ( ( big_big_step @ ( produc1193801173ar_int @ c @ sa ) @ ta )
!= $true ) ),
inference(forward_demodulation,[status(thm)],[f1393,f1218]) ).
thf(f1218,plain,
( ( bval @ b @ sa )
= $true ),
inference(cnf_transformation,[status(thm)],[f469]) ).
thf(f469,plain,
( ( bval @ b @ sa )
= $true ),
inference(fool_elimination,[status(thm)],[f468]) ).
thf(f468,plain,
bval @ b @ sa,
inference(rectify,[status(thm)],[f1]) ).
thf(f1,axiom,
bval @ b @ sa,
file('/export/starexec/sandbox2/tmp/tmp.FZqnfaVoyV/DTF2THF_21556.p',fact_0_Suc_Oprems_I6_J) ).
thf(f1393,plain,
( ( ( big_big_step @ ( produc1193801173ar_int @ c2 @ s_a ) @ t_a )
!= $true )
| ( ( bval @ b @ sa )
!= $true )
| ( ( big_big_step @ ( produc1193801173ar_int @ c @ sa ) @ ta )
!= $true ) ),
inference(trivial_inequality_removal,[status(thm)],[f1368]) ).
thf(f1368,plain,
( ( ( bval @ b @ sa )
!= $true )
| ( ( big_big_step @ ( produc1193801173ar_int @ c2 @ s_a ) @ t_a )
!= $true )
| ( ( big_big_step @ ( produc1193801173ar_int @ c @ sa ) @ ta )
!= $true )
| ( $true != $true ) ),
inference(superposition,[status(thm)],[f1038,f1262]) ).
thf(f1262,plain,
( ( relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ sa @ s_a )
= $true ),
inference(cnf_transformation,[status(thm)],[f467]) ).
thf(f467,plain,
( ( relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ sa @ s_a )
= $true ),
inference(fool_elimination,[status(thm)],[f466]) ).
thf(f466,plain,
relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ sa @ s_a,
inference(rectify,[status(thm)],[f5]) ).
thf(f5,axiom,
relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ sa @ s_a,
file('/export/starexec/sandbox2/tmp/tmp.FZqnfaVoyV/DTF2THF_21556.p',fact_4_Suc_Oprems_I7_J) ).
thf(f1038,plain,
! [X0: list_char > int,X1: list_char > int] :
( ( $true
!= ( relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ X1 @ X0 ) )
| ( $true
!= ( bval @ b @ X1 ) )
| ( ( big_big_step @ ( produc1193801173ar_int @ c @ X1 ) @ ta )
!= $true )
| ( $true
!= ( big_big_step @ ( produc1193801173ar_int @ c2 @ X0 ) @ t_a ) ) ),
inference(cnf_transformation,[status(thm)],[f647]) ).
thf(f647,plain,
! [X0: list_char > int,X1: list_char > int] :
( ( ( big_big_step @ ( produc1193801173ar_int @ c @ X1 ) @ ta )
!= $true )
| ( $true
!= ( big_big_step @ ( produc1193801173ar_int @ c2 @ X0 ) @ t_a ) )
| ( $true
!= ( bval @ b @ X1 ) )
| ( $true
!= ( relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ X1 @ X0 ) ) ),
inference(ennf_transformation,[status(thm)],[f270]) ).
thf(f270,plain,
~ ? [X0: list_char > int,X1: list_char > int] :
( ( ( big_big_step @ ( produc1193801173ar_int @ c @ X1 ) @ ta )
= $true )
& ( $true
= ( big_big_step @ ( produc1193801173ar_int @ c2 @ X0 ) @ t_a ) )
& ( $true
= ( bval @ b @ X1 ) )
& ( $true
= ( relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ X1 @ X0 ) ) ),
inference(fool_elimination,[status(thm)],[f269]) ).
thf(f269,plain,
~ ? [X0: list_char > int,X1: list_char > int] :
( ( big_big_step @ ( produc1193801173ar_int @ c @ X1 ) @ ta )
& ( bval @ b @ X1 )
& ( big_big_step @ ( produc1193801173ar_int @ c2 @ X0 ) @ t_a )
& ( relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ X1 @ X0 ) ),
inference(rectify,[status(thm)],[f223]) ).
thf(f223,negated_conjecture,
~ ? [X60: list_char > int,X21: list_char > int] :
( ( big_big_step @ ( produc1193801173ar_int @ c @ X21 ) @ ta )
& ( bval @ b @ X21 )
& ( big_big_step @ ( produc1193801173ar_int @ c2 @ X60 ) @ t_a )
& ( relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ X21 @ X60 ) ),
inference(negated_conjecture,[status(cth)],[f222]) ).
thf(f222,conjecture,
? [X60: list_char > int,X21: list_char > int] :
( ( big_big_step @ ( produc1193801173ar_int @ c @ X21 ) @ ta )
& ( bval @ b @ X21 )
& ( big_big_step @ ( produc1193801173ar_int @ c2 @ X60 ) @ t_a )
& ( relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ X21 @ X60 ) ),
file('/export/starexec/sandbox2/tmp/tmp.FZqnfaVoyV/DTF2THF_21556.p',conj_0) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.06 % Problem : ITP166^1 : TPTP v9.2.1. Released v7.5.0.
% 0.00/0.07 % Command : /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% 0.07/0.25 % Computer : n012.cluster.edu
% 0.07/0.25 % Model : x86_64 x86_64
% 0.07/0.25 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.07/0.25 % Memory : 8042.1875MB
% 0.07/0.25 % OS : Linux 3.10.0-693.el7.x86_64
% 0.07/0.25 % CPULimit : 300
% 0.07/0.25 % WCLimit : 300
% 0.07/0.25 % DateTime : Tue Feb 24 08:28:30 EST 2026
% 0.07/0.25 % CPUTime :
% 0.07/0.25 Running /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% 0.07/0.35 ---- Original DTF file ---
% 0.18/0.35 thf(spec,logic,$$dhol).
% 0.18/0.35 %------------------------------------------------------------------------------
% 0.18/0.35 % File : ITP166^1 : TPTP v9.2.1. Released v7.5.0.
% 0.18/0.35 % Domain : Interactive Theorem Proving
% 0.18/0.35 % Problem : Sledgehammer RelationalIncorrectness problem prob_274__5902014_1
% 0.18/0.35 % Version : Especial.
% 0.18/0.35 % English :
% 0.18/0.35
% 0.18/0.35 % Refs : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
% 0.18/0.35 % : [Des21] Desharnais (2021), Email to Geoff Sutcliffe
% 0.18/0.35 % Source : [Des21]
% 0.18/0.35 % Names : RelationalIncorrectness/prob_274__5902014_1 [Des21]
% 0.18/0.35
% 0.18/0.35 % Status : Theorem
% 0.18/0.35 % Rating : 0.11 v9.1.0, 0.12 v9.0.0, 0.20 v8.2.0, 0.23 v8.1.0, 0.27 v7.5.0
% 0.18/0.35 % Syntax : Number of formulae : 330 ( 125 unt; 108 typ; 0 def)
% 0.18/0.35 % Number of atoms : 601 ( 284 equ; 0 cnn)
% 0.18/0.35 % Maximal formula atoms : 16 ( 2 avg)
% 0.18/0.35 % Number of connectives : 2463 ( 74 ~; 17 |; 97 &;2079 @)
% 0.18/0.35 % ( 0 <=>; 196 =>; 0 <=; 0 <~>)
% 0.18/0.35 % Maximal formula depth : 24 ( 8 avg)
% 0.18/0.35 % Number of types : 28 ( 27 usr)
% 0.18/0.35 % Number of type conns : 742 ( 742 >; 0 *; 0 +; 0 <<)
% 0.18/0.35 % Number of symbols : 82 ( 81 usr; 7 con; 0-6 aty)
% 0.18/0.35 % Number of variables : 897 ( 98 ^; 747 !; 52 ?; 897 :)
% 0.18/0.35 % SPC : TH0_THM_EQU_NAR
% 0.18/0.35
% 0.18/0.35 % Comments : This file was generated by Sledgehammer 2021-02-23 15:33:22.688
% 0.18/0.35 %------------------------------------------------------------------------------
% 0.18/0.35 % Could-be-implicit typings (27)
% 0.18/0.35 thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_Mt__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J_J,type,
% 0.18/0.35 set_Pr1333062727ar_int: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_Mt__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J,type,
% 0.18/0.35 produc1346207591ar_int: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J_J,type,
% 0.18/0.35 set_li1762364675ar_int: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Typerep__Otyperep_J_Mt__List__Olist_It__Typerep__Otyperep_J_J_J,type,
% 0.18/0.35 set_Pr446800905yperep: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J,type,
% 0.18/0.35 list_P1741976099ar_int: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J,type,
% 0.18/0.35 set_Pr1148378109ar_int: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
% 0.18/0.35 set_Pr1560408065st_nat: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Typerep__Otyperep_J_Mt__List__Olist_It__Typerep__Otyperep_J_J,type,
% 0.18/0.35 produc490010537yperep: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J,type,
% 0.18/0.35 produc1260470173ar_int: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
% 0.18/0.35 produc1699244961st_nat: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Typerep__Otyperep_Mt__Typerep__Otyperep_J_J,type,
% 0.18/0.35 set_Pr1097818217yperep: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
% 0.18/0.35 set_Pr1986765409at_nat: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Product____Type__Oprod_It__Typerep__Otyperep_Mt__Typerep__Otyperep_J,type,
% 0.18/0.35 produc1788831497yperep: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
% 0.18/0.35 product_prod_nat_nat: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Set__Oset_It__List__Olist_It__Typerep__Otyperep_J_J,type,
% 0.18/0.35 set_list_typerep: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__List__Olist_It__Typerep__Otyperep_J,type,
% 0.18/0.35 list_typerep: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Set__Oset_It__Typerep__Otyperep_J,type,
% 0.18/0.35 set_typerep: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__List__Olist_It__String__Ochar_J,type,
% 0.18/0.35 list_char: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__List__Olist_It__Nat__Onat_J,type,
% 0.18/0.35 list_nat: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Set__Oset_It__Nat__Onat_J,type,
% 0.18/0.35 set_nat: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Typerep__Otyperep,type,
% 0.18/0.35 typerep: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__String__Oliteral,type,
% 0.18/0.35 literal: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__BExp__Obexp,type,
% 0.18/0.35 bexp: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__AExp__Oaexp,type,
% 0.18/0.35 aexp: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Nat__Onat,type,
% 0.18/0.35 nat: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Int__Oint,type,
% 0.18/0.35 int: $tType ).
% 0.18/0.35
% 0.18/0.35 thf(ty_n_t__Com__Ocom,type,
% 0.18/0.35 com: $tType ).
% 0.18/0.35
% 0.18/0.35 % Explicit typings (81)
% 0.18/0.35 thf(sy_c_BExp_Obval,type,
% 0.18/0.35 bval: bexp > ( list_char > int ) > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_BNF__Greatest__Fixpoint_OShift_001t__Typerep__Otyperep,type,
% 0.18/0.35 bNF_Gr457912949yperep: set_list_typerep > typerep > set_list_typerep ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_BNF__Greatest__Fixpoint_OSucc_001t__Typerep__Otyperep,type,
% 0.18/0.35 bNF_Gr1303086585yperep: set_list_typerep > list_typerep > set_typerep ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_BNF__Greatest__Fixpoint_Oimage2_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_001t__Com__Ocom_001_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J,type,
% 0.18/0.35 bNF_Gr202451329ar_int: set_Pr1148378109ar_int > ( produc1260470173ar_int > com ) > ( produc1260470173ar_int > list_char > int ) > set_Pr1148378109ar_int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_BNF__Greatest__Fixpoint_Oimage2_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_001t__Nat__Onat_001t__Nat__Onat,type,
% 0.18/0.35 bNF_Gr749752805at_nat: set_Pr1148378109ar_int > ( produc1260470173ar_int > nat ) > ( produc1260470173ar_int > nat ) > set_Pr1986765409at_nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_BNF__Greatest__Fixpoint_OrelImage_001t__Nat__Onat_001t__Nat__Onat,type,
% 0.18/0.35 bNF_Gr1247133574at_nat: set_Pr1986765409at_nat > ( nat > nat ) > set_Pr1986765409at_nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_BNF__Greatest__Fixpoint_OrelInvImage_001t__Nat__Onat_001t__Nat__Onat,type,
% 0.18/0.35 bNF_Gr808751971at_nat: set_nat > set_Pr1986765409at_nat > ( nat > nat ) > set_Pr1986765409at_nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_BNF__Greatest__Fixpoint_OrelInvImage_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_001t__Nat__Onat,type,
% 0.18/0.35 bNF_Gr1143394412nt_nat: set_Pr1148378109ar_int > set_Pr1986765409at_nat > ( produc1260470173ar_int > nat ) > set_Pr1333062727ar_int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Big__Step_Obig__step,type,
% 0.18/0.35 big_big_step: produc1260470173ar_int > ( list_char > int ) > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Com_Ocom_OAssign,type,
% 0.18/0.35 assign: list_char > aexp > com ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Com_Ocom_OIf,type,
% 0.18/0.35 if: bexp > com > com > com ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Com_Ocom_OSKIP,type,
% 0.18/0.35 skip: com ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Com_Ocom_OSeq,type,
% 0.18/0.35 seq: com > com > com ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Com_Ocom_OWhile,type,
% 0.18/0.35 while: bexp > com > com ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Com_Ocom_Osize__com,type,
% 0.18/0.35 size_com: com > nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivides__aux_001t__Nat__Onat,type,
% 0.18/0.35 unique1592618082ux_nat: product_prod_nat_nat > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Groups_Oplus__class_Oplus_001t__Nat__Onat,type,
% 0.18/0.35 plus_plus_nat: nat > nat > nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
% 0.18/0.35 zero_zero_nat: nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Oappend_001t__Nat__Onat,type,
% 0.18/0.35 append_nat: list_nat > list_nat > list_nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Oappend_001t__Typerep__Otyperep,type,
% 0.18/0.35 append_typerep: list_typerep > list_typerep > list_typerep ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Ogen__length_001t__Typerep__Otyperep,type,
% 0.18/0.35 gen_length_typerep: nat > list_typerep > nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Olex_001t__Nat__Onat,type,
% 0.18/0.35 lex_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Olex_001t__Typerep__Otyperep,type,
% 0.18/0.35 lex_typerep: set_Pr1097818217yperep > set_Pr446800905yperep ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Olexord_001t__Nat__Onat,type,
% 0.18/0.35 lexord_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Olexord_001t__Typerep__Otyperep,type,
% 0.18/0.35 lexord_typerep: set_Pr1097818217yperep > set_Pr446800905yperep ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Olist_OCons_001t__Nat__Onat,type,
% 0.18/0.35 cons_nat: nat > list_nat > list_nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J,type,
% 0.18/0.35 cons_P1254790739ar_int: produc1260470173ar_int > list_P1741976099ar_int > list_P1741976099ar_int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Olist_OCons_001t__Typerep__Otyperep,type,
% 0.18/0.35 cons_typerep: typerep > list_typerep > list_typerep ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Olist_Osize__list_001t__Typerep__Otyperep,type,
% 0.18/0.35 size_list_typerep: ( typerep > nat ) > list_typerep > nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Olistrel1_001t__Nat__Onat,type,
% 0.18/0.35 listrel1_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Olistrel1_001t__Typerep__Otyperep,type,
% 0.18/0.35 listrel1_typerep: set_Pr1097818217yperep > set_Pr446800905yperep ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Oset__Cons_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J,type,
% 0.18/0.35 set_Co1954412371ar_int: set_Pr1148378109ar_int > set_li1762364675ar_int > set_li1762364675ar_int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_List_Oset__Cons_001t__Typerep__Otyperep,type,
% 0.18/0.35 set_Cons_typerep: set_typerep > set_list_typerep > set_list_typerep ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Nat_OSuc,type,
% 0.18/0.35 suc: nat > nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Nat_Osize__class_Osize_001t__Com__Ocom,type,
% 0.18/0.35 size_size_com: com > nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Nat__Onat_J,type,
% 0.18/0.35 size_size_list_nat: list_nat > nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Typerep__Otyperep_J,type,
% 0.18/0.35 size_s416147576yperep: list_typerep > nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Nat_Osize__class_Osize_001t__Typerep__Otyperep,type,
% 0.18/0.35 size_size_typerep: typerep > nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Product__Type_OPair_001t__Com__Ocom_001_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J,type,
% 0.18/0.35 produc1193801173ar_int: com > ( list_char > int ) > produc1260470173ar_int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Nat__Onat_J,type,
% 0.18/0.35 produc1625736153st_nat: list_nat > list_nat > produc1699244961st_nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Typerep__Otyperep_J_001t__List__Olist_It__Typerep__Otyperep_J,type,
% 0.18/0.35 produc1695567329yperep: list_typerep > list_typerep > produc490010537yperep ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Nat__Onat,type,
% 0.18/0.35 product_Pair_nat_nat: nat > nat > product_prod_nat_nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J,type,
% 0.18/0.35 produc317451735ar_int: produc1260470173ar_int > produc1260470173ar_int > produc1346207591ar_int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Product__Type_OPair_001t__Typerep__Otyperep_001t__Typerep__Otyperep,type,
% 0.18/0.35 produc2071514689yperep: typerep > typerep > produc1788831497yperep ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_RelationalIncorrectness__Mirabelle__kefqvmgyto_Oflip,type,
% 0.18/0.35 relati186416454e_flip: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( list_char > int ) > ( list_char > int ) > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_RelationalIncorrectness__Mirabelle__kefqvmgyto_Oget__back_001_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J,type,
% 0.18/0.35 relati23543761ar_int: ( ( list_char > int ) > ( list_char > int ) > $o ) > bexp > com > nat > ( list_char > int ) > ( list_char > int ) > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_RelationalIncorrectness__Mirabelle__kefqvmgyto_Oir__hoare,type,
% 0.18/0.35 relati2102071307_hoare: ( ( list_char > int ) > ( list_char > int ) > $o ) > com > com > ( ( list_char > int ) > ( list_char > int ) > $o ) > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_RelationalIncorrectness__Mirabelle__kefqvmgyto_Oir__valid,type,
% 0.18/0.35 relati775585786_valid: ( ( list_char > int ) > ( list_char > int ) > $o ) > com > com > ( ( list_char > int ) > ( list_char > int ) > $o ) > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Set_OCollect_001t__List__Olist_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J,type,
% 0.18/0.35 collec672902542ar_int: ( list_P1741976099ar_int > $o ) > set_li1762364675ar_int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Set_OCollect_001t__List__Olist_It__Typerep__Otyperep_J,type,
% 0.18/0.35 collect_list_typerep: ( list_typerep > $o ) > set_list_typerep ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J,type,
% 0.18/0.35 collec770796680ar_int: ( produc1260470173ar_int > $o ) > set_Pr1148378109ar_int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
% 0.18/0.35 collec7649004at_nat: ( product_prod_nat_nat > $o ) > set_Pr1986765409at_nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_Mt__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J,type,
% 0.18/0.35 collec1834387154ar_int: ( produc1346207591ar_int > $o ) > set_Pr1333062727ar_int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Typerep_Otyperep_OTyperep,type,
% 0.18/0.35 typerep2: literal > list_typerep > typerep ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_Typerep_Otyperep_Osize__typerep,type,
% 0.18/0.35 size_typerep: typerep > nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_member_001t__List__Olist_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J,type,
% 0.18/0.35 member2052091212ar_int: list_P1741976099ar_int > set_li1762364675ar_int > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_member_001t__List__Olist_It__Typerep__Otyperep_J,type,
% 0.18/0.35 member_list_typerep: list_typerep > set_list_typerep > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_member_001t__Nat__Onat,type,
% 0.18/0.35 member_nat: nat > set_nat > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_member_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J,type,
% 0.18/0.35 member92250950ar_int: produc1260470173ar_int > set_Pr1148378109ar_int > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
% 0.18/0.35 member1926390090st_nat: produc1699244961st_nat > set_Pr1560408065st_nat > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Typerep__Otyperep_J_Mt__List__Olist_It__Typerep__Otyperep_J_J,type,
% 0.18/0.35 member1812711762yperep: produc490010537yperep > set_Pr446800905yperep > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
% 0.18/0.35 member701585322at_nat: product_prod_nat_nat > set_Pr1986765409at_nat > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_member_001t__Product____Type__Oprod_It__Typerep__Otyperep_Mt__Typerep__Otyperep_J,type,
% 0.18/0.35 member100911538yperep: produc1788831497yperep > set_Pr1097818217yperep > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_c_member_001t__Typerep__Otyperep,type,
% 0.18/0.35 member_typerep: typerep > set_typerep > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_P,type,
% 0.18/0.35 p: ( list_char > int ) > ( list_char > int ) > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_Q,type,
% 0.18/0.35 q: ( list_char > int ) > ( list_char > int ) > $o ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_b,type,
% 0.18/0.35 b: bexp ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_c,type,
% 0.18/0.35 c: com ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_c_H,type,
% 0.18/0.35 c2: com ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_k,type,
% 0.18/0.35 k: nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_ka____,type,
% 0.18/0.35 ka: nat ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_s_H____,type,
% 0.18/0.35 s: list_char > int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_s_Ha____,type,
% 0.18/0.35 s_a: list_char > int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_s____,type,
% 0.18/0.35 s2: list_char > int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_sa____,type,
% 0.18/0.35 sa: list_char > int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_t_H____,type,
% 0.18/0.35 t: list_char > int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_t_Ha____,type,
% 0.18/0.35 t_a: list_char > int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_t____,type,
% 0.18/0.35 t2: list_char > int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_ta____,type,
% 0.18/0.35 ta: list_char > int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_u____,type,
% 0.18/0.35 u: list_char > int ).
% 0.18/0.35
% 0.18/0.35 thf(sy_v_ua____,type,
% 0.18/0.35 ua: list_char > int ).
% 0.18/0.35
% 0.18/0.35 % Relevant facts (221)
% 0.18/0.35 thf(fact_0_Suc_Oprems_I6_J,axiom,
% 0.18/0.35 bval @ b @ sa ).
% 0.18/0.35
% 0.18/0.35 % Suc.prems(6)
% 0.18/0.35 thf(fact_1__092_060open_062bval_Ab_As_____092_060close_062,axiom,
% 0.18/0.35 bval @ b @ s2 ).
% 0.18/0.35
% 0.18/0.35 % \<open>bval b s__\<close>
% 0.18/0.35 thf(fact_2_Suc_Oprems_I3_J,axiom,
% 0.18/0.35 big_big_step @ ( produc1193801173ar_int @ c @ sa ) @ ta ).
% 0.18/0.35
% 0.18/0.35 % Suc.prems(3)
% 0.18/0.35 thf(fact_3_Suc_Oprems_I4_J,axiom,
% 0.18/0.35 big_big_step @ ( produc1193801173ar_int @ c2 @ s_a ) @ t_a ).
% 0.18/0.35
% 0.18/0.35 % Suc.prems(4)
% 0.18/0.35 thf(fact_4_Suc_Oprems_I7_J,axiom,
% 0.18/0.35 relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ sa @ s_a ).
% 0.18/0.35
% 0.18/0.35 % Suc.prems(7)
% 0.18/0.35 thf(fact_5__092_060open_062_Ic_H_M_As_H_____J_A_092_060Rightarrow_062_At_H_____092_060close_062,axiom,
% 0.18/0.35 big_big_step @ ( produc1193801173ar_int @ c2 @ s ) @ t ).
% 0.18/0.35
% 0.18/0.35 % \<open>(c', s'__) \<Rightarrow> t'__\<close>
% 0.18/0.35 thf(fact_6__092_060open_062_Ic_M_As_____J_A_092_060Rightarrow_062_At_____092_060close_062,axiom,
% 0.18/0.35 big_big_step @ ( produc1193801173ar_int @ c @ s2 ) @ t2 ).
% 0.18/0.35
% 0.18/0.35 % \<open>(c, s__) \<Rightarrow> t__\<close>
% 0.18/0.35 thf(fact_7_Suc_Oprems_I5_J,axiom,
% 0.18/0.35 q @ ua @ t_a ).
% 0.18/0.35
% 0.18/0.35 % Suc.prems(5)
% 0.18/0.35 thf(fact_8__092_060open_062get__back_AP_Ab_Ac_Ak_As_____As_H_____092_060close_062,axiom,
% 0.18/0.35 relati23543761ar_int @ p @ b @ c @ k @ s2 @ s ).
% 0.18/0.35
% 0.18/0.35 % \<open>get_back P b c k s__ s'__\<close>
% 0.18/0.35 thf(fact_9_Suc_Oprems_I2_J,axiom,
% 0.18/0.35 big_big_step @ ( produc1193801173ar_int @ ( while @ b @ c ) @ ta ) @ ua ).
% 0.18/0.35
% 0.18/0.35 % Suc.prems(2)
% 0.18/0.35 thf(fact_10__092_060open_062_IWHILE_Ab_ADO_Ac_M_At_____J_A_092_060Rightarrow_062_Au_____092_060close_062,axiom,
% 0.18/0.35 big_big_step @ ( produc1193801173ar_int @ ( while @ b @ c ) @ t2 ) @ u ).
% 0.18/0.35
% 0.18/0.35 % \<open>(WHILE b DO c, t__) \<Rightarrow> u__\<close>
% 0.18/0.35 thf(fact_11_Suc_Oprems_I1_J,axiom,
% 0.18/0.35 relati775585786_valid @ ( relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) ) @ ( while @ b @ c ) @ c2 @ q ).
% 0.18/0.35
% 0.18/0.35 % Suc.prems(1)
% 0.18/0.35 thf(fact_12_nat_Oinject,axiom,
% 0.18/0.35 ! [X2: nat,Y2: nat] :
% 0.18/0.35 ( ( ( suc @ X2 )
% 0.18/0.35 = ( suc @ Y2 ) )
% 0.18/0.35 = ( X2 = Y2 ) ) ).
% 0.18/0.35
% 0.18/0.35 % nat.inject
% 0.18/0.35 thf(fact_13_old_Onat_Oinject,axiom,
% 0.18/0.35 ! [Nat: nat,Nat2: nat] :
% 0.18/0.35 ( ( ( suc @ Nat )
% 0.18/0.35 = ( suc @ Nat2 ) )
% 0.18/0.35 = ( Nat = Nat2 ) ) ).
% 0.18/0.35
% 0.18/0.35 % old.nat.inject
% 0.18/0.35 thf(fact_14_prod_Oinject,axiom,
% 0.18/0.35 ! [X1: nat,X2: nat,Y1: nat,Y2: nat] :
% 0.18/0.35 ( ( ( product_Pair_nat_nat @ X1 @ X2 )
% 0.18/0.35 = ( product_Pair_nat_nat @ Y1 @ Y2 ) )
% 0.18/0.35 = ( ( X1 = Y1 )
% 0.18/0.35 & ( X2 = Y2 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % prod.inject
% 0.18/0.35 thf(fact_15_prod_Oinject,axiom,
% 0.18/0.35 ! [X1: com,X2: list_char > int,Y1: com,Y2: list_char > int] :
% 0.18/0.35 ( ( ( produc1193801173ar_int @ X1 @ X2 )
% 0.18/0.35 = ( produc1193801173ar_int @ Y1 @ Y2 ) )
% 0.18/0.35 = ( ( X1 = Y1 )
% 0.18/0.35 & ( X2 = Y2 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % prod.inject
% 0.18/0.35 thf(fact_16_old_Oprod_Oinject,axiom,
% 0.18/0.35 ! [A: nat,B: nat,A2: nat,B2: nat] :
% 0.18/0.35 ( ( ( product_Pair_nat_nat @ A @ B )
% 0.18/0.35 = ( product_Pair_nat_nat @ A2 @ B2 ) )
% 0.18/0.35 = ( ( A = A2 )
% 0.18/0.35 & ( B = B2 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % old.prod.inject
% 0.18/0.35 thf(fact_17_old_Oprod_Oinject,axiom,
% 0.18/0.35 ! [A: com,B: list_char > int,A2: com,B2: list_char > int] :
% 0.18/0.35 ( ( ( produc1193801173ar_int @ A @ B )
% 0.18/0.35 = ( produc1193801173ar_int @ A2 @ B2 ) )
% 0.18/0.35 = ( ( A = A2 )
% 0.18/0.35 & ( B = B2 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % old.prod.inject
% 0.18/0.35 thf(fact_18_Suc_OIH,axiom,
% 0.18/0.35 ! [T: list_char > int,U: list_char > int,S: list_char > int,S2: list_char > int,T2: list_char > int] :
% 0.18/0.35 ( ( relati775585786_valid @ ( relati23543761ar_int @ p @ b @ c @ ka ) @ ( while @ b @ c ) @ c2 @ q )
% 0.18/0.35 => ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ b @ c ) @ T ) @ U )
% 0.18/0.35 => ( ( big_big_step @ ( produc1193801173ar_int @ c @ S ) @ T )
% 0.18/0.35 => ( ( big_big_step @ ( produc1193801173ar_int @ c2 @ S2 ) @ T2 )
% 0.18/0.35 => ( ( q @ U @ T2 )
% 0.18/0.35 => ( ( bval @ b @ S )
% 0.18/0.35 => ( ( relati23543761ar_int @ p @ b @ c @ ka @ S @ S2 )
% 0.18/0.35 => ? [S3: list_char > int,S4: list_char > int] :
% 0.18/0.35 ( ( relati23543761ar_int @ p @ b @ c @ ka @ S3 @ S4 )
% 0.18/0.35 & ( bval @ b @ S3 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ c @ S3 ) @ T )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ c2 @ S4 ) @ T2 ) ) ) ) ) ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % Suc.IH
% 0.18/0.35 thf(fact_19_sim__sym,axiom,
% 0.18/0.35 ! [C: com,C2: com] :
% 0.18/0.35 ( ( ! [S5: list_char > int,T3: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S5 ) @ T3 )
% 0.18/0.35 = ( big_big_step @ ( produc1193801173ar_int @ C2 @ S5 ) @ T3 ) ) )
% 0.18/0.35 = ( ! [S5: list_char > int,T3: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C2 @ S5 ) @ T3 )
% 0.18/0.35 = ( big_big_step @ ( produc1193801173ar_int @ C @ S5 ) @ T3 ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % sim_sym
% 0.18/0.35 thf(fact_20_sim__refl,axiom,
% 0.18/0.35 ! [C: com,S6: list_char > int,T4: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S6 ) @ T4 )
% 0.18/0.35 = ( big_big_step @ ( produc1193801173ar_int @ C @ S6 ) @ T4 ) ) ).
% 0.18/0.35
% 0.18/0.35 % sim_refl
% 0.18/0.35 thf(fact_21__092_060open_062Q_Au_____At_H_____092_060close_062,axiom,
% 0.18/0.35 q @ u @ t ).
% 0.18/0.35
% 0.18/0.35 % \<open>Q u__ t'__\<close>
% 0.18/0.35 thf(fact_22_disj__ir__valid,axiom,
% 0.18/0.35 ! [P_1: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q_1: ( list_char > int ) > ( list_char > int ) > $o,P_2: ( list_char > int ) > ( list_char > int ) > $o,Q_2: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati775585786_valid @ P_1 @ C @ C2 @ Q_1 )
% 0.18/0.35 => ( ( relati775585786_valid @ P_2 @ C @ C2 @ Q_2 )
% 0.18/0.35 => ( relati775585786_valid
% 0.18/0.35 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P_1 @ S5 @ S7 )
% 0.18/0.35 | ( P_2 @ S5 @ S7 ) )
% 0.18/0.35 @ C
% 0.18/0.35 @ C2
% 0.18/0.35 @ ^ [T3: list_char > int,T5: list_char > int] :
% 0.18/0.35 ( ( Q_1 @ T3 @ T5 )
% 0.18/0.35 | ( Q_2 @ T3 @ T5 ) ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % disj_ir_valid
% 0.18/0.35 thf(fact_23__092_060open_062ir__valid_A_Iget__back_AP_Ab_Ac_Ak_J_A_IWHILE_Ab_ADO_Ac_J_Ac_H_AQ_092_060close_062,axiom,
% 0.18/0.35 relati775585786_valid @ ( relati23543761ar_int @ p @ b @ c @ k ) @ ( while @ b @ c ) @ c2 @ q ).
% 0.18/0.35
% 0.18/0.35 % \<open>ir_valid (get_back P b c k) (WHILE b DO c) c' Q\<close>
% 0.18/0.35 thf(fact_24_conseq__ir__valid,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,P2: ( list_char > int ) > ( list_char > int ) > $o,Q2: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati775585786_valid @ P @ C @ C2 @ Q )
% 0.18/0.35 => ( ! [S3: list_char > int,S4: list_char > int] :
% 0.18/0.35 ( ( P @ S3 @ S4 )
% 0.18/0.35 => ( P2 @ S3 @ S4 ) )
% 0.18/0.35 => ( ! [S3: list_char > int,S4: list_char > int] :
% 0.18/0.35 ( ( Q2 @ S3 @ S4 )
% 0.18/0.35 => ( Q @ S3 @ S4 ) )
% 0.18/0.35 => ( relati775585786_valid @ P2 @ C @ C2 @ Q2 ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % conseq_ir_valid
% 0.18/0.35 thf(fact_25_ir__valid__get__back,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,K: nat,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati775585786_valid @ ( relati23543761ar_int @ P @ B @ C @ ( suc @ K ) ) @ ( while @ B @ C ) @ C2 @ Q )
% 0.18/0.35 => ( relati775585786_valid @ ( relati23543761ar_int @ P @ B @ C @ K ) @ ( while @ B @ C ) @ C2 @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_valid_get_back
% 0.18/0.35 thf(fact_26_sim__while__cong__aux,axiom,
% 0.18/0.35 ! [B: bexp,C: com,S: list_char > int,T: list_char > int,C2: com] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S ) @ T )
% 0.18/0.35 => ( ! [S3: list_char > int,T6: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S3 ) @ T6 )
% 0.18/0.35 = ( big_big_step @ ( produc1193801173ar_int @ C2 @ S3 ) @ T6 ) )
% 0.18/0.35 => ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C2 ) @ S ) @ T ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % sim_while_cong_aux
% 0.18/0.35 thf(fact_27_sim__while__cong,axiom,
% 0.18/0.35 ! [C: com,C2: com,B: bexp] :
% 0.18/0.35 ( ! [S3: list_char > int,T6: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S3 ) @ T6 )
% 0.18/0.35 = ( big_big_step @ ( produc1193801173ar_int @ C2 @ S3 ) @ T6 ) )
% 0.18/0.35 => ! [S6: list_char > int,T4: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S6 ) @ T4 )
% 0.18/0.35 = ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C2 ) @ S6 ) @ T4 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % sim_while_cong
% 0.18/0.35 thf(fact_28_ir__valid__def,axiom,
% 0.18/0.35 ( relati775585786_valid
% 0.18/0.35 = ( ^ [P3: ( list_char > int ) > ( list_char > int ) > $o,C3: com,C4: com,Q3: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ! [T3: list_char > int,T5: list_char > int] :
% 0.18/0.35 ( ( Q3 @ T3 @ T5 )
% 0.18/0.35 => ? [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P3 @ S5 @ S7 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C3 @ S5 ) @ T3 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C4 @ S7 ) @ T5 ) ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_valid_def
% 0.18/0.35 thf(fact_29_WhileFalse,axiom,
% 0.18/0.35 ! [B: bexp,S: list_char > int,C: com] :
% 0.18/0.35 ( ~ ( bval @ B @ S )
% 0.18/0.35 => ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S ) @ S ) ) ).
% 0.18/0.35
% 0.18/0.35 % WhileFalse
% 0.18/0.35 thf(fact_30_WhileTrue,axiom,
% 0.18/0.35 ! [B: bexp,S_1: list_char > int,C: com,S_2: list_char > int,S_3: list_char > int] :
% 0.18/0.35 ( ( bval @ B @ S_1 )
% 0.18/0.35 => ( ( big_big_step @ ( produc1193801173ar_int @ C @ S_1 ) @ S_2 )
% 0.18/0.35 => ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S_2 ) @ S_3 )
% 0.18/0.35 => ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S_1 ) @ S_3 ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % WhileTrue
% 0.18/0.35 thf(fact_31_WhileE,axiom,
% 0.18/0.35 ! [B: bexp,C: com,S: list_char > int,T: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S ) @ T )
% 0.18/0.35 => ( ( ( T = S )
% 0.18/0.35 => ( bval @ B @ S ) )
% 0.18/0.35 => ~ ( ( bval @ B @ S )
% 0.18/0.35 => ! [S_22: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S ) @ S_22 )
% 0.18/0.35 => ~ ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S_22 ) @ T ) ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % WhileE
% 0.18/0.35 thf(fact_32_old_Oprod_Oinducts,axiom,
% 0.18/0.35 ! [P: product_prod_nat_nat > $o,Prod: product_prod_nat_nat] :
% 0.18/0.35 ( ! [A3: nat,B3: nat] : ( P @ ( product_Pair_nat_nat @ A3 @ B3 ) )
% 0.18/0.35 => ( P @ Prod ) ) ).
% 0.18/0.35
% 0.18/0.35 % old.prod.inducts
% 0.18/0.35 thf(fact_33_old_Oprod_Oinducts,axiom,
% 0.18/0.35 ! [P: produc1260470173ar_int > $o,Prod: produc1260470173ar_int] :
% 0.18/0.35 ( ! [A3: com,B3: list_char > int] : ( P @ ( produc1193801173ar_int @ A3 @ B3 ) )
% 0.18/0.35 => ( P @ Prod ) ) ).
% 0.18/0.35
% 0.18/0.35 % old.prod.inducts
% 0.18/0.35 thf(fact_34_old_Oprod_Oexhaust,axiom,
% 0.18/0.35 ! [Y: product_prod_nat_nat] :
% 0.18/0.35 ~ ! [A3: nat,B3: nat] :
% 0.18/0.35 ( Y
% 0.18/0.35 != ( product_Pair_nat_nat @ A3 @ B3 ) ) ).
% 0.18/0.35
% 0.18/0.35 % old.prod.exhaust
% 0.18/0.35 thf(fact_35_old_Oprod_Oexhaust,axiom,
% 0.18/0.35 ! [Y: produc1260470173ar_int] :
% 0.18/0.35 ~ ! [A3: com,B3: list_char > int] :
% 0.18/0.35 ( Y
% 0.18/0.35 != ( produc1193801173ar_int @ A3 @ B3 ) ) ).
% 0.18/0.35
% 0.18/0.35 % old.prod.exhaust
% 0.18/0.35 thf(fact_36_Pair__inject,axiom,
% 0.18/0.35 ! [A: nat,B: nat,A2: nat,B2: nat] :
% 0.18/0.35 ( ( ( product_Pair_nat_nat @ A @ B )
% 0.18/0.35 = ( product_Pair_nat_nat @ A2 @ B2 ) )
% 0.18/0.35 => ~ ( ( A = A2 )
% 0.18/0.35 => ( B != B2 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % Pair_inject
% 0.18/0.35 thf(fact_37_Pair__inject,axiom,
% 0.18/0.35 ! [A: com,B: list_char > int,A2: com,B2: list_char > int] :
% 0.18/0.35 ( ( ( produc1193801173ar_int @ A @ B )
% 0.18/0.35 = ( produc1193801173ar_int @ A2 @ B2 ) )
% 0.18/0.35 => ~ ( ( A = A2 )
% 0.18/0.35 => ( B != B2 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % Pair_inject
% 0.18/0.35 thf(fact_38_prod__cases,axiom,
% 0.18/0.35 ! [P: product_prod_nat_nat > $o,P4: product_prod_nat_nat] :
% 0.18/0.35 ( ! [A3: nat,B3: nat] : ( P @ ( product_Pair_nat_nat @ A3 @ B3 ) )
% 0.18/0.35 => ( P @ P4 ) ) ).
% 0.18/0.35
% 0.18/0.35 % prod_cases
% 0.18/0.35 thf(fact_39_prod__cases,axiom,
% 0.18/0.35 ! [P: produc1260470173ar_int > $o,P4: produc1260470173ar_int] :
% 0.18/0.35 ( ! [A3: com,B3: list_char > int] : ( P @ ( produc1193801173ar_int @ A3 @ B3 ) )
% 0.18/0.35 => ( P @ P4 ) ) ).
% 0.18/0.35
% 0.18/0.35 % prod_cases
% 0.18/0.35 thf(fact_40_mem__Collect__eq,axiom,
% 0.18/0.35 ! [A: produc1260470173ar_int,P: produc1260470173ar_int > $o] :
% 0.18/0.35 ( ( member92250950ar_int @ A @ ( collec770796680ar_int @ P ) )
% 0.18/0.35 = ( P @ A ) ) ).
% 0.18/0.35
% 0.18/0.35 % mem_Collect_eq
% 0.18/0.35 thf(fact_41_Collect__mem__eq,axiom,
% 0.18/0.35 ! [A4: set_Pr1148378109ar_int] :
% 0.18/0.35 ( ( collec770796680ar_int
% 0.18/0.35 @ ^ [X: produc1260470173ar_int] : ( member92250950ar_int @ X @ A4 ) )
% 0.18/0.35 = A4 ) ).
% 0.18/0.35
% 0.18/0.35 % Collect_mem_eq
% 0.18/0.35 thf(fact_42_surj__pair,axiom,
% 0.18/0.35 ! [P4: product_prod_nat_nat] :
% 0.18/0.35 ? [X3: nat,Y3: nat] :
% 0.18/0.35 ( P4
% 0.18/0.35 = ( product_Pair_nat_nat @ X3 @ Y3 ) ) ).
% 0.18/0.35
% 0.18/0.35 % surj_pair
% 0.18/0.35 thf(fact_43_surj__pair,axiom,
% 0.18/0.35 ! [P4: produc1260470173ar_int] :
% 0.18/0.35 ? [X3: com,Y3: list_char > int] :
% 0.18/0.35 ( P4
% 0.18/0.35 = ( produc1193801173ar_int @ X3 @ Y3 ) ) ).
% 0.18/0.35
% 0.18/0.35 % surj_pair
% 0.18/0.35 thf(fact_44_n__not__Suc__n,axiom,
% 0.18/0.35 ! [N: nat] :
% 0.18/0.35 ( N
% 0.18/0.35 != ( suc @ N ) ) ).
% 0.18/0.35
% 0.18/0.35 % n_not_Suc_n
% 0.18/0.35 thf(fact_45_Suc__inject,axiom,
% 0.18/0.35 ! [X4: nat,Y: nat] :
% 0.18/0.35 ( ( ( suc @ X4 )
% 0.18/0.35 = ( suc @ Y ) )
% 0.18/0.35 => ( X4 = Y ) ) ).
% 0.18/0.35
% 0.18/0.35 % Suc_inject
% 0.18/0.35 thf(fact_46_big__step__determ,axiom,
% 0.18/0.35 ! [C: com,S: list_char > int,T: list_char > int,U: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S ) @ T )
% 0.18/0.35 => ( ( big_big_step @ ( produc1193801173ar_int @ C @ S ) @ U )
% 0.18/0.35 => ( U = T ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % big_step_determ
% 0.18/0.35 thf(fact_47_sim__trans,axiom,
% 0.18/0.35 ! [C: com,C2: com,C5: com] :
% 0.18/0.35 ( ! [S3: list_char > int,T6: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S3 ) @ T6 )
% 0.18/0.35 = ( big_big_step @ ( produc1193801173ar_int @ C2 @ S3 ) @ T6 ) )
% 0.18/0.35 => ( ! [S3: list_char > int,T6: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C2 @ S3 ) @ T6 )
% 0.18/0.35 = ( big_big_step @ ( produc1193801173ar_int @ C5 @ S3 ) @ T6 ) )
% 0.18/0.35 => ! [S6: list_char > int,T4: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S6 ) @ T4 )
% 0.18/0.35 = ( big_big_step @ ( produc1193801173ar_int @ C5 @ S6 ) @ T4 ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % sim_trans
% 0.18/0.35 thf(fact_48_com_Oinject_I4_J,axiom,
% 0.18/0.35 ! [X51: bexp,X52: com,Y51: bexp,Y52: com] :
% 0.18/0.35 ( ( ( while @ X51 @ X52 )
% 0.18/0.35 = ( while @ Y51 @ Y52 ) )
% 0.18/0.35 = ( ( X51 = Y51 )
% 0.18/0.35 & ( X52 = Y52 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % com.inject(4)
% 0.18/0.35 thf(fact_49_While__False__ir__valid,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C: com] :
% 0.18/0.35 ( ( relati775585786_valid
% 0.18/0.35 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P @ S5 @ S7 )
% 0.18/0.35 & ~ ( bval @ B @ S5 ) )
% 0.18/0.35 @ skip
% 0.18/0.35 @ C2
% 0.18/0.35 @ Q )
% 0.18/0.35 => ( relati775585786_valid @ P @ ( while @ B @ C ) @ C2 @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % While_False_ir_valid
% 0.18/0.35 thf(fact_50_While__True__ir__valid,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati775585786_valid
% 0.18/0.35 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P @ S5 @ S7 )
% 0.18/0.35 & ( bval @ B @ S5 ) )
% 0.18/0.35 @ ( seq @ C @ ( while @ B @ C ) )
% 0.18/0.35 @ C2
% 0.18/0.35 @ Q )
% 0.18/0.35 => ( relati775585786_valid @ P @ ( while @ B @ C ) @ C2 @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % While_True_ir_valid
% 0.18/0.35 thf(fact_51_get__back_Osimps_I2_J,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,N: nat] :
% 0.18/0.35 ( ( relati23543761ar_int @ P @ B @ C @ ( suc @ N ) )
% 0.18/0.35 = ( ^ [T3: list_char > int,T5: list_char > int] :
% 0.18/0.35 ? [S5: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S5 ) @ T3 )
% 0.18/0.35 & ( bval @ B @ S5 )
% 0.18/0.35 & ( relati23543761ar_int @ P @ B @ C @ N @ S5 @ T5 ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % get_back.simps(2)
% 0.18/0.35 thf(fact_52_Skip__ir__valid,axiom,
% 0.18/0.35 ! [Q: ( list_char > int ) > ( list_char > int ) > $o,P: ( list_char > int ) > ( list_char > int ) > $o,C2: com] :
% 0.18/0.35 ( ! [T6: list_char > int,T7: list_char > int] :
% 0.18/0.35 ( ( Q @ T6 @ T7 )
% 0.18/0.35 => ? [S8: list_char > int] :
% 0.18/0.35 ( ( P @ T6 @ S8 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S8 ) @ T7 ) ) )
% 0.18/0.35 => ( relati775585786_valid @ P @ skip @ C2 @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % Skip_ir_valid
% 0.18/0.35 thf(fact_53_While__backwards__frontier__ir__valid_H,axiom,
% 0.18/0.35 ! [P: nat > ( list_char > int ) > ( list_char > int ) > $o,K: nat,B: bexp,C: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C2: com,T: list_char > int,T2: list_char > int] :
% 0.18/0.35 ( ! [N2: nat,T6: list_char > int,T7: list_char > int] :
% 0.18/0.35 ( ( P @ ( plus_plus_nat @ K @ ( suc @ N2 ) ) @ T6 @ T7 )
% 0.18/0.35 => ? [S6: list_char > int] :
% 0.18/0.35 ( ( P @ ( plus_plus_nat @ K @ N2 ) @ S6 @ T7 )
% 0.18/0.35 & ( bval @ B @ S6 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C @ S6 ) @ T6 ) ) )
% 0.18/0.35 => ( ! [T6: list_char > int,T7: list_char > int] :
% 0.18/0.35 ( ( Q @ T6 @ T7 )
% 0.18/0.35 => ? [S6: list_char > int,S8: list_char > int] :
% 0.18/0.35 ( ? [N3: nat] : ( P @ ( plus_plus_nat @ K @ N3 ) @ S6 @ S8 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S6 ) @ T6 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S8 ) @ T7 ) ) )
% 0.18/0.35 => ( ( Q @ T @ T2 )
% 0.18/0.35 => ? [S3: list_char > int,S4: list_char > int] :
% 0.18/0.35 ( ( P @ K @ S3 @ S4 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S3 ) @ T )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S4 ) @ T2 ) ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % While_backwards_frontier_ir_valid'
% 0.18/0.35 thf(fact_54_sym__ir__valid,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C2: com,C: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati775585786_valid @ ( relati186416454e_flip @ P ) @ C2 @ C @ ( relati186416454e_flip @ Q ) )
% 0.18/0.35 => ( relati775585786_valid @ P @ C @ C2 @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % sym_ir_valid
% 0.18/0.35 thf(fact_55_pred__equals__eq2,axiom,
% 0.18/0.35 ! [R: set_Pr1986765409at_nat,S9: set_Pr1986765409at_nat] :
% 0.18/0.35 ( ( ( ^ [X: nat,Y4: nat] : ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y4 ) @ R ) )
% 0.18/0.35 = ( ^ [X: nat,Y4: nat] : ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y4 ) @ S9 ) ) )
% 0.18/0.35 = ( R = S9 ) ) ).
% 0.18/0.35
% 0.18/0.35 % pred_equals_eq2
% 0.18/0.35 thf(fact_56_pred__equals__eq2,axiom,
% 0.18/0.35 ! [R: set_Pr1148378109ar_int,S9: set_Pr1148378109ar_int] :
% 0.18/0.35 ( ( ( ^ [X: com,Y4: list_char > int] : ( member92250950ar_int @ ( produc1193801173ar_int @ X @ Y4 ) @ R ) )
% 0.18/0.35 = ( ^ [X: com,Y4: list_char > int] : ( member92250950ar_int @ ( produc1193801173ar_int @ X @ Y4 ) @ S9 ) ) )
% 0.18/0.35 = ( R = S9 ) ) ).
% 0.18/0.35
% 0.18/0.35 % pred_equals_eq2
% 0.18/0.35 thf(fact_57_com_Oinject_I2_J,axiom,
% 0.18/0.35 ! [X31: com,X32: com,Y31: com,Y32: com] :
% 0.18/0.35 ( ( ( seq @ X31 @ X32 )
% 0.18/0.35 = ( seq @ Y31 @ Y32 ) )
% 0.18/0.35 = ( ( X31 = Y31 )
% 0.18/0.35 & ( X32 = Y32 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % com.inject(2)
% 0.18/0.35 thf(fact_58_add__Suc__right,axiom,
% 0.18/0.35 ! [M: nat,N: nat] :
% 0.18/0.35 ( ( plus_plus_nat @ M @ ( suc @ N ) )
% 0.18/0.35 = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % add_Suc_right
% 0.18/0.35 thf(fact_59_Seq__ir__valid,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,D: com,D2: com,R: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati775585786_valid @ P @ C @ C2 @ Q )
% 0.18/0.35 => ( ( relati775585786_valid @ Q @ D @ D2 @ R )
% 0.18/0.35 => ( relati775585786_valid @ P @ ( seq @ C @ D ) @ ( seq @ C2 @ D2 ) @ R ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % Seq_ir_valid
% 0.18/0.35 thf(fact_60_meh__simp,axiom,
% 0.18/0.35 ! [S2: list_char > int,T2: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ skip @ S2 ) @ T2 )
% 0.18/0.35 = ( S2 = T2 ) ) ).
% 0.18/0.35
% 0.18/0.35 % meh_simp
% 0.18/0.35 thf(fact_61_Seq2__ir__valid,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,Q: ( list_char > int ) > ( list_char > int ) > $o,D: com,C2: com,R: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati775585786_valid @ P @ C @ skip @ Q )
% 0.18/0.35 => ( ( relati775585786_valid @ Q @ D @ C2 @ R )
% 0.18/0.35 => ( relati775585786_valid @ P @ ( seq @ C @ D ) @ C2 @ R ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % Seq2_ir_valid
% 0.18/0.35 thf(fact_62_Seq1__ir__valid,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,D: com,R: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati775585786_valid @ P @ C @ C2 @ Q )
% 0.18/0.35 => ( ( relati775585786_valid @ Q @ D @ skip @ R )
% 0.18/0.35 => ( relati775585786_valid @ P @ ( seq @ C @ D ) @ C2 @ R ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % Seq1_ir_valid
% 0.18/0.35 thf(fact_63_com_Odistinct_I3_J,axiom,
% 0.18/0.35 ! [X31: com,X32: com] :
% 0.18/0.35 ( skip
% 0.18/0.35 != ( seq @ X31 @ X32 ) ) ).
% 0.18/0.35
% 0.18/0.35 % com.distinct(3)
% 0.18/0.35 thf(fact_64_com_Odistinct_I17_J,axiom,
% 0.18/0.35 ! [X31: com,X32: com,X51: bexp,X52: com] :
% 0.18/0.35 ( ( seq @ X31 @ X32 )
% 0.18/0.35 != ( while @ X51 @ X52 ) ) ).
% 0.18/0.35
% 0.18/0.35 % com.distinct(17)
% 0.18/0.35 thf(fact_65_com_Odistinct_I7_J,axiom,
% 0.18/0.35 ! [X51: bexp,X52: com] :
% 0.18/0.35 ( skip
% 0.18/0.35 != ( while @ X51 @ X52 ) ) ).
% 0.18/0.35
% 0.18/0.35 % com.distinct(7)
% 0.18/0.35 thf(fact_66_add__Suc__shift,axiom,
% 0.18/0.35 ! [M: nat,N: nat] :
% 0.18/0.35 ( ( plus_plus_nat @ ( suc @ M ) @ N )
% 0.18/0.35 = ( plus_plus_nat @ M @ ( suc @ N ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % add_Suc_shift
% 0.18/0.35 thf(fact_67_nat__arith_Osuc1,axiom,
% 0.18/0.35 ! [A4: nat,K: nat,A: nat] :
% 0.18/0.35 ( ( A4
% 0.18/0.35 = ( plus_plus_nat @ K @ A ) )
% 0.18/0.35 => ( ( suc @ A4 )
% 0.18/0.35 = ( plus_plus_nat @ K @ ( suc @ A ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % nat_arith.suc1
% 0.18/0.35 thf(fact_68_add__Suc,axiom,
% 0.18/0.35 ! [M: nat,N: nat] :
% 0.18/0.35 ( ( plus_plus_nat @ ( suc @ M ) @ N )
% 0.18/0.35 = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % add_Suc
% 0.18/0.35 thf(fact_69_ir__valid__Seq1_H,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C1: com,C22: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati775585786_valid @ P @ ( seq @ C1 @ C22 ) @ C2 @ Q )
% 0.18/0.35 => ( relati775585786_valid
% 0.18/0.35 @ ^ [T3: list_char > int,T5: list_char > int] :
% 0.18/0.35 ? [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P @ S5 @ S7 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C1 @ S5 ) @ T3 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S7 ) @ T5 )
% 0.18/0.35 & ? [U2: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C22 @ T3 ) @ U2 )
% 0.18/0.35 & ( Q @ U2 @ T5 ) ) )
% 0.18/0.35 @ C22
% 0.18/0.35 @ skip
% 0.18/0.35 @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_valid_Seq1'
% 0.18/0.35 thf(fact_70_flip__def,axiom,
% 0.18/0.35 ( relati186416454e_flip
% 0.18/0.35 = ( ^ [P3: ( list_char > int ) > ( list_char > int ) > $o,S5: list_char > int,S7: list_char > int] : ( P3 @ S7 @ S5 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % flip_def
% 0.18/0.35 thf(fact_71_ir__valid__Seq1,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C1: com,C22: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati775585786_valid @ P @ ( seq @ C1 @ C22 ) @ C2 @ Q )
% 0.18/0.35 => ( relati775585786_valid @ P @ C1 @ C2
% 0.18/0.35 @ ^ [T3: list_char > int,T5: list_char > int] :
% 0.18/0.35 ? [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P @ S5 @ S7 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C1 @ S5 ) @ T3 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S7 ) @ T5 )
% 0.18/0.35 & ? [U2: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C22 @ T3 ) @ U2 )
% 0.18/0.35 & ( Q @ U2 @ T5 ) ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_valid_Seq1
% 0.18/0.35 thf(fact_72_SeqE,axiom,
% 0.18/0.35 ! [C1: com,C22: com,S1: list_char > int,S32: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ ( seq @ C1 @ C22 ) @ S1 ) @ S32 )
% 0.18/0.35 => ~ ! [S_22: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C1 @ S1 ) @ S_22 )
% 0.18/0.35 => ~ ( big_big_step @ ( produc1193801173ar_int @ C22 @ S_22 ) @ S32 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % SeqE
% 0.18/0.35 thf(fact_73_Seq__assoc,axiom,
% 0.18/0.35 ! [C1: com,C22: com,C32: com,S: list_char > int,S2: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ ( seq @ ( seq @ C1 @ C22 ) @ C32 ) @ S ) @ S2 )
% 0.18/0.35 = ( big_big_step @ ( produc1193801173ar_int @ ( seq @ C1 @ ( seq @ C22 @ C32 ) ) @ S ) @ S2 ) ) ).
% 0.18/0.35
% 0.18/0.35 % Seq_assoc
% 0.18/0.35 thf(fact_74_Seq,axiom,
% 0.18/0.35 ! [C_1: com,S_1: list_char > int,S_2: list_char > int,C_2: com,S_3: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ C_1 @ S_1 ) @ S_2 )
% 0.18/0.35 => ( ( big_big_step @ ( produc1193801173ar_int @ C_2 @ S_2 ) @ S_3 )
% 0.18/0.35 => ( big_big_step @ ( produc1193801173ar_int @ ( seq @ C_1 @ C_2 ) @ S_1 ) @ S_3 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % Seq
% 0.18/0.35 thf(fact_75_SkipE,axiom,
% 0.18/0.35 ! [S: list_char > int,T: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ skip @ S ) @ T )
% 0.18/0.35 => ( T = S ) ) ).
% 0.18/0.35
% 0.18/0.35 % SkipE
% 0.18/0.35 thf(fact_76_Skip,axiom,
% 0.18/0.35 ! [S: list_char > int] : ( big_big_step @ ( produc1193801173ar_int @ skip @ S ) @ S ) ).
% 0.18/0.35
% 0.18/0.35 % Skip
% 0.18/0.35 thf(fact_77_ir__valid__track__history,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,S: list_char > int,S2: list_char > int] :
% 0.18/0.35 ( ( relati775585786_valid @ P @ C @ C2 @ Q )
% 0.18/0.35 => ( relati775585786_valid @ P @ C @ C2
% 0.18/0.35 @ ^ [T3: list_char > int,T5: list_char > int] :
% 0.18/0.35 ( ( Q @ S @ S2 )
% 0.18/0.35 & ? [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P @ S5 @ S7 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C @ S5 ) @ T3 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S7 ) @ T5 ) ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_valid_track_history
% 0.18/0.35 thf(fact_78_ir__valid__While1,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,K: nat,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati775585786_valid @ ( relati23543761ar_int @ P @ B @ C @ K ) @ ( while @ B @ C ) @ C2 @ Q )
% 0.18/0.35 => ( relati775585786_valid
% 0.18/0.35 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( relati23543761ar_int @ P @ B @ C @ K @ S5 @ S7 )
% 0.18/0.35 & ( bval @ B @ S5 ) )
% 0.18/0.35 @ C
% 0.18/0.35 @ skip
% 0.18/0.35 @ ^ [T3: list_char > int,T5: list_char > int] :
% 0.18/0.35 ( ( relati23543761ar_int @ P @ B @ C @ ( suc @ K ) @ T3 @ T5 )
% 0.18/0.35 & ? [U2: list_char > int,U3: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ T3 ) @ U2 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ T5 ) @ U3 )
% 0.18/0.35 & ( Q @ U2 @ U3 ) ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_valid_While1
% 0.18/0.35 thf(fact_79_add__right__cancel,axiom,
% 0.18/0.35 ! [B: nat,A: nat,C: nat] :
% 0.18/0.35 ( ( ( plus_plus_nat @ B @ A )
% 0.18/0.35 = ( plus_plus_nat @ C @ A ) )
% 0.18/0.35 = ( B = C ) ) ).
% 0.18/0.35
% 0.18/0.35 % add_right_cancel
% 0.18/0.35 thf(fact_80_add__left__cancel,axiom,
% 0.18/0.35 ! [A: nat,B: nat,C: nat] :
% 0.18/0.35 ( ( ( plus_plus_nat @ A @ B )
% 0.18/0.35 = ( plus_plus_nat @ A @ C ) )
% 0.18/0.35 = ( B = C ) ) ).
% 0.18/0.35
% 0.18/0.35 % add_left_cancel
% 0.18/0.35 thf(fact_81_ir__valid__If,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C1: com,C22: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati775585786_valid @ P @ ( if @ B @ C1 @ C22 ) @ C2 @ Q )
% 0.18/0.35 => ( ( relati775585786_valid
% 0.18/0.35 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P @ S5 @ S7 )
% 0.18/0.35 & ( bval @ B @ S5 ) )
% 0.18/0.35 @ C1
% 0.18/0.35 @ C2
% 0.18/0.35 @ ^ [T3: list_char > int,T5: list_char > int] :
% 0.18/0.35 ( ( Q @ T3 @ T5 )
% 0.18/0.35 & ? [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P @ S5 @ S7 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C1 @ S5 ) @ T3 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S7 ) @ T5 )
% 0.18/0.35 & ( bval @ B @ S5 ) ) ) )
% 0.18/0.35 & ( relati775585786_valid
% 0.18/0.35 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P @ S5 @ S7 )
% 0.18/0.35 & ~ ( bval @ B @ S5 ) )
% 0.18/0.35 @ C22
% 0.18/0.35 @ C2
% 0.18/0.35 @ ^ [T3: list_char > int,T5: list_char > int] :
% 0.18/0.35 ( ( Q @ T3 @ T5 )
% 0.18/0.35 & ? [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P @ S5 @ S7 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C22 @ S5 ) @ T3 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S7 ) @ T5 )
% 0.18/0.35 & ~ ( bval @ B @ S5 ) ) ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_valid_If
% 0.18/0.35 thf(fact_82_while__unfold,axiom,
% 0.18/0.35 ! [B: bexp,C: com,S6: list_char > int,T4: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S6 ) @ T4 )
% 0.18/0.35 = ( big_big_step @ ( produc1193801173ar_int @ ( if @ B @ ( seq @ C @ ( while @ B @ C ) ) @ skip ) @ S6 ) @ T4 ) ) ).
% 0.18/0.35
% 0.18/0.35 % while_unfold
% 0.18/0.35 thf(fact_83_If__True__ir__valid,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C_1: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C_2: com] :
% 0.18/0.35 ( ( relati775585786_valid
% 0.18/0.35 @ ^ [A5: list_char > int,C3: list_char > int] :
% 0.18/0.35 ( ( P @ A5 @ C3 )
% 0.18/0.35 & ( bval @ B @ A5 ) )
% 0.18/0.35 @ C_1
% 0.18/0.35 @ C2
% 0.18/0.35 @ Q )
% 0.18/0.35 => ( relati775585786_valid @ P @ ( if @ B @ C_1 @ C_2 ) @ C2 @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % If_True_ir_valid
% 0.18/0.35 thf(fact_84_If__False__ir__valid,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C_2: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C_1: com] :
% 0.18/0.35 ( ( relati775585786_valid
% 0.18/0.35 @ ^ [A5: list_char > int,C3: list_char > int] :
% 0.18/0.35 ( ( P @ A5 @ C3 )
% 0.18/0.35 & ~ ( bval @ B @ A5 ) )
% 0.18/0.35 @ C_2
% 0.18/0.35 @ C2
% 0.18/0.35 @ Q )
% 0.18/0.35 => ( relati775585786_valid @ P @ ( if @ B @ C_1 @ C_2 ) @ C2 @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % If_False_ir_valid
% 0.18/0.35 thf(fact_85_ir__While__True,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati2102071307_hoare
% 0.18/0.35 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P @ S5 @ S7 )
% 0.18/0.35 & ( bval @ B @ S5 ) )
% 0.18/0.35 @ ( seq @ C @ ( while @ B @ C ) )
% 0.18/0.35 @ C2
% 0.18/0.35 @ Q )
% 0.18/0.35 => ( relati2102071307_hoare @ P @ ( while @ B @ C ) @ C2 @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_While_True
% 0.18/0.35 thf(fact_86_com_Oinject_I3_J,axiom,
% 0.18/0.35 ! [X41: bexp,X42: com,X43: com,Y41: bexp,Y42: com,Y43: com] :
% 0.18/0.35 ( ( ( if @ X41 @ X42 @ X43 )
% 0.18/0.35 = ( if @ Y41 @ Y42 @ Y43 ) )
% 0.18/0.35 = ( ( X41 = Y41 )
% 0.18/0.35 & ( X42 = Y42 )
% 0.18/0.35 & ( X43 = Y43 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % com.inject(3)
% 0.18/0.35 thf(fact_87_ir__Skip__Skip,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o] : ( relati2102071307_hoare @ P @ skip @ skip @ P ) ).
% 0.18/0.35
% 0.18/0.35 % ir_Skip_Skip
% 0.18/0.35 thf(fact_88_ir__hoare__Skip__Skip,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati2102071307_hoare @ P @ skip @ skip @ Q )
% 0.18/0.35 = ( ! [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( Q @ S5 @ S7 )
% 0.18/0.35 => ( P @ S5 @ S7 ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_hoare_Skip_Skip
% 0.18/0.35 thf(fact_89_ir__disj,axiom,
% 0.18/0.35 ! [P_1: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q_1: ( list_char > int ) > ( list_char > int ) > $o,P_2: ( list_char > int ) > ( list_char > int ) > $o,Q_2: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati2102071307_hoare @ P_1 @ C @ C2 @ Q_1 )
% 0.18/0.35 => ( ( relati2102071307_hoare @ P_2 @ C @ C2 @ Q_2 )
% 0.18/0.35 => ( relati2102071307_hoare
% 0.18/0.35 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P_1 @ S5 @ S7 )
% 0.18/0.35 | ( P_2 @ S5 @ S7 ) )
% 0.18/0.35 @ C
% 0.18/0.35 @ C2
% 0.18/0.35 @ ^ [T3: list_char > int,T5: list_char > int] :
% 0.18/0.35 ( ( Q_1 @ T3 @ T5 )
% 0.18/0.35 | ( Q_2 @ T3 @ T5 ) ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_disj
% 0.18/0.35 thf(fact_90_ir__pre,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,P2: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati2102071307_hoare @ P @ C @ C2 @ Q )
% 0.18/0.35 => ( ! [S3: list_char > int,S4: list_char > int] :
% 0.18/0.35 ( ( P @ S3 @ S4 )
% 0.18/0.35 => ( P2 @ S3 @ S4 ) )
% 0.18/0.35 => ( relati2102071307_hoare @ P2 @ C @ C2 @ Q ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_pre
% 0.18/0.35 thf(fact_91_ir__post,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,Q2: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati2102071307_hoare @ P @ C @ C2 @ Q )
% 0.18/0.35 => ( ! [S3: list_char > int,S4: list_char > int] :
% 0.18/0.35 ( ( Q2 @ S3 @ S4 )
% 0.18/0.35 => ( Q @ S3 @ S4 ) )
% 0.18/0.35 => ( relati2102071307_hoare @ P @ C @ C2 @ Q2 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_post
% 0.18/0.35 thf(fact_92_ir__conseq,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,P2: ( list_char > int ) > ( list_char > int ) > $o,Q2: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati2102071307_hoare @ P @ C @ C2 @ Q )
% 0.18/0.35 => ( ! [S3: list_char > int,S4: list_char > int] :
% 0.18/0.35 ( ( P @ S3 @ S4 )
% 0.18/0.35 => ( P2 @ S3 @ S4 ) )
% 0.18/0.35 => ( ! [S3: list_char > int,S4: list_char > int] :
% 0.18/0.35 ( ( Q2 @ S3 @ S4 )
% 0.18/0.35 => ( Q @ S3 @ S4 ) )
% 0.18/0.35 => ( relati2102071307_hoare @ P2 @ C @ C2 @ Q2 ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_conseq
% 0.18/0.35 thf(fact_93_ir__If__False,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C_2: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C_1: com] :
% 0.18/0.35 ( ( relati2102071307_hoare
% 0.18/0.35 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P @ S5 @ S7 )
% 0.18/0.35 & ~ ( bval @ B @ S5 ) )
% 0.18/0.35 @ C_2
% 0.18/0.35 @ C2
% 0.18/0.35 @ Q )
% 0.18/0.35 => ( relati2102071307_hoare @ P @ ( if @ B @ C_1 @ C_2 ) @ C2 @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_If_False
% 0.18/0.35 thf(fact_94_ir__If__True,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C_1: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C_2: com] :
% 0.18/0.35 ( ( relati2102071307_hoare
% 0.18/0.35 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.35 ( ( P @ S5 @ S7 )
% 0.18/0.35 & ( bval @ B @ S5 ) )
% 0.18/0.35 @ C_1
% 0.18/0.35 @ C2
% 0.18/0.35 @ Q )
% 0.18/0.35 => ( relati2102071307_hoare @ P @ ( if @ B @ C_1 @ C_2 ) @ C2 @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_If_True
% 0.18/0.35 thf(fact_95_soundness,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati2102071307_hoare @ P @ C @ C2 @ Q )
% 0.18/0.35 => ( relati775585786_valid @ P @ C @ C2 @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % soundness
% 0.18/0.35 thf(fact_96_com_Odistinct_I19_J,axiom,
% 0.18/0.35 ! [X41: bexp,X42: com,X43: com,X51: bexp,X52: com] :
% 0.18/0.35 ( ( if @ X41 @ X42 @ X43 )
% 0.18/0.35 != ( while @ X51 @ X52 ) ) ).
% 0.18/0.35
% 0.18/0.35 % com.distinct(19)
% 0.18/0.35 thf(fact_97_com_Odistinct_I5_J,axiom,
% 0.18/0.35 ! [X41: bexp,X42: com,X43: com] :
% 0.18/0.35 ( skip
% 0.18/0.35 != ( if @ X41 @ X42 @ X43 ) ) ).
% 0.18/0.35
% 0.18/0.35 % com.distinct(5)
% 0.18/0.35 thf(fact_98_com_Odistinct_I15_J,axiom,
% 0.18/0.35 ! [X31: com,X32: com,X41: bexp,X42: com,X43: com] :
% 0.18/0.35 ( ( seq @ X31 @ X32 )
% 0.18/0.35 != ( if @ X41 @ X42 @ X43 ) ) ).
% 0.18/0.35
% 0.18/0.35 % com.distinct(15)
% 0.18/0.35 thf(fact_99_ir__sym,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati2102071307_hoare @ ( relati186416454e_flip @ P ) @ C @ C2 @ ( relati186416454e_flip @ Q ) )
% 0.18/0.35 => ( relati2102071307_hoare @ P @ C2 @ C @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_sym
% 0.18/0.35 thf(fact_100_ir__Seq1,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,D: com,R: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.35 ( ( relati2102071307_hoare @ P @ C @ C2 @ Q )
% 0.18/0.35 => ( ( relati2102071307_hoare @ Q @ D @ skip @ R )
% 0.18/0.35 => ( relati2102071307_hoare @ P @ ( seq @ C @ D ) @ C2 @ R ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_Seq1
% 0.18/0.35 thf(fact_101_commute__if,axiom,
% 0.18/0.35 ! [B1: bexp,B22: bexp,C11: com,C12: com,C22: com,S6: list_char > int,T4: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ ( if @ B1 @ ( if @ B22 @ C11 @ C12 ) @ C22 ) @ S6 ) @ T4 )
% 0.18/0.35 = ( big_big_step @ ( produc1193801173ar_int @ ( if @ B22 @ ( if @ B1 @ C11 @ C22 ) @ ( if @ B1 @ C12 @ C22 ) ) @ S6 ) @ T4 ) ) ).
% 0.18/0.35
% 0.18/0.35 % commute_if
% 0.18/0.35 thf(fact_102_triv__if,axiom,
% 0.18/0.35 ! [B: bexp,C: com,S6: list_char > int,T4: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ ( if @ B @ C @ C ) @ S6 ) @ T4 )
% 0.18/0.35 = ( big_big_step @ ( produc1193801173ar_int @ C @ S6 ) @ T4 ) ) ).
% 0.18/0.35
% 0.18/0.35 % triv_if
% 0.18/0.35 thf(fact_103_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
% 0.18/0.35 ! [A: nat,B: nat,C: nat] :
% 0.18/0.35 ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
% 0.18/0.35 = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % ab_semigroup_add_class.add_ac(1)
% 0.18/0.35 thf(fact_104_add__mono__thms__linordered__semiring_I4_J,axiom,
% 0.18/0.35 ! [I: nat,J: nat,K: nat,L: nat] :
% 0.18/0.35 ( ( ( I = J )
% 0.18/0.35 & ( K = L ) )
% 0.18/0.35 => ( ( plus_plus_nat @ I @ K )
% 0.18/0.35 = ( plus_plus_nat @ J @ L ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % add_mono_thms_linordered_semiring(4)
% 0.18/0.35 thf(fact_105_group__cancel_Oadd1,axiom,
% 0.18/0.35 ! [A4: nat,K: nat,A: nat,B: nat] :
% 0.18/0.35 ( ( A4
% 0.18/0.35 = ( plus_plus_nat @ K @ A ) )
% 0.18/0.35 => ( ( plus_plus_nat @ A4 @ B )
% 0.18/0.35 = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % group_cancel.add1
% 0.18/0.35 thf(fact_106_group__cancel_Oadd2,axiom,
% 0.18/0.35 ! [B4: nat,K: nat,B: nat,A: nat] :
% 0.18/0.35 ( ( B4
% 0.18/0.35 = ( plus_plus_nat @ K @ B ) )
% 0.18/0.35 => ( ( plus_plus_nat @ A @ B4 )
% 0.18/0.35 = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % group_cancel.add2
% 0.18/0.35 thf(fact_107_add_Oassoc,axiom,
% 0.18/0.35 ! [A: nat,B: nat,C: nat] :
% 0.18/0.35 ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
% 0.18/0.35 = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % add.assoc
% 0.18/0.35 thf(fact_108_add_Ocommute,axiom,
% 0.18/0.35 ( plus_plus_nat
% 0.18/0.35 = ( ^ [A5: nat,B5: nat] : ( plus_plus_nat @ B5 @ A5 ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % add.commute
% 0.18/0.35 thf(fact_109_add_Oleft__commute,axiom,
% 0.18/0.35 ! [B: nat,A: nat,C: nat] :
% 0.18/0.35 ( ( plus_plus_nat @ B @ ( plus_plus_nat @ A @ C ) )
% 0.18/0.35 = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % add.left_commute
% 0.18/0.35 thf(fact_110_add__left__imp__eq,axiom,
% 0.18/0.35 ! [A: nat,B: nat,C: nat] :
% 0.18/0.35 ( ( ( plus_plus_nat @ A @ B )
% 0.18/0.35 = ( plus_plus_nat @ A @ C ) )
% 0.18/0.35 => ( B = C ) ) ).
% 0.18/0.35
% 0.18/0.35 % add_left_imp_eq
% 0.18/0.35 thf(fact_111_add__right__imp__eq,axiom,
% 0.18/0.35 ! [B: nat,A: nat,C: nat] :
% 0.18/0.35 ( ( ( plus_plus_nat @ B @ A )
% 0.18/0.35 = ( plus_plus_nat @ C @ A ) )
% 0.18/0.35 => ( B = C ) ) ).
% 0.18/0.35
% 0.18/0.35 % add_right_imp_eq
% 0.18/0.35 thf(fact_112_ir__Skip,axiom,
% 0.18/0.35 ! [Q: ( list_char > int ) > ( list_char > int ) > $o,P: ( list_char > int ) > ( list_char > int ) > $o,C2: com] :
% 0.18/0.35 ( ! [T6: list_char > int,T7: list_char > int] :
% 0.18/0.35 ( ( Q @ T6 @ T7 )
% 0.18/0.35 => ? [S8: list_char > int] :
% 0.18/0.35 ( ( P @ T6 @ S8 )
% 0.18/0.35 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S8 ) @ T7 ) ) )
% 0.18/0.35 => ( relati2102071307_hoare @ P @ skip @ C2 @ Q ) ) ).
% 0.18/0.35
% 0.18/0.35 % ir_Skip
% 0.18/0.35 thf(fact_113_IfFalse,axiom,
% 0.18/0.35 ! [B: bexp,S: list_char > int,C_2: com,T: list_char > int,C_1: com] :
% 0.18/0.35 ( ~ ( bval @ B @ S )
% 0.18/0.35 => ( ( big_big_step @ ( produc1193801173ar_int @ C_2 @ S ) @ T )
% 0.18/0.35 => ( big_big_step @ ( produc1193801173ar_int @ ( if @ B @ C_1 @ C_2 ) @ S ) @ T ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % IfFalse
% 0.18/0.35 thf(fact_114_IfTrue,axiom,
% 0.18/0.35 ! [B: bexp,S: list_char > int,C_1: com,T: list_char > int,C_2: com] :
% 0.18/0.35 ( ( bval @ B @ S )
% 0.18/0.35 => ( ( big_big_step @ ( produc1193801173ar_int @ C_1 @ S ) @ T )
% 0.18/0.35 => ( big_big_step @ ( produc1193801173ar_int @ ( if @ B @ C_1 @ C_2 ) @ S ) @ T ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % IfTrue
% 0.18/0.35 thf(fact_115_IfE,axiom,
% 0.18/0.35 ! [B: bexp,C1: com,C22: com,S: list_char > int,T: list_char > int] :
% 0.18/0.35 ( ( big_big_step @ ( produc1193801173ar_int @ ( if @ B @ C1 @ C22 ) @ S ) @ T )
% 0.18/0.35 => ( ( ( bval @ B @ S )
% 0.18/0.35 => ~ ( big_big_step @ ( produc1193801173ar_int @ C1 @ S ) @ T ) )
% 0.18/0.35 => ~ ( ~ ( bval @ B @ S )
% 0.18/0.35 => ~ ( big_big_step @ ( produc1193801173ar_int @ C22 @ S ) @ T ) ) ) ) ).
% 0.18/0.35
% 0.18/0.35 % IfE
% 0.18/0.35 thf(fact_116_ir__While__False,axiom,
% 0.18/0.35 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C: com] :
% 0.18/0.36 ( ( relati2102071307_hoare
% 0.18/0.36 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.36 ( ( P @ S5 @ S7 )
% 0.18/0.36 & ~ ( bval @ B @ S5 ) )
% 0.18/0.36 @ skip
% 0.18/0.36 @ C2
% 0.18/0.36 @ Q )
% 0.18/0.36 => ( relati2102071307_hoare @ P @ ( while @ B @ C ) @ C2 @ Q ) ) ).
% 0.18/0.36
% 0.18/0.36 % ir_While_False
% 0.18/0.36 thf(fact_117_com_Oexhaust,axiom,
% 0.18/0.36 ! [Y: com] :
% 0.18/0.36 ( ( Y != skip )
% 0.18/0.36 => ( ! [X21: list_char,X22: aexp] :
% 0.18/0.36 ( Y
% 0.18/0.36 != ( assign @ X21 @ X22 ) )
% 0.18/0.36 => ( ! [X312: com,X322: com] :
% 0.18/0.36 ( Y
% 0.18/0.36 != ( seq @ X312 @ X322 ) )
% 0.18/0.36 => ( ! [X412: bexp,X422: com,X432: com] :
% 0.18/0.36 ( Y
% 0.18/0.36 != ( if @ X412 @ X422 @ X432 ) )
% 0.18/0.36 => ~ ! [X512: bexp,X522: com] :
% 0.18/0.36 ( Y
% 0.18/0.36 != ( while @ X512 @ X522 ) ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % com.exhaust
% 0.18/0.36 thf(fact_118_com_Oinduct,axiom,
% 0.18/0.36 ! [P: com > $o,Com: com] :
% 0.18/0.36 ( ( P @ skip )
% 0.18/0.36 => ( ! [X12: list_char,X23: aexp] : ( P @ ( assign @ X12 @ X23 ) )
% 0.18/0.36 => ( ! [X12: com,X23: com] :
% 0.18/0.36 ( ( P @ X12 )
% 0.18/0.36 => ( ( P @ X23 )
% 0.18/0.36 => ( P @ ( seq @ X12 @ X23 ) ) ) )
% 0.18/0.36 => ( ! [X12: bexp,X23: com,X33: com] :
% 0.18/0.36 ( ( P @ X23 )
% 0.18/0.36 => ( ( P @ X33 )
% 0.18/0.36 => ( P @ ( if @ X12 @ X23 @ X33 ) ) ) )
% 0.18/0.36 => ( ! [X12: bexp,X23: com] :
% 0.18/0.36 ( ( P @ X23 )
% 0.18/0.36 => ( P @ ( while @ X12 @ X23 ) ) )
% 0.18/0.36 => ( P @ Com ) ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % com.induct
% 0.18/0.36 thf(fact_119_image2__def,axiom,
% 0.18/0.36 ( bNF_Gr202451329ar_int
% 0.18/0.36 = ( ^ [A6: set_Pr1148378109ar_int,F: produc1260470173ar_int > com,G: produc1260470173ar_int > list_char > int] :
% 0.18/0.36 ( collec770796680ar_int
% 0.18/0.36 @ ^ [Uu: produc1260470173ar_int] :
% 0.18/0.36 ? [A5: produc1260470173ar_int] :
% 0.18/0.36 ( ( Uu
% 0.18/0.36 = ( produc1193801173ar_int @ ( F @ A5 ) @ ( G @ A5 ) ) )
% 0.18/0.36 & ( member92250950ar_int @ A5 @ A6 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % image2_def
% 0.18/0.36 thf(fact_120_image2__def,axiom,
% 0.18/0.36 ( bNF_Gr749752805at_nat
% 0.18/0.36 = ( ^ [A6: set_Pr1148378109ar_int,F: produc1260470173ar_int > nat,G: produc1260470173ar_int > nat] :
% 0.18/0.36 ( collec7649004at_nat
% 0.18/0.36 @ ^ [Uu: product_prod_nat_nat] :
% 0.18/0.36 ? [A5: produc1260470173ar_int] :
% 0.18/0.36 ( ( Uu
% 0.18/0.36 = ( product_Pair_nat_nat @ ( F @ A5 ) @ ( G @ A5 ) ) )
% 0.18/0.36 & ( member92250950ar_int @ A5 @ A6 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % image2_def
% 0.18/0.36 thf(fact_121_While__backwards__frontier__ir__valid,axiom,
% 0.18/0.36 ! [P: nat > ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.36 ( ! [N2: nat] :
% 0.18/0.36 ( relati775585786_valid
% 0.18/0.36 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.36 ( ( P @ N2 @ S5 @ S7 )
% 0.18/0.36 & ( bval @ B @ S5 ) )
% 0.18/0.36 @ C
% 0.18/0.36 @ skip
% 0.18/0.36 @ ( P @ ( suc @ N2 ) ) )
% 0.18/0.36 => ( ( relati775585786_valid
% 0.18/0.36 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.36 ? [N4: nat] : ( P @ N4 @ S5 @ S7 )
% 0.18/0.36 @ ( while @ B @ C )
% 0.18/0.36 @ C2
% 0.18/0.36 @ Q )
% 0.18/0.36 => ( relati775585786_valid @ ( P @ zero_zero_nat ) @ ( while @ B @ C ) @ C2 @ Q ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % While_backwards_frontier_ir_valid
% 0.18/0.36 thf(fact_122_com_Oinject_I1_J,axiom,
% 0.18/0.36 ! [X212: list_char,X222: aexp,Y21: list_char,Y22: aexp] :
% 0.18/0.36 ( ( ( assign @ X212 @ X222 )
% 0.18/0.36 = ( assign @ Y21 @ Y22 ) )
% 0.18/0.36 = ( ( X212 = Y21 )
% 0.18/0.36 & ( X222 = Y22 ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % com.inject(1)
% 0.18/0.36 thf(fact_123_add_Oleft__neutral,axiom,
% 0.18/0.36 ! [A: nat] :
% 0.18/0.36 ( ( plus_plus_nat @ zero_zero_nat @ A )
% 0.18/0.36 = A ) ).
% 0.18/0.36
% 0.18/0.36 % add.left_neutral
% 0.18/0.36 thf(fact_124_add_Oright__neutral,axiom,
% 0.18/0.36 ! [A: nat] :
% 0.18/0.36 ( ( plus_plus_nat @ A @ zero_zero_nat )
% 0.18/0.36 = A ) ).
% 0.18/0.36
% 0.18/0.36 % add.right_neutral
% 0.18/0.36 thf(fact_125_add__cancel__left__left,axiom,
% 0.18/0.36 ! [B: nat,A: nat] :
% 0.18/0.36 ( ( ( plus_plus_nat @ B @ A )
% 0.18/0.36 = A )
% 0.18/0.36 = ( B = zero_zero_nat ) ) ).
% 0.18/0.36
% 0.18/0.36 % add_cancel_left_left
% 0.18/0.36 thf(fact_126_add__cancel__left__right,axiom,
% 0.18/0.36 ! [A: nat,B: nat] :
% 0.18/0.36 ( ( ( plus_plus_nat @ A @ B )
% 0.18/0.36 = A )
% 0.18/0.36 = ( B = zero_zero_nat ) ) ).
% 0.18/0.36
% 0.18/0.36 % add_cancel_left_right
% 0.18/0.36 thf(fact_127_add__cancel__right__left,axiom,
% 0.18/0.36 ! [A: nat,B: nat] :
% 0.18/0.36 ( ( A
% 0.18/0.36 = ( plus_plus_nat @ B @ A ) )
% 0.18/0.36 = ( B = zero_zero_nat ) ) ).
% 0.18/0.36
% 0.18/0.36 % add_cancel_right_left
% 0.18/0.36 thf(fact_128_add__cancel__right__right,axiom,
% 0.18/0.36 ! [A: nat,B: nat] :
% 0.18/0.36 ( ( A
% 0.18/0.36 = ( plus_plus_nat @ A @ B ) )
% 0.18/0.36 = ( B = zero_zero_nat ) ) ).
% 0.18/0.36
% 0.18/0.36 % add_cancel_right_right
% 0.18/0.36 thf(fact_129_add__eq__0__iff__both__eq__0,axiom,
% 0.18/0.36 ! [X4: nat,Y: nat] :
% 0.18/0.36 ( ( ( plus_plus_nat @ X4 @ Y )
% 0.18/0.36 = zero_zero_nat )
% 0.18/0.36 = ( ( X4 = zero_zero_nat )
% 0.18/0.36 & ( Y = zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % add_eq_0_iff_both_eq_0
% 0.18/0.36 thf(fact_130_zero__eq__add__iff__both__eq__0,axiom,
% 0.18/0.36 ! [X4: nat,Y: nat] :
% 0.18/0.36 ( ( zero_zero_nat
% 0.18/0.36 = ( plus_plus_nat @ X4 @ Y ) )
% 0.18/0.36 = ( ( X4 = zero_zero_nat )
% 0.18/0.36 & ( Y = zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % zero_eq_add_iff_both_eq_0
% 0.18/0.36 thf(fact_131_add__is__0,axiom,
% 0.18/0.36 ! [M: nat,N: nat] :
% 0.18/0.36 ( ( ( plus_plus_nat @ M @ N )
% 0.18/0.36 = zero_zero_nat )
% 0.18/0.36 = ( ( M = zero_zero_nat )
% 0.18/0.36 & ( N = zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % add_is_0
% 0.18/0.36 thf(fact_132_Nat_Oadd__0__right,axiom,
% 0.18/0.36 ! [M: nat] :
% 0.18/0.36 ( ( plus_plus_nat @ M @ zero_zero_nat )
% 0.18/0.36 = M ) ).
% 0.18/0.36
% 0.18/0.36 % Nat.add_0_right
% 0.18/0.36 thf(fact_133_zero__reorient,axiom,
% 0.18/0.36 ! [X4: nat] :
% 0.18/0.36 ( ( zero_zero_nat = X4 )
% 0.18/0.36 = ( X4 = zero_zero_nat ) ) ).
% 0.18/0.36
% 0.18/0.36 % zero_reorient
% 0.18/0.36 thf(fact_134_comm__monoid__add__class_Oadd__0,axiom,
% 0.18/0.36 ! [A: nat] :
% 0.18/0.36 ( ( plus_plus_nat @ zero_zero_nat @ A )
% 0.18/0.36 = A ) ).
% 0.18/0.36
% 0.18/0.36 % comm_monoid_add_class.add_0
% 0.18/0.36 thf(fact_135_add_Ocomm__neutral,axiom,
% 0.18/0.36 ! [A: nat] :
% 0.18/0.36 ( ( plus_plus_nat @ A @ zero_zero_nat )
% 0.18/0.36 = A ) ).
% 0.18/0.36
% 0.18/0.36 % add.comm_neutral
% 0.18/0.36 thf(fact_136_nat_Odistinct_I1_J,axiom,
% 0.18/0.36 ! [X2: nat] :
% 0.18/0.36 ( zero_zero_nat
% 0.18/0.36 != ( suc @ X2 ) ) ).
% 0.18/0.36
% 0.18/0.36 % nat.distinct(1)
% 0.18/0.36 thf(fact_137_old_Onat_Odistinct_I2_J,axiom,
% 0.18/0.36 ! [Nat2: nat] :
% 0.18/0.36 ( ( suc @ Nat2 )
% 0.18/0.36 != zero_zero_nat ) ).
% 0.18/0.36
% 0.18/0.36 % old.nat.distinct(2)
% 0.18/0.36 thf(fact_138_old_Onat_Odistinct_I1_J,axiom,
% 0.18/0.36 ! [Nat2: nat] :
% 0.18/0.36 ( zero_zero_nat
% 0.18/0.36 != ( suc @ Nat2 ) ) ).
% 0.18/0.36
% 0.18/0.36 % old.nat.distinct(1)
% 0.18/0.36 thf(fact_139_nat_OdiscI,axiom,
% 0.18/0.36 ! [Nat: nat,X2: nat] :
% 0.18/0.36 ( ( Nat
% 0.18/0.36 = ( suc @ X2 ) )
% 0.18/0.36 => ( Nat != zero_zero_nat ) ) ).
% 0.18/0.36
% 0.18/0.36 % nat.discI
% 0.18/0.36 thf(fact_140_nat__induct,axiom,
% 0.18/0.36 ! [P: nat > $o,N: nat] :
% 0.18/0.36 ( ( P @ zero_zero_nat )
% 0.18/0.36 => ( ! [N2: nat] :
% 0.18/0.36 ( ( P @ N2 )
% 0.18/0.36 => ( P @ ( suc @ N2 ) ) )
% 0.18/0.36 => ( P @ N ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % nat_induct
% 0.18/0.36 thf(fact_141_diff__induct,axiom,
% 0.18/0.36 ! [P: nat > nat > $o,M: nat,N: nat] :
% 0.18/0.36 ( ! [X3: nat] : ( P @ X3 @ zero_zero_nat )
% 0.18/0.36 => ( ! [Y3: nat] : ( P @ zero_zero_nat @ ( suc @ Y3 ) )
% 0.18/0.36 => ( ! [X3: nat,Y3: nat] :
% 0.18/0.36 ( ( P @ X3 @ Y3 )
% 0.18/0.36 => ( P @ ( suc @ X3 ) @ ( suc @ Y3 ) ) )
% 0.18/0.36 => ( P @ M @ N ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % diff_induct
% 0.18/0.36 thf(fact_142_zero__induct,axiom,
% 0.18/0.36 ! [P: nat > $o,K: nat] :
% 0.18/0.36 ( ( P @ K )
% 0.18/0.36 => ( ! [N2: nat] :
% 0.18/0.36 ( ( P @ ( suc @ N2 ) )
% 0.18/0.36 => ( P @ N2 ) )
% 0.18/0.36 => ( P @ zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % zero_induct
% 0.18/0.36 thf(fact_143_Suc__neq__Zero,axiom,
% 0.18/0.36 ! [M: nat] :
% 0.18/0.36 ( ( suc @ M )
% 0.18/0.36 != zero_zero_nat ) ).
% 0.18/0.36
% 0.18/0.36 % Suc_neq_Zero
% 0.18/0.36 thf(fact_144_Zero__neq__Suc,axiom,
% 0.18/0.36 ! [M: nat] :
% 0.18/0.36 ( zero_zero_nat
% 0.18/0.36 != ( suc @ M ) ) ).
% 0.18/0.36
% 0.18/0.36 % Zero_neq_Suc
% 0.18/0.36 thf(fact_145_Zero__not__Suc,axiom,
% 0.18/0.36 ! [M: nat] :
% 0.18/0.36 ( zero_zero_nat
% 0.18/0.36 != ( suc @ M ) ) ).
% 0.18/0.36
% 0.18/0.36 % Zero_not_Suc
% 0.18/0.36 thf(fact_146_old_Onat_Oexhaust,axiom,
% 0.18/0.36 ! [Y: nat] :
% 0.18/0.36 ( ( Y != zero_zero_nat )
% 0.18/0.36 => ~ ! [Nat3: nat] :
% 0.18/0.36 ( Y
% 0.18/0.36 != ( suc @ Nat3 ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % old.nat.exhaust
% 0.18/0.36 thf(fact_147_old_Onat_Oinducts,axiom,
% 0.18/0.36 ! [P: nat > $o,Nat: nat] :
% 0.18/0.36 ( ( P @ zero_zero_nat )
% 0.18/0.36 => ( ! [Nat3: nat] :
% 0.18/0.36 ( ( P @ Nat3 )
% 0.18/0.36 => ( P @ ( suc @ Nat3 ) ) )
% 0.18/0.36 => ( P @ Nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % old.nat.inducts
% 0.18/0.36 thf(fact_148_not0__implies__Suc,axiom,
% 0.18/0.36 ! [N: nat] :
% 0.18/0.36 ( ( N != zero_zero_nat )
% 0.18/0.36 => ? [M2: nat] :
% 0.18/0.36 ( N
% 0.18/0.36 = ( suc @ M2 ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % not0_implies_Suc
% 0.18/0.36 thf(fact_149_plus__nat_Oadd__0,axiom,
% 0.18/0.36 ! [N: nat] :
% 0.18/0.36 ( ( plus_plus_nat @ zero_zero_nat @ N )
% 0.18/0.36 = N ) ).
% 0.18/0.36
% 0.18/0.36 % plus_nat.add_0
% 0.18/0.36 thf(fact_150_add__eq__self__zero,axiom,
% 0.18/0.36 ! [M: nat,N: nat] :
% 0.18/0.36 ( ( ( plus_plus_nat @ M @ N )
% 0.18/0.36 = M )
% 0.18/0.36 => ( N = zero_zero_nat ) ) ).
% 0.18/0.36
% 0.18/0.36 % add_eq_self_zero
% 0.18/0.36 thf(fact_151_image2__eqI,axiom,
% 0.18/0.36 ! [B: com,F2: produc1260470173ar_int > com,X4: produc1260470173ar_int,C: list_char > int,G2: produc1260470173ar_int > list_char > int,A4: set_Pr1148378109ar_int] :
% 0.18/0.36 ( ( B
% 0.18/0.36 = ( F2 @ X4 ) )
% 0.18/0.36 => ( ( C
% 0.18/0.36 = ( G2 @ X4 ) )
% 0.18/0.36 => ( ( member92250950ar_int @ X4 @ A4 )
% 0.18/0.36 => ( member92250950ar_int @ ( produc1193801173ar_int @ B @ C ) @ ( bNF_Gr202451329ar_int @ A4 @ F2 @ G2 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % image2_eqI
% 0.18/0.36 thf(fact_152_image2__eqI,axiom,
% 0.18/0.36 ! [B: nat,F2: produc1260470173ar_int > nat,X4: produc1260470173ar_int,C: nat,G2: produc1260470173ar_int > nat,A4: set_Pr1148378109ar_int] :
% 0.18/0.36 ( ( B
% 0.18/0.36 = ( F2 @ X4 ) )
% 0.18/0.36 => ( ( C
% 0.18/0.36 = ( G2 @ X4 ) )
% 0.18/0.36 => ( ( member92250950ar_int @ X4 @ A4 )
% 0.18/0.36 => ( member701585322at_nat @ ( product_Pair_nat_nat @ B @ C ) @ ( bNF_Gr749752805at_nat @ A4 @ F2 @ G2 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % image2_eqI
% 0.18/0.36 thf(fact_153_com_Odistinct_I13_J,axiom,
% 0.18/0.36 ! [X212: list_char,X222: aexp,X51: bexp,X52: com] :
% 0.18/0.36 ( ( assign @ X212 @ X222 )
% 0.18/0.36 != ( while @ X51 @ X52 ) ) ).
% 0.18/0.36
% 0.18/0.36 % com.distinct(13)
% 0.18/0.36 thf(fact_154_com_Odistinct_I1_J,axiom,
% 0.18/0.36 ! [X212: list_char,X222: aexp] :
% 0.18/0.36 ( skip
% 0.18/0.36 != ( assign @ X212 @ X222 ) ) ).
% 0.18/0.36
% 0.18/0.36 % com.distinct(1)
% 0.18/0.36 thf(fact_155_com_Odistinct_I9_J,axiom,
% 0.18/0.36 ! [X212: list_char,X222: aexp,X31: com,X32: com] :
% 0.18/0.36 ( ( assign @ X212 @ X222 )
% 0.18/0.36 != ( seq @ X31 @ X32 ) ) ).
% 0.18/0.36
% 0.18/0.36 % com.distinct(9)
% 0.18/0.36 thf(fact_156_com_Odistinct_I11_J,axiom,
% 0.18/0.36 ! [X212: list_char,X222: aexp,X41: bexp,X42: com,X43: com] :
% 0.18/0.36 ( ( assign @ X212 @ X222 )
% 0.18/0.36 != ( if @ X41 @ X42 @ X43 ) ) ).
% 0.18/0.36
% 0.18/0.36 % com.distinct(11)
% 0.18/0.36 thf(fact_157_get__back_Osimps_I1_J,axiom,
% 0.18/0.36 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com] :
% 0.18/0.36 ( ( relati23543761ar_int @ P @ B @ C @ zero_zero_nat )
% 0.18/0.36 = P ) ).
% 0.18/0.36
% 0.18/0.36 % get_back.simps(1)
% 0.18/0.36 thf(fact_158_one__is__add,axiom,
% 0.18/0.36 ! [M: nat,N: nat] :
% 0.18/0.36 ( ( ( suc @ zero_zero_nat )
% 0.18/0.36 = ( plus_plus_nat @ M @ N ) )
% 0.18/0.36 = ( ( ( M
% 0.18/0.36 = ( suc @ zero_zero_nat ) )
% 0.18/0.36 & ( N = zero_zero_nat ) )
% 0.18/0.36 | ( ( M = zero_zero_nat )
% 0.18/0.36 & ( N
% 0.18/0.36 = ( suc @ zero_zero_nat ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % one_is_add
% 0.18/0.36 thf(fact_159_add__is__1,axiom,
% 0.18/0.36 ! [M: nat,N: nat] :
% 0.18/0.36 ( ( ( plus_plus_nat @ M @ N )
% 0.18/0.36 = ( suc @ zero_zero_nat ) )
% 0.18/0.36 = ( ( ( M
% 0.18/0.36 = ( suc @ zero_zero_nat ) )
% 0.18/0.36 & ( N = zero_zero_nat ) )
% 0.18/0.36 | ( ( M = zero_zero_nat )
% 0.18/0.36 & ( N
% 0.18/0.36 = ( suc @ zero_zero_nat ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % add_is_1
% 0.18/0.36 thf(fact_160_ir__While__backwards__frontier,axiom,
% 0.18/0.36 ! [P: nat > ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 0.18/0.36 ( ! [N2: nat] :
% 0.18/0.36 ( relati2102071307_hoare
% 0.18/0.36 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.36 ( ( P @ N2 @ S5 @ S7 )
% 0.18/0.36 & ( bval @ B @ S5 ) )
% 0.18/0.36 @ C
% 0.18/0.36 @ skip
% 0.18/0.36 @ ( P @ ( suc @ N2 ) ) )
% 0.18/0.36 => ( ( relati2102071307_hoare
% 0.18/0.36 @ ^ [S5: list_char > int,S7: list_char > int] :
% 0.18/0.36 ? [N4: nat] : ( P @ N4 @ S5 @ S7 )
% 0.18/0.36 @ ( while @ B @ C )
% 0.18/0.36 @ C2
% 0.18/0.36 @ Q )
% 0.18/0.36 => ( relati2102071307_hoare @ ( P @ zero_zero_nat ) @ ( while @ B @ C ) @ C2 @ Q ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % ir_While_backwards_frontier
% 0.18/0.36 thf(fact_161_com_Osize__gen_I4_J,axiom,
% 0.18/0.36 ! [X41: bexp,X42: com,X43: com] :
% 0.18/0.36 ( ( size_com @ ( if @ X41 @ X42 @ X43 ) )
% 0.18/0.36 = ( plus_plus_nat @ ( plus_plus_nat @ ( size_com @ X42 ) @ ( size_com @ X43 ) ) @ ( suc @ zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % com.size_gen(4)
% 0.18/0.36 thf(fact_162_com_Osize__gen_I3_J,axiom,
% 0.18/0.36 ! [X31: com,X32: com] :
% 0.18/0.36 ( ( size_com @ ( seq @ X31 @ X32 ) )
% 0.18/0.36 = ( plus_plus_nat @ ( plus_plus_nat @ ( size_com @ X31 ) @ ( size_com @ X32 ) ) @ ( suc @ zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % com.size_gen(3)
% 0.18/0.36 thf(fact_163_com_Osize__gen_I5_J,axiom,
% 0.18/0.36 ! [X51: bexp,X52: com] :
% 0.18/0.36 ( ( size_com @ ( while @ X51 @ X52 ) )
% 0.18/0.36 = ( plus_plus_nat @ ( size_com @ X52 ) @ ( suc @ zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % com.size_gen(5)
% 0.18/0.36 thf(fact_164_com_Osize_I9_J,axiom,
% 0.18/0.36 ! [X41: bexp,X42: com,X43: com] :
% 0.18/0.36 ( ( size_size_com @ ( if @ X41 @ X42 @ X43 ) )
% 0.18/0.36 = ( plus_plus_nat @ ( plus_plus_nat @ ( size_size_com @ X42 ) @ ( size_size_com @ X43 ) ) @ ( suc @ zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % com.size(9)
% 0.18/0.36 thf(fact_165_size__neq__size__imp__neq,axiom,
% 0.18/0.36 ! [X4: com,Y: com] :
% 0.18/0.36 ( ( ( size_size_com @ X4 )
% 0.18/0.36 != ( size_size_com @ Y ) )
% 0.18/0.36 => ( X4 != Y ) ) ).
% 0.18/0.36
% 0.18/0.36 % size_neq_size_imp_neq
% 0.18/0.36 thf(fact_166_size__neq__size__imp__neq,axiom,
% 0.18/0.36 ! [X4: typerep,Y: typerep] :
% 0.18/0.36 ( ( ( size_size_typerep @ X4 )
% 0.18/0.36 != ( size_size_typerep @ Y ) )
% 0.18/0.36 => ( X4 != Y ) ) ).
% 0.18/0.36
% 0.18/0.36 % size_neq_size_imp_neq
% 0.18/0.36 thf(fact_167_com_Osize_I6_J,axiom,
% 0.18/0.36 ( ( size_size_com @ skip )
% 0.18/0.36 = zero_zero_nat ) ).
% 0.18/0.36
% 0.18/0.36 % com.size(6)
% 0.18/0.36 thf(fact_168_com_Osize_I7_J,axiom,
% 0.18/0.36 ! [X212: list_char,X222: aexp] :
% 0.18/0.36 ( ( size_size_com @ ( assign @ X212 @ X222 ) )
% 0.18/0.36 = zero_zero_nat ) ).
% 0.18/0.36
% 0.18/0.36 % com.size(7)
% 0.18/0.36 thf(fact_169_com_Osize__gen_I1_J,axiom,
% 0.18/0.36 ( ( size_com @ skip )
% 0.18/0.36 = zero_zero_nat ) ).
% 0.18/0.36
% 0.18/0.36 % com.size_gen(1)
% 0.18/0.36 thf(fact_170_com_Osize__gen_I2_J,axiom,
% 0.18/0.36 ! [X212: list_char,X222: aexp] :
% 0.18/0.36 ( ( size_com @ ( assign @ X212 @ X222 ) )
% 0.18/0.36 = zero_zero_nat ) ).
% 0.18/0.36
% 0.18/0.36 % com.size_gen(2)
% 0.18/0.36 thf(fact_171_com_Osize_I10_J,axiom,
% 0.18/0.36 ! [X51: bexp,X52: com] :
% 0.18/0.36 ( ( size_size_com @ ( while @ X51 @ X52 ) )
% 0.18/0.36 = ( plus_plus_nat @ ( size_size_com @ X52 ) @ ( suc @ zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % com.size(10)
% 0.18/0.36 thf(fact_172_com_Osize_I8_J,axiom,
% 0.18/0.36 ! [X31: com,X32: com] :
% 0.18/0.36 ( ( size_size_com @ ( seq @ X31 @ X32 ) )
% 0.18/0.36 = ( plus_plus_nat @ ( plus_plus_nat @ ( size_size_com @ X31 ) @ ( size_size_com @ X32 ) ) @ ( suc @ zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % com.size(8)
% 0.18/0.36 thf(fact_173_Euclid__induct,axiom,
% 0.18/0.36 ! [P: nat > nat > $o,A: nat,B: nat] :
% 0.18/0.36 ( ! [A3: nat,B3: nat] :
% 0.18/0.36 ( ( P @ A3 @ B3 )
% 0.18/0.36 = ( P @ B3 @ A3 ) )
% 0.18/0.36 => ( ! [A3: nat] : ( P @ A3 @ zero_zero_nat )
% 0.18/0.36 => ( ! [A3: nat,B3: nat] :
% 0.18/0.36 ( ( P @ A3 @ B3 )
% 0.18/0.36 => ( P @ A3 @ ( plus_plus_nat @ A3 @ B3 ) ) )
% 0.18/0.36 => ( P @ A @ B ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % Euclid_induct
% 0.18/0.36 thf(fact_174_verit__sum__simplify,axiom,
% 0.18/0.36 ! [A: nat] :
% 0.18/0.36 ( ( plus_plus_nat @ A @ zero_zero_nat )
% 0.18/0.36 = A ) ).
% 0.18/0.36
% 0.18/0.36 % verit_sum_simplify
% 0.18/0.36 thf(fact_175_add__0__iff,axiom,
% 0.18/0.36 ! [B: nat,A: nat] :
% 0.18/0.36 ( ( B
% 0.18/0.36 = ( plus_plus_nat @ B @ A ) )
% 0.18/0.36 = ( A = zero_zero_nat ) ) ).
% 0.18/0.36
% 0.18/0.36 % add_0_iff
% 0.18/0.36 thf(fact_176_relImage__def,axiom,
% 0.18/0.36 ( bNF_Gr1247133574at_nat
% 0.18/0.36 = ( ^ [R2: set_Pr1986765409at_nat,F: nat > nat] :
% 0.18/0.36 ( collec7649004at_nat
% 0.18/0.36 @ ^ [Uu: product_prod_nat_nat] :
% 0.18/0.36 ? [A1: nat,A22: nat] :
% 0.18/0.36 ( ( Uu
% 0.18/0.36 = ( product_Pair_nat_nat @ ( F @ A1 ) @ ( F @ A22 ) ) )
% 0.18/0.36 & ( member701585322at_nat @ ( product_Pair_nat_nat @ A1 @ A22 ) @ R2 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % relImage_def
% 0.18/0.36 thf(fact_177_relInvImage__def,axiom,
% 0.18/0.36 ( bNF_Gr1143394412nt_nat
% 0.18/0.36 = ( ^ [A6: set_Pr1148378109ar_int,R2: set_Pr1986765409at_nat,F: produc1260470173ar_int > nat] :
% 0.18/0.36 ( collec1834387154ar_int
% 0.18/0.36 @ ^ [Uu: produc1346207591ar_int] :
% 0.18/0.36 ? [A1: produc1260470173ar_int,A22: produc1260470173ar_int] :
% 0.18/0.36 ( ( Uu
% 0.18/0.36 = ( produc317451735ar_int @ A1 @ A22 ) )
% 0.18/0.36 & ( member92250950ar_int @ A1 @ A6 )
% 0.18/0.36 & ( member92250950ar_int @ A22 @ A6 )
% 0.18/0.36 & ( member701585322at_nat @ ( product_Pair_nat_nat @ ( F @ A1 ) @ ( F @ A22 ) ) @ R2 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % relInvImage_def
% 0.18/0.36 thf(fact_178_relInvImage__def,axiom,
% 0.18/0.36 ( bNF_Gr808751971at_nat
% 0.18/0.36 = ( ^ [A6: set_nat,R2: set_Pr1986765409at_nat,F: nat > nat] :
% 0.18/0.36 ( collec7649004at_nat
% 0.18/0.36 @ ^ [Uu: product_prod_nat_nat] :
% 0.18/0.36 ? [A1: nat,A22: nat] :
% 0.18/0.36 ( ( Uu
% 0.18/0.36 = ( product_Pair_nat_nat @ A1 @ A22 ) )
% 0.18/0.36 & ( member_nat @ A1 @ A6 )
% 0.18/0.36 & ( member_nat @ A22 @ A6 )
% 0.18/0.36 & ( member701585322at_nat @ ( product_Pair_nat_nat @ ( F @ A1 ) @ ( F @ A22 ) ) @ R2 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % relInvImage_def
% 0.18/0.36 thf(fact_179_divides__aux__eq,axiom,
% 0.18/0.36 ! [Q4: nat,R3: nat] :
% 0.18/0.36 ( ( unique1592618082ux_nat @ ( product_Pair_nat_nat @ Q4 @ R3 ) )
% 0.18/0.36 = ( R3 = zero_zero_nat ) ) ).
% 0.18/0.36
% 0.18/0.36 % divides_aux_eq
% 0.18/0.36 thf(fact_180_zero__natural_Orsp,axiom,
% 0.18/0.36 zero_zero_nat = zero_zero_nat ).
% 0.18/0.36
% 0.18/0.36 % zero_natural.rsp
% 0.18/0.36 thf(fact_181_typerep_Osize__neq,axiom,
% 0.18/0.36 ! [X4: typerep] :
% 0.18/0.36 ( ( size_size_typerep @ X4 )
% 0.18/0.36 != zero_zero_nat ) ).
% 0.18/0.36
% 0.18/0.36 % typerep.size_neq
% 0.18/0.36 thf(fact_182_ssubst__Pair__rhs,axiom,
% 0.18/0.36 ! [R3: nat,S: nat,R: set_Pr1986765409at_nat,S2: nat] :
% 0.18/0.36 ( ( member701585322at_nat @ ( product_Pair_nat_nat @ R3 @ S ) @ R )
% 0.18/0.36 => ( ( S2 = S )
% 0.18/0.36 => ( member701585322at_nat @ ( product_Pair_nat_nat @ R3 @ S2 ) @ R ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % ssubst_Pair_rhs
% 0.18/0.36 thf(fact_183_ssubst__Pair__rhs,axiom,
% 0.18/0.36 ! [R3: com,S: list_char > int,R: set_Pr1148378109ar_int,S2: list_char > int] :
% 0.18/0.36 ( ( member92250950ar_int @ ( produc1193801173ar_int @ R3 @ S ) @ R )
% 0.18/0.36 => ( ( S2 = S )
% 0.18/0.36 => ( member92250950ar_int @ ( produc1193801173ar_int @ R3 @ S2 ) @ R ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % ssubst_Pair_rhs
% 0.18/0.36 thf(fact_184_typerep_Osize_I2_J,axiom,
% 0.18/0.36 ! [X1: literal,X2: list_typerep] :
% 0.18/0.36 ( ( size_size_typerep @ ( typerep2 @ X1 @ X2 ) )
% 0.18/0.36 = ( plus_plus_nat @ ( size_list_typerep @ size_size_typerep @ X2 ) @ ( suc @ zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % typerep.size(2)
% 0.18/0.36 thf(fact_185_typerep_Osize__gen,axiom,
% 0.18/0.36 ! [X1: literal,X2: list_typerep] :
% 0.18/0.36 ( ( size_typerep @ ( typerep2 @ X1 @ X2 ) )
% 0.18/0.36 = ( plus_plus_nat @ ( size_list_typerep @ size_typerep @ X2 ) @ ( suc @ zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % typerep.size_gen
% 0.18/0.36 thf(fact_186_list_Osize__gen_I2_J,axiom,
% 0.18/0.36 ! [X4: typerep > nat,X212: typerep,X222: list_typerep] :
% 0.18/0.36 ( ( size_list_typerep @ X4 @ ( cons_typerep @ X212 @ X222 ) )
% 0.18/0.36 = ( plus_plus_nat @ ( plus_plus_nat @ ( X4 @ X212 ) @ ( size_list_typerep @ X4 @ X222 ) ) @ ( suc @ zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % list.size_gen(2)
% 0.18/0.36 thf(fact_187_length__Suc__conv,axiom,
% 0.18/0.36 ! [Xs: list_typerep,N: nat] :
% 0.18/0.36 ( ( ( size_s416147576yperep @ Xs )
% 0.18/0.36 = ( suc @ N ) )
% 0.18/0.36 = ( ? [Y4: typerep,Ys: list_typerep] :
% 0.18/0.36 ( ( Xs
% 0.18/0.36 = ( cons_typerep @ Y4 @ Ys ) )
% 0.18/0.36 & ( ( size_s416147576yperep @ Ys )
% 0.18/0.36 = N ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % length_Suc_conv
% 0.18/0.36 thf(fact_188_Suc__length__conv,axiom,
% 0.18/0.36 ! [N: nat,Xs: list_typerep] :
% 0.18/0.36 ( ( ( suc @ N )
% 0.18/0.36 = ( size_s416147576yperep @ Xs ) )
% 0.18/0.36 = ( ? [Y4: typerep,Ys: list_typerep] :
% 0.18/0.36 ( ( Xs
% 0.18/0.36 = ( cons_typerep @ Y4 @ Ys ) )
% 0.18/0.36 & ( ( size_s416147576yperep @ Ys )
% 0.18/0.36 = N ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % Suc_length_conv
% 0.18/0.36 thf(fact_189_length__Cons,axiom,
% 0.18/0.36 ! [X4: typerep,Xs: list_typerep] :
% 0.18/0.36 ( ( size_s416147576yperep @ ( cons_typerep @ X4 @ Xs ) )
% 0.18/0.36 = ( suc @ ( size_s416147576yperep @ Xs ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % length_Cons
% 0.18/0.36 thf(fact_190_list_Osize_I4_J,axiom,
% 0.18/0.36 ! [X212: typerep,X222: list_typerep] :
% 0.18/0.36 ( ( size_s416147576yperep @ ( cons_typerep @ X212 @ X222 ) )
% 0.18/0.36 = ( plus_plus_nat @ ( size_s416147576yperep @ X222 ) @ ( suc @ zero_zero_nat ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % list.size(4)
% 0.18/0.36 thf(fact_191_set__Cons__def,axiom,
% 0.18/0.36 ( set_Co1954412371ar_int
% 0.18/0.36 = ( ^ [A6: set_Pr1148378109ar_int,XS: set_li1762364675ar_int] :
% 0.18/0.36 ( collec672902542ar_int
% 0.18/0.36 @ ^ [Z: list_P1741976099ar_int] :
% 0.18/0.36 ? [X: produc1260470173ar_int,Xs2: list_P1741976099ar_int] :
% 0.18/0.36 ( ( Z
% 0.18/0.36 = ( cons_P1254790739ar_int @ X @ Xs2 ) )
% 0.18/0.36 & ( member92250950ar_int @ X @ A6 )
% 0.18/0.36 & ( member2052091212ar_int @ Xs2 @ XS ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % set_Cons_def
% 0.18/0.36 thf(fact_192_set__Cons__def,axiom,
% 0.18/0.36 ( set_Cons_typerep
% 0.18/0.36 = ( ^ [A6: set_typerep,XS: set_list_typerep] :
% 0.18/0.36 ( collect_list_typerep
% 0.18/0.36 @ ^ [Z: list_typerep] :
% 0.18/0.36 ? [X: typerep,Xs2: list_typerep] :
% 0.18/0.36 ( ( Z
% 0.18/0.36 = ( cons_typerep @ X @ Xs2 ) )
% 0.18/0.36 & ( member_typerep @ X @ A6 )
% 0.18/0.36 & ( member_list_typerep @ Xs2 @ XS ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % set_Cons_def
% 0.18/0.36 thf(fact_193_Cons__in__lex,axiom,
% 0.18/0.36 ! [X4: typerep,Xs: list_typerep,Y: typerep,Ys2: list_typerep,R3: set_Pr1097818217yperep] :
% 0.18/0.36 ( ( member1812711762yperep @ ( produc1695567329yperep @ ( cons_typerep @ X4 @ Xs ) @ ( cons_typerep @ Y @ Ys2 ) ) @ ( lex_typerep @ R3 ) )
% 0.18/0.36 = ( ( ( member100911538yperep @ ( produc2071514689yperep @ X4 @ Y ) @ R3 )
% 0.18/0.36 & ( ( size_s416147576yperep @ Xs )
% 0.18/0.36 = ( size_s416147576yperep @ Ys2 ) ) )
% 0.18/0.36 | ( ( X4 = Y )
% 0.18/0.36 & ( member1812711762yperep @ ( produc1695567329yperep @ Xs @ Ys2 ) @ ( lex_typerep @ R3 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % Cons_in_lex
% 0.18/0.36 thf(fact_194_Cons__in__lex,axiom,
% 0.18/0.36 ! [X4: nat,Xs: list_nat,Y: nat,Ys2: list_nat,R3: set_Pr1986765409at_nat] :
% 0.18/0.36 ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ X4 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) @ ( lex_nat @ R3 ) )
% 0.18/0.36 = ( ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X4 @ Y ) @ R3 )
% 0.18/0.36 & ( ( size_size_list_nat @ Xs )
% 0.18/0.36 = ( size_size_list_nat @ Ys2 ) ) )
% 0.18/0.36 | ( ( X4 = Y )
% 0.18/0.36 & ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys2 ) @ ( lex_nat @ R3 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % Cons_in_lex
% 0.18/0.36 thf(fact_195_gen__length__code_I2_J,axiom,
% 0.18/0.36 ! [N: nat,X4: typerep,Xs: list_typerep] :
% 0.18/0.36 ( ( gen_length_typerep @ N @ ( cons_typerep @ X4 @ Xs ) )
% 0.18/0.36 = ( gen_length_typerep @ ( suc @ N ) @ Xs ) ) ).
% 0.18/0.36
% 0.18/0.36 % gen_length_code(2)
% 0.18/0.36 thf(fact_196_lexord__cons__cons,axiom,
% 0.18/0.36 ! [A: typerep,X4: list_typerep,B: typerep,Y: list_typerep,R3: set_Pr1097818217yperep] :
% 0.18/0.36 ( ( member1812711762yperep @ ( produc1695567329yperep @ ( cons_typerep @ A @ X4 ) @ ( cons_typerep @ B @ Y ) ) @ ( lexord_typerep @ R3 ) )
% 0.18/0.36 = ( ( member100911538yperep @ ( produc2071514689yperep @ A @ B ) @ R3 )
% 0.18/0.36 | ( ( A = B )
% 0.18/0.36 & ( member1812711762yperep @ ( produc1695567329yperep @ X4 @ Y ) @ ( lexord_typerep @ R3 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % lexord_cons_cons
% 0.18/0.36 thf(fact_197_lexord__cons__cons,axiom,
% 0.18/0.36 ! [A: nat,X4: list_nat,B: nat,Y: list_nat,R3: set_Pr1986765409at_nat] :
% 0.18/0.36 ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ A @ X4 ) @ ( cons_nat @ B @ Y ) ) @ ( lexord_nat @ R3 ) )
% 0.18/0.36 = ( ( member701585322at_nat @ ( product_Pair_nat_nat @ A @ B ) @ R3 )
% 0.18/0.36 | ( ( A = B )
% 0.18/0.36 & ( member1926390090st_nat @ ( produc1625736153st_nat @ X4 @ Y ) @ ( lexord_nat @ R3 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % lexord_cons_cons
% 0.18/0.36 thf(fact_198_lexord__irreflexive,axiom,
% 0.18/0.36 ! [R3: set_Pr1986765409at_nat,Xs: list_nat] :
% 0.18/0.36 ( ! [X3: nat] :
% 0.18/0.36 ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X3 @ X3 ) @ R3 )
% 0.18/0.36 => ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Xs ) @ ( lexord_nat @ R3 ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % lexord_irreflexive
% 0.18/0.36 thf(fact_199_lexord__linear,axiom,
% 0.18/0.36 ! [R3: set_Pr1986765409at_nat,X4: list_nat,Y: list_nat] :
% 0.18/0.36 ( ! [A3: nat,B3: nat] :
% 0.18/0.36 ( ( member701585322at_nat @ ( product_Pair_nat_nat @ A3 @ B3 ) @ R3 )
% 0.18/0.36 | ( A3 = B3 )
% 0.18/0.36 | ( member701585322at_nat @ ( product_Pair_nat_nat @ B3 @ A3 ) @ R3 ) )
% 0.18/0.36 => ( ( member1926390090st_nat @ ( produc1625736153st_nat @ X4 @ Y ) @ ( lexord_nat @ R3 ) )
% 0.18/0.36 | ( X4 = Y )
% 0.18/0.36 | ( member1926390090st_nat @ ( produc1625736153st_nat @ Y @ X4 ) @ ( lexord_nat @ R3 ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % lexord_linear
% 0.18/0.36 thf(fact_200_Shift__def,axiom,
% 0.18/0.36 ( bNF_Gr457912949yperep
% 0.18/0.36 = ( ^ [Kl: set_list_typerep,K2: typerep] :
% 0.18/0.36 ( collect_list_typerep
% 0.18/0.36 @ ^ [Kl2: list_typerep] : ( member_list_typerep @ ( cons_typerep @ K2 @ Kl2 ) @ Kl ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % Shift_def
% 0.18/0.36 thf(fact_201_ShiftD,axiom,
% 0.18/0.36 ! [Kl3: list_typerep,Kl4: set_list_typerep,K: typerep] :
% 0.18/0.36 ( ( member_list_typerep @ Kl3 @ ( bNF_Gr457912949yperep @ Kl4 @ K ) )
% 0.18/0.36 => ( member_list_typerep @ ( cons_typerep @ K @ Kl3 ) @ Kl4 ) ) ).
% 0.18/0.36
% 0.18/0.36 % ShiftD
% 0.18/0.36 thf(fact_202_Succ__Shift,axiom,
% 0.18/0.36 ! [Kl4: set_list_typerep,K: typerep,Kl3: list_typerep] :
% 0.18/0.36 ( ( bNF_Gr1303086585yperep @ ( bNF_Gr457912949yperep @ Kl4 @ K ) @ Kl3 )
% 0.18/0.36 = ( bNF_Gr1303086585yperep @ Kl4 @ ( cons_typerep @ K @ Kl3 ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % Succ_Shift
% 0.18/0.36 thf(fact_203_Cons__listrel1__Cons,axiom,
% 0.18/0.36 ! [X4: typerep,Xs: list_typerep,Y: typerep,Ys2: list_typerep,R3: set_Pr1097818217yperep] :
% 0.18/0.36 ( ( member1812711762yperep @ ( produc1695567329yperep @ ( cons_typerep @ X4 @ Xs ) @ ( cons_typerep @ Y @ Ys2 ) ) @ ( listrel1_typerep @ R3 ) )
% 0.18/0.36 = ( ( ( member100911538yperep @ ( produc2071514689yperep @ X4 @ Y ) @ R3 )
% 0.18/0.36 & ( Xs = Ys2 ) )
% 0.18/0.36 | ( ( X4 = Y )
% 0.18/0.36 & ( member1812711762yperep @ ( produc1695567329yperep @ Xs @ Ys2 ) @ ( listrel1_typerep @ R3 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % Cons_listrel1_Cons
% 0.18/0.36 thf(fact_204_Cons__listrel1__Cons,axiom,
% 0.18/0.36 ! [X4: nat,Xs: list_nat,Y: nat,Ys2: list_nat,R3: set_Pr1986765409at_nat] :
% 0.18/0.36 ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ X4 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) @ ( listrel1_nat @ R3 ) )
% 0.18/0.36 = ( ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X4 @ Y ) @ R3 )
% 0.18/0.36 & ( Xs = Ys2 ) )
% 0.18/0.36 | ( ( X4 = Y )
% 0.18/0.36 & ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys2 ) @ ( listrel1_nat @ R3 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % Cons_listrel1_Cons
% 0.18/0.36 thf(fact_205_listrel1I1,axiom,
% 0.18/0.36 ! [X4: typerep,Y: typerep,R3: set_Pr1097818217yperep,Xs: list_typerep] :
% 0.18/0.36 ( ( member100911538yperep @ ( produc2071514689yperep @ X4 @ Y ) @ R3 )
% 0.18/0.36 => ( member1812711762yperep @ ( produc1695567329yperep @ ( cons_typerep @ X4 @ Xs ) @ ( cons_typerep @ Y @ Xs ) ) @ ( listrel1_typerep @ R3 ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % listrel1I1
% 0.18/0.36 thf(fact_206_listrel1I1,axiom,
% 0.18/0.36 ! [X4: nat,Y: nat,R3: set_Pr1986765409at_nat,Xs: list_nat] :
% 0.18/0.36 ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X4 @ Y ) @ R3 )
% 0.18/0.36 => ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ X4 @ Xs ) @ ( cons_nat @ Y @ Xs ) ) @ ( listrel1_nat @ R3 ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % listrel1I1
% 0.18/0.36 thf(fact_207_Cons__listrel1E1,axiom,
% 0.18/0.36 ! [X4: typerep,Xs: list_typerep,Ys2: list_typerep,R3: set_Pr1097818217yperep] :
% 0.18/0.36 ( ( member1812711762yperep @ ( produc1695567329yperep @ ( cons_typerep @ X4 @ Xs ) @ Ys2 ) @ ( listrel1_typerep @ R3 ) )
% 0.18/0.36 => ( ! [Y3: typerep] :
% 0.18/0.36 ( ( Ys2
% 0.18/0.36 = ( cons_typerep @ Y3 @ Xs ) )
% 0.18/0.36 => ~ ( member100911538yperep @ ( produc2071514689yperep @ X4 @ Y3 ) @ R3 ) )
% 0.18/0.36 => ~ ! [Zs: list_typerep] :
% 0.18/0.36 ( ( Ys2
% 0.18/0.36 = ( cons_typerep @ X4 @ Zs ) )
% 0.18/0.36 => ~ ( member1812711762yperep @ ( produc1695567329yperep @ Xs @ Zs ) @ ( listrel1_typerep @ R3 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % Cons_listrel1E1
% 0.18/0.36 thf(fact_208_Cons__listrel1E1,axiom,
% 0.18/0.36 ! [X4: nat,Xs: list_nat,Ys2: list_nat,R3: set_Pr1986765409at_nat] :
% 0.18/0.36 ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ X4 @ Xs ) @ Ys2 ) @ ( listrel1_nat @ R3 ) )
% 0.18/0.36 => ( ! [Y3: nat] :
% 0.18/0.36 ( ( Ys2
% 0.18/0.36 = ( cons_nat @ Y3 @ Xs ) )
% 0.18/0.36 => ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X4 @ Y3 ) @ R3 ) )
% 0.18/0.36 => ~ ! [Zs: list_nat] :
% 0.18/0.36 ( ( Ys2
% 0.18/0.36 = ( cons_nat @ X4 @ Zs ) )
% 0.18/0.36 => ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Zs ) @ ( listrel1_nat @ R3 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % Cons_listrel1E1
% 0.18/0.36 thf(fact_209_Cons__listrel1E2,axiom,
% 0.18/0.36 ! [Xs: list_typerep,Y: typerep,Ys2: list_typerep,R3: set_Pr1097818217yperep] :
% 0.18/0.36 ( ( member1812711762yperep @ ( produc1695567329yperep @ Xs @ ( cons_typerep @ Y @ Ys2 ) ) @ ( listrel1_typerep @ R3 ) )
% 0.18/0.36 => ( ! [X3: typerep] :
% 0.18/0.36 ( ( Xs
% 0.18/0.36 = ( cons_typerep @ X3 @ Ys2 ) )
% 0.18/0.36 => ~ ( member100911538yperep @ ( produc2071514689yperep @ X3 @ Y ) @ R3 ) )
% 0.18/0.36 => ~ ! [Zs: list_typerep] :
% 0.18/0.36 ( ( Xs
% 0.18/0.36 = ( cons_typerep @ Y @ Zs ) )
% 0.18/0.36 => ~ ( member1812711762yperep @ ( produc1695567329yperep @ Zs @ Ys2 ) @ ( listrel1_typerep @ R3 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % Cons_listrel1E2
% 0.18/0.36 thf(fact_210_Cons__listrel1E2,axiom,
% 0.18/0.36 ! [Xs: list_nat,Y: nat,Ys2: list_nat,R3: set_Pr1986765409at_nat] :
% 0.18/0.36 ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ ( cons_nat @ Y @ Ys2 ) ) @ ( listrel1_nat @ R3 ) )
% 0.18/0.36 => ( ! [X3: nat] :
% 0.18/0.36 ( ( Xs
% 0.18/0.36 = ( cons_nat @ X3 @ Ys2 ) )
% 0.18/0.36 => ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X3 @ Y ) @ R3 ) )
% 0.18/0.36 => ~ ! [Zs: list_nat] :
% 0.18/0.36 ( ( Xs
% 0.18/0.36 = ( cons_nat @ Y @ Zs ) )
% 0.18/0.36 => ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Zs @ Ys2 ) @ ( listrel1_nat @ R3 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % Cons_listrel1E2
% 0.18/0.36 thf(fact_211_lexord__append__left__rightI,axiom,
% 0.18/0.36 ! [A: typerep,B: typerep,R3: set_Pr1097818217yperep,U: list_typerep,X4: list_typerep,Y: list_typerep] :
% 0.18/0.36 ( ( member100911538yperep @ ( produc2071514689yperep @ A @ B ) @ R3 )
% 0.18/0.36 => ( member1812711762yperep @ ( produc1695567329yperep @ ( append_typerep @ U @ ( cons_typerep @ A @ X4 ) ) @ ( append_typerep @ U @ ( cons_typerep @ B @ Y ) ) ) @ ( lexord_typerep @ R3 ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % lexord_append_left_rightI
% 0.18/0.36 thf(fact_212_lexord__append__left__rightI,axiom,
% 0.18/0.36 ! [A: nat,B: nat,R3: set_Pr1986765409at_nat,U: list_nat,X4: list_nat,Y: list_nat] :
% 0.18/0.36 ( ( member701585322at_nat @ ( product_Pair_nat_nat @ A @ B ) @ R3 )
% 0.18/0.36 => ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ U @ ( cons_nat @ A @ X4 ) ) @ ( append_nat @ U @ ( cons_nat @ B @ Y ) ) ) @ ( lexord_nat @ R3 ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % lexord_append_left_rightI
% 0.18/0.36 thf(fact_213_listrel1I,axiom,
% 0.18/0.36 ! [X4: typerep,Y: typerep,R3: set_Pr1097818217yperep,Xs: list_typerep,Us: list_typerep,Vs: list_typerep,Ys2: list_typerep] :
% 0.18/0.36 ( ( member100911538yperep @ ( produc2071514689yperep @ X4 @ Y ) @ R3 )
% 0.18/0.36 => ( ( Xs
% 0.18/0.36 = ( append_typerep @ Us @ ( cons_typerep @ X4 @ Vs ) ) )
% 0.18/0.36 => ( ( Ys2
% 0.18/0.36 = ( append_typerep @ Us @ ( cons_typerep @ Y @ Vs ) ) )
% 0.18/0.36 => ( member1812711762yperep @ ( produc1695567329yperep @ Xs @ Ys2 ) @ ( listrel1_typerep @ R3 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % listrel1I
% 0.18/0.36 thf(fact_214_listrel1I,axiom,
% 0.18/0.36 ! [X4: nat,Y: nat,R3: set_Pr1986765409at_nat,Xs: list_nat,Us: list_nat,Vs: list_nat,Ys2: list_nat] :
% 0.18/0.36 ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X4 @ Y ) @ R3 )
% 0.18/0.36 => ( ( Xs
% 0.18/0.36 = ( append_nat @ Us @ ( cons_nat @ X4 @ Vs ) ) )
% 0.18/0.36 => ( ( Ys2
% 0.18/0.36 = ( append_nat @ Us @ ( cons_nat @ Y @ Vs ) ) )
% 0.18/0.36 => ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys2 ) @ ( listrel1_nat @ R3 ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % listrel1I
% 0.18/0.36 thf(fact_215_append__eq__append__conv,axiom,
% 0.18/0.36 ! [Xs: list_typerep,Ys2: list_typerep,Us: list_typerep,Vs: list_typerep] :
% 0.18/0.36 ( ( ( ( size_s416147576yperep @ Xs )
% 0.18/0.36 = ( size_s416147576yperep @ Ys2 ) )
% 0.18/0.36 | ( ( size_s416147576yperep @ Us )
% 0.18/0.36 = ( size_s416147576yperep @ Vs ) ) )
% 0.18/0.36 => ( ( ( append_typerep @ Xs @ Us )
% 0.18/0.36 = ( append_typerep @ Ys2 @ Vs ) )
% 0.18/0.36 = ( ( Xs = Ys2 )
% 0.18/0.36 & ( Us = Vs ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % append_eq_append_conv
% 0.18/0.36 thf(fact_216_length__append,axiom,
% 0.18/0.36 ! [Xs: list_typerep,Ys2: list_typerep] :
% 0.18/0.36 ( ( size_s416147576yperep @ ( append_typerep @ Xs @ Ys2 ) )
% 0.18/0.36 = ( plus_plus_nat @ ( size_s416147576yperep @ Xs ) @ ( size_s416147576yperep @ Ys2 ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % length_append
% 0.18/0.36 thf(fact_217_size__list__append,axiom,
% 0.18/0.36 ! [F2: typerep > nat,Xs: list_typerep,Ys2: list_typerep] :
% 0.18/0.36 ( ( size_list_typerep @ F2 @ ( append_typerep @ Xs @ Ys2 ) )
% 0.18/0.36 = ( plus_plus_nat @ ( size_list_typerep @ F2 @ Xs ) @ ( size_list_typerep @ F2 @ Ys2 ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % size_list_append
% 0.18/0.36 thf(fact_218_lexord__sufE,axiom,
% 0.18/0.36 ! [Xs: list_typerep,Zs2: list_typerep,Ys2: list_typerep,Qs: list_typerep,R3: set_Pr1097818217yperep] :
% 0.18/0.36 ( ( member1812711762yperep @ ( produc1695567329yperep @ ( append_typerep @ Xs @ Zs2 ) @ ( append_typerep @ Ys2 @ Qs ) ) @ ( lexord_typerep @ R3 ) )
% 0.18/0.36 => ( ( Xs != Ys2 )
% 0.18/0.36 => ( ( ( size_s416147576yperep @ Xs )
% 0.18/0.36 = ( size_s416147576yperep @ Ys2 ) )
% 0.18/0.36 => ( ( ( size_s416147576yperep @ Zs2 )
% 0.18/0.36 = ( size_s416147576yperep @ Qs ) )
% 0.18/0.36 => ( member1812711762yperep @ ( produc1695567329yperep @ Xs @ Ys2 ) @ ( lexord_typerep @ R3 ) ) ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % lexord_sufE
% 0.18/0.36 thf(fact_219_lex__append__leftD,axiom,
% 0.18/0.36 ! [R3: set_Pr1097818217yperep,Xs: list_typerep,Ys2: list_typerep,Zs2: list_typerep] :
% 0.18/0.36 ( ! [X3: typerep] :
% 0.18/0.36 ~ ( member100911538yperep @ ( produc2071514689yperep @ X3 @ X3 ) @ R3 )
% 0.18/0.36 => ( ( member1812711762yperep @ ( produc1695567329yperep @ ( append_typerep @ Xs @ Ys2 ) @ ( append_typerep @ Xs @ Zs2 ) ) @ ( lex_typerep @ R3 ) )
% 0.18/0.36 => ( member1812711762yperep @ ( produc1695567329yperep @ Ys2 @ Zs2 ) @ ( lex_typerep @ R3 ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % lex_append_leftD
% 0.18/0.36 thf(fact_220_lex__append__leftD,axiom,
% 0.18/0.36 ! [R3: set_Pr1986765409at_nat,Xs: list_nat,Ys2: list_nat,Zs2: list_nat] :
% 0.18/0.36 ( ! [X3: nat] :
% 0.18/0.36 ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X3 @ X3 ) @ R3 )
% 0.18/0.36 => ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ Xs @ Ys2 ) @ ( append_nat @ Xs @ Zs2 ) ) @ ( lex_nat @ R3 ) )
% 0.18/0.36 => ( member1926390090st_nat @ ( produc1625736153st_nat @ Ys2 @ Zs2 ) @ ( lex_nat @ R3 ) ) ) ) ).
% 0.18/0.36
% 0.18/0.36 % lex_append_leftD
% 0.18/0.36
% 0.18/0.36 % Conjectures (1)
% 0.18/0.36 thf(conj_0,conjecture,
% 0.18/0.36 ? [S6: list_char > int,S8: list_char > int] :
% 0.18/0.36 ( ( relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ S6 @ S8 )
% 0.18/0.36 & ( bval @ b @ S6 )
% 0.18/0.36 & ( big_big_step @ ( produc1193801173ar_int @ c @ S6 ) @ ta )
% 0.18/0.36 & ( big_big_step @ ( produc1193801173ar_int @ c2 @ S8 ) @ t_a ) ) ).
% 0.18/0.36
% 0.18/0.36 %------------------------------------------------------------------------------
% 0.18/0.36 ------------------------
% 2.48/1.52 ---- Embedded in THF ---
% 2.48/1.52 %%% This output was generated by embedproblem, version 1.9.5 (library version 1.9).
% 2.48/1.52 %%% Generated on Tue Feb 24 08:28:31 EST 2026
% 2.48/1.52 %%% using '$$dhol' embedding, version 1.3.0.
% 2.48/1.52 %%% Logic specification used:
% 2.48/1.52 %%% thf(spec, logic, $$dhol).
% 2.48/1.52
% 2.48/1.52 % SZS output start ListOfTHF for /export/starexec/sandbox2/tmp/tmp.FZqnfaVoyV/DTF2DTF21556.p
% See solution above
% 2.48/1.52 ------------------------
% 2.48/1.54 ---- Cleaned THF ---
% 2.48/1.54 thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_Mt__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J_J,type,
% 2.48/1.54 set_Pr1333062727ar_int: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_Mt__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J,type,
% 2.48/1.54 produc1346207591ar_int: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J_J,type,
% 2.48/1.54 set_li1762364675ar_int: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Typerep__Otyperep_J_Mt__List__Olist_It__Typerep__Otyperep_J_J_J,type,
% 2.48/1.54 set_Pr446800905yperep: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J,type,
% 2.48/1.54 list_P1741976099ar_int: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J,type,
% 2.48/1.54 set_Pr1148378109ar_int: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
% 2.48/1.54 set_Pr1560408065st_nat: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Typerep__Otyperep_J_Mt__List__Olist_It__Typerep__Otyperep_J_J,type,
% 2.48/1.54 produc490010537yperep: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J,type,
% 2.48/1.54 produc1260470173ar_int: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
% 2.48/1.54 produc1699244961st_nat: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Typerep__Otyperep_Mt__Typerep__Otyperep_J_J,type,
% 2.48/1.54 set_Pr1097818217yperep: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
% 2.48/1.54 set_Pr1986765409at_nat: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Product____Type__Oprod_It__Typerep__Otyperep_Mt__Typerep__Otyperep_J,type,
% 2.48/1.54 produc1788831497yperep: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
% 2.48/1.54 product_prod_nat_nat: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Set__Oset_It__List__Olist_It__Typerep__Otyperep_J_J,type,
% 2.48/1.54 set_list_typerep: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__List__Olist_It__Typerep__Otyperep_J,type,
% 2.48/1.54 list_typerep: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Set__Oset_It__Typerep__Otyperep_J,type,
% 2.48/1.54 set_typerep: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__List__Olist_It__String__Ochar_J,type,
% 2.48/1.54 list_char: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__List__Olist_It__Nat__Onat_J,type,
% 2.48/1.54 list_nat: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Set__Oset_It__Nat__Onat_J,type,
% 2.48/1.54 set_nat: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Typerep__Otyperep,type,
% 2.48/1.54 typerep: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__String__Oliteral,type,
% 2.48/1.54 literal: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__BExp__Obexp,type,
% 2.48/1.54 bexp: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__AExp__Oaexp,type,
% 2.48/1.54 aexp: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Nat__Onat,type,
% 2.48/1.54 nat: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Int__Oint,type,
% 2.48/1.54 int: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(ty_n_t__Com__Ocom,type,
% 2.48/1.54 com: $tType ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_BExp_Obval,type,
% 2.48/1.54 bval: bexp > ( list_char > int ) > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_BNF__Greatest__Fixpoint_OShift_001t__Typerep__Otyperep,type,
% 2.48/1.54 bNF_Gr457912949yperep: set_list_typerep > typerep > set_list_typerep ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_BNF__Greatest__Fixpoint_OSucc_001t__Typerep__Otyperep,type,
% 2.48/1.54 bNF_Gr1303086585yperep: set_list_typerep > list_typerep > set_typerep ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_BNF__Greatest__Fixpoint_Oimage2_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_001t__Com__Ocom_001_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J,type,
% 2.48/1.54 bNF_Gr202451329ar_int: set_Pr1148378109ar_int > ( produc1260470173ar_int > com ) > ( produc1260470173ar_int > list_char > int ) > set_Pr1148378109ar_int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_BNF__Greatest__Fixpoint_Oimage2_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_001t__Nat__Onat_001t__Nat__Onat,type,
% 2.48/1.54 bNF_Gr749752805at_nat: set_Pr1148378109ar_int > ( produc1260470173ar_int > nat ) > ( produc1260470173ar_int > nat ) > set_Pr1986765409at_nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_BNF__Greatest__Fixpoint_OrelImage_001t__Nat__Onat_001t__Nat__Onat,type,
% 2.48/1.54 bNF_Gr1247133574at_nat: set_Pr1986765409at_nat > ( nat > nat ) > set_Pr1986765409at_nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_BNF__Greatest__Fixpoint_OrelInvImage_001t__Nat__Onat_001t__Nat__Onat,type,
% 2.48/1.54 bNF_Gr808751971at_nat: set_nat > set_Pr1986765409at_nat > ( nat > nat ) > set_Pr1986765409at_nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_BNF__Greatest__Fixpoint_OrelInvImage_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_001t__Nat__Onat,type,
% 2.48/1.54 bNF_Gr1143394412nt_nat: set_Pr1148378109ar_int > set_Pr1986765409at_nat > ( produc1260470173ar_int > nat ) > set_Pr1333062727ar_int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Big__Step_Obig__step,type,
% 2.48/1.54 big_big_step: produc1260470173ar_int > ( list_char > int ) > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Com_Ocom_OAssign,type,
% 2.48/1.54 assign: list_char > aexp > com ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Com_Ocom_OIf,type,
% 2.48/1.54 if: bexp > com > com > com ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Com_Ocom_OSKIP,type,
% 2.48/1.54 skip: com ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Com_Ocom_OSeq,type,
% 2.48/1.54 seq: com > com > com ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Com_Ocom_OWhile,type,
% 2.48/1.54 while: bexp > com > com ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Com_Ocom_Osize__com,type,
% 2.48/1.54 size_com: com > nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivides__aux_001t__Nat__Onat,type,
% 2.48/1.54 unique1592618082ux_nat: product_prod_nat_nat > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Groups_Oplus__class_Oplus_001t__Nat__Onat,type,
% 2.48/1.54 plus_plus_nat: nat > nat > nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
% 2.48/1.54 zero_zero_nat: nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Oappend_001t__Nat__Onat,type,
% 2.48/1.54 append_nat: list_nat > list_nat > list_nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Oappend_001t__Typerep__Otyperep,type,
% 2.48/1.54 append_typerep: list_typerep > list_typerep > list_typerep ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Ogen__length_001t__Typerep__Otyperep,type,
% 2.48/1.54 gen_length_typerep: nat > list_typerep > nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Olex_001t__Nat__Onat,type,
% 2.48/1.54 lex_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Olex_001t__Typerep__Otyperep,type,
% 2.48/1.54 lex_typerep: set_Pr1097818217yperep > set_Pr446800905yperep ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Olexord_001t__Nat__Onat,type,
% 2.48/1.54 lexord_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Olexord_001t__Typerep__Otyperep,type,
% 2.48/1.54 lexord_typerep: set_Pr1097818217yperep > set_Pr446800905yperep ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Olist_OCons_001t__Nat__Onat,type,
% 2.48/1.54 cons_nat: nat > list_nat > list_nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J,type,
% 2.48/1.54 cons_P1254790739ar_int: produc1260470173ar_int > list_P1741976099ar_int > list_P1741976099ar_int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Olist_OCons_001t__Typerep__Otyperep,type,
% 2.48/1.54 cons_typerep: typerep > list_typerep > list_typerep ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Olist_Osize__list_001t__Typerep__Otyperep,type,
% 2.48/1.54 size_list_typerep: ( typerep > nat ) > list_typerep > nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Olistrel1_001t__Nat__Onat,type,
% 2.48/1.54 listrel1_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Olistrel1_001t__Typerep__Otyperep,type,
% 2.48/1.54 listrel1_typerep: set_Pr1097818217yperep > set_Pr446800905yperep ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Oset__Cons_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J,type,
% 2.48/1.54 set_Co1954412371ar_int: set_Pr1148378109ar_int > set_li1762364675ar_int > set_li1762364675ar_int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_List_Oset__Cons_001t__Typerep__Otyperep,type,
% 2.48/1.54 set_Cons_typerep: set_typerep > set_list_typerep > set_list_typerep ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Nat_OSuc,type,
% 2.48/1.54 suc: nat > nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Nat_Osize__class_Osize_001t__Com__Ocom,type,
% 2.48/1.54 size_size_com: com > nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Nat__Onat_J,type,
% 2.48/1.54 size_size_list_nat: list_nat > nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Typerep__Otyperep_J,type,
% 2.48/1.54 size_s416147576yperep: list_typerep > nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Nat_Osize__class_Osize_001t__Typerep__Otyperep,type,
% 2.48/1.54 size_size_typerep: typerep > nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Product__Type_OPair_001t__Com__Ocom_001_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J,type,
% 2.48/1.54 produc1193801173ar_int: com > ( list_char > int ) > produc1260470173ar_int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Nat__Onat_J,type,
% 2.48/1.54 produc1625736153st_nat: list_nat > list_nat > produc1699244961st_nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Typerep__Otyperep_J_001t__List__Olist_It__Typerep__Otyperep_J,type,
% 2.48/1.54 produc1695567329yperep: list_typerep > list_typerep > produc490010537yperep ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Nat__Onat,type,
% 2.48/1.54 product_Pair_nat_nat: nat > nat > product_prod_nat_nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J,type,
% 2.48/1.54 produc317451735ar_int: produc1260470173ar_int > produc1260470173ar_int > produc1346207591ar_int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Product__Type_OPair_001t__Typerep__Otyperep_001t__Typerep__Otyperep,type,
% 2.48/1.54 produc2071514689yperep: typerep > typerep > produc1788831497yperep ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_RelationalIncorrectness__Mirabelle__kefqvmgyto_Oflip,type,
% 2.48/1.54 relati186416454e_flip: ( ( list_char > int ) > ( list_char > int ) > $o ) > ( list_char > int ) > ( list_char > int ) > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_RelationalIncorrectness__Mirabelle__kefqvmgyto_Oget__back_001_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J,type,
% 2.48/1.54 relati23543761ar_int: ( ( list_char > int ) > ( list_char > int ) > $o ) > bexp > com > nat > ( list_char > int ) > ( list_char > int ) > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_RelationalIncorrectness__Mirabelle__kefqvmgyto_Oir__hoare,type,
% 2.48/1.54 relati2102071307_hoare: ( ( list_char > int ) > ( list_char > int ) > $o ) > com > com > ( ( list_char > int ) > ( list_char > int ) > $o ) > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_RelationalIncorrectness__Mirabelle__kefqvmgyto_Oir__valid,type,
% 2.48/1.54 relati775585786_valid: ( ( list_char > int ) > ( list_char > int ) > $o ) > com > com > ( ( list_char > int ) > ( list_char > int ) > $o ) > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Set_OCollect_001t__List__Olist_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J,type,
% 2.48/1.54 collec672902542ar_int: ( list_P1741976099ar_int > $o ) > set_li1762364675ar_int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Set_OCollect_001t__List__Olist_It__Typerep__Otyperep_J,type,
% 2.48/1.54 collect_list_typerep: ( list_typerep > $o ) > set_list_typerep ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J,type,
% 2.48/1.54 collec770796680ar_int: ( produc1260470173ar_int > $o ) > set_Pr1148378109ar_int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
% 2.48/1.54 collec7649004at_nat: ( product_prod_nat_nat > $o ) > set_Pr1986765409at_nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_Mt__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J,type,
% 2.48/1.54 collec1834387154ar_int: ( produc1346207591ar_int > $o ) > set_Pr1333062727ar_int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Typerep_Otyperep_OTyperep,type,
% 2.48/1.54 typerep2: literal > list_typerep > typerep ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_Typerep_Otyperep_Osize__typerep,type,
% 2.48/1.54 size_typerep: typerep > nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_member_001t__List__Olist_It__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J_J,type,
% 2.48/1.54 member2052091212ar_int: list_P1741976099ar_int > set_li1762364675ar_int > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_member_001t__List__Olist_It__Typerep__Otyperep_J,type,
% 2.48/1.54 member_list_typerep: list_typerep > set_list_typerep > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_member_001t__Nat__Onat,type,
% 2.48/1.54 member_nat: nat > set_nat > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_member_001t__Product____Type__Oprod_It__Com__Ocom_M_062_It__List__Olist_It__String__Ochar_J_Mt__Int__Oint_J_J,type,
% 2.48/1.54 member92250950ar_int: produc1260470173ar_int > set_Pr1148378109ar_int > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
% 2.48/1.54 member1926390090st_nat: produc1699244961st_nat > set_Pr1560408065st_nat > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Typerep__Otyperep_J_Mt__List__Olist_It__Typerep__Otyperep_J_J,type,
% 2.48/1.54 member1812711762yperep: produc490010537yperep > set_Pr446800905yperep > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
% 2.48/1.54 member701585322at_nat: product_prod_nat_nat > set_Pr1986765409at_nat > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_member_001t__Product____Type__Oprod_It__Typerep__Otyperep_Mt__Typerep__Otyperep_J,type,
% 2.48/1.54 member100911538yperep: produc1788831497yperep > set_Pr1097818217yperep > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_c_member_001t__Typerep__Otyperep,type,
% 2.48/1.54 member_typerep: typerep > set_typerep > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_P,type,
% 2.48/1.54 p: ( list_char > int ) > ( list_char > int ) > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_Q,type,
% 2.48/1.54 q: ( list_char > int ) > ( list_char > int ) > $o ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_b,type,
% 2.48/1.54 b: bexp ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_c,type,
% 2.48/1.54 c: com ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_c_H,type,
% 2.48/1.54 c2: com ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_k,type,
% 2.48/1.54 k: nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_ka____,type,
% 2.48/1.54 ka: nat ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_s_H____,type,
% 2.48/1.54 s: list_char > int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_s_Ha____,type,
% 2.48/1.54 s_a: list_char > int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_s____,type,
% 2.48/1.54 s2: list_char > int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_sa____,type,
% 2.48/1.54 sa: list_char > int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_t_H____,type,
% 2.48/1.54 t: list_char > int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_t_Ha____,type,
% 2.48/1.54 t_a: list_char > int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_t____,type,
% 2.48/1.54 t2: list_char > int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_ta____,type,
% 2.48/1.54 ta: list_char > int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_u____,type,
% 2.48/1.54 u: list_char > int ).
% 2.48/1.54
% 2.48/1.54 thf(sy_v_ua____,type,
% 2.48/1.54 ua: list_char > int ).
% 2.48/1.54
% 2.48/1.54 thf(fact_0_Suc_Oprems_I6_J,axiom,
% 2.48/1.54 bval @ b @ sa ).
% 2.48/1.54
% 2.48/1.54 thf(fact_1__092_060open_062bval_Ab_As_____092_060close_062,axiom,
% 2.48/1.54 bval @ b @ s2 ).
% 2.48/1.54
% 2.48/1.54 thf(fact_2_Suc_Oprems_I3_J,axiom,
% 2.48/1.54 big_big_step @ ( produc1193801173ar_int @ c @ sa ) @ ta ).
% 2.48/1.54
% 2.48/1.54 thf(fact_3_Suc_Oprems_I4_J,axiom,
% 2.48/1.54 big_big_step @ ( produc1193801173ar_int @ c2 @ s_a ) @ t_a ).
% 2.48/1.54
% 2.48/1.54 thf(fact_4_Suc_Oprems_I7_J,axiom,
% 2.48/1.54 relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ sa @ s_a ).
% 2.48/1.54
% 2.48/1.54 thf(fact_5__092_060open_062_Ic_H_M_As_H_____J_A_092_060Rightarrow_062_At_H_____092_060close_062,axiom,
% 2.48/1.54 big_big_step @ ( produc1193801173ar_int @ c2 @ s ) @ t ).
% 2.48/1.54
% 2.48/1.54 thf(fact_6__092_060open_062_Ic_M_As_____J_A_092_060Rightarrow_062_At_____092_060close_062,axiom,
% 2.48/1.54 big_big_step @ ( produc1193801173ar_int @ c @ s2 ) @ t2 ).
% 2.48/1.54
% 2.48/1.54 thf(fact_7_Suc_Oprems_I5_J,axiom,
% 2.48/1.54 q @ ua @ t_a ).
% 2.48/1.54
% 2.48/1.54 thf(fact_8__092_060open_062get__back_AP_Ab_Ac_Ak_As_____As_H_____092_060close_062,axiom,
% 2.48/1.54 relati23543761ar_int @ p @ b @ c @ k @ s2 @ s ).
% 2.48/1.54
% 2.48/1.54 thf(fact_9_Suc_Oprems_I2_J,axiom,
% 2.48/1.54 big_big_step @ ( produc1193801173ar_int @ ( while @ b @ c ) @ ta ) @ ua ).
% 2.48/1.54
% 2.48/1.54 thf(fact_10__092_060open_062_IWHILE_Ab_ADO_Ac_M_At_____J_A_092_060Rightarrow_062_Au_____092_060close_062,axiom,
% 2.48/1.54 big_big_step @ ( produc1193801173ar_int @ ( while @ b @ c ) @ t2 ) @ u ).
% 2.48/1.54
% 2.48/1.54 thf(fact_11_Suc_Oprems_I1_J,axiom,
% 2.48/1.54 relati775585786_valid @ ( relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) ) @ ( while @ b @ c ) @ c2 @ q ).
% 2.48/1.54
% 2.48/1.54 thf(fact_12_nat_Oinject,axiom,
% 2.48/1.54 ! [X2: nat,Y2: nat] :
% 2.48/1.54 ( ( ( suc @ X2 )
% 2.48/1.54 = ( suc @ Y2 ) )
% 2.48/1.54 = ( X2 = Y2 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_13_old_Onat_Oinject,axiom,
% 2.48/1.54 ! [Nat: nat,Nat2: nat] :
% 2.48/1.54 ( ( ( suc @ Nat )
% 2.48/1.54 = ( suc @ Nat2 ) )
% 2.48/1.54 = ( Nat = Nat2 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_14_prod_Oinject,axiom,
% 2.48/1.54 ! [X1: nat,X2: nat,Y1: nat,Y2: nat] :
% 2.48/1.54 ( ( ( product_Pair_nat_nat @ X1 @ X2 )
% 2.48/1.54 = ( product_Pair_nat_nat @ Y1 @ Y2 ) )
% 2.48/1.54 = ( ( X1 = Y1 )
% 2.48/1.54 & ( X2 = Y2 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_15_prod_Oinject,axiom,
% 2.48/1.54 ! [X1: com,X2: list_char > int,Y1: com,Y2: list_char > int] :
% 2.48/1.54 ( ( ( produc1193801173ar_int @ X1 @ X2 )
% 2.48/1.54 = ( produc1193801173ar_int @ Y1 @ Y2 ) )
% 2.48/1.54 = ( ( X1 = Y1 )
% 2.48/1.54 & ( X2 = Y2 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_16_old_Oprod_Oinject,axiom,
% 2.48/1.54 ! [A: nat,B: nat,A2: nat,B2: nat] :
% 2.48/1.54 ( ( ( product_Pair_nat_nat @ A @ B )
% 2.48/1.54 = ( product_Pair_nat_nat @ A2 @ B2 ) )
% 2.48/1.54 = ( ( A = A2 )
% 2.48/1.54 & ( B = B2 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_17_old_Oprod_Oinject,axiom,
% 2.48/1.54 ! [A: com,B: list_char > int,A2: com,B2: list_char > int] :
% 2.48/1.54 ( ( ( produc1193801173ar_int @ A @ B )
% 2.48/1.54 = ( produc1193801173ar_int @ A2 @ B2 ) )
% 2.48/1.54 = ( ( A = A2 )
% 2.48/1.54 & ( B = B2 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_18_Suc_OIH,axiom,
% 2.48/1.54 ! [T: list_char > int,U: list_char > int,S: list_char > int,S2: list_char > int,T2: list_char > int] :
% 2.48/1.54 ( ( relati775585786_valid @ ( relati23543761ar_int @ p @ b @ c @ ka ) @ ( while @ b @ c ) @ c2 @ q )
% 2.48/1.54 => ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ b @ c ) @ T ) @ U )
% 2.48/1.54 => ( ( big_big_step @ ( produc1193801173ar_int @ c @ S ) @ T )
% 2.48/1.54 => ( ( big_big_step @ ( produc1193801173ar_int @ c2 @ S2 ) @ T2 )
% 2.48/1.54 => ( ( q @ U @ T2 )
% 2.48/1.54 => ( ( bval @ b @ S )
% 2.48/1.54 => ( ( relati23543761ar_int @ p @ b @ c @ ka @ S @ S2 )
% 2.48/1.54 => ? [S3: list_char > int,S4: list_char > int] :
% 2.48/1.54 ( ( relati23543761ar_int @ p @ b @ c @ ka @ S3 @ S4 )
% 2.48/1.54 & ( bval @ b @ S3 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ c @ S3 ) @ T )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ c2 @ S4 ) @ T2 ) ) ) ) ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_19_sim__sym,axiom,
% 2.48/1.54 ! [C: com,C2: com] :
% 2.48/1.54 ( ( ! [S5: list_char > int,T3: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S5 ) @ T3 )
% 2.48/1.54 = ( big_big_step @ ( produc1193801173ar_int @ C2 @ S5 ) @ T3 ) ) )
% 2.48/1.54 = ( ! [S5: list_char > int,T3: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C2 @ S5 ) @ T3 )
% 2.48/1.54 = ( big_big_step @ ( produc1193801173ar_int @ C @ S5 ) @ T3 ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_20_sim__refl,axiom,
% 2.48/1.54 ! [C: com,S6: list_char > int,T4: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S6 ) @ T4 )
% 2.48/1.54 = ( big_big_step @ ( produc1193801173ar_int @ C @ S6 ) @ T4 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_21__092_060open_062Q_Au_____At_H_____092_060close_062,axiom,
% 2.48/1.54 q @ u @ t ).
% 2.48/1.54
% 2.48/1.54 thf(fact_22_disj__ir__valid,axiom,
% 2.48/1.54 ! [P_1: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q_1: ( list_char > int ) > ( list_char > int ) > $o,P_2: ( list_char > int ) > ( list_char > int ) > $o,Q_2: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati775585786_valid @ P_1 @ C @ C2 @ Q_1 )
% 2.48/1.54 => ( ( relati775585786_valid @ P_2 @ C @ C2 @ Q_2 )
% 2.48/1.54 => ( relati775585786_valid
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P_1 @ S5 @ S7 )
% 2.48/1.54 | ( P_2 @ S5 @ S7 ) )
% 2.48/1.54 @ C
% 2.48/1.54 @ C2
% 2.48/1.54 @ ^ [T3: list_char > int,T5: list_char > int] :
% 2.48/1.54 ( ( Q_1 @ T3 @ T5 )
% 2.48/1.54 | ( Q_2 @ T3 @ T5 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_23__092_060open_062ir__valid_A_Iget__back_AP_Ab_Ac_Ak_J_A_IWHILE_Ab_ADO_Ac_J_Ac_H_AQ_092_060close_062,axiom,
% 2.48/1.54 relati775585786_valid @ ( relati23543761ar_int @ p @ b @ c @ k ) @ ( while @ b @ c ) @ c2 @ q ).
% 2.48/1.54
% 2.48/1.54 thf(fact_24_conseq__ir__valid,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,P2: ( list_char > int ) > ( list_char > int ) > $o,Q2: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati775585786_valid @ P @ C @ C2 @ Q )
% 2.48/1.54 => ( ! [S3: list_char > int,S4: list_char > int] :
% 2.48/1.54 ( ( P @ S3 @ S4 )
% 2.48/1.54 => ( P2 @ S3 @ S4 ) )
% 2.48/1.54 => ( ! [S3: list_char > int,S4: list_char > int] :
% 2.48/1.54 ( ( Q2 @ S3 @ S4 )
% 2.48/1.54 => ( Q @ S3 @ S4 ) )
% 2.48/1.54 => ( relati775585786_valid @ P2 @ C @ C2 @ Q2 ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_25_ir__valid__get__back,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,K: nat,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati775585786_valid @ ( relati23543761ar_int @ P @ B @ C @ ( suc @ K ) ) @ ( while @ B @ C ) @ C2 @ Q )
% 2.48/1.54 => ( relati775585786_valid @ ( relati23543761ar_int @ P @ B @ C @ K ) @ ( while @ B @ C ) @ C2 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_26_sim__while__cong__aux,axiom,
% 2.48/1.54 ! [B: bexp,C: com,S: list_char > int,T: list_char > int,C2: com] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S ) @ T )
% 2.48/1.54 => ( ! [S3: list_char > int,T6: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S3 ) @ T6 )
% 2.48/1.54 = ( big_big_step @ ( produc1193801173ar_int @ C2 @ S3 ) @ T6 ) )
% 2.48/1.54 => ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C2 ) @ S ) @ T ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_27_sim__while__cong,axiom,
% 2.48/1.54 ! [C: com,C2: com,B: bexp] :
% 2.48/1.54 ( ! [S3: list_char > int,T6: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S3 ) @ T6 )
% 2.48/1.54 = ( big_big_step @ ( produc1193801173ar_int @ C2 @ S3 ) @ T6 ) )
% 2.48/1.54 => ! [S6: list_char > int,T4: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S6 ) @ T4 )
% 2.48/1.54 = ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C2 ) @ S6 ) @ T4 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_28_ir__valid__def,axiom,
% 2.48/1.54 ( relati775585786_valid
% 2.48/1.54 = ( ^ [P3: ( list_char > int ) > ( list_char > int ) > $o,C3: com,C4: com,Q3: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ! [T3: list_char > int,T5: list_char > int] :
% 2.48/1.54 ( ( Q3 @ T3 @ T5 )
% 2.48/1.54 => ? [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P3 @ S5 @ S7 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C3 @ S5 ) @ T3 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C4 @ S7 ) @ T5 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_29_WhileFalse,axiom,
% 2.48/1.54 ! [B: bexp,S: list_char > int,C: com] :
% 2.48/1.54 ( ~ ( bval @ B @ S )
% 2.48/1.54 => ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S ) @ S ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_30_WhileTrue,axiom,
% 2.48/1.54 ! [B: bexp,S_1: list_char > int,C: com,S_2: list_char > int,S_3: list_char > int] :
% 2.48/1.54 ( ( bval @ B @ S_1 )
% 2.48/1.54 => ( ( big_big_step @ ( produc1193801173ar_int @ C @ S_1 ) @ S_2 )
% 2.48/1.54 => ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S_2 ) @ S_3 )
% 2.48/1.54 => ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S_1 ) @ S_3 ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_31_WhileE,axiom,
% 2.48/1.54 ! [B: bexp,C: com,S: list_char > int,T: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S ) @ T )
% 2.48/1.54 => ( ( ( T = S )
% 2.48/1.54 => ( bval @ B @ S ) )
% 2.48/1.54 => ~ ( ( bval @ B @ S )
% 2.48/1.54 => ! [S_22: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S ) @ S_22 )
% 2.48/1.54 => ~ ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S_22 ) @ T ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_32_old_Oprod_Oinducts,axiom,
% 2.48/1.54 ! [P: product_prod_nat_nat > $o,Prod: product_prod_nat_nat] :
% 2.48/1.54 ( ! [A3: nat,B3: nat] : ( P @ ( product_Pair_nat_nat @ A3 @ B3 ) )
% 2.48/1.54 => ( P @ Prod ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_33_old_Oprod_Oinducts,axiom,
% 2.48/1.54 ! [P: produc1260470173ar_int > $o,Prod: produc1260470173ar_int] :
% 2.48/1.54 ( ! [A3: com,B3: list_char > int] : ( P @ ( produc1193801173ar_int @ A3 @ B3 ) )
% 2.48/1.54 => ( P @ Prod ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_34_old_Oprod_Oexhaust,axiom,
% 2.48/1.54 ! [Y: product_prod_nat_nat] :
% 2.48/1.54 ~ ! [A3: nat,B3: nat] :
% 2.48/1.54 ( Y
% 2.48/1.54 != ( product_Pair_nat_nat @ A3 @ B3 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_35_old_Oprod_Oexhaust,axiom,
% 2.48/1.54 ! [Y: produc1260470173ar_int] :
% 2.48/1.54 ~ ! [A3: com,B3: list_char > int] :
% 2.48/1.54 ( Y
% 2.48/1.54 != ( produc1193801173ar_int @ A3 @ B3 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_36_Pair__inject,axiom,
% 2.48/1.54 ! [A: nat,B: nat,A2: nat,B2: nat] :
% 2.48/1.54 ( ( ( product_Pair_nat_nat @ A @ B )
% 2.48/1.54 = ( product_Pair_nat_nat @ A2 @ B2 ) )
% 2.48/1.54 => ~ ( ( A = A2 )
% 2.48/1.54 => ( B != B2 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_37_Pair__inject,axiom,
% 2.48/1.54 ! [A: com,B: list_char > int,A2: com,B2: list_char > int] :
% 2.48/1.54 ( ( ( produc1193801173ar_int @ A @ B )
% 2.48/1.54 = ( produc1193801173ar_int @ A2 @ B2 ) )
% 2.48/1.54 => ~ ( ( A = A2 )
% 2.48/1.54 => ( B != B2 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_38_prod__cases,axiom,
% 2.48/1.54 ! [P: product_prod_nat_nat > $o,P4: product_prod_nat_nat] :
% 2.48/1.54 ( ! [A3: nat,B3: nat] : ( P @ ( product_Pair_nat_nat @ A3 @ B3 ) )
% 2.48/1.54 => ( P @ P4 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_39_prod__cases,axiom,
% 2.48/1.54 ! [P: produc1260470173ar_int > $o,P4: produc1260470173ar_int] :
% 2.48/1.54 ( ! [A3: com,B3: list_char > int] : ( P @ ( produc1193801173ar_int @ A3 @ B3 ) )
% 2.48/1.54 => ( P @ P4 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_40_mem__Collect__eq,axiom,
% 2.48/1.54 ! [A: produc1260470173ar_int,P: produc1260470173ar_int > $o] :
% 2.48/1.54 ( ( member92250950ar_int @ A @ ( collec770796680ar_int @ P ) )
% 2.48/1.54 = ( P @ A ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_41_Collect__mem__eq,axiom,
% 2.48/1.54 ! [A4: set_Pr1148378109ar_int] :
% 2.48/1.54 ( ( collec770796680ar_int
% 2.48/1.54 @ ^ [X: produc1260470173ar_int] : ( member92250950ar_int @ X @ A4 ) )
% 2.48/1.54 = A4 ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_42_surj__pair,axiom,
% 2.48/1.54 ! [P4: product_prod_nat_nat] :
% 2.48/1.54 ? [X3: nat,Y3: nat] :
% 2.48/1.54 ( P4
% 2.48/1.54 = ( product_Pair_nat_nat @ X3 @ Y3 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_43_surj__pair,axiom,
% 2.48/1.54 ! [P4: produc1260470173ar_int] :
% 2.48/1.54 ? [X3: com,Y3: list_char > int] :
% 2.48/1.54 ( P4
% 2.48/1.54 = ( produc1193801173ar_int @ X3 @ Y3 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_44_n__not__Suc__n,axiom,
% 2.48/1.54 ! [N: nat] :
% 2.48/1.54 ( N
% 2.48/1.54 != ( suc @ N ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_45_Suc__inject,axiom,
% 2.48/1.54 ! [X4: nat,Y: nat] :
% 2.48/1.54 ( ( ( suc @ X4 )
% 2.48/1.54 = ( suc @ Y ) )
% 2.48/1.54 => ( X4 = Y ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_46_big__step__determ,axiom,
% 2.48/1.54 ! [C: com,S: list_char > int,T: list_char > int,U: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S ) @ T )
% 2.48/1.54 => ( ( big_big_step @ ( produc1193801173ar_int @ C @ S ) @ U )
% 2.48/1.54 => ( U = T ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_47_sim__trans,axiom,
% 2.48/1.54 ! [C: com,C2: com,C5: com] :
% 2.48/1.54 ( ! [S3: list_char > int,T6: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S3 ) @ T6 )
% 2.48/1.54 = ( big_big_step @ ( produc1193801173ar_int @ C2 @ S3 ) @ T6 ) )
% 2.48/1.54 => ( ! [S3: list_char > int,T6: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C2 @ S3 ) @ T6 )
% 2.48/1.54 = ( big_big_step @ ( produc1193801173ar_int @ C5 @ S3 ) @ T6 ) )
% 2.48/1.54 => ! [S6: list_char > int,T4: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S6 ) @ T4 )
% 2.48/1.54 = ( big_big_step @ ( produc1193801173ar_int @ C5 @ S6 ) @ T4 ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_48_com_Oinject_I4_J,axiom,
% 2.48/1.54 ! [X51: bexp,X52: com,Y51: bexp,Y52: com] :
% 2.48/1.54 ( ( ( while @ X51 @ X52 )
% 2.48/1.54 = ( while @ Y51 @ Y52 ) )
% 2.48/1.54 = ( ( X51 = Y51 )
% 2.48/1.54 & ( X52 = Y52 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_49_While__False__ir__valid,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C: com] :
% 2.48/1.54 ( ( relati775585786_valid
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ S5 @ S7 )
% 2.48/1.54 & ~ ( bval @ B @ S5 ) )
% 2.48/1.54 @ skip
% 2.48/1.54 @ C2
% 2.48/1.54 @ Q )
% 2.48/1.54 => ( relati775585786_valid @ P @ ( while @ B @ C ) @ C2 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_50_While__True__ir__valid,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati775585786_valid
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ S5 @ S7 )
% 2.48/1.54 & ( bval @ B @ S5 ) )
% 2.48/1.54 @ ( seq @ C @ ( while @ B @ C ) )
% 2.48/1.54 @ C2
% 2.48/1.54 @ Q )
% 2.48/1.54 => ( relati775585786_valid @ P @ ( while @ B @ C ) @ C2 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_51_get__back_Osimps_I2_J,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,N: nat] :
% 2.48/1.54 ( ( relati23543761ar_int @ P @ B @ C @ ( suc @ N ) )
% 2.48/1.54 = ( ^ [T3: list_char > int,T5: list_char > int] :
% 2.48/1.54 ? [S5: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C @ S5 ) @ T3 )
% 2.48/1.54 & ( bval @ B @ S5 )
% 2.48/1.54 & ( relati23543761ar_int @ P @ B @ C @ N @ S5 @ T5 ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_52_Skip__ir__valid,axiom,
% 2.48/1.54 ! [Q: ( list_char > int ) > ( list_char > int ) > $o,P: ( list_char > int ) > ( list_char > int ) > $o,C2: com] :
% 2.48/1.54 ( ! [T6: list_char > int,T7: list_char > int] :
% 2.48/1.54 ( ( Q @ T6 @ T7 )
% 2.48/1.54 => ? [S8: list_char > int] :
% 2.48/1.54 ( ( P @ T6 @ S8 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S8 ) @ T7 ) ) )
% 2.48/1.54 => ( relati775585786_valid @ P @ skip @ C2 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_53_While__backwards__frontier__ir__valid_H,axiom,
% 2.48/1.54 ! [P: nat > ( list_char > int ) > ( list_char > int ) > $o,K: nat,B: bexp,C: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C2: com,T: list_char > int,T2: list_char > int] :
% 2.48/1.54 ( ! [N2: nat,T6: list_char > int,T7: list_char > int] :
% 2.48/1.54 ( ( P @ ( plus_plus_nat @ K @ ( suc @ N2 ) ) @ T6 @ T7 )
% 2.48/1.54 => ? [S6: list_char > int] :
% 2.48/1.54 ( ( P @ ( plus_plus_nat @ K @ N2 ) @ S6 @ T7 )
% 2.48/1.54 & ( bval @ B @ S6 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C @ S6 ) @ T6 ) ) )
% 2.48/1.54 => ( ! [T6: list_char > int,T7: list_char > int] :
% 2.48/1.54 ( ( Q @ T6 @ T7 )
% 2.48/1.54 => ? [S6: list_char > int,S8: list_char > int] :
% 2.48/1.54 ( ? [N3: nat] : ( P @ ( plus_plus_nat @ K @ N3 ) @ S6 @ S8 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S6 ) @ T6 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S8 ) @ T7 ) ) )
% 2.48/1.54 => ( ( Q @ T @ T2 )
% 2.48/1.54 => ? [S3: list_char > int,S4: list_char > int] :
% 2.48/1.54 ( ( P @ K @ S3 @ S4 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S3 ) @ T )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S4 ) @ T2 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_54_sym__ir__valid,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C2: com,C: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati775585786_valid @ ( relati186416454e_flip @ P ) @ C2 @ C @ ( relati186416454e_flip @ Q ) )
% 2.48/1.54 => ( relati775585786_valid @ P @ C @ C2 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_55_pred__equals__eq2,axiom,
% 2.48/1.54 ! [R: set_Pr1986765409at_nat,S9: set_Pr1986765409at_nat] :
% 2.48/1.54 ( ( ( ^ [X: nat,Y4: nat] : ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y4 ) @ R ) )
% 2.48/1.54 = ( ^ [X: nat,Y4: nat] : ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y4 ) @ S9 ) ) )
% 2.48/1.54 = ( R = S9 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_56_pred__equals__eq2,axiom,
% 2.48/1.54 ! [R: set_Pr1148378109ar_int,S9: set_Pr1148378109ar_int] :
% 2.48/1.54 ( ( ( ^ [X: com,Y4: list_char > int] : ( member92250950ar_int @ ( produc1193801173ar_int @ X @ Y4 ) @ R ) )
% 2.48/1.54 = ( ^ [X: com,Y4: list_char > int] : ( member92250950ar_int @ ( produc1193801173ar_int @ X @ Y4 ) @ S9 ) ) )
% 2.48/1.54 = ( R = S9 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_57_com_Oinject_I2_J,axiom,
% 2.48/1.54 ! [X31: com,X32: com,Y31: com,Y32: com] :
% 2.48/1.54 ( ( ( seq @ X31 @ X32 )
% 2.48/1.54 = ( seq @ Y31 @ Y32 ) )
% 2.48/1.54 = ( ( X31 = Y31 )
% 2.48/1.54 & ( X32 = Y32 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_58_add__Suc__right,axiom,
% 2.48/1.54 ! [M: nat,N: nat] :
% 2.48/1.54 ( ( plus_plus_nat @ M @ ( suc @ N ) )
% 2.48/1.54 = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_59_Seq__ir__valid,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,D: com,D2: com,R: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati775585786_valid @ P @ C @ C2 @ Q )
% 2.48/1.54 => ( ( relati775585786_valid @ Q @ D @ D2 @ R )
% 2.48/1.54 => ( relati775585786_valid @ P @ ( seq @ C @ D ) @ ( seq @ C2 @ D2 ) @ R ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_60_meh__simp,axiom,
% 2.48/1.54 ! [S2: list_char > int,T2: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ skip @ S2 ) @ T2 )
% 2.48/1.54 = ( S2 = T2 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_61_Seq2__ir__valid,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,Q: ( list_char > int ) > ( list_char > int ) > $o,D: com,C2: com,R: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati775585786_valid @ P @ C @ skip @ Q )
% 2.48/1.54 => ( ( relati775585786_valid @ Q @ D @ C2 @ R )
% 2.48/1.54 => ( relati775585786_valid @ P @ ( seq @ C @ D ) @ C2 @ R ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_62_Seq1__ir__valid,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,D: com,R: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati775585786_valid @ P @ C @ C2 @ Q )
% 2.48/1.54 => ( ( relati775585786_valid @ Q @ D @ skip @ R )
% 2.48/1.54 => ( relati775585786_valid @ P @ ( seq @ C @ D ) @ C2 @ R ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_63_com_Odistinct_I3_J,axiom,
% 2.48/1.54 ! [X31: com,X32: com] :
% 2.48/1.54 ( skip
% 2.48/1.54 != ( seq @ X31 @ X32 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_64_com_Odistinct_I17_J,axiom,
% 2.48/1.54 ! [X31: com,X32: com,X51: bexp,X52: com] :
% 2.48/1.54 ( ( seq @ X31 @ X32 )
% 2.48/1.54 != ( while @ X51 @ X52 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_65_com_Odistinct_I7_J,axiom,
% 2.48/1.54 ! [X51: bexp,X52: com] :
% 2.48/1.54 ( skip
% 2.48/1.54 != ( while @ X51 @ X52 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_66_add__Suc__shift,axiom,
% 2.48/1.54 ! [M: nat,N: nat] :
% 2.48/1.54 ( ( plus_plus_nat @ ( suc @ M ) @ N )
% 2.48/1.54 = ( plus_plus_nat @ M @ ( suc @ N ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_67_nat__arith_Osuc1,axiom,
% 2.48/1.54 ! [A4: nat,K: nat,A: nat] :
% 2.48/1.54 ( ( A4
% 2.48/1.54 = ( plus_plus_nat @ K @ A ) )
% 2.48/1.54 => ( ( suc @ A4 )
% 2.48/1.54 = ( plus_plus_nat @ K @ ( suc @ A ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_68_add__Suc,axiom,
% 2.48/1.54 ! [M: nat,N: nat] :
% 2.48/1.54 ( ( plus_plus_nat @ ( suc @ M ) @ N )
% 2.48/1.54 = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_69_ir__valid__Seq1_H,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C1: com,C22: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati775585786_valid @ P @ ( seq @ C1 @ C22 ) @ C2 @ Q )
% 2.48/1.54 => ( relati775585786_valid
% 2.48/1.54 @ ^ [T3: list_char > int,T5: list_char > int] :
% 2.48/1.54 ? [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ S5 @ S7 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C1 @ S5 ) @ T3 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S7 ) @ T5 )
% 2.48/1.54 & ? [U2: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C22 @ T3 ) @ U2 )
% 2.48/1.54 & ( Q @ U2 @ T5 ) ) )
% 2.48/1.54 @ C22
% 2.48/1.54 @ skip
% 2.48/1.54 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_70_flip__def,axiom,
% 2.48/1.54 ( relati186416454e_flip
% 2.48/1.54 = ( ^ [P3: ( list_char > int ) > ( list_char > int ) > $o,S5: list_char > int,S7: list_char > int] : ( P3 @ S7 @ S5 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_71_ir__valid__Seq1,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C1: com,C22: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati775585786_valid @ P @ ( seq @ C1 @ C22 ) @ C2 @ Q )
% 2.48/1.54 => ( relati775585786_valid @ P @ C1 @ C2
% 2.48/1.54 @ ^ [T3: list_char > int,T5: list_char > int] :
% 2.48/1.54 ? [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ S5 @ S7 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C1 @ S5 ) @ T3 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S7 ) @ T5 )
% 2.48/1.54 & ? [U2: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C22 @ T3 ) @ U2 )
% 2.48/1.54 & ( Q @ U2 @ T5 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_72_SeqE,axiom,
% 2.48/1.54 ! [C1: com,C22: com,S1: list_char > int,S32: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ ( seq @ C1 @ C22 ) @ S1 ) @ S32 )
% 2.48/1.54 => ~ ! [S_22: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C1 @ S1 ) @ S_22 )
% 2.48/1.54 => ~ ( big_big_step @ ( produc1193801173ar_int @ C22 @ S_22 ) @ S32 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_73_Seq__assoc,axiom,
% 2.48/1.54 ! [C1: com,C22: com,C32: com,S: list_char > int,S2: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ ( seq @ ( seq @ C1 @ C22 ) @ C32 ) @ S ) @ S2 )
% 2.48/1.54 = ( big_big_step @ ( produc1193801173ar_int @ ( seq @ C1 @ ( seq @ C22 @ C32 ) ) @ S ) @ S2 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_74_Seq,axiom,
% 2.48/1.54 ! [C_1: com,S_1: list_char > int,S_2: list_char > int,C_2: com,S_3: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ C_1 @ S_1 ) @ S_2 )
% 2.48/1.54 => ( ( big_big_step @ ( produc1193801173ar_int @ C_2 @ S_2 ) @ S_3 )
% 2.48/1.54 => ( big_big_step @ ( produc1193801173ar_int @ ( seq @ C_1 @ C_2 ) @ S_1 ) @ S_3 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_75_SkipE,axiom,
% 2.48/1.54 ! [S: list_char > int,T: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ skip @ S ) @ T )
% 2.48/1.54 => ( T = S ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_76_Skip,axiom,
% 2.48/1.54 ! [S: list_char > int] : ( big_big_step @ ( produc1193801173ar_int @ skip @ S ) @ S ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_77_ir__valid__track__history,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,S: list_char > int,S2: list_char > int] :
% 2.48/1.54 ( ( relati775585786_valid @ P @ C @ C2 @ Q )
% 2.48/1.54 => ( relati775585786_valid @ P @ C @ C2
% 2.48/1.54 @ ^ [T3: list_char > int,T5: list_char > int] :
% 2.48/1.54 ( ( Q @ S @ S2 )
% 2.48/1.54 & ? [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ S5 @ S7 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C @ S5 ) @ T3 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S7 ) @ T5 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_78_ir__valid__While1,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,K: nat,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati775585786_valid @ ( relati23543761ar_int @ P @ B @ C @ K ) @ ( while @ B @ C ) @ C2 @ Q )
% 2.48/1.54 => ( relati775585786_valid
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( relati23543761ar_int @ P @ B @ C @ K @ S5 @ S7 )
% 2.48/1.54 & ( bval @ B @ S5 ) )
% 2.48/1.54 @ C
% 2.48/1.54 @ skip
% 2.48/1.54 @ ^ [T3: list_char > int,T5: list_char > int] :
% 2.48/1.54 ( ( relati23543761ar_int @ P @ B @ C @ ( suc @ K ) @ T3 @ T5 )
% 2.48/1.54 & ? [U2: list_char > int,U3: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ T3 ) @ U2 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ T5 ) @ U3 )
% 2.48/1.54 & ( Q @ U2 @ U3 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_79_add__right__cancel,axiom,
% 2.48/1.54 ! [B: nat,A: nat,C: nat] :
% 2.48/1.54 ( ( ( plus_plus_nat @ B @ A )
% 2.48/1.54 = ( plus_plus_nat @ C @ A ) )
% 2.48/1.54 = ( B = C ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_80_add__left__cancel,axiom,
% 2.48/1.54 ! [A: nat,B: nat,C: nat] :
% 2.48/1.54 ( ( ( plus_plus_nat @ A @ B )
% 2.48/1.54 = ( plus_plus_nat @ A @ C ) )
% 2.48/1.54 = ( B = C ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_81_ir__valid__If,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C1: com,C22: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati775585786_valid @ P @ ( if @ B @ C1 @ C22 ) @ C2 @ Q )
% 2.48/1.54 => ( ( relati775585786_valid
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ S5 @ S7 )
% 2.48/1.54 & ( bval @ B @ S5 ) )
% 2.48/1.54 @ C1
% 2.48/1.54 @ C2
% 2.48/1.54 @ ^ [T3: list_char > int,T5: list_char > int] :
% 2.48/1.54 ( ( Q @ T3 @ T5 )
% 2.48/1.54 & ? [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ S5 @ S7 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C1 @ S5 ) @ T3 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S7 ) @ T5 )
% 2.48/1.54 & ( bval @ B @ S5 ) ) ) )
% 2.48/1.54 & ( relati775585786_valid
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ S5 @ S7 )
% 2.48/1.54 & ~ ( bval @ B @ S5 ) )
% 2.48/1.54 @ C22
% 2.48/1.54 @ C2
% 2.48/1.54 @ ^ [T3: list_char > int,T5: list_char > int] :
% 2.48/1.54 ( ( Q @ T3 @ T5 )
% 2.48/1.54 & ? [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ S5 @ S7 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C22 @ S5 ) @ T3 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S7 ) @ T5 )
% 2.48/1.54 & ~ ( bval @ B @ S5 ) ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_82_while__unfold,axiom,
% 2.48/1.54 ! [B: bexp,C: com,S6: list_char > int,T4: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ ( while @ B @ C ) @ S6 ) @ T4 )
% 2.48/1.54 = ( big_big_step @ ( produc1193801173ar_int @ ( if @ B @ ( seq @ C @ ( while @ B @ C ) ) @ skip ) @ S6 ) @ T4 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_83_If__True__ir__valid,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C_1: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C_2: com] :
% 2.48/1.54 ( ( relati775585786_valid
% 2.48/1.54 @ ^ [A5: list_char > int,C3: list_char > int] :
% 2.48/1.54 ( ( P @ A5 @ C3 )
% 2.48/1.54 & ( bval @ B @ A5 ) )
% 2.48/1.54 @ C_1
% 2.48/1.54 @ C2
% 2.48/1.54 @ Q )
% 2.48/1.54 => ( relati775585786_valid @ P @ ( if @ B @ C_1 @ C_2 ) @ C2 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_84_If__False__ir__valid,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C_2: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C_1: com] :
% 2.48/1.54 ( ( relati775585786_valid
% 2.48/1.54 @ ^ [A5: list_char > int,C3: list_char > int] :
% 2.48/1.54 ( ( P @ A5 @ C3 )
% 2.48/1.54 & ~ ( bval @ B @ A5 ) )
% 2.48/1.54 @ C_2
% 2.48/1.54 @ C2
% 2.48/1.54 @ Q )
% 2.48/1.54 => ( relati775585786_valid @ P @ ( if @ B @ C_1 @ C_2 ) @ C2 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_85_ir__While__True,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati2102071307_hoare
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ S5 @ S7 )
% 2.48/1.54 & ( bval @ B @ S5 ) )
% 2.48/1.54 @ ( seq @ C @ ( while @ B @ C ) )
% 2.48/1.54 @ C2
% 2.48/1.54 @ Q )
% 2.48/1.54 => ( relati2102071307_hoare @ P @ ( while @ B @ C ) @ C2 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_86_com_Oinject_I3_J,axiom,
% 2.48/1.54 ! [X41: bexp,X42: com,X43: com,Y41: bexp,Y42: com,Y43: com] :
% 2.48/1.54 ( ( ( if @ X41 @ X42 @ X43 )
% 2.48/1.54 = ( if @ Y41 @ Y42 @ Y43 ) )
% 2.48/1.54 = ( ( X41 = Y41 )
% 2.48/1.54 & ( X42 = Y42 )
% 2.48/1.54 & ( X43 = Y43 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_87_ir__Skip__Skip,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o] : ( relati2102071307_hoare @ P @ skip @ skip @ P ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_88_ir__hoare__Skip__Skip,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati2102071307_hoare @ P @ skip @ skip @ Q )
% 2.48/1.54 = ( ! [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( Q @ S5 @ S7 )
% 2.48/1.54 => ( P @ S5 @ S7 ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_89_ir__disj,axiom,
% 2.48/1.54 ! [P_1: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q_1: ( list_char > int ) > ( list_char > int ) > $o,P_2: ( list_char > int ) > ( list_char > int ) > $o,Q_2: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati2102071307_hoare @ P_1 @ C @ C2 @ Q_1 )
% 2.48/1.54 => ( ( relati2102071307_hoare @ P_2 @ C @ C2 @ Q_2 )
% 2.48/1.54 => ( relati2102071307_hoare
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P_1 @ S5 @ S7 )
% 2.48/1.54 | ( P_2 @ S5 @ S7 ) )
% 2.48/1.54 @ C
% 2.48/1.54 @ C2
% 2.48/1.54 @ ^ [T3: list_char > int,T5: list_char > int] :
% 2.48/1.54 ( ( Q_1 @ T3 @ T5 )
% 2.48/1.54 | ( Q_2 @ T3 @ T5 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_90_ir__pre,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,P2: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati2102071307_hoare @ P @ C @ C2 @ Q )
% 2.48/1.54 => ( ! [S3: list_char > int,S4: list_char > int] :
% 2.48/1.54 ( ( P @ S3 @ S4 )
% 2.48/1.54 => ( P2 @ S3 @ S4 ) )
% 2.48/1.54 => ( relati2102071307_hoare @ P2 @ C @ C2 @ Q ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_91_ir__post,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,Q2: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati2102071307_hoare @ P @ C @ C2 @ Q )
% 2.48/1.54 => ( ! [S3: list_char > int,S4: list_char > int] :
% 2.48/1.54 ( ( Q2 @ S3 @ S4 )
% 2.48/1.54 => ( Q @ S3 @ S4 ) )
% 2.48/1.54 => ( relati2102071307_hoare @ P @ C @ C2 @ Q2 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_92_ir__conseq,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,P2: ( list_char > int ) > ( list_char > int ) > $o,Q2: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati2102071307_hoare @ P @ C @ C2 @ Q )
% 2.48/1.54 => ( ! [S3: list_char > int,S4: list_char > int] :
% 2.48/1.54 ( ( P @ S3 @ S4 )
% 2.48/1.54 => ( P2 @ S3 @ S4 ) )
% 2.48/1.54 => ( ! [S3: list_char > int,S4: list_char > int] :
% 2.48/1.54 ( ( Q2 @ S3 @ S4 )
% 2.48/1.54 => ( Q @ S3 @ S4 ) )
% 2.48/1.54 => ( relati2102071307_hoare @ P2 @ C @ C2 @ Q2 ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_93_ir__If__False,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C_2: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C_1: com] :
% 2.48/1.54 ( ( relati2102071307_hoare
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ S5 @ S7 )
% 2.48/1.54 & ~ ( bval @ B @ S5 ) )
% 2.48/1.54 @ C_2
% 2.48/1.54 @ C2
% 2.48/1.54 @ Q )
% 2.48/1.54 => ( relati2102071307_hoare @ P @ ( if @ B @ C_1 @ C_2 ) @ C2 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_94_ir__If__True,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C_1: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C_2: com] :
% 2.48/1.54 ( ( relati2102071307_hoare
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ S5 @ S7 )
% 2.48/1.54 & ( bval @ B @ S5 ) )
% 2.48/1.54 @ C_1
% 2.48/1.54 @ C2
% 2.48/1.54 @ Q )
% 2.48/1.54 => ( relati2102071307_hoare @ P @ ( if @ B @ C_1 @ C_2 ) @ C2 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_95_soundness,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati2102071307_hoare @ P @ C @ C2 @ Q )
% 2.48/1.54 => ( relati775585786_valid @ P @ C @ C2 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_96_com_Odistinct_I19_J,axiom,
% 2.48/1.54 ! [X41: bexp,X42: com,X43: com,X51: bexp,X52: com] :
% 2.48/1.54 ( ( if @ X41 @ X42 @ X43 )
% 2.48/1.54 != ( while @ X51 @ X52 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_97_com_Odistinct_I5_J,axiom,
% 2.48/1.54 ! [X41: bexp,X42: com,X43: com] :
% 2.48/1.54 ( skip
% 2.48/1.54 != ( if @ X41 @ X42 @ X43 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_98_com_Odistinct_I15_J,axiom,
% 2.48/1.54 ! [X31: com,X32: com,X41: bexp,X42: com,X43: com] :
% 2.48/1.54 ( ( seq @ X31 @ X32 )
% 2.48/1.54 != ( if @ X41 @ X42 @ X43 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_99_ir__sym,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati2102071307_hoare @ ( relati186416454e_flip @ P ) @ C @ C2 @ ( relati186416454e_flip @ Q ) )
% 2.48/1.54 => ( relati2102071307_hoare @ P @ C2 @ C @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_100_ir__Seq1,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,D: com,R: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ( relati2102071307_hoare @ P @ C @ C2 @ Q )
% 2.48/1.54 => ( ( relati2102071307_hoare @ Q @ D @ skip @ R )
% 2.48/1.54 => ( relati2102071307_hoare @ P @ ( seq @ C @ D ) @ C2 @ R ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_101_commute__if,axiom,
% 2.48/1.54 ! [B1: bexp,B22: bexp,C11: com,C12: com,C22: com,S6: list_char > int,T4: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ ( if @ B1 @ ( if @ B22 @ C11 @ C12 ) @ C22 ) @ S6 ) @ T4 )
% 2.48/1.54 = ( big_big_step @ ( produc1193801173ar_int @ ( if @ B22 @ ( if @ B1 @ C11 @ C22 ) @ ( if @ B1 @ C12 @ C22 ) ) @ S6 ) @ T4 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_102_triv__if,axiom,
% 2.48/1.54 ! [B: bexp,C: com,S6: list_char > int,T4: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ ( if @ B @ C @ C ) @ S6 ) @ T4 )
% 2.48/1.54 = ( big_big_step @ ( produc1193801173ar_int @ C @ S6 ) @ T4 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_103_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
% 2.48/1.54 ! [A: nat,B: nat,C: nat] :
% 2.48/1.54 ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
% 2.48/1.54 = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_104_add__mono__thms__linordered__semiring_I4_J,axiom,
% 2.48/1.54 ! [I: nat,J: nat,K: nat,L: nat] :
% 2.48/1.54 ( ( ( I = J )
% 2.48/1.54 & ( K = L ) )
% 2.48/1.54 => ( ( plus_plus_nat @ I @ K )
% 2.48/1.54 = ( plus_plus_nat @ J @ L ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_105_group__cancel_Oadd1,axiom,
% 2.48/1.54 ! [A4: nat,K: nat,A: nat,B: nat] :
% 2.48/1.54 ( ( A4
% 2.48/1.54 = ( plus_plus_nat @ K @ A ) )
% 2.48/1.54 => ( ( plus_plus_nat @ A4 @ B )
% 2.48/1.54 = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_106_group__cancel_Oadd2,axiom,
% 2.48/1.54 ! [B4: nat,K: nat,B: nat,A: nat] :
% 2.48/1.54 ( ( B4
% 2.48/1.54 = ( plus_plus_nat @ K @ B ) )
% 2.48/1.54 => ( ( plus_plus_nat @ A @ B4 )
% 2.48/1.54 = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_107_add_Oassoc,axiom,
% 2.48/1.54 ! [A: nat,B: nat,C: nat] :
% 2.48/1.54 ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
% 2.48/1.54 = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_108_add_Ocommute,axiom,
% 2.48/1.54 ( plus_plus_nat
% 2.48/1.54 = ( ^ [A5: nat,B5: nat] : ( plus_plus_nat @ B5 @ A5 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_109_add_Oleft__commute,axiom,
% 2.48/1.54 ! [B: nat,A: nat,C: nat] :
% 2.48/1.54 ( ( plus_plus_nat @ B @ ( plus_plus_nat @ A @ C ) )
% 2.48/1.54 = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_110_add__left__imp__eq,axiom,
% 2.48/1.54 ! [A: nat,B: nat,C: nat] :
% 2.48/1.54 ( ( ( plus_plus_nat @ A @ B )
% 2.48/1.54 = ( plus_plus_nat @ A @ C ) )
% 2.48/1.54 => ( B = C ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_111_add__right__imp__eq,axiom,
% 2.48/1.54 ! [B: nat,A: nat,C: nat] :
% 2.48/1.54 ( ( ( plus_plus_nat @ B @ A )
% 2.48/1.54 = ( plus_plus_nat @ C @ A ) )
% 2.48/1.54 => ( B = C ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_112_ir__Skip,axiom,
% 2.48/1.54 ! [Q: ( list_char > int ) > ( list_char > int ) > $o,P: ( list_char > int ) > ( list_char > int ) > $o,C2: com] :
% 2.48/1.54 ( ! [T6: list_char > int,T7: list_char > int] :
% 2.48/1.54 ( ( Q @ T6 @ T7 )
% 2.48/1.54 => ? [S8: list_char > int] :
% 2.48/1.54 ( ( P @ T6 @ S8 )
% 2.48/1.54 & ( big_big_step @ ( produc1193801173ar_int @ C2 @ S8 ) @ T7 ) ) )
% 2.48/1.54 => ( relati2102071307_hoare @ P @ skip @ C2 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_113_IfFalse,axiom,
% 2.48/1.54 ! [B: bexp,S: list_char > int,C_2: com,T: list_char > int,C_1: com] :
% 2.48/1.54 ( ~ ( bval @ B @ S )
% 2.48/1.54 => ( ( big_big_step @ ( produc1193801173ar_int @ C_2 @ S ) @ T )
% 2.48/1.54 => ( big_big_step @ ( produc1193801173ar_int @ ( if @ B @ C_1 @ C_2 ) @ S ) @ T ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_114_IfTrue,axiom,
% 2.48/1.54 ! [B: bexp,S: list_char > int,C_1: com,T: list_char > int,C_2: com] :
% 2.48/1.54 ( ( bval @ B @ S )
% 2.48/1.54 => ( ( big_big_step @ ( produc1193801173ar_int @ C_1 @ S ) @ T )
% 2.48/1.54 => ( big_big_step @ ( produc1193801173ar_int @ ( if @ B @ C_1 @ C_2 ) @ S ) @ T ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_115_IfE,axiom,
% 2.48/1.54 ! [B: bexp,C1: com,C22: com,S: list_char > int,T: list_char > int] :
% 2.48/1.54 ( ( big_big_step @ ( produc1193801173ar_int @ ( if @ B @ C1 @ C22 ) @ S ) @ T )
% 2.48/1.54 => ( ( ( bval @ B @ S )
% 2.48/1.54 => ~ ( big_big_step @ ( produc1193801173ar_int @ C1 @ S ) @ T ) )
% 2.48/1.54 => ~ ( ~ ( bval @ B @ S )
% 2.48/1.54 => ~ ( big_big_step @ ( produc1193801173ar_int @ C22 @ S ) @ T ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_116_ir__While__False,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o,C: com] :
% 2.48/1.54 ( ( relati2102071307_hoare
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ S5 @ S7 )
% 2.48/1.54 & ~ ( bval @ B @ S5 ) )
% 2.48/1.54 @ skip
% 2.48/1.54 @ C2
% 2.48/1.54 @ Q )
% 2.48/1.54 => ( relati2102071307_hoare @ P @ ( while @ B @ C ) @ C2 @ Q ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_117_com_Oexhaust,axiom,
% 2.48/1.54 ! [Y: com] :
% 2.48/1.54 ( ( Y != skip )
% 2.48/1.54 => ( ! [X21: list_char,X22: aexp] :
% 2.48/1.54 ( Y
% 2.48/1.54 != ( assign @ X21 @ X22 ) )
% 2.48/1.54 => ( ! [X312: com,X322: com] :
% 2.48/1.54 ( Y
% 2.48/1.54 != ( seq @ X312 @ X322 ) )
% 2.48/1.54 => ( ! [X412: bexp,X422: com,X432: com] :
% 2.48/1.54 ( Y
% 2.48/1.54 != ( if @ X412 @ X422 @ X432 ) )
% 2.48/1.54 => ~ ! [X512: bexp,X522: com] :
% 2.48/1.54 ( Y
% 2.48/1.54 != ( while @ X512 @ X522 ) ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_118_com_Oinduct,axiom,
% 2.48/1.54 ! [P: com > $o,Com: com] :
% 2.48/1.54 ( ( P @ skip )
% 2.48/1.54 => ( ! [X12: list_char,X23: aexp] : ( P @ ( assign @ X12 @ X23 ) )
% 2.48/1.54 => ( ! [X12: com,X23: com] :
% 2.48/1.54 ( ( P @ X12 )
% 2.48/1.54 => ( ( P @ X23 )
% 2.48/1.54 => ( P @ ( seq @ X12 @ X23 ) ) ) )
% 2.48/1.54 => ( ! [X12: bexp,X23: com,X33: com] :
% 2.48/1.54 ( ( P @ X23 )
% 2.48/1.54 => ( ( P @ X33 )
% 2.48/1.54 => ( P @ ( if @ X12 @ X23 @ X33 ) ) ) )
% 2.48/1.54 => ( ! [X12: bexp,X23: com] :
% 2.48/1.54 ( ( P @ X23 )
% 2.48/1.54 => ( P @ ( while @ X12 @ X23 ) ) )
% 2.48/1.54 => ( P @ Com ) ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_119_image2__def,axiom,
% 2.48/1.54 ( bNF_Gr202451329ar_int
% 2.48/1.54 = ( ^ [A6: set_Pr1148378109ar_int,F: produc1260470173ar_int > com,G: produc1260470173ar_int > list_char > int] :
% 2.48/1.54 ( collec770796680ar_int
% 2.48/1.54 @ ^ [Uu: produc1260470173ar_int] :
% 2.48/1.54 ? [A5: produc1260470173ar_int] :
% 2.48/1.54 ( ( Uu
% 2.48/1.54 = ( produc1193801173ar_int @ ( F @ A5 ) @ ( G @ A5 ) ) )
% 2.48/1.54 & ( member92250950ar_int @ A5 @ A6 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_120_image2__def,axiom,
% 2.48/1.54 ( bNF_Gr749752805at_nat
% 2.48/1.54 = ( ^ [A6: set_Pr1148378109ar_int,F: produc1260470173ar_int > nat,G: produc1260470173ar_int > nat] :
% 2.48/1.54 ( collec7649004at_nat
% 2.48/1.54 @ ^ [Uu: product_prod_nat_nat] :
% 2.48/1.54 ? [A5: produc1260470173ar_int] :
% 2.48/1.54 ( ( Uu
% 2.48/1.54 = ( product_Pair_nat_nat @ ( F @ A5 ) @ ( G @ A5 ) ) )
% 2.48/1.54 & ( member92250950ar_int @ A5 @ A6 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_121_While__backwards__frontier__ir__valid,axiom,
% 2.48/1.54 ! [P: nat > ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ! [N2: nat] :
% 2.48/1.54 ( relati775585786_valid
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ N2 @ S5 @ S7 )
% 2.48/1.54 & ( bval @ B @ S5 ) )
% 2.48/1.54 @ C
% 2.48/1.54 @ skip
% 2.48/1.54 @ ( P @ ( suc @ N2 ) ) )
% 2.48/1.54 => ( ( relati775585786_valid
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ? [N4: nat] : ( P @ N4 @ S5 @ S7 )
% 2.48/1.54 @ ( while @ B @ C )
% 2.48/1.54 @ C2
% 2.48/1.54 @ Q )
% 2.48/1.54 => ( relati775585786_valid @ ( P @ zero_zero_nat ) @ ( while @ B @ C ) @ C2 @ Q ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_122_com_Oinject_I1_J,axiom,
% 2.48/1.54 ! [X212: list_char,X222: aexp,Y21: list_char,Y22: aexp] :
% 2.48/1.54 ( ( ( assign @ X212 @ X222 )
% 2.48/1.54 = ( assign @ Y21 @ Y22 ) )
% 2.48/1.54 = ( ( X212 = Y21 )
% 2.48/1.54 & ( X222 = Y22 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_123_add_Oleft__neutral,axiom,
% 2.48/1.54 ! [A: nat] :
% 2.48/1.54 ( ( plus_plus_nat @ zero_zero_nat @ A )
% 2.48/1.54 = A ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_124_add_Oright__neutral,axiom,
% 2.48/1.54 ! [A: nat] :
% 2.48/1.54 ( ( plus_plus_nat @ A @ zero_zero_nat )
% 2.48/1.54 = A ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_125_add__cancel__left__left,axiom,
% 2.48/1.54 ! [B: nat,A: nat] :
% 2.48/1.54 ( ( ( plus_plus_nat @ B @ A )
% 2.48/1.54 = A )
% 2.48/1.54 = ( B = zero_zero_nat ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_126_add__cancel__left__right,axiom,
% 2.48/1.54 ! [A: nat,B: nat] :
% 2.48/1.54 ( ( ( plus_plus_nat @ A @ B )
% 2.48/1.54 = A )
% 2.48/1.54 = ( B = zero_zero_nat ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_127_add__cancel__right__left,axiom,
% 2.48/1.54 ! [A: nat,B: nat] :
% 2.48/1.54 ( ( A
% 2.48/1.54 = ( plus_plus_nat @ B @ A ) )
% 2.48/1.54 = ( B = zero_zero_nat ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_128_add__cancel__right__right,axiom,
% 2.48/1.54 ! [A: nat,B: nat] :
% 2.48/1.54 ( ( A
% 2.48/1.54 = ( plus_plus_nat @ A @ B ) )
% 2.48/1.54 = ( B = zero_zero_nat ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_129_add__eq__0__iff__both__eq__0,axiom,
% 2.48/1.54 ! [X4: nat,Y: nat] :
% 2.48/1.54 ( ( ( plus_plus_nat @ X4 @ Y )
% 2.48/1.54 = zero_zero_nat )
% 2.48/1.54 = ( ( X4 = zero_zero_nat )
% 2.48/1.54 & ( Y = zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_130_zero__eq__add__iff__both__eq__0,axiom,
% 2.48/1.54 ! [X4: nat,Y: nat] :
% 2.48/1.54 ( ( zero_zero_nat
% 2.48/1.54 = ( plus_plus_nat @ X4 @ Y ) )
% 2.48/1.54 = ( ( X4 = zero_zero_nat )
% 2.48/1.54 & ( Y = zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_131_add__is__0,axiom,
% 2.48/1.54 ! [M: nat,N: nat] :
% 2.48/1.54 ( ( ( plus_plus_nat @ M @ N )
% 2.48/1.54 = zero_zero_nat )
% 2.48/1.54 = ( ( M = zero_zero_nat )
% 2.48/1.54 & ( N = zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_132_Nat_Oadd__0__right,axiom,
% 2.48/1.54 ! [M: nat] :
% 2.48/1.54 ( ( plus_plus_nat @ M @ zero_zero_nat )
% 2.48/1.54 = M ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_133_zero__reorient,axiom,
% 2.48/1.54 ! [X4: nat] :
% 2.48/1.54 ( ( zero_zero_nat = X4 )
% 2.48/1.54 = ( X4 = zero_zero_nat ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_134_comm__monoid__add__class_Oadd__0,axiom,
% 2.48/1.54 ! [A: nat] :
% 2.48/1.54 ( ( plus_plus_nat @ zero_zero_nat @ A )
% 2.48/1.54 = A ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_135_add_Ocomm__neutral,axiom,
% 2.48/1.54 ! [A: nat] :
% 2.48/1.54 ( ( plus_plus_nat @ A @ zero_zero_nat )
% 2.48/1.54 = A ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_136_nat_Odistinct_I1_J,axiom,
% 2.48/1.54 ! [X2: nat] :
% 2.48/1.54 ( zero_zero_nat
% 2.48/1.54 != ( suc @ X2 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_137_old_Onat_Odistinct_I2_J,axiom,
% 2.48/1.54 ! [Nat2: nat] :
% 2.48/1.54 ( ( suc @ Nat2 )
% 2.48/1.54 != zero_zero_nat ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_138_old_Onat_Odistinct_I1_J,axiom,
% 2.48/1.54 ! [Nat2: nat] :
% 2.48/1.54 ( zero_zero_nat
% 2.48/1.54 != ( suc @ Nat2 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_139_nat_OdiscI,axiom,
% 2.48/1.54 ! [Nat: nat,X2: nat] :
% 2.48/1.54 ( ( Nat
% 2.48/1.54 = ( suc @ X2 ) )
% 2.48/1.54 => ( Nat != zero_zero_nat ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_140_nat__induct,axiom,
% 2.48/1.54 ! [P: nat > $o,N: nat] :
% 2.48/1.54 ( ( P @ zero_zero_nat )
% 2.48/1.54 => ( ! [N2: nat] :
% 2.48/1.54 ( ( P @ N2 )
% 2.48/1.54 => ( P @ ( suc @ N2 ) ) )
% 2.48/1.54 => ( P @ N ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_141_diff__induct,axiom,
% 2.48/1.54 ! [P: nat > nat > $o,M: nat,N: nat] :
% 2.48/1.54 ( ! [X3: nat] : ( P @ X3 @ zero_zero_nat )
% 2.48/1.54 => ( ! [Y3: nat] : ( P @ zero_zero_nat @ ( suc @ Y3 ) )
% 2.48/1.54 => ( ! [X3: nat,Y3: nat] :
% 2.48/1.54 ( ( P @ X3 @ Y3 )
% 2.48/1.54 => ( P @ ( suc @ X3 ) @ ( suc @ Y3 ) ) )
% 2.48/1.54 => ( P @ M @ N ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_142_zero__induct,axiom,
% 2.48/1.54 ! [P: nat > $o,K: nat] :
% 2.48/1.54 ( ( P @ K )
% 2.48/1.54 => ( ! [N2: nat] :
% 2.48/1.54 ( ( P @ ( suc @ N2 ) )
% 2.48/1.54 => ( P @ N2 ) )
% 2.48/1.54 => ( P @ zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_143_Suc__neq__Zero,axiom,
% 2.48/1.54 ! [M: nat] :
% 2.48/1.54 ( ( suc @ M )
% 2.48/1.54 != zero_zero_nat ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_144_Zero__neq__Suc,axiom,
% 2.48/1.54 ! [M: nat] :
% 2.48/1.54 ( zero_zero_nat
% 2.48/1.54 != ( suc @ M ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_145_Zero__not__Suc,axiom,
% 2.48/1.54 ! [M: nat] :
% 2.48/1.54 ( zero_zero_nat
% 2.48/1.54 != ( suc @ M ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_146_old_Onat_Oexhaust,axiom,
% 2.48/1.54 ! [Y: nat] :
% 2.48/1.54 ( ( Y != zero_zero_nat )
% 2.48/1.54 => ~ ! [Nat3: nat] :
% 2.48/1.54 ( Y
% 2.48/1.54 != ( suc @ Nat3 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_147_old_Onat_Oinducts,axiom,
% 2.48/1.54 ! [P: nat > $o,Nat: nat] :
% 2.48/1.54 ( ( P @ zero_zero_nat )
% 2.48/1.54 => ( ! [Nat3: nat] :
% 2.48/1.54 ( ( P @ Nat3 )
% 2.48/1.54 => ( P @ ( suc @ Nat3 ) ) )
% 2.48/1.54 => ( P @ Nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_148_not0__implies__Suc,axiom,
% 2.48/1.54 ! [N: nat] :
% 2.48/1.54 ( ( N != zero_zero_nat )
% 2.48/1.54 => ? [M2: nat] :
% 2.48/1.54 ( N
% 2.48/1.54 = ( suc @ M2 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_149_plus__nat_Oadd__0,axiom,
% 2.48/1.54 ! [N: nat] :
% 2.48/1.54 ( ( plus_plus_nat @ zero_zero_nat @ N )
% 2.48/1.54 = N ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_150_add__eq__self__zero,axiom,
% 2.48/1.54 ! [M: nat,N: nat] :
% 2.48/1.54 ( ( ( plus_plus_nat @ M @ N )
% 2.48/1.54 = M )
% 2.48/1.54 => ( N = zero_zero_nat ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_151_image2__eqI,axiom,
% 2.48/1.54 ! [B: com,F2: produc1260470173ar_int > com,X4: produc1260470173ar_int,C: list_char > int,G2: produc1260470173ar_int > list_char > int,A4: set_Pr1148378109ar_int] :
% 2.48/1.54 ( ( B
% 2.48/1.54 = ( F2 @ X4 ) )
% 2.48/1.54 => ( ( C
% 2.48/1.54 = ( G2 @ X4 ) )
% 2.48/1.54 => ( ( member92250950ar_int @ X4 @ A4 )
% 2.48/1.54 => ( member92250950ar_int @ ( produc1193801173ar_int @ B @ C ) @ ( bNF_Gr202451329ar_int @ A4 @ F2 @ G2 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_152_image2__eqI,axiom,
% 2.48/1.54 ! [B: nat,F2: produc1260470173ar_int > nat,X4: produc1260470173ar_int,C: nat,G2: produc1260470173ar_int > nat,A4: set_Pr1148378109ar_int] :
% 2.48/1.54 ( ( B
% 2.48/1.54 = ( F2 @ X4 ) )
% 2.48/1.54 => ( ( C
% 2.48/1.54 = ( G2 @ X4 ) )
% 2.48/1.54 => ( ( member92250950ar_int @ X4 @ A4 )
% 2.48/1.54 => ( member701585322at_nat @ ( product_Pair_nat_nat @ B @ C ) @ ( bNF_Gr749752805at_nat @ A4 @ F2 @ G2 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_153_com_Odistinct_I13_J,axiom,
% 2.48/1.54 ! [X212: list_char,X222: aexp,X51: bexp,X52: com] :
% 2.48/1.54 ( ( assign @ X212 @ X222 )
% 2.48/1.54 != ( while @ X51 @ X52 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_154_com_Odistinct_I1_J,axiom,
% 2.48/1.54 ! [X212: list_char,X222: aexp] :
% 2.48/1.54 ( skip
% 2.48/1.54 != ( assign @ X212 @ X222 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_155_com_Odistinct_I9_J,axiom,
% 2.48/1.54 ! [X212: list_char,X222: aexp,X31: com,X32: com] :
% 2.48/1.54 ( ( assign @ X212 @ X222 )
% 2.48/1.54 != ( seq @ X31 @ X32 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_156_com_Odistinct_I11_J,axiom,
% 2.48/1.54 ! [X212: list_char,X222: aexp,X41: bexp,X42: com,X43: com] :
% 2.48/1.54 ( ( assign @ X212 @ X222 )
% 2.48/1.54 != ( if @ X41 @ X42 @ X43 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_157_get__back_Osimps_I1_J,axiom,
% 2.48/1.54 ! [P: ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com] :
% 2.48/1.54 ( ( relati23543761ar_int @ P @ B @ C @ zero_zero_nat )
% 2.48/1.54 = P ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_158_one__is__add,axiom,
% 2.48/1.54 ! [M: nat,N: nat] :
% 2.48/1.54 ( ( ( suc @ zero_zero_nat )
% 2.48/1.54 = ( plus_plus_nat @ M @ N ) )
% 2.48/1.54 = ( ( ( M
% 2.48/1.54 = ( suc @ zero_zero_nat ) )
% 2.48/1.54 & ( N = zero_zero_nat ) )
% 2.48/1.54 | ( ( M = zero_zero_nat )
% 2.48/1.54 & ( N
% 2.48/1.54 = ( suc @ zero_zero_nat ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_159_add__is__1,axiom,
% 2.48/1.54 ! [M: nat,N: nat] :
% 2.48/1.54 ( ( ( plus_plus_nat @ M @ N )
% 2.48/1.54 = ( suc @ zero_zero_nat ) )
% 2.48/1.54 = ( ( ( M
% 2.48/1.54 = ( suc @ zero_zero_nat ) )
% 2.48/1.54 & ( N = zero_zero_nat ) )
% 2.48/1.54 | ( ( M = zero_zero_nat )
% 2.48/1.54 & ( N
% 2.48/1.54 = ( suc @ zero_zero_nat ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_160_ir__While__backwards__frontier,axiom,
% 2.48/1.54 ! [P: nat > ( list_char > int ) > ( list_char > int ) > $o,B: bexp,C: com,C2: com,Q: ( list_char > int ) > ( list_char > int ) > $o] :
% 2.48/1.54 ( ! [N2: nat] :
% 2.48/1.54 ( relati2102071307_hoare
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ( ( P @ N2 @ S5 @ S7 )
% 2.48/1.54 & ( bval @ B @ S5 ) )
% 2.48/1.54 @ C
% 2.48/1.54 @ skip
% 2.48/1.54 @ ( P @ ( suc @ N2 ) ) )
% 2.48/1.54 => ( ( relati2102071307_hoare
% 2.48/1.54 @ ^ [S5: list_char > int,S7: list_char > int] :
% 2.48/1.54 ? [N4: nat] : ( P @ N4 @ S5 @ S7 )
% 2.48/1.54 @ ( while @ B @ C )
% 2.48/1.54 @ C2
% 2.48/1.54 @ Q )
% 2.48/1.54 => ( relati2102071307_hoare @ ( P @ zero_zero_nat ) @ ( while @ B @ C ) @ C2 @ Q ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_161_com_Osize__gen_I4_J,axiom,
% 2.48/1.54 ! [X41: bexp,X42: com,X43: com] :
% 2.48/1.54 ( ( size_com @ ( if @ X41 @ X42 @ X43 ) )
% 2.48/1.54 = ( plus_plus_nat @ ( plus_plus_nat @ ( size_com @ X42 ) @ ( size_com @ X43 ) ) @ ( suc @ zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_162_com_Osize__gen_I3_J,axiom,
% 2.48/1.54 ! [X31: com,X32: com] :
% 2.48/1.54 ( ( size_com @ ( seq @ X31 @ X32 ) )
% 2.48/1.54 = ( plus_plus_nat @ ( plus_plus_nat @ ( size_com @ X31 ) @ ( size_com @ X32 ) ) @ ( suc @ zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_163_com_Osize__gen_I5_J,axiom,
% 2.48/1.54 ! [X51: bexp,X52: com] :
% 2.48/1.54 ( ( size_com @ ( while @ X51 @ X52 ) )
% 2.48/1.54 = ( plus_plus_nat @ ( size_com @ X52 ) @ ( suc @ zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_164_com_Osize_I9_J,axiom,
% 2.48/1.54 ! [X41: bexp,X42: com,X43: com] :
% 2.48/1.54 ( ( size_size_com @ ( if @ X41 @ X42 @ X43 ) )
% 2.48/1.54 = ( plus_plus_nat @ ( plus_plus_nat @ ( size_size_com @ X42 ) @ ( size_size_com @ X43 ) ) @ ( suc @ zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_165_size__neq__size__imp__neq,axiom,
% 2.48/1.54 ! [X4: com,Y: com] :
% 2.48/1.54 ( ( ( size_size_com @ X4 )
% 2.48/1.54 != ( size_size_com @ Y ) )
% 2.48/1.54 => ( X4 != Y ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_166_size__neq__size__imp__neq,axiom,
% 2.48/1.54 ! [X4: typerep,Y: typerep] :
% 2.48/1.54 ( ( ( size_size_typerep @ X4 )
% 2.48/1.54 != ( size_size_typerep @ Y ) )
% 2.48/1.54 => ( X4 != Y ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_167_com_Osize_I6_J,axiom,
% 2.48/1.54 ( ( size_size_com @ skip )
% 2.48/1.54 = zero_zero_nat ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_168_com_Osize_I7_J,axiom,
% 2.48/1.54 ! [X212: list_char,X222: aexp] :
% 2.48/1.54 ( ( size_size_com @ ( assign @ X212 @ X222 ) )
% 2.48/1.54 = zero_zero_nat ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_169_com_Osize__gen_I1_J,axiom,
% 2.48/1.54 ( ( size_com @ skip )
% 2.48/1.54 = zero_zero_nat ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_170_com_Osize__gen_I2_J,axiom,
% 2.48/1.54 ! [X212: list_char,X222: aexp] :
% 2.48/1.54 ( ( size_com @ ( assign @ X212 @ X222 ) )
% 2.48/1.54 = zero_zero_nat ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_171_com_Osize_I10_J,axiom,
% 2.48/1.54 ! [X51: bexp,X52: com] :
% 2.48/1.54 ( ( size_size_com @ ( while @ X51 @ X52 ) )
% 2.48/1.54 = ( plus_plus_nat @ ( size_size_com @ X52 ) @ ( suc @ zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_172_com_Osize_I8_J,axiom,
% 2.48/1.54 ! [X31: com,X32: com] :
% 2.48/1.54 ( ( size_size_com @ ( seq @ X31 @ X32 ) )
% 2.48/1.54 = ( plus_plus_nat @ ( plus_plus_nat @ ( size_size_com @ X31 ) @ ( size_size_com @ X32 ) ) @ ( suc @ zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_173_Euclid__induct,axiom,
% 2.48/1.54 ! [P: nat > nat > $o,A: nat,B: nat] :
% 2.48/1.54 ( ! [A3: nat,B3: nat] :
% 2.48/1.54 ( ( P @ A3 @ B3 )
% 2.48/1.54 = ( P @ B3 @ A3 ) )
% 2.48/1.54 => ( ! [A3: nat] : ( P @ A3 @ zero_zero_nat )
% 2.48/1.54 => ( ! [A3: nat,B3: nat] :
% 2.48/1.54 ( ( P @ A3 @ B3 )
% 2.48/1.54 => ( P @ A3 @ ( plus_plus_nat @ A3 @ B3 ) ) )
% 2.48/1.54 => ( P @ A @ B ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_174_verit__sum__simplify,axiom,
% 2.48/1.54 ! [A: nat] :
% 2.48/1.54 ( ( plus_plus_nat @ A @ zero_zero_nat )
% 2.48/1.54 = A ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_175_add__0__iff,axiom,
% 2.48/1.54 ! [B: nat,A: nat] :
% 2.48/1.54 ( ( B
% 2.48/1.54 = ( plus_plus_nat @ B @ A ) )
% 2.48/1.54 = ( A = zero_zero_nat ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_176_relImage__def,axiom,
% 2.48/1.54 ( bNF_Gr1247133574at_nat
% 2.48/1.54 = ( ^ [R2: set_Pr1986765409at_nat,F: nat > nat] :
% 2.48/1.54 ( collec7649004at_nat
% 2.48/1.54 @ ^ [Uu: product_prod_nat_nat] :
% 2.48/1.54 ? [A1: nat,A22: nat] :
% 2.48/1.54 ( ( Uu
% 2.48/1.54 = ( product_Pair_nat_nat @ ( F @ A1 ) @ ( F @ A22 ) ) )
% 2.48/1.54 & ( member701585322at_nat @ ( product_Pair_nat_nat @ A1 @ A22 ) @ R2 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_177_relInvImage__def,axiom,
% 2.48/1.54 ( bNF_Gr1143394412nt_nat
% 2.48/1.54 = ( ^ [A6: set_Pr1148378109ar_int,R2: set_Pr1986765409at_nat,F: produc1260470173ar_int > nat] :
% 2.48/1.54 ( collec1834387154ar_int
% 2.48/1.54 @ ^ [Uu: produc1346207591ar_int] :
% 2.48/1.54 ? [A1: produc1260470173ar_int,A22: produc1260470173ar_int] :
% 2.48/1.54 ( ( Uu
% 2.48/1.54 = ( produc317451735ar_int @ A1 @ A22 ) )
% 2.48/1.54 & ( member92250950ar_int @ A1 @ A6 )
% 2.48/1.54 & ( member92250950ar_int @ A22 @ A6 )
% 2.48/1.54 & ( member701585322at_nat @ ( product_Pair_nat_nat @ ( F @ A1 ) @ ( F @ A22 ) ) @ R2 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_178_relInvImage__def,axiom,
% 2.48/1.54 ( bNF_Gr808751971at_nat
% 2.48/1.54 = ( ^ [A6: set_nat,R2: set_Pr1986765409at_nat,F: nat > nat] :
% 2.48/1.54 ( collec7649004at_nat
% 2.48/1.54 @ ^ [Uu: product_prod_nat_nat] :
% 2.48/1.54 ? [A1: nat,A22: nat] :
% 2.48/1.54 ( ( Uu
% 2.48/1.54 = ( product_Pair_nat_nat @ A1 @ A22 ) )
% 2.48/1.54 & ( member_nat @ A1 @ A6 )
% 2.48/1.54 & ( member_nat @ A22 @ A6 )
% 2.48/1.54 & ( member701585322at_nat @ ( product_Pair_nat_nat @ ( F @ A1 ) @ ( F @ A22 ) ) @ R2 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_179_divides__aux__eq,axiom,
% 2.48/1.54 ! [Q4: nat,R3: nat] :
% 2.48/1.54 ( ( unique1592618082ux_nat @ ( product_Pair_nat_nat @ Q4 @ R3 ) )
% 2.48/1.54 = ( R3 = zero_zero_nat ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_180_zero__natural_Orsp,axiom,
% 2.48/1.54 zero_zero_nat = zero_zero_nat ).
% 2.48/1.54
% 2.48/1.54 thf(fact_181_typerep_Osize__neq,axiom,
% 2.48/1.54 ! [X4: typerep] :
% 2.48/1.54 ( ( size_size_typerep @ X4 )
% 2.48/1.54 != zero_zero_nat ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_182_ssubst__Pair__rhs,axiom,
% 2.48/1.54 ! [R3: nat,S: nat,R: set_Pr1986765409at_nat,S2: nat] :
% 2.48/1.54 ( ( member701585322at_nat @ ( product_Pair_nat_nat @ R3 @ S ) @ R )
% 2.48/1.54 => ( ( S2 = S )
% 2.48/1.54 => ( member701585322at_nat @ ( product_Pair_nat_nat @ R3 @ S2 ) @ R ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_183_ssubst__Pair__rhs,axiom,
% 2.48/1.54 ! [R3: com,S: list_char > int,R: set_Pr1148378109ar_int,S2: list_char > int] :
% 2.48/1.54 ( ( member92250950ar_int @ ( produc1193801173ar_int @ R3 @ S ) @ R )
% 2.48/1.54 => ( ( S2 = S )
% 2.48/1.54 => ( member92250950ar_int @ ( produc1193801173ar_int @ R3 @ S2 ) @ R ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_184_typerep_Osize_I2_J,axiom,
% 2.48/1.54 ! [X1: literal,X2: list_typerep] :
% 2.48/1.54 ( ( size_size_typerep @ ( typerep2 @ X1 @ X2 ) )
% 2.48/1.54 = ( plus_plus_nat @ ( size_list_typerep @ size_size_typerep @ X2 ) @ ( suc @ zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_185_typerep_Osize__gen,axiom,
% 2.48/1.54 ! [X1: literal,X2: list_typerep] :
% 2.48/1.54 ( ( size_typerep @ ( typerep2 @ X1 @ X2 ) )
% 2.48/1.54 = ( plus_plus_nat @ ( size_list_typerep @ size_typerep @ X2 ) @ ( suc @ zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_186_list_Osize__gen_I2_J,axiom,
% 2.48/1.54 ! [X4: typerep > nat,X212: typerep,X222: list_typerep] :
% 2.48/1.54 ( ( size_list_typerep @ X4 @ ( cons_typerep @ X212 @ X222 ) )
% 2.48/1.54 = ( plus_plus_nat @ ( plus_plus_nat @ ( X4 @ X212 ) @ ( size_list_typerep @ X4 @ X222 ) ) @ ( suc @ zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_187_length__Suc__conv,axiom,
% 2.48/1.54 ! [Xs: list_typerep,N: nat] :
% 2.48/1.54 ( ( ( size_s416147576yperep @ Xs )
% 2.48/1.54 = ( suc @ N ) )
% 2.48/1.54 = ( ? [Y4: typerep,Ys: list_typerep] :
% 2.48/1.54 ( ( Xs
% 2.48/1.54 = ( cons_typerep @ Y4 @ Ys ) )
% 2.48/1.54 & ( ( size_s416147576yperep @ Ys )
% 2.48/1.54 = N ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_188_Suc__length__conv,axiom,
% 2.48/1.54 ! [N: nat,Xs: list_typerep] :
% 2.48/1.54 ( ( ( suc @ N )
% 2.48/1.54 = ( size_s416147576yperep @ Xs ) )
% 2.48/1.54 = ( ? [Y4: typerep,Ys: list_typerep] :
% 2.48/1.54 ( ( Xs
% 2.48/1.54 = ( cons_typerep @ Y4 @ Ys ) )
% 2.48/1.54 & ( ( size_s416147576yperep @ Ys )
% 2.48/1.54 = N ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_189_length__Cons,axiom,
% 2.48/1.54 ! [X4: typerep,Xs: list_typerep] :
% 2.48/1.54 ( ( size_s416147576yperep @ ( cons_typerep @ X4 @ Xs ) )
% 2.48/1.54 = ( suc @ ( size_s416147576yperep @ Xs ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_190_list_Osize_I4_J,axiom,
% 2.48/1.54 ! [X212: typerep,X222: list_typerep] :
% 2.48/1.54 ( ( size_s416147576yperep @ ( cons_typerep @ X212 @ X222 ) )
% 2.48/1.54 = ( plus_plus_nat @ ( size_s416147576yperep @ X222 ) @ ( suc @ zero_zero_nat ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_191_set__Cons__def,axiom,
% 2.48/1.54 ( set_Co1954412371ar_int
% 2.48/1.54 = ( ^ [A6: set_Pr1148378109ar_int,XS: set_li1762364675ar_int] :
% 2.48/1.54 ( collec672902542ar_int
% 2.48/1.54 @ ^ [Z: list_P1741976099ar_int] :
% 2.48/1.54 ? [X: produc1260470173ar_int,Xs2: list_P1741976099ar_int] :
% 2.48/1.54 ( ( Z
% 2.48/1.54 = ( cons_P1254790739ar_int @ X @ Xs2 ) )
% 2.48/1.54 & ( member92250950ar_int @ X @ A6 )
% 2.48/1.54 & ( member2052091212ar_int @ Xs2 @ XS ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_192_set__Cons__def,axiom,
% 2.48/1.54 ( set_Cons_typerep
% 2.48/1.54 = ( ^ [A6: set_typerep,XS: set_list_typerep] :
% 2.48/1.54 ( collect_list_typerep
% 2.48/1.54 @ ^ [Z: list_typerep] :
% 2.48/1.54 ? [X: typerep,Xs2: list_typerep] :
% 2.48/1.54 ( ( Z
% 2.48/1.54 = ( cons_typerep @ X @ Xs2 ) )
% 2.48/1.54 & ( member_typerep @ X @ A6 )
% 2.48/1.54 & ( member_list_typerep @ Xs2 @ XS ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_193_Cons__in__lex,axiom,
% 2.48/1.54 ! [X4: typerep,Xs: list_typerep,Y: typerep,Ys2: list_typerep,R3: set_Pr1097818217yperep] :
% 2.48/1.54 ( ( member1812711762yperep @ ( produc1695567329yperep @ ( cons_typerep @ X4 @ Xs ) @ ( cons_typerep @ Y @ Ys2 ) ) @ ( lex_typerep @ R3 ) )
% 2.48/1.54 = ( ( ( member100911538yperep @ ( produc2071514689yperep @ X4 @ Y ) @ R3 )
% 2.48/1.54 & ( ( size_s416147576yperep @ Xs )
% 2.48/1.54 = ( size_s416147576yperep @ Ys2 ) ) )
% 2.48/1.54 | ( ( X4 = Y )
% 2.48/1.54 & ( member1812711762yperep @ ( produc1695567329yperep @ Xs @ Ys2 ) @ ( lex_typerep @ R3 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_194_Cons__in__lex,axiom,
% 2.48/1.54 ! [X4: nat,Xs: list_nat,Y: nat,Ys2: list_nat,R3: set_Pr1986765409at_nat] :
% 2.48/1.54 ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ X4 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) @ ( lex_nat @ R3 ) )
% 2.48/1.54 = ( ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X4 @ Y ) @ R3 )
% 2.48/1.54 & ( ( size_size_list_nat @ Xs )
% 2.48/1.54 = ( size_size_list_nat @ Ys2 ) ) )
% 2.48/1.54 | ( ( X4 = Y )
% 2.48/1.54 & ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys2 ) @ ( lex_nat @ R3 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_195_gen__length__code_I2_J,axiom,
% 2.48/1.54 ! [N: nat,X4: typerep,Xs: list_typerep] :
% 2.48/1.54 ( ( gen_length_typerep @ N @ ( cons_typerep @ X4 @ Xs ) )
% 2.48/1.54 = ( gen_length_typerep @ ( suc @ N ) @ Xs ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_196_lexord__cons__cons,axiom,
% 2.48/1.54 ! [A: typerep,X4: list_typerep,B: typerep,Y: list_typerep,R3: set_Pr1097818217yperep] :
% 2.48/1.54 ( ( member1812711762yperep @ ( produc1695567329yperep @ ( cons_typerep @ A @ X4 ) @ ( cons_typerep @ B @ Y ) ) @ ( lexord_typerep @ R3 ) )
% 2.48/1.54 = ( ( member100911538yperep @ ( produc2071514689yperep @ A @ B ) @ R3 )
% 2.48/1.54 | ( ( A = B )
% 2.48/1.54 & ( member1812711762yperep @ ( produc1695567329yperep @ X4 @ Y ) @ ( lexord_typerep @ R3 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_197_lexord__cons__cons,axiom,
% 2.48/1.54 ! [A: nat,X4: list_nat,B: nat,Y: list_nat,R3: set_Pr1986765409at_nat] :
% 2.48/1.54 ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ A @ X4 ) @ ( cons_nat @ B @ Y ) ) @ ( lexord_nat @ R3 ) )
% 2.48/1.54 = ( ( member701585322at_nat @ ( product_Pair_nat_nat @ A @ B ) @ R3 )
% 2.48/1.54 | ( ( A = B )
% 2.48/1.54 & ( member1926390090st_nat @ ( produc1625736153st_nat @ X4 @ Y ) @ ( lexord_nat @ R3 ) ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_198_lexord__irreflexive,axiom,
% 2.48/1.54 ! [R3: set_Pr1986765409at_nat,Xs: list_nat] :
% 2.48/1.54 ( ! [X3: nat] :
% 2.48/1.54 ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X3 @ X3 ) @ R3 )
% 2.48/1.54 => ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Xs ) @ ( lexord_nat @ R3 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_199_lexord__linear,axiom,
% 2.48/1.54 ! [R3: set_Pr1986765409at_nat,X4: list_nat,Y: list_nat] :
% 2.48/1.54 ( ! [A3: nat,B3: nat] :
% 2.48/1.54 ( ( member701585322at_nat @ ( product_Pair_nat_nat @ A3 @ B3 ) @ R3 )
% 2.48/1.54 | ( A3 = B3 )
% 2.48/1.54 | ( member701585322at_nat @ ( product_Pair_nat_nat @ B3 @ A3 ) @ R3 ) )
% 2.48/1.54 => ( ( member1926390090st_nat @ ( produc1625736153st_nat @ X4 @ Y ) @ ( lexord_nat @ R3 ) )
% 2.48/1.54 | ( X4 = Y )
% 2.48/1.54 | ( member1926390090st_nat @ ( produc1625736153st_nat @ Y @ X4 ) @ ( lexord_nat @ R3 ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_200_Shift__def,axiom,
% 2.48/1.54 ( bNF_Gr457912949yperep
% 2.48/1.54 = ( ^ [Kl: set_list_typerep,K2: typerep] :
% 2.48/1.54 ( collect_list_typerep
% 2.48/1.54 @ ^ [Kl2: list_typerep] : ( member_list_typerep @ ( cons_typerep @ K2 @ Kl2 ) @ Kl ) ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_201_ShiftD,axiom,
% 2.48/1.54 ! [Kl3: list_typerep,Kl4: set_list_typerep,K: typerep] :
% 2.48/1.54 ( ( member_list_typerep @ Kl3 @ ( bNF_Gr457912949yperep @ Kl4 @ K ) )
% 2.48/1.54 => ( member_list_typerep @ ( cons_typerep @ K @ Kl3 ) @ Kl4 ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_202_Succ__Shift,axiom,
% 2.48/1.54 ! [Kl4: set_list_typerep,K: typerep,Kl3: list_typerep] :
% 2.48/1.54 ( ( bNF_Gr1303086585yperep @ ( bNF_Gr457912949yperep @ Kl4 @ K ) @ Kl3 )
% 2.48/1.54 = ( bNF_Gr1303086585yperep @ Kl4 @ ( cons_typerep @ K @ Kl3 ) ) ) ).
% 2.48/1.54
% 2.48/1.54 thf(fact_203_Cons__listrel1__Cons,axiom,
% 2.48/1.54 ! [X4: typerep,Xs: list_typerep,Y: typerep,Ys2: list_typerep,R3: set_Pr1097818217yperep] :
% 2.48/1.54 ( ( member1812711762yperep @ ( produc1695567329yperep @ ( cons_typerep @ X4 @ Xs ) @ ( cons_typerep @ Y @ Ys2 ) ) @ ( listrel1_typerep @ R3 ) )
% 2.48/1.54 = ( ( ( member100911538yperep @ ( produc2071514689yperep @ X4 @ Y ) @ R3 )
% 2.48/1.54 & ( Xs = Ys2 ) )
% 2.48/1.54 | ( ( X4 = Y )
% 2.48/1.55 & ( member1812711762yperep @ ( produc1695567329yperep @ Xs @ Ys2 ) @ ( listrel1_typerep @ R3 ) ) ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_204_Cons__listrel1__Cons,axiom,
% 2.48/1.55 ! [X4: nat,Xs: list_nat,Y: nat,Ys2: list_nat,R3: set_Pr1986765409at_nat] :
% 2.48/1.55 ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ X4 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) @ ( listrel1_nat @ R3 ) )
% 2.48/1.55 = ( ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X4 @ Y ) @ R3 )
% 2.48/1.55 & ( Xs = Ys2 ) )
% 2.48/1.55 | ( ( X4 = Y )
% 2.48/1.55 & ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys2 ) @ ( listrel1_nat @ R3 ) ) ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_205_listrel1I1,axiom,
% 2.48/1.55 ! [X4: typerep,Y: typerep,R3: set_Pr1097818217yperep,Xs: list_typerep] :
% 2.48/1.55 ( ( member100911538yperep @ ( produc2071514689yperep @ X4 @ Y ) @ R3 )
% 2.48/1.55 => ( member1812711762yperep @ ( produc1695567329yperep @ ( cons_typerep @ X4 @ Xs ) @ ( cons_typerep @ Y @ Xs ) ) @ ( listrel1_typerep @ R3 ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_206_listrel1I1,axiom,
% 2.48/1.55 ! [X4: nat,Y: nat,R3: set_Pr1986765409at_nat,Xs: list_nat] :
% 2.48/1.55 ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X4 @ Y ) @ R3 )
% 2.48/1.55 => ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ X4 @ Xs ) @ ( cons_nat @ Y @ Xs ) ) @ ( listrel1_nat @ R3 ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_207_Cons__listrel1E1,axiom,
% 2.48/1.55 ! [X4: typerep,Xs: list_typerep,Ys2: list_typerep,R3: set_Pr1097818217yperep] :
% 2.48/1.55 ( ( member1812711762yperep @ ( produc1695567329yperep @ ( cons_typerep @ X4 @ Xs ) @ Ys2 ) @ ( listrel1_typerep @ R3 ) )
% 2.48/1.55 => ( ! [Y3: typerep] :
% 2.48/1.55 ( ( Ys2
% 2.48/1.55 = ( cons_typerep @ Y3 @ Xs ) )
% 2.48/1.55 => ~ ( member100911538yperep @ ( produc2071514689yperep @ X4 @ Y3 ) @ R3 ) )
% 2.48/1.55 => ~ ! [Zs: list_typerep] :
% 2.48/1.55 ( ( Ys2
% 2.48/1.55 = ( cons_typerep @ X4 @ Zs ) )
% 2.48/1.55 => ~ ( member1812711762yperep @ ( produc1695567329yperep @ Xs @ Zs ) @ ( listrel1_typerep @ R3 ) ) ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_208_Cons__listrel1E1,axiom,
% 2.48/1.55 ! [X4: nat,Xs: list_nat,Ys2: list_nat,R3: set_Pr1986765409at_nat] :
% 2.48/1.55 ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ X4 @ Xs ) @ Ys2 ) @ ( listrel1_nat @ R3 ) )
% 2.48/1.55 => ( ! [Y3: nat] :
% 2.48/1.55 ( ( Ys2
% 2.48/1.55 = ( cons_nat @ Y3 @ Xs ) )
% 2.48/1.55 => ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X4 @ Y3 ) @ R3 ) )
% 2.48/1.55 => ~ ! [Zs: list_nat] :
% 2.48/1.55 ( ( Ys2
% 2.48/1.55 = ( cons_nat @ X4 @ Zs ) )
% 2.48/1.55 => ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Zs ) @ ( listrel1_nat @ R3 ) ) ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_209_Cons__listrel1E2,axiom,
% 2.48/1.55 ! [Xs: list_typerep,Y: typerep,Ys2: list_typerep,R3: set_Pr1097818217yperep] :
% 2.48/1.55 ( ( member1812711762yperep @ ( produc1695567329yperep @ Xs @ ( cons_typerep @ Y @ Ys2 ) ) @ ( listrel1_typerep @ R3 ) )
% 2.48/1.55 => ( ! [X3: typerep] :
% 2.48/1.55 ( ( Xs
% 2.48/1.55 = ( cons_typerep @ X3 @ Ys2 ) )
% 2.48/1.55 => ~ ( member100911538yperep @ ( produc2071514689yperep @ X3 @ Y ) @ R3 ) )
% 2.48/1.55 => ~ ! [Zs: list_typerep] :
% 2.48/1.55 ( ( Xs
% 2.48/1.55 = ( cons_typerep @ Y @ Zs ) )
% 2.48/1.55 => ~ ( member1812711762yperep @ ( produc1695567329yperep @ Zs @ Ys2 ) @ ( listrel1_typerep @ R3 ) ) ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_210_Cons__listrel1E2,axiom,
% 2.48/1.55 ! [Xs: list_nat,Y: nat,Ys2: list_nat,R3: set_Pr1986765409at_nat] :
% 2.48/1.55 ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ ( cons_nat @ Y @ Ys2 ) ) @ ( listrel1_nat @ R3 ) )
% 2.48/1.55 => ( ! [X3: nat] :
% 2.48/1.55 ( ( Xs
% 2.48/1.55 = ( cons_nat @ X3 @ Ys2 ) )
% 2.48/1.55 => ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X3 @ Y ) @ R3 ) )
% 2.48/1.55 => ~ ! [Zs: list_nat] :
% 2.48/1.55 ( ( Xs
% 2.48/1.55 = ( cons_nat @ Y @ Zs ) )
% 2.48/1.55 => ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Zs @ Ys2 ) @ ( listrel1_nat @ R3 ) ) ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_211_lexord__append__left__rightI,axiom,
% 2.48/1.55 ! [A: typerep,B: typerep,R3: set_Pr1097818217yperep,U: list_typerep,X4: list_typerep,Y: list_typerep] :
% 2.48/1.55 ( ( member100911538yperep @ ( produc2071514689yperep @ A @ B ) @ R3 )
% 2.48/1.55 => ( member1812711762yperep @ ( produc1695567329yperep @ ( append_typerep @ U @ ( cons_typerep @ A @ X4 ) ) @ ( append_typerep @ U @ ( cons_typerep @ B @ Y ) ) ) @ ( lexord_typerep @ R3 ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_212_lexord__append__left__rightI,axiom,
% 2.48/1.55 ! [A: nat,B: nat,R3: set_Pr1986765409at_nat,U: list_nat,X4: list_nat,Y: list_nat] :
% 2.48/1.55 ( ( member701585322at_nat @ ( product_Pair_nat_nat @ A @ B ) @ R3 )
% 2.48/1.55 => ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ U @ ( cons_nat @ A @ X4 ) ) @ ( append_nat @ U @ ( cons_nat @ B @ Y ) ) ) @ ( lexord_nat @ R3 ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_213_listrel1I,axiom,
% 2.48/1.55 ! [X4: typerep,Y: typerep,R3: set_Pr1097818217yperep,Xs: list_typerep,Us: list_typerep,Vs: list_typerep,Ys2: list_typerep] :
% 2.48/1.55 ( ( member100911538yperep @ ( produc2071514689yperep @ X4 @ Y ) @ R3 )
% 2.48/1.55 => ( ( Xs
% 2.48/1.55 = ( append_typerep @ Us @ ( cons_typerep @ X4 @ Vs ) ) )
% 2.48/1.55 => ( ( Ys2
% 2.48/1.55 = ( append_typerep @ Us @ ( cons_typerep @ Y @ Vs ) ) )
% 2.48/1.55 => ( member1812711762yperep @ ( produc1695567329yperep @ Xs @ Ys2 ) @ ( listrel1_typerep @ R3 ) ) ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_214_listrel1I,axiom,
% 2.48/1.55 ! [X4: nat,Y: nat,R3: set_Pr1986765409at_nat,Xs: list_nat,Us: list_nat,Vs: list_nat,Ys2: list_nat] :
% 2.48/1.55 ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X4 @ Y ) @ R3 )
% 2.48/1.55 => ( ( Xs
% 2.48/1.55 = ( append_nat @ Us @ ( cons_nat @ X4 @ Vs ) ) )
% 2.48/1.55 => ( ( Ys2
% 2.48/1.55 = ( append_nat @ Us @ ( cons_nat @ Y @ Vs ) ) )
% 2.48/1.55 => ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys2 ) @ ( listrel1_nat @ R3 ) ) ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_215_append__eq__append__conv,axiom,
% 2.48/1.55 ! [Xs: list_typerep,Ys2: list_typerep,Us: list_typerep,Vs: list_typerep] :
% 2.48/1.55 ( ( ( ( size_s416147576yperep @ Xs )
% 2.48/1.55 = ( size_s416147576yperep @ Ys2 ) )
% 2.48/1.55 | ( ( size_s416147576yperep @ Us )
% 2.48/1.55 = ( size_s416147576yperep @ Vs ) ) )
% 2.48/1.55 => ( ( ( append_typerep @ Xs @ Us )
% 2.48/1.55 = ( append_typerep @ Ys2 @ Vs ) )
% 2.48/1.55 = ( ( Xs = Ys2 )
% 2.48/1.55 & ( Us = Vs ) ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_216_length__append,axiom,
% 2.48/1.55 ! [Xs: list_typerep,Ys2: list_typerep] :
% 2.48/1.55 ( ( size_s416147576yperep @ ( append_typerep @ Xs @ Ys2 ) )
% 2.48/1.55 = ( plus_plus_nat @ ( size_s416147576yperep @ Xs ) @ ( size_s416147576yperep @ Ys2 ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_217_size__list__append,axiom,
% 2.48/1.55 ! [F2: typerep > nat,Xs: list_typerep,Ys2: list_typerep] :
% 2.48/1.55 ( ( size_list_typerep @ F2 @ ( append_typerep @ Xs @ Ys2 ) )
% 2.48/1.55 = ( plus_plus_nat @ ( size_list_typerep @ F2 @ Xs ) @ ( size_list_typerep @ F2 @ Ys2 ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_218_lexord__sufE,axiom,
% 2.48/1.55 ! [Xs: list_typerep,Zs2: list_typerep,Ys2: list_typerep,Qs: list_typerep,R3: set_Pr1097818217yperep] :
% 2.48/1.55 ( ( member1812711762yperep @ ( produc1695567329yperep @ ( append_typerep @ Xs @ Zs2 ) @ ( append_typerep @ Ys2 @ Qs ) ) @ ( lexord_typerep @ R3 ) )
% 2.48/1.55 => ( ( Xs != Ys2 )
% 2.48/1.55 => ( ( ( size_s416147576yperep @ Xs )
% 2.48/1.55 = ( size_s416147576yperep @ Ys2 ) )
% 2.48/1.55 => ( ( ( size_s416147576yperep @ Zs2 )
% 2.48/1.55 = ( size_s416147576yperep @ Qs ) )
% 2.48/1.55 => ( member1812711762yperep @ ( produc1695567329yperep @ Xs @ Ys2 ) @ ( lexord_typerep @ R3 ) ) ) ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_219_lex__append__leftD,axiom,
% 2.48/1.55 ! [R3: set_Pr1097818217yperep,Xs: list_typerep,Ys2: list_typerep,Zs2: list_typerep] :
% 2.48/1.55 ( ! [X3: typerep] :
% 2.48/1.55 ~ ( member100911538yperep @ ( produc2071514689yperep @ X3 @ X3 ) @ R3 )
% 2.48/1.55 => ( ( member1812711762yperep @ ( produc1695567329yperep @ ( append_typerep @ Xs @ Ys2 ) @ ( append_typerep @ Xs @ Zs2 ) ) @ ( lex_typerep @ R3 ) )
% 2.48/1.55 => ( member1812711762yperep @ ( produc1695567329yperep @ Ys2 @ Zs2 ) @ ( lex_typerep @ R3 ) ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(fact_220_lex__append__leftD,axiom,
% 2.48/1.55 ! [R3: set_Pr1986765409at_nat,Xs: list_nat,Ys2: list_nat,Zs2: list_nat] :
% 2.48/1.55 ( ! [X3: nat] :
% 2.48/1.55 ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X3 @ X3 ) @ R3 )
% 2.48/1.55 => ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ Xs @ Ys2 ) @ ( append_nat @ Xs @ Zs2 ) ) @ ( lex_nat @ R3 ) )
% 2.48/1.55 => ( member1926390090st_nat @ ( produc1625736153st_nat @ Ys2 @ Zs2 ) @ ( lex_nat @ R3 ) ) ) ) ).
% 2.48/1.55
% 2.48/1.55 thf(conj_0,conjecture,
% 2.48/1.55 ? [S6: list_char > int,S8: list_char > int] :
% 2.48/1.55 ( ( relati23543761ar_int @ p @ b @ c @ ( suc @ ka ) @ S6 @ S8 )
% 2.48/1.55 & ( bval @ b @ S6 )
% 2.48/1.55 & ( big_big_step @ ( produc1193801173ar_int @ c @ S6 ) @ ta )
% 2.48/1.55 & ( big_big_step @ ( produc1193801173ar_int @ c2 @ S8 ) @ t_a ) ) ).
% 2.48/1.55 ------------------------
% 2.48/1.57 % (21806)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/183Mi)
% 2.48/1.57 % (21809)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/2Mi)
% 2.48/1.57 % (21810)lrs+1002_1:128_aac=none:au=on:cnfonf=lazy_not_gen_be_off:sos=all:i=2:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/2Mi)
% 2.48/1.57 % (21808)dis+1010_1:1_au=on:cbe=off:chr=on:fsr=off:hfsq=on:nm=64:sos=theory:sp=weighted_frequency:i=27:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/27Mi)
% 2.48/1.57 % (21812)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/18Mi)
% 2.48/1.57 % (21811)lrs+1002_1:1_au=on:bd=off:e2e=on:sd=2:sos=on:ss=axioms:i=275:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/275Mi)
% 2.48/1.57 % (21807)lrs+10_1:1_c=on:cnfonf=conj_eager:fd=off:fe=off:kws=frequency:spb=intro:i=4:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/4Mi)
% 2.48/1.57 % (21809)Instruction limit reached!
% 2.48/1.57 % (21809)------------------------------
% 2.48/1.57 % (21809)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.48/1.57 % (21809)Termination reason: Unknown
% 2.48/1.57 % (21809)Termination phase: shuffling
% 2.48/1.57
% 2.48/1.57 % (21809)Memory used [KB]: 1407
% 2.48/1.57 % (21809)Time elapsed: 0.003 s
% 2.48/1.57 % (21809)Instructions burned: 4 (million)
% 2.48/1.57 % (21809)------------------------------
% 2.48/1.57 % (21809)------------------------------
% 2.48/1.57 % (21810)Instruction limit reached!
% 2.48/1.57 % (21810)------------------------------
% 2.48/1.57 % (21810)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.48/1.57 % (21810)Termination reason: Unknown
% 2.48/1.57 % (21810)Termination phase: shuffling
% 2.48/1.57
% 2.48/1.57 % (21810)Memory used [KB]: 1407
% 2.48/1.57 % (21810)Time elapsed: 0.003 s
% 2.48/1.57 % (21810)Instructions burned: 4 (million)
% 2.48/1.57 % (21810)------------------------------
% 2.48/1.57 % (21810)------------------------------
% 2.48/1.57 % (21807)Instruction limit reached!
% 2.48/1.57 % (21807)------------------------------
% 2.48/1.57 % (21807)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.48/1.57 % (21807)Termination reason: Unknown
% 2.48/1.57 % (21807)Termination phase: shuffling
% 2.48/1.57
% 2.48/1.57 % (21807)Memory used [KB]: 1535
% 2.48/1.57 % (21807)Time elapsed: 0.003 s
% 2.48/1.57 % (21807)Instructions burned: 7 (million)
% 2.48/1.57 % (21807)------------------------------
% 2.48/1.57 % (21807)------------------------------
% 2.48/1.57 % (21812)Instruction limit reached!
% 2.48/1.57 % (21812)------------------------------
% 2.48/1.57 % (21812)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.48/1.57 % (21812)Termination reason: Unknown
% 2.48/1.57 % (21812)Termination phase: shuffling
% 2.48/1.57
% 2.48/1.57 % (21812)Memory used [KB]: 1663
% 2.48/1.57 % (21812)Time elapsed: 0.008 s
% 2.48/1.57 % (21812)Instructions burned: 20 (million)
% 2.48/1.57 % (21812)------------------------------
% 2.48/1.57 % (21812)------------------------------
% 2.48/1.58 % (21808)Instruction limit reached!
% 2.48/1.58 % (21808)------------------------------
% 2.48/1.58 % (21808)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.48/1.58 % (21808)Termination reason: Unknown
% 2.48/1.58 % (21808)Termination phase: shuffling
% 2.48/1.58
% 2.48/1.58 % (21808)Memory used [KB]: 1791
% 2.48/1.58 % (21808)Time elapsed: 0.011 s
% 2.48/1.58 % (21808)Instructions burned: 29 (million)
% 2.48/1.58 % (21808)------------------------------
% 2.48/1.58 % (21808)------------------------------
% 2.48/1.58 % (21820)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/3Mi)
% 2.48/1.58 % (21821)lrs+1002_1:1_cnfonf=lazy_not_be_gen:hud=14:prag=on:sp=weighted_frequency:tnu=1:i=37:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/37Mi)
% 2.48/1.58 % (21823)lrs+2_16:1_acc=model:au=on:bd=off:c=on:e2e=on:nm=2:sos=all:i=15:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/15Mi)
% 2.48/1.58 % (21820)Instruction limit reached!
% 2.48/1.58 % (21820)------------------------------
% 2.48/1.58 % (21820)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.48/1.58 % (21820)Termination reason: Unknown
% 2.48/1.58 % (21820)Termination phase: shuffling
% 2.48/1.58
% 2.48/1.58 % (21820)Memory used [KB]: 1407
% 2.48/1.58 % (21820)Time elapsed: 0.003 s
% 2.48/1.58 % (21820)Instructions burned: 5 (million)
% 2.48/1.58 % (21820)------------------------------
% 2.48/1.58 % (21820)------------------------------
% 2.48/1.58 % (21826)dis+21_1:1_cbe=off:cnfonf=off:fs=off:fsr=off:hud=1:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/3Mi)
% 2.48/1.58 % (21823)Instruction limit reached!
% 2.48/1.58 % (21823)------------------------------
% 2.48/1.58 % (21823)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.48/1.58 % (21823)Termination reason: Unknown
% 2.48/1.58 % (21823)Termination phase: shuffling
% 2.48/1.58
% 2.48/1.58 % (21823)Memory used [KB]: 1663
% 2.48/1.58 % (21823)Time elapsed: 0.007 s
% 2.48/1.58 % (21823)Instructions burned: 17 (million)
% 2.48/1.58 % (21823)------------------------------
% 2.48/1.58 % (21823)------------------------------
% 2.48/1.58 % (21826)Instruction limit reached!
% 2.48/1.58 % (21826)------------------------------
% 2.48/1.58 % (21826)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.48/1.58 % (21826)Termination reason: Unknown
% 2.48/1.58 % (21826)Termination phase: shuffling
% 2.48/1.58
% 2.48/1.58 % (21826)Memory used [KB]: 1407
% 2.48/1.58 % (21826)Time elapsed: 0.003 s
% 2.48/1.58 % (21826)Instructions burned: 6 (million)
% 2.48/1.58 % (21826)------------------------------
% 2.48/1.58 % (21826)------------------------------
% 2.48/1.58 % (21830)lrs+1002_1:1_aac=none:au=on:cnfonf=lazy_gen:plsq=on:plsqc=1:plsqr=4203469,65536:i=1041:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/1041Mi)
% 2.48/1.59 % (21821)Instruction limit reached!
% 2.48/1.59 % (21821)------------------------------
% 2.48/1.59 % (21821)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.48/1.59 % (21821)Termination reason: Unknown
% 2.48/1.59 % (21821)Termination phase: shuffling
% 2.48/1.59
% 2.48/1.59 % (21821)Memory used [KB]: 2174
% 2.48/1.59 % (21821)Time elapsed: 0.012 s
% 2.48/1.59 % (21821)Instructions burned: 39 (million)
% 2.48/1.59 % (21821)------------------------------
% 2.48/1.59 % (21821)------------------------------
% 2.48/1.59 % (21834)lrs+10_1:1_av=off:chr=on:plsq=on:slsq=on:i=7:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/7Mi)
% 2.48/1.59 % (21834)Instruction limit reached!
% 2.48/1.59 % (21834)------------------------------
% 2.48/1.59 % (21834)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.48/1.59 % (21834)Termination reason: Unknown
% 2.48/1.59 % (21834)Termination phase: shuffling
% 2.48/1.59
% 2.48/1.59 % (21834)Memory used [KB]: 1535
% 2.48/1.59 % (21834)Time elapsed: 0.004 s
% 2.48/1.59 % (21834)Instructions burned: 10 (million)
% 2.48/1.59 % (21834)------------------------------
% 2.48/1.59 % (21834)------------------------------
% 2.48/1.59 % (21837)lrs+10_1:1_acc=on:amm=sco:cs=on:tgt=full:i=16:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/16Mi)
% 2.48/1.59 % (21838)lrs+21_1:1_au=on:cnfonf=off:fd=preordered:fe=off:fsr=off:hud=11:inj=on:kws=precedence:s2pl=no:sp=weighted_frequency:tgt=full:i=3:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/3Mi)
% 2.48/1.59 % (21838)Instruction limit reached!
% 2.48/1.59 % (21838)------------------------------
% 2.48/1.59 % (21838)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.48/1.59 % (21838)Termination reason: Unknown
% 2.48/1.59 % (21838)Termination phase: shuffling
% 2.48/1.59
% 2.48/1.59 % (21838)Memory used [KB]: 1407
% 2.48/1.59 % (21838)Time elapsed: 0.002 s
% 2.48/1.59 % (21838)Instructions burned: 3 (million)
% 2.48/1.59 % (21838)------------------------------
% 2.48/1.59 % (21838)------------------------------
% 2.54/1.60 % (21841)lrs+2_1:1_apa=on:au=on:bd=preordered:cnfonf=off:cs=on:ixr=off:sos=on:i=3:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/3Mi)
% 2.54/1.60 % (21837)Instruction limit reached!
% 2.54/1.60 % (21837)------------------------------
% 2.54/1.60 % (21837)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.60 % (21837)Termination reason: Unknown
% 2.54/1.60 % (21837)Termination phase: shuffling
% 2.54/1.60
% 2.54/1.60 % (21837)Memory used [KB]: 1663
% 2.54/1.60 % (21837)Time elapsed: 0.007 s
% 2.54/1.60 % (21837)Instructions burned: 19 (million)
% 2.54/1.60 % (21837)------------------------------
% 2.54/1.60 % (21837)------------------------------
% 2.54/1.60 % (21841)Instruction limit reached!
% 2.54/1.60 % (21841)------------------------------
% 2.54/1.60 % (21841)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.60 % (21841)Termination reason: Unknown
% 2.54/1.60 % (21841)Termination phase: shuffling
% 2.54/1.60
% 2.54/1.60 % (21841)Memory used [KB]: 1407
% 2.54/1.60 % (21841)Time elapsed: 0.003 s
% 2.54/1.60 % (21841)Instructions burned: 5 (million)
% 2.54/1.60 % (21841)------------------------------
% 2.54/1.60 % (21841)------------------------------
% 2.54/1.60 % (21842)lrs+10_1:1_cnfonf=off:cs=on:hud=3:prag=on:sup=off:i=7:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/7Mi)
% 2.54/1.60 % (21842)Instruction limit reached!
% 2.54/1.60 % (21842)------------------------------
% 2.54/1.60 % (21842)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.60 % (21842)Termination reason: Unknown
% 2.54/1.60 % (21842)Termination phase: shuffling
% 2.54/1.60
% 2.54/1.60 % (21842)Memory used [KB]: 1535
% 2.54/1.60 % (21842)Time elapsed: 0.004 s
% 2.54/1.60 % (21842)Instructions burned: 9 (million)
% 2.54/1.60 % (21842)------------------------------
% 2.54/1.60 % (21842)------------------------------
% 2.54/1.60 % (21846)dis+1002_1:1_add=large:cnfonf=lazy_pi_sigma_gen:fe=off:prag=on:i=3:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/3Mi)
% 2.54/1.60 % (21846)Instruction limit reached!
% 2.54/1.60 % (21846)------------------------------
% 2.54/1.60 % (21846)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.60 % (21846)Termination reason: Unknown
% 2.54/1.60 % (21846)Termination phase: shuffling
% 2.54/1.60
% 2.54/1.60 % (21846)Memory used [KB]: 1407
% 2.54/1.60 % (21846)Time elapsed: 0.002 s
% 2.54/1.60 % (21846)Instructions burned: 3 (million)
% 2.54/1.60 % (21846)------------------------------
% 2.54/1.60 % (21846)------------------------------
% 2.54/1.61 % (21847)dis+1004_1:1_cha=on:cs=on:fe=off:hud=1:i=4:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/4Mi)
% 2.54/1.61 % (21849)lrs+1002_1:1_anc=all_dependent:au=on:cbe=off:fde=unused:ntd=on:i=18:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/18Mi)
% 2.54/1.61 % (21847)Instruction limit reached!
% 2.54/1.61 % (21847)------------------------------
% 2.54/1.61 % (21847)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.61 % (21847)Termination reason: Unknown
% 2.54/1.61 % (21847)Termination phase: shuffling
% 2.54/1.61
% 2.54/1.61 % (21847)Memory used [KB]: 1407
% 2.54/1.61 % (21847)Time elapsed: 0.003 s
% 2.54/1.61 % (21847)Instructions burned: 5 (million)
% 2.54/1.61 % (21847)------------------------------
% 2.54/1.61 % (21847)------------------------------
% 2.54/1.61 % (21851)lrs+10_1:1_e2e=on:sd=1:sgt=8:ss=axioms:i=710:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/710Mi)
% 2.54/1.61 % (21852)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/6Mi)
% 2.54/1.61 % (21849)Instruction limit reached!
% 2.54/1.61 % (21849)------------------------------
% 2.54/1.61 % (21849)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.61 % (21849)Termination reason: Unknown
% 2.54/1.61 % (21849)Termination phase: shuffling
% 2.54/1.61
% 2.54/1.61 % (21849)Memory used [KB]: 1663
% 2.54/1.61 % (21849)Time elapsed: 0.007 s
% 2.54/1.61 % (21849)Instructions burned: 18 (million)
% 2.54/1.61 % (21849)------------------------------
% 2.54/1.61 % (21849)------------------------------
% 2.54/1.62 % (21852)Instruction limit reached!
% 2.54/1.62 % (21852)------------------------------
% 2.54/1.62 % (21852)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.62 % (21852)Termination reason: Unknown
% 2.54/1.62 % (21852)Termination phase: shuffling
% 2.54/1.62
% 2.54/1.62 % (21852)Memory used [KB]: 1535
% 2.54/1.62 % (21852)Time elapsed: 0.004 s
% 2.54/1.62 % (21852)Instructions burned: 8 (million)
% 2.54/1.62 % (21852)------------------------------
% 2.54/1.62 % (21852)------------------------------
% 2.54/1.62 % (21806)Instruction limit reached!
% 2.54/1.62 % (21806)------------------------------
% 2.54/1.62 % (21806)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.62 % (21806)Termination reason: Unknown
% 2.54/1.62 % (21806)Termination phase: Saturation
% 2.54/1.62
% 2.54/1.62 % (21806)Memory used [KB]: 7419
% 2.54/1.62 % (21806)Time elapsed: 0.053 s
% 2.54/1.62 % (21806)Instructions burned: 185 (million)
% 2.54/1.62 % (21806)------------------------------
% 2.54/1.62 % (21806)------------------------------
% 2.54/1.62 % (21858)dis+1002_5:1_au=on:bd=off:e2e=on:fde=none:fs=off:fsr=off:sos=on:i=902:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/902Mi)
% 2.54/1.62 % (21860)dis+21_1:8_apa=on:cnfonf=off:fd=off:fsr=off:hud=0:ins=1:kws=inv_frequency:nwc=10.0:ss=axioms:st=5.0:i=21:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/21Mi)
% 2.54/1.63 % (21862)dis+10_1:1_cnfonf=lazy_gen:fe=off:i=5:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/5Mi)
% 2.54/1.63 % (21863)lrs+2_1:1_cnfonf=lazy_not_gen_be_off:cs=on:fe=off:hud=10:inj=on:ins=3:plsq=on:plsqc=1:sd=10:ss=axioms:tnu=1:i=6:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/6Mi)
% 2.54/1.63 % (21862)Instruction limit reached!
% 2.54/1.63 % (21862)------------------------------
% 2.54/1.63 % (21862)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.63 % (21862)Termination reason: Unknown
% 2.54/1.63 % (21862)Termination phase: shuffling
% 2.54/1.63
% 2.54/1.63 % (21862)Memory used [KB]: 1535
% 2.54/1.63 % (21862)Time elapsed: 0.003 s
% 2.54/1.63 % (21862)Instructions burned: 5 (million)
% 2.54/1.63 % (21862)------------------------------
% 2.54/1.63 % (21862)------------------------------
% 2.54/1.63 % (21863)Instruction limit reached!
% 2.54/1.63 % (21863)------------------------------
% 2.54/1.63 % (21863)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.63 % (21863)Termination reason: Unknown
% 2.54/1.63 % (21863)Termination phase: shuffling
% 2.54/1.63
% 2.54/1.63 % (21863)Memory used [KB]: 1663
% 2.54/1.63 % (21863)Time elapsed: 0.004 s
% 2.54/1.63 % (21863)Instructions burned: 8 (million)
% 2.54/1.63 % (21863)------------------------------
% 2.54/1.63 % (21863)------------------------------
% 2.54/1.63 % (21860)Instruction limit reached!
% 2.54/1.63 % (21860)------------------------------
% 2.54/1.63 % (21860)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.63 % (21860)Termination reason: Unknown
% 2.54/1.63 % (21860)Termination phase: shuffling
% 2.54/1.63
% 2.54/1.63 % (21860)Memory used [KB]: 1791
% 2.54/1.63 % (21860)Time elapsed: 0.008 s
% 2.54/1.63 % (21860)Instructions burned: 21 (million)
% 2.54/1.63 % (21860)------------------------------
% 2.54/1.63 % (21860)------------------------------
% 2.54/1.64 % (21870)lrs+1002_1:128_au=on:c=on:fsr=off:piset=equals:i=377:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/377Mi)
% 2.54/1.64 % (21871)dis+1010_1:4_atotf=0.2:c=on:cbe=off:cnfonf=lazy_simp:fe=off:ins=2:ntd=on:s2a=on:s2at=5.0:sgt=5:ss=axioms:st=1.5:i=779:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/779Mi)
% 2.54/1.64 % (21872)lrs+10_1:1_cnfonf=lazy_not_be_gen:ntd=on:sp=const_min:ss=axioms:sup=off:i=19:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/19Mi)
% 2.54/1.65 % (21872)Instruction limit reached!
% 2.54/1.65 % (21872)------------------------------
% 2.54/1.65 % (21872)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.65 % (21872)Termination reason: Unknown
% 2.54/1.65 % (21872)Termination phase: shuffling
% 2.54/1.65
% 2.54/1.65 % (21872)Memory used [KB]: 1918
% 2.54/1.65 % (21872)Time elapsed: 0.007 s
% 2.54/1.65 % (21872)Instructions burned: 22 (million)
% 2.54/1.65 % (21872)------------------------------
% 2.54/1.65 % (21872)------------------------------
% 2.54/1.65 % (21811)Instruction limit reached!
% 2.54/1.65 % (21811)------------------------------
% 2.54/1.65 % (21811)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.65 % (21811)Termination reason: Unknown
% 2.54/1.65 % (21811)Termination phase: Saturation
% 2.54/1.65
% 2.54/1.65 % (21811)Memory used [KB]: 7419
% 2.54/1.65 % (21811)Time elapsed: 0.084 s
% 2.54/1.65 % (21811)Instructions burned: 276 (million)
% 2.54/1.65 % (21811)------------------------------
% 2.54/1.65 % (21811)------------------------------
% 2.54/1.66 % (21882)lrs+1010_1:1_au=on:s2a=on:sd=1:sgt=50:ss=axioms:i=879:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/879Mi)
% 2.54/1.66 % (21885)dis+1002_1:128_acc=on:er=filter:i=17:si=on:rtra=on_0 on DTF2THF_21556 for (2999ds/17Mi)
% 2.54/1.66 % (21885)Instruction limit reached!
% 2.54/1.66 % (21885)------------------------------
% 2.54/1.66 % (21885)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.66 % (21885)Termination reason: Unknown
% 2.54/1.66 % (21885)Termination phase: shuffling
% 2.54/1.66
% 2.54/1.66 % (21885)Memory used [KB]: 1663
% 2.54/1.66 % (21885)Time elapsed: 0.007 s
% 2.54/1.66 % (21885)Instructions burned: 19 (million)
% 2.54/1.66 % (21885)------------------------------
% 2.54/1.66 % (21885)------------------------------
% 2.54/1.67 % (21858)First to succeed.
% 2.54/1.67 % (21858)Refutation found. Thanks to Tanya!
% 2.54/1.67 % SZS status Theorem for DTF2THF_21556
% 2.54/1.67 % SZS output start Proof for DTF2THF_21556
% 2.54/1.67 thf(type_def_5, type, bexp: $tType).
% 2.54/1.67 thf(type_def_6, type, list_char: $tType).
% 2.54/1.67 thf(type_def_7, type, int: $tType).
% 2.54/1.67 thf(type_def_9, type, set_list_typerep: $tType).
% 2.54/1.67 thf(type_def_10, type, typerep: $tType).
% 2.54/1.67 thf(type_def_11, type, list_typerep: $tType).
% 2.54/1.67 thf(type_def_12, type, set_typerep: $tType).
% 2.54/1.67 thf(type_def_13, type, set_Pr1148378109ar_int: $tType).
% 2.54/1.67 thf(type_def_14, type, produc1260470173ar_int: $tType).
% 2.54/1.67 thf(type_def_15, type, com: $tType).
% 2.54/1.67 thf(type_def_16, type, nat: $tType).
% 2.54/1.67 thf(type_def_17, type, set_Pr1986765409at_nat: $tType).
% 2.54/1.67 thf(type_def_18, type, set_nat: $tType).
% 2.54/1.67 thf(type_def_19, type, set_Pr1333062727ar_int: $tType).
% 2.54/1.67 thf(type_def_20, type, aexp: $tType).
% 2.54/1.67 thf(type_def_21, type, product_prod_nat_nat: $tType).
% 2.54/1.67 thf(type_def_22, type, list_nat: $tType).
% 2.54/1.67 thf(type_def_23, type, set_Pr1560408065st_nat: $tType).
% 2.54/1.67 thf(type_def_24, type, set_Pr1097818217yperep: $tType).
% 2.54/1.67 thf(type_def_25, type, set_Pr446800905yperep: $tType).
% 2.54/1.67 thf(type_def_26, type, list_P1741976099ar_int: $tType).
% 2.54/1.67 thf(type_def_27, type, set_li1762364675ar_int: $tType).
% 2.54/1.67 thf(type_def_28, type, produc1699244961st_nat: $tType).
% 2.54/1.67 thf(type_def_29, type, produc490010537yperep: $tType).
% 2.54/1.67 thf(type_def_30, type, produc1346207591ar_int: $tType).
% 2.54/1.67 thf(type_def_31, type, produc1788831497yperep: $tType).
% 2.54/1.67 thf(type_def_32, type, literal: $tType).
% 2.54/1.67 thf(func_def_0, type, set_Pr1333062727ar_int: $tType).
% 2.54/1.67 thf(func_def_1, type, produc1346207591ar_int: $tType).
% 2.54/1.67 thf(func_def_2, type, set_li1762364675ar_int: $tType).
% 2.54/1.67 thf(func_def_3, type, set_Pr446800905yperep: $tType).
% 2.54/1.67 thf(func_def_4, type, list_P1741976099ar_int: $tType).
% 2.54/1.67 thf(func_def_5, type, set_Pr1148378109ar_int: $tType).
% 2.54/1.67 thf(func_def_6, type, set_Pr1560408065st_nat: $tType).
% 2.54/1.67 thf(func_def_7, type, produc490010537yperep: $tType).
% 2.54/1.67 thf(func_def_8, type, produc1260470173ar_int: $tType).
% 2.54/1.67 thf(func_def_9, type, produc1699244961st_nat: $tType).
% 2.54/1.67 thf(func_def_10, type, set_Pr1097818217yperep: $tType).
% 2.54/1.67 thf(func_def_11, type, set_Pr1986765409at_nat: $tType).
% 2.54/1.67 thf(func_def_12, type, produc1788831497yperep: $tType).
% 2.54/1.67 thf(func_def_13, type, product_prod_nat_nat: $tType).
% 2.54/1.67 thf(func_def_14, type, set_list_typerep: $tType).
% 2.54/1.67 thf(func_def_15, type, list_typerep: $tType).
% 2.54/1.67 thf(func_def_16, type, set_typerep: $tType).
% 2.54/1.67 thf(func_def_17, type, list_char: $tType).
% 2.54/1.67 thf(func_def_18, type, list_nat: $tType).
% 2.54/1.67 thf(func_def_19, type, set_nat: $tType).
% 2.54/1.67 thf(func_def_20, type, typerep: $tType).
% 2.54/1.67 thf(func_def_21, type, literal: $tType).
% 2.54/1.67 thf(func_def_22, type, bexp: $tType).
% 2.54/1.67 thf(func_def_23, type, aexp: $tType).
% 2.54/1.67 thf(func_def_24, type, nat: $tType).
% 2.54/1.67 thf(func_def_25, type, int: $tType).
% 2.54/1.67 thf(func_def_26, type, com: $tType).
% 2.54/1.67 thf(func_def_27, type, bval: bexp > (list_char > int) > $o).
% 2.54/1.67 thf(func_def_28, type, bNF_Gr457912949yperep: set_list_typerep > typerep > set_list_typerep).
% 2.54/1.67 thf(func_def_29, type, bNF_Gr1303086585yperep: set_list_typerep > list_typerep > set_typerep).
% 2.54/1.67 thf(func_def_30, type, bNF_Gr202451329ar_int: set_Pr1148378109ar_int > (produc1260470173ar_int > com) > (produc1260470173ar_int > list_char > int) > set_Pr1148378109ar_int).
% 2.54/1.67 thf(func_def_31, type, bNF_Gr749752805at_nat: set_Pr1148378109ar_int > (produc1260470173ar_int > nat) > (produc1260470173ar_int > nat) > set_Pr1986765409at_nat).
% 2.54/1.67 thf(func_def_32, type, bNF_Gr1247133574at_nat: set_Pr1986765409at_nat > (nat > nat) > set_Pr1986765409at_nat).
% 2.54/1.67 thf(func_def_33, type, bNF_Gr808751971at_nat: set_nat > set_Pr1986765409at_nat > (nat > nat) > set_Pr1986765409at_nat).
% 2.54/1.67 thf(func_def_34, type, bNF_Gr1143394412nt_nat: set_Pr1148378109ar_int > set_Pr1986765409at_nat > (produc1260470173ar_int > nat) > set_Pr1333062727ar_int).
% 2.54/1.67 thf(func_def_35, type, big_big_step: produc1260470173ar_int > (list_char > int) > $o).
% 2.54/1.67 thf(func_def_36, type, assign: list_char > aexp > com).
% 2.54/1.67 thf(func_def_37, type, if: bexp > com > com > com).
% 2.54/1.67 thf(func_def_38, type, skip: com).
% 2.54/1.67 thf(func_def_39, type, seq: com > com > com).
% 2.54/1.67 thf(func_def_40, type, while: bexp > com > com).
% 2.54/1.67 thf(func_def_41, type, size_com: com > nat).
% 2.54/1.67 thf(func_def_42, type, unique1592618082ux_nat: product_prod_nat_nat > $o).
% 2.54/1.67 thf(func_def_43, type, plus_plus_nat: nat > nat > nat).
% 2.54/1.67 thf(func_def_44, type, zero_zero_nat: nat).
% 2.54/1.67 thf(func_def_45, type, append_nat: list_nat > list_nat > list_nat).
% 2.54/1.67 thf(func_def_46, type, append_typerep: list_typerep > list_typerep > list_typerep).
% 2.54/1.67 thf(func_def_47, type, gen_length_typerep: nat > list_typerep > nat).
% 2.54/1.67 thf(func_def_48, type, lex_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat).
% 2.54/1.67 thf(func_def_49, type, lex_typerep: set_Pr1097818217yperep > set_Pr446800905yperep).
% 2.54/1.67 thf(func_def_50, type, lexord_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat).
% 2.54/1.67 thf(func_def_51, type, lexord_typerep: set_Pr1097818217yperep > set_Pr446800905yperep).
% 2.54/1.67 thf(func_def_52, type, cons_nat: nat > list_nat > list_nat).
% 2.54/1.67 thf(func_def_53, type, cons_P1254790739ar_int: produc1260470173ar_int > list_P1741976099ar_int > list_P1741976099ar_int).
% 2.54/1.67 thf(func_def_54, type, cons_typerep: typerep > list_typerep > list_typerep).
% 2.54/1.67 thf(func_def_55, type, size_list_typerep: (typerep > nat) > list_typerep > nat).
% 2.54/1.67 thf(func_def_56, type, listrel1_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat).
% 2.54/1.67 thf(func_def_57, type, listrel1_typerep: set_Pr1097818217yperep > set_Pr446800905yperep).
% 2.54/1.67 thf(func_def_58, type, set_Co1954412371ar_int: set_Pr1148378109ar_int > set_li1762364675ar_int > set_li1762364675ar_int).
% 2.54/1.67 thf(func_def_59, type, set_Cons_typerep: set_typerep > set_list_typerep > set_list_typerep).
% 2.54/1.67 thf(func_def_60, type, suc: nat > nat).
% 2.54/1.67 thf(func_def_61, type, size_size_com: com > nat).
% 2.54/1.67 thf(func_def_62, type, size_size_list_nat: list_nat > nat).
% 2.54/1.67 thf(func_def_63, type, size_s416147576yperep: list_typerep > nat).
% 2.54/1.67 thf(func_def_64, type, size_size_typerep: typerep > nat).
% 2.54/1.67 thf(func_def_65, type, produc1193801173ar_int: com > (list_char > int) > produc1260470173ar_int).
% 2.54/1.67 thf(func_def_66, type, produc1625736153st_nat: list_nat > list_nat > produc1699244961st_nat).
% 2.54/1.67 thf(func_def_67, type, produc1695567329yperep: list_typerep > list_typerep > produc490010537yperep).
% 2.54/1.67 thf(func_def_68, type, product_Pair_nat_nat: nat > nat > product_prod_nat_nat).
% 2.54/1.67 thf(func_def_69, type, produc317451735ar_int: produc1260470173ar_int > produc1260470173ar_int > produc1346207591ar_int).
% 2.54/1.67 thf(func_def_70, type, produc2071514689yperep: typerep > typerep > produc1788831497yperep).
% 2.54/1.67 thf(func_def_71, type, relati186416454e_flip: ((list_char > int) > (list_char > int) > $o) > (list_char > int) > (list_char > int) > $o).
% 2.54/1.67 thf(func_def_72, type, relati23543761ar_int: ((list_char > int) > (list_char > int) > $o) > bexp > com > nat > (list_char > int) > (list_char > int) > $o).
% 2.54/1.67 thf(func_def_73, type, relati2102071307_hoare: ((list_char > int) > (list_char > int) > $o) > com > com > ((list_char > int) > (list_char > int) > $o) > $o).
% 2.54/1.67 thf(func_def_74, type, relati775585786_valid: ((list_char > int) > (list_char > int) > $o) > com > com > ((list_char > int) > (list_char > int) > $o) > $o).
% 2.54/1.67 thf(func_def_75, type, collec672902542ar_int: (list_P1741976099ar_int > $o) > set_li1762364675ar_int).
% 2.54/1.67 thf(func_def_76, type, collect_list_typerep: (list_typerep > $o) > set_list_typerep).
% 2.54/1.67 thf(func_def_77, type, collec770796680ar_int: (produc1260470173ar_int > $o) > set_Pr1148378109ar_int).
% 2.54/1.67 thf(func_def_78, type, collec7649004at_nat: (product_prod_nat_nat > $o) > set_Pr1986765409at_nat).
% 2.54/1.67 thf(func_def_79, type, collec1834387154ar_int: (produc1346207591ar_int > $o) > set_Pr1333062727ar_int).
% 2.54/1.67 thf(func_def_80, type, typerep2: literal > list_typerep > typerep).
% 2.54/1.67 thf(func_def_81, type, size_typerep: typerep > nat).
% 2.54/1.67 thf(func_def_82, type, member2052091212ar_int: list_P1741976099ar_int > set_li1762364675ar_int > $o).
% 2.54/1.67 thf(func_def_83, type, member_list_typerep: list_typerep > set_list_typerep > $o).
% 2.54/1.67 thf(func_def_84, type, member_nat: nat > set_nat > $o).
% 2.54/1.67 thf(func_def_85, type, member92250950ar_int: produc1260470173ar_int > set_Pr1148378109ar_int > $o).
% 2.54/1.67 thf(func_def_86, type, member1926390090st_nat: produc1699244961st_nat > set_Pr1560408065st_nat > $o).
% 2.54/1.67 thf(func_def_87, type, member1812711762yperep: produc490010537yperep > set_Pr446800905yperep > $o).
% 2.54/1.67 thf(func_def_88, type, member701585322at_nat: product_prod_nat_nat > set_Pr1986765409at_nat > $o).
% 2.54/1.67 thf(func_def_89, type, member100911538yperep: produc1788831497yperep > set_Pr1097818217yperep > $o).
% 2.54/1.67 thf(func_def_90, type, member_typerep: typerep > set_typerep > $o).
% 2.54/1.67 thf(func_def_91, type, p: (list_char > int) > (list_char > int) > $o).
% 2.54/1.67 thf(func_def_92, type, q: (list_char > int) > (list_char > int) > $o).
% 2.54/1.67 thf(func_def_93, type, b: bexp).
% 2.54/1.67 thf(func_def_94, type, c: com).
% 2.54/1.67 thf(func_def_95, type, c2: com).
% 2.54/1.67 thf(func_def_96, type, k: nat).
% 2.54/1.67 thf(func_def_97, type, ka: nat).
% 2.54/1.67 thf(func_def_98, type, s: list_char > int).
% 2.54/1.67 thf(func_def_99, type, s_a: list_char > int).
% 2.54/1.67 thf(func_def_100, type, s2: list_char > int).
% 2.54/1.67 thf(func_def_101, type, sa: list_char > int).
% 2.54/1.67 thf(func_def_102, type, t: list_char > int).
% 2.54/1.67 thf(func_def_103, type, t_a: list_char > int).
% 2.54/1.67 thf(func_def_104, type, t2: list_char > int).
% 2.54/1.67 thf(func_def_105, type, ta: list_char > int).
% 2.54/1.67 thf(func_def_106, type, u: list_char > int).
% 2.54/1.67 thf(func_def_107, type, ua: list_char > int).
% 2.54/1.67 thf(func_def_127, type, sP0: (com > $o) > $o).
% 2.54/1.67 thf(func_def_128, type, sP1: bexp > com > (list_char > int) > (nat > (list_char > int) > (list_char > int) > $o) > nat > com > (list_char > int) > $o).
% 2.54/1.67 thf(func_def_129, type, sK2: (produc1260470173ar_int > $o) > list_char > int).
% 2.54/1.67 thf(func_def_130, type, sK3: (produc1260470173ar_int > $o) > com).
% 2.54/1.67 thf(func_def_131, type, sK4: nat > nat).
% 2.54/1.67 thf(func_def_132, type, sK5: set_Pr1097818217yperep > typerep > list_typerep > list_typerep > typerep).
% 2.54/1.67 thf(func_def_133, type, sK6: set_Pr1097818217yperep > typerep > list_typerep > list_typerep > list_typerep).
% 2.54/1.67 thf(func_def_134, type, sK7: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_135, type, sK8: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_136, type, sK9: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_137, type, sK10: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_138, type, sK11: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > com > list_char > int).
% 2.54/1.67 thf(func_def_139, type, sK12: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > com > list_char > int).
% 2.54/1.67 thf(func_def_140, type, sK13: produc1260470173ar_int > list_char > int).
% 2.54/1.67 thf(func_def_141, type, sK14: produc1260470173ar_int > com).
% 2.54/1.67 thf(func_def_142, type, sK15: list_typerep > nat > typerep).
% 2.54/1.67 thf(func_def_143, type, sK16: list_typerep > nat > list_typerep).
% 2.54/1.67 thf(func_def_144, type, sK17: (com > $o) > com).
% 2.54/1.67 thf(func_def_145, type, sK18: (com > $o) > com).
% 2.54/1.67 thf(func_def_146, type, sK19: (com > $o) > bexp).
% 2.54/1.67 thf(func_def_147, type, sK20: (com > $o) > com).
% 2.54/1.67 thf(func_def_148, type, sK21: (com > $o) > com).
% 2.54/1.67 thf(func_def_149, type, sK22: (com > $o) > com).
% 2.54/1.67 thf(func_def_150, type, sK23: (com > $o) > bexp).
% 2.54/1.67 thf(func_def_151, type, sK24: (com > $o) > list_char).
% 2.54/1.67 thf(func_def_152, type, sK25: (com > $o) > aexp).
% 2.54/1.67 thf(func_def_153, type, sK26: (produc1260470173ar_int > $o) > com).
% 2.54/1.67 thf(func_def_154, type, sK27: (produc1260470173ar_int > $o) > list_char > int).
% 2.54/1.67 thf(func_def_155, type, sK28: com > com > list_char > int).
% 2.54/1.67 thf(func_def_156, type, sK29: com > com > list_char > int).
% 2.54/1.67 thf(func_def_157, type, sK30: (list_char > int) > (list_char > int) > com > com > list_char > int).
% 2.54/1.67 thf(func_def_158, type, sK31: bexp > com > (list_char > int) > (nat > (list_char > int) > (list_char > int) > $o) > nat > com > (list_char > int) > list_char > int).
% 2.54/1.67 thf(func_def_159, type, sK32: bexp > com > (list_char > int) > (nat > (list_char > int) > (list_char > int) > $o) > nat > com > (list_char > int) > list_char > int).
% 2.54/1.67 thf(func_def_160, type, sK33: nat > bexp > ((list_char > int) > (list_char > int) > $o) > (nat > (list_char > int) > (list_char > int) > $o) > com > com > list_char > int).
% 2.54/1.67 thf(func_def_161, type, sK34: nat > bexp > ((list_char > int) > (list_char > int) > $o) > (nat > (list_char > int) > (list_char > int) > $o) > com > com > list_char > int).
% 2.54/1.67 thf(func_def_162, type, sK35: nat > bexp > (nat > (list_char > int) > (list_char > int) > $o) > com > nat).
% 2.54/1.67 thf(func_def_163, type, sK36: nat > bexp > (nat > (list_char > int) > (list_char > int) > $o) > com > list_char > int).
% 2.54/1.67 thf(func_def_164, type, sK37: nat > bexp > (nat > (list_char > int) > (list_char > int) > $o) > com > list_char > int).
% 2.54/1.67 thf(func_def_165, type, sK38: list_nat > set_Pr1986765409at_nat > list_nat > nat > list_nat).
% 2.54/1.67 thf(func_def_166, type, sK39: list_nat > set_Pr1986765409at_nat > list_nat > nat > nat).
% 2.54/1.67 thf(func_def_167, type, sK40: (product_prod_nat_nat > $o) > nat).
% 2.54/1.67 thf(func_def_168, type, sK41: (product_prod_nat_nat > $o) > nat).
% 2.54/1.67 thf(func_def_169, type, sK42: (list_char > int) > (list_char > int) > list_char > int).
% 2.54/1.67 thf(func_def_170, type, sK43: (list_char > int) > (list_char > int) > list_char > int).
% 2.54/1.67 thf(func_def_171, type, sK44: list_typerep > nat > typerep).
% 2.54/1.67 thf(func_def_172, type, sK45: list_typerep > nat > list_typerep).
% 2.54/1.67 thf(func_def_173, type, sK46: list_nat > nat > set_Pr1986765409at_nat > list_nat > nat).
% 2.54/1.67 thf(func_def_174, type, sK47: list_nat > nat > set_Pr1986765409at_nat > list_nat > list_nat).
% 2.54/1.67 thf(func_def_175, type, sK48: (list_char > int) > (list_char > int) > com > bexp > list_char > int).
% 2.54/1.67 thf(func_def_176, type, sK49: com > bexp).
% 2.54/1.67 thf(func_def_177, type, sK50: com > com).
% 2.54/1.67 thf(func_def_178, type, sK51: com > com).
% 2.54/1.67 thf(func_def_179, type, sK52: com > com).
% 2.54/1.67 thf(func_def_180, type, sK53: com > com).
% 2.54/1.67 thf(func_def_181, type, sK54: com > com).
% 2.54/1.67 thf(func_def_182, type, sK55: com > bexp).
% 2.54/1.67 thf(func_def_183, type, sK56: com > list_char).
% 2.54/1.67 thf(func_def_184, type, sK57: com > aexp).
% 2.54/1.67 thf(func_def_185, type, sK58: (nat > $o) > nat).
% 2.54/1.67 thf(func_def_186, type, sK59: produc1260470173ar_int > com).
% 2.54/1.67 thf(func_def_187, type, sK60: produc1260470173ar_int > list_char > int).
% 2.54/1.67 thf(func_def_188, type, sK61: list_typerep > list_typerep > set_Pr1097818217yperep > typerep > typerep).
% 2.54/1.67 thf(func_def_189, type, sK62: list_typerep > list_typerep > set_Pr1097818217yperep > typerep > list_typerep).
% 2.54/1.67 thf(func_def_190, type, sK63: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_191, type, sK64: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_192, type, sK65: com > com > list_char > int).
% 2.54/1.67 thf(func_def_193, type, sK66: com > com > list_char > int).
% 2.54/1.67 thf(func_def_194, type, sK67: com > com > list_char > int).
% 2.54/1.67 thf(func_def_195, type, sK68: com > com > list_char > int).
% 2.54/1.67 thf(func_def_196, type, sK69: com > com > list_char > int).
% 2.54/1.67 thf(func_def_197, type, sK70: com > com > list_char > int).
% 2.54/1.67 thf(func_def_198, type, sK71: com > com > list_char > int).
% 2.54/1.67 thf(func_def_199, type, sK72: com > com > list_char > int).
% 2.54/1.67 thf(func_def_200, type, sK73: com > com > list_char > int).
% 2.54/1.67 thf(func_def_201, type, sK74: com > com > list_char > int).
% 2.54/1.67 thf(func_def_202, type, sK75: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > com > list_char > int).
% 2.54/1.67 thf(func_def_203, type, sK76: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > com > list_char > int).
% 2.54/1.67 thf(func_def_204, type, sK77: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_205, type, sK78: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_206, type, sK79: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_207, type, sK80: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_208, type, sK81: set_Pr1986765409at_nat > nat).
% 2.54/1.67 thf(func_def_209, type, sK82: (nat > $o) > nat).
% 2.54/1.67 thf(func_def_210, type, sK83: (nat > nat > $o) > nat).
% 2.54/1.67 thf(func_def_211, type, sK84: (nat > nat > $o) > nat).
% 2.54/1.67 thf(func_def_212, type, sK85: (nat > nat > $o) > nat).
% 2.54/1.67 thf(func_def_213, type, sK86: (nat > nat > $o) > nat).
% 2.54/1.67 thf(func_def_214, type, sK87: bexp > (nat > (list_char > int) > (list_char > int) > $o) > com > nat).
% 2.54/1.67 thf(func_def_215, type, sK88: nat > nat).
% 2.54/1.67 thf(func_def_216, type, sK89: product_prod_nat_nat > nat).
% 2.54/1.67 thf(func_def_217, type, sK90: product_prod_nat_nat > nat).
% 2.54/1.67 thf(func_def_218, type, sK91: set_Pr1097818217yperep > typerep).
% 2.54/1.67 thf(func_def_219, type, sK92: com > (nat > (list_char > int) > (list_char > int) > $o) > bexp > nat).
% 2.54/1.67 thf(func_def_220, type, sK93: set_Pr1986765409at_nat > nat).
% 2.54/1.67 thf(func_def_221, type, sK94: (product_prod_nat_nat > $o) > nat).
% 2.54/1.67 thf(func_def_222, type, sK95: (product_prod_nat_nat > $o) > nat).
% 2.54/1.67 thf(func_def_223, type, sK96: set_Pr1986765409at_nat > nat).
% 2.54/1.67 thf(func_def_224, type, sK97: set_Pr1986765409at_nat > nat).
% 2.54/1.67 thf(func_def_225, type, sK98: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_226, type, sK99: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_227, type, sK100: product_prod_nat_nat > nat).
% 2.54/1.67 thf(func_def_228, type, sK101: product_prod_nat_nat > nat).
% 2.54/1.67 thf(func_def_229, type, sK102: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_230, type, sK103: ((list_char > int) > (list_char > int) > $o) > ((list_char > int) > (list_char > int) > $o) > list_char > int).
% 2.54/1.67 thf(func_def_231, type, sK104: (nat > $o) > nat).
% 2.54/1.67 thf(func_def_232, type, sK105: (nat > nat > $o) > nat).
% 2.54/1.67 thf(func_def_233, type, sK106: (nat > nat > $o) > nat).
% 2.54/1.67 thf(func_def_234, type, sK107: (nat > nat > $o) > nat).
% 2.54/1.67 thf(func_def_235, type, sK108: (nat > nat > $o) > nat).
% 2.54/1.67 thf(func_def_236, type, sK109: (nat > nat > $o) > nat).
% 2.54/1.67 thf(func_def_238, type, ph111: !>[X0: $tType]:(X0)).
% 2.54/1.67 thf(f1404,plain,(
% 2.54/1.67 $false),
% 2.54/1.67 inference(trivial_inequality_removal,[status(thm)],[f1403])).
% 2.54/1.67 thf(f1403,plain,(
% 2.54/1.67 ($true != $true)),
% 2.54/1.67 inference(superposition,[status(thm)],[f1401,f1194])).
% 2.54/1.67 thf(f1194,plain,(
% 2.54/1.67 ((big_big_step @ (produc1193801173ar_int @ c2 @ s_a) @ t_a) = $true)),
% 2.54/1.67 inference(cnf_transformation,[status(thm)],[f354])).
% 2.54/1.67 thf(f354,plain,(
% 2.54/1.67 ((big_big_step @ (produc1193801173ar_int @ c2 @ s_a) @ t_a) = $true)),
% 2.54/1.67 inference(fool_elimination,[status(thm)],[f353])).
% 2.54/1.67 thf(f353,plain,(
% 2.54/1.67 (big_big_step @ (produc1193801173ar_int @ c2 @ s_a) @ t_a)),
% 2.54/1.67 inference(rectify,[status(thm)],[f4])).
% 2.54/1.67 thf(f4,axiom,(
% 2.54/1.67 (big_big_step @ (produc1193801173ar_int @ c2 @ s_a) @ t_a)),
% 2.54/1.67 file('/export/starexec/sandbox2/tmp/tmp.FZqnfaVoyV/DTF2THF_21556.p',fact_3_Suc_Oprems_I4_J)).
% 2.54/1.67 thf(f1401,plain,(
% 2.54/1.67 ((big_big_step @ (produc1193801173ar_int @ c2 @ s_a) @ t_a) != $true)),
% 2.54/1.67 inference(trivial_inequality_removal,[status(thm)],[f1400])).
% 2.54/1.67 thf(f1400,plain,(
% 2.54/1.67 ((big_big_step @ (produc1193801173ar_int @ c2 @ s_a) @ t_a) != $true) | ($true != $true)),
% 2.54/1.67 inference(forward_demodulation,[status(thm)],[f1399,f1057])).
% 2.54/1.67 thf(f1057,plain,(
% 2.54/1.67 ((big_big_step @ (produc1193801173ar_int @ c @ sa) @ ta) = $true)),
% 2.54/1.67 inference(cnf_transformation,[status(thm)],[f314])).
% 2.54/1.67 thf(f314,plain,(
% 2.54/1.67 ((big_big_step @ (produc1193801173ar_int @ c @ sa) @ ta) = $true)),
% 2.54/1.67 inference(fool_elimination,[status(thm)],[f313])).
% 2.54/1.67 thf(f313,plain,(
% 2.54/1.67 (big_big_step @ (produc1193801173ar_int @ c @ sa) @ ta)),
% 2.54/1.67 inference(rectify,[status(thm)],[f3])).
% 2.54/1.67 thf(f3,axiom,(
% 2.54/1.67 (big_big_step @ (produc1193801173ar_int @ c @ sa) @ ta)),
% 2.54/1.67 file('/export/starexec/sandbox2/tmp/tmp.FZqnfaVoyV/DTF2THF_21556.p',fact_2_Suc_Oprems_I3_J)).
% 2.54/1.67 thf(f1399,plain,(
% 2.54/1.67 ((big_big_step @ (produc1193801173ar_int @ c @ sa) @ ta) != $true) | ((big_big_step @ (produc1193801173ar_int @ c2 @ s_a) @ t_a) != $true)),
% 2.54/1.67 inference(trivial_inequality_removal,[status(thm)],[f1398])).
% 2.54/1.67 thf(f1398,plain,(
% 2.54/1.67 ($true != $true) | ((big_big_step @ (produc1193801173ar_int @ c2 @ s_a) @ t_a) != $true) | ((big_big_step @ (produc1193801173ar_int @ c @ sa) @ ta) != $true)),
% 2.54/1.67 inference(forward_demodulation,[status(thm)],[f1393,f1218])).
% 2.54/1.67 thf(f1218,plain,(
% 2.54/1.67 ((bval @ b @ sa) = $true)),
% 2.54/1.67 inference(cnf_transformation,[status(thm)],[f469])).
% 2.54/1.67 thf(f469,plain,(
% 2.54/1.67 ((bval @ b @ sa) = $true)),
% 2.54/1.67 inference(fool_elimination,[status(thm)],[f468])).
% 2.54/1.67 thf(f468,plain,(
% 2.54/1.67 (bval @ b @ sa)),
% 2.54/1.67 inference(rectify,[status(thm)],[f1])).
% 2.54/1.67 thf(f1,axiom,(
% 2.54/1.67 (bval @ b @ sa)),
% 2.54/1.67 file('/export/starexec/sandbox2/tmp/tmp.FZqnfaVoyV/DTF2THF_21556.p',fact_0_Suc_Oprems_I6_J)).
% 2.54/1.67 thf(f1393,plain,(
% 2.54/1.67 ((big_big_step @ (produc1193801173ar_int @ c2 @ s_a) @ t_a) != $true) | ((bval @ b @ sa) != $true) | ((big_big_step @ (produc1193801173ar_int @ c @ sa) @ ta) != $true)),
% 2.54/1.67 inference(trivial_inequality_removal,[status(thm)],[f1368])).
% 2.54/1.67 thf(f1368,plain,(
% 2.54/1.67 ((bval @ b @ sa) != $true) | ((big_big_step @ (produc1193801173ar_int @ c2 @ s_a) @ t_a) != $true) | ((big_big_step @ (produc1193801173ar_int @ c @ sa) @ ta) != $true) | ($true != $true)),
% 2.54/1.67 inference(superposition,[status(thm)],[f1038,f1262])).
% 2.54/1.67 thf(f1262,plain,(
% 2.54/1.67 ((relati23543761ar_int @ p @ b @ c @ (suc @ ka) @ sa @ s_a) = $true)),
% 2.54/1.67 inference(cnf_transformation,[status(thm)],[f467])).
% 2.54/1.67 thf(f467,plain,(
% 2.54/1.67 ((relati23543761ar_int @ p @ b @ c @ (suc @ ka) @ sa @ s_a) = $true)),
% 2.54/1.67 inference(fool_elimination,[status(thm)],[f466])).
% 2.54/1.67 thf(f466,plain,(
% 2.54/1.67 (relati23543761ar_int @ p @ b @ c @ (suc @ ka) @ sa @ s_a)),
% 2.54/1.67 inference(rectify,[status(thm)],[f5])).
% 2.54/1.67 thf(f5,axiom,(
% 2.54/1.67 (relati23543761ar_int @ p @ b @ c @ (suc @ ka) @ sa @ s_a)),
% 2.54/1.67 file('/export/starexec/sandbox2/tmp/tmp.FZqnfaVoyV/DTF2THF_21556.p',fact_4_Suc_Oprems_I7_J)).
% 2.54/1.67 thf(f1038,plain,(
% 2.54/1.67 ( ! [X0 : list_char > int,X1 : list_char > int] : (($true != (relati23543761ar_int @ p @ b @ c @ (suc @ ka) @ X1 @ X0)) | ($true != (bval @ b @ X1)) | ((big_big_step @ (produc1193801173ar_int @ c @ X1) @ ta) != $true) | ($true != (big_big_step @ (produc1193801173ar_int @ c2 @ X0) @ t_a))) )),
% 2.54/1.67 inference(cnf_transformation,[status(thm)],[f647])).
% 2.54/1.67 thf(f647,plain,(
% 2.54/1.67 ! [X0 : list_char > int,X1 : list_char > int] : (((big_big_step @ (produc1193801173ar_int @ c @ X1) @ ta) != $true) | ($true != (big_big_step @ (produc1193801173ar_int @ c2 @ X0) @ t_a)) | ($true != (bval @ b @ X1)) | ($true != (relati23543761ar_int @ p @ b @ c @ (suc @ ka) @ X1 @ X0)))),
% 2.54/1.67 inference(ennf_transformation,[status(thm)],[f270])).
% 2.54/1.67 thf(f270,plain,(
% 2.54/1.67 ~? [X0 : list_char > int,X1 : list_char > int] : (((big_big_step @ (produc1193801173ar_int @ c @ X1) @ ta) = $true) & ($true = (big_big_step @ (produc1193801173ar_int @ c2 @ X0) @ t_a)) & ($true = (bval @ b @ X1)) & ($true = (relati23543761ar_int @ p @ b @ c @ (suc @ ka) @ X1 @ X0)))),
% 2.54/1.67 inference(fool_elimination,[status(thm)],[f269])).
% 2.54/1.67 thf(f269,plain,(
% 2.54/1.67 ~? [X0 : list_char > int,X1 : list_char > int] : ((big_big_step @ (produc1193801173ar_int @ c @ X1) @ ta) & (bval @ b @ X1) & (big_big_step @ (produc1193801173ar_int @ c2 @ X0) @ t_a) & (relati23543761ar_int @ p @ b @ c @ (suc @ ka) @ X1 @ X0))),
% 2.54/1.67 inference(rectify,[status(thm)],[f223])).
% 2.54/1.67 thf(f223,negated_conjecture,(
% 2.54/1.67 ~? [X60 : list_char > int,X21 : list_char > int] : ((big_big_step @ (produc1193801173ar_int @ c @ X21) @ ta) & (bval @ b @ X21) & (big_big_step @ (produc1193801173ar_int @ c2 @ X60) @ t_a) & (relati23543761ar_int @ p @ b @ c @ (suc @ ka) @ X21 @ X60))),
% 2.54/1.67 inference(negated_conjecture,[status(cth)],[f222])).
% 2.54/1.67 thf(f222,conjecture,(
% 2.54/1.67 ? [X60 : list_char > int,X21 : list_char > int] : ((big_big_step @ (produc1193801173ar_int @ c @ X21) @ ta) & (bval @ b @ X21) & (big_big_step @ (produc1193801173ar_int @ c2 @ X60) @ t_a) & (relati23543761ar_int @ p @ b @ c @ (suc @ ka) @ X21 @ X60))),
% 2.54/1.67 file('/export/starexec/sandbox2/tmp/tmp.FZqnfaVoyV/DTF2THF_21556.p',conj_0)).
% 2.54/1.67 % SZS output end Proof for DTF2THF_21556
% 2.54/1.67 % (21858)------------------------------
% 2.54/1.67 % (21858)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.54/1.67 % (21858)Termination reason: Refutation
% 2.54/1.67
% 2.54/1.67 % (21858)Memory used [KB]: 7291
% 2.54/1.67 % (21858)Time elapsed: 0.049 s
% 2.54/1.67 % (21858)Instructions burned: 159 (million)
% 2.54/1.67 % (21858)------------------------------
% 2.54/1.67 % (21858)------------------------------
% 2.54/1.67 % (21798)Success in time 0.112 s
%------------------------------------------------------------------------------