TPTP Problem File: SLH0838^1.p
View Solutions
- Solve Problem
%------------------------------------------------------------------------------
% File : SLH0000^1 : TPTP v8.2.0. Released v8.2.0.
% Domain : Archive of Formal Proofs
% Problem :
% Version : Especial.
% English :
% Refs : [Des23] Desharnais (2023), Email to Geoff Sutcliffe
% Source : [Des23]
% Names : Multiset_Ordering_NPC/0002_Multiset_Ordering_in_NP/prob_00654_029154__13808816_1 [Des23]
% Status : Theorem
% Rating : ? v8.2.0
% Syntax : Number of formulae : 1516 ( 629 unt; 401 typ; 0 def)
% Number of atoms : 3613 (2332 equ; 0 cnn)
% Maximal formula atoms : 23 ( 3 avg)
% Number of connectives : 16468 ( 586 ~; 39 |; 726 &;13543 @)
% ( 0 <=>;1574 =>; 0 <=; 0 <~>)
% Maximal formula depth : 47 ( 8 avg)
% Number of types : 60 ( 59 usr)
% Number of type conns : 5356 (5356 >; 0 *; 0 +; 0 <<)
% Number of symbols : 345 ( 342 usr; 28 con; 0-16 aty)
% Number of variables : 6109 ( 419 ^;5184 !; 506 ?;6109 :)
% SPC : TH0_THM_EQU_NAR
% Comments : This file was generated by Isabelle (most likely Sledgehammer)
% 2023-01-18 16:29:54.937
%------------------------------------------------------------------------------
% Could-be-implicit typings (59)
thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
produc7137084944585861159ropVar: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_It__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J_J_J,type,
list_l5872956733571404676ropVar: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J_J,type,
list_l3415868495287753214ropVar: $tType ).
thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J_J,type,
set_li8998331099879477720ropVar: $tType ).
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
list_P8791008543742759928ropVar: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
set_Pr6405597471078531282ropVar: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
produc2642885279816024434ropVar: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Multiset__Omultiset_It__Multiset____Ordering____in____NP__OPropVar_J_Mt__Multiset__Omultiset_It__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
set_Pr2934421189634577799ropVar: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_I_Eo_M_Eo_J_J_J,type,
produc3507939890032686909od_o_o: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_Itf__f_J_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
produc7903949528580895877ropVar: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Multiset__Omultiset_It__Multiset____Ordering____in____NP__OPropVar_J_Mt__Multiset__Omultiset_It__Multiset____Ordering____in____NP__OPropVar_J_J,type,
produc313332580105183911ropVar: $tType ).
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
list_P444016040222843053ropVar: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
set_Pr7799659934693882759ropVar: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Multiset__Omultiset_It__Nat__Onat_J_Mt__Multiset__Omultiset_It__Nat__Onat_J_J_J,type,
set_Pr7086239977703175297et_nat: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J,type,
produc7679832412844898215ropVar: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
produc1930994613425906418od_o_o: $tType ).
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Multiset__Omultiset_Itf__a_J_Mt__Multiset__Omultiset_Itf__a_J_J_J,type,
list_P6988024003011616557iset_a: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Multiset__Omultiset_Itf__a_J_Mt__Multiset__Omultiset_Itf__a_J_J_J,type,
set_Pr79727621955416071iset_a: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Multiset__Omultiset_It__Nat__Onat_J_Mt__Multiset__Omultiset_It__Nat__Onat_J_J,type,
produc7112813594591200289et_nat: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Multiset__Omultiset_I_Eo_J_Mt__Multiset__Omultiset_I_Eo_J_J_J,type,
set_Pr3522822220408633095iset_o: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Multiset__Omultiset_Itf__a_J_Mt__Multiset__Omultiset_Itf__a_J_J,type,
produc6518373309651786023iset_a: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Multiset__Omultiset_I_Eo_J_Mt__Multiset__Omultiset_I_Eo_J_J,type,
produc5186363242224454439iset_o: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_It__Multiset____Ordering____in____NP__OPropVar_J_J,type,
list_l3041241048860003048ropVar: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J,type,
produc8199716216217303280at_nat: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
set_Pr1261947904930325089at_nat: $tType ).
thf(ty_n_t__Multiset__Omultiset_It__Multiset____Ordering____in____NP__OPropVar_J,type,
multis193838646080965794ropVar: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_It__List__Olist_It__Nat__Onat_J_J_J,type,
list_list_list_nat: $tType ).
thf(ty_n_t__List__Olist_It__Multiset____Ordering____in____NP__OPropVar_J,type,
list_M6740372356978808802ropVar: $tType ).
thf(ty_n_t__Set__Oset_It__Multiset____Ordering____in____NP__OPropVar_J,type,
set_Mu5658373669842198716ropVar: $tType ).
thf(ty_n_t__Product____Type__Oprod_Itf__f_Mt__List__Olist_Itf__f_J_J,type,
produc7257588745650887789list_f: $tType ).
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__a_Mtf__a_J_J,type,
list_P1396940483166286381od_a_a: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_It__List__Olist_Itf__f_J_J_J,type,
list_list_list_f: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mtf__a_J_J,type,
set_Product_prod_a_a: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
product_prod_nat_nat: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
set_Product_prod_o_o: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
list_list_nat: $tType ).
thf(ty_n_t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
set_list_nat: $tType ).
thf(ty_n_t__Multiset____Ordering____in____NP__OPropVar,type,
multis3193088007478089820ropVar: $tType ).
thf(ty_n_t__Product____Type__Oprod_Itf__f_Mtf__f_J,type,
product_prod_f_f: $tType ).
thf(ty_n_t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
product_prod_a_a: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_Itf__f_J_J,type,
list_list_f: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_Itf__a_J_J,type,
list_list_a: $tType ).
thf(ty_n_t__Set__Oset_It__List__Olist_Itf__f_J_J,type,
set_list_f: $tType ).
thf(ty_n_t__Set__Oset_It__List__Olist_Itf__a_J_J,type,
set_list_a: $tType ).
thf(ty_n_t__Multiset__Omultiset_It__Nat__Onat_J,type,
multiset_nat: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
product_prod_o_o: $tType ).
thf(ty_n_t__Multiset__Omultiset_Itf__a_J,type,
multiset_a: $tType ).
thf(ty_n_t__List__Olist_It__Nat__Onat_J,type,
list_nat: $tType ).
thf(ty_n_t__Multiset__Omultiset_I_Eo_J,type,
multiset_o: $tType ).
thf(ty_n_t__Set__Oset_It__Nat__Onat_J,type,
set_nat: $tType ).
thf(ty_n_t__List__Olist_Itf__f_J,type,
list_f: $tType ).
thf(ty_n_t__List__Olist_Itf__a_J,type,
list_a: $tType ).
thf(ty_n_t__Set__Oset_Itf__f_J,type,
set_f: $tType ).
thf(ty_n_t__Set__Oset_Itf__a_J,type,
set_a: $tType ).
thf(ty_n_t__List__Olist_I_Eo_J,type,
list_o: $tType ).
thf(ty_n_t__String__Ochar,type,
char: $tType ).
thf(ty_n_t__Nat__Onat,type,
nat: $tType ).
thf(ty_n_tf__f,type,
f: $tType ).
thf(ty_n_tf__a,type,
a: $tType ).
% Explicit typings (342)
thf(sy_c_Groups_Oplus__class_Oplus_001t__Multiset__Omultiset_It__Nat__Onat_J,type,
plus_p6334493942879108393et_nat: multiset_nat > multiset_nat > multiset_nat ).
thf(sy_c_Groups_Oplus__class_Oplus_001t__Multiset__Omultiset_Itf__a_J,type,
plus_plus_multiset_a: multiset_a > multiset_a > multiset_a ).
thf(sy_c_Groups_Oplus__class_Oplus_001t__Nat__Onat,type,
plus_plus_nat: nat > nat > nat ).
thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
zero_zero_nat: nat ).
thf(sy_c_HOL_OThe_001t__Nat__Onat,type,
the_nat: ( nat > $o ) > nat ).
thf(sy_c_HOL_Oundefined_001_Eo,type,
undefined_o: $o ).
thf(sy_c_HOL_Oundefined_001t__Product____Type__Oprod_It__List__Olist_Itf__f_J_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
undefi316149074942268141ropVar: produc7903949528580895877ropVar ).
thf(sy_c_If_001t__List__Olist_It__Nat__Onat_J,type,
if_list_nat: $o > list_nat > list_nat > list_nat ).
thf(sy_c_If_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
if_lis1975434623467068862ropVar: $o > list_P8791008543742759928ropVar > list_P8791008543742759928ropVar > list_P8791008543742759928ropVar ).
thf(sy_c_If_001t__List__Olist_Itf__a_J,type,
if_list_a: $o > list_a > list_a > list_a ).
thf(sy_c_If_001t__List__Olist_Itf__f_J,type,
if_list_f: $o > list_f > list_f > list_f ).
thf(sy_c_List_Oappend_001t__List__Olist_It__Nat__Onat_J,type,
append_list_nat: list_list_nat > list_list_nat > list_list_nat ).
thf(sy_c_List_Oappend_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
append4316637162825710867ropVar: list_l3415868495287753214ropVar > list_l3415868495287753214ropVar > list_l3415868495287753214ropVar ).
thf(sy_c_List_Oappend_001t__List__Olist_Itf__a_J,type,
append_list_a: list_list_a > list_list_a > list_list_a ).
thf(sy_c_List_Oappend_001t__List__Olist_Itf__f_J,type,
append_list_f: list_list_f > list_list_f > list_list_f ).
thf(sy_c_List_Oappend_001t__Multiset____Ordering____in____NP__OPropVar,type,
append2684835082924936439ropVar: list_M6740372356978808802ropVar > list_M6740372356978808802ropVar > list_M6740372356978808802ropVar ).
thf(sy_c_List_Oappend_001t__Nat__Onat,type,
append_nat: list_nat > list_nat > list_nat ).
thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Multiset__Omultiset_Itf__a_J_Mt__Multiset__Omultiset_Itf__a_J_J,type,
append1975991668658899394iset_a: list_P6988024003011616557iset_a > list_P6988024003011616557iset_a > list_P6988024003011616557iset_a ).
thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
append4352292717583037453ropVar: list_P8791008543742759928ropVar > list_P8791008543742759928ropVar > list_P8791008543742759928ropVar ).
thf(sy_c_List_Oappend_001t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
append5335208819046833346od_a_a: list_P1396940483166286381od_a_a > list_P1396940483166286381od_a_a > list_P1396940483166286381od_a_a ).
thf(sy_c_List_Oappend_001tf__a,type,
append_a: list_a > list_a > list_a ).
thf(sy_c_List_Oappend_001tf__f,type,
append_f: list_f > list_f > list_f ).
thf(sy_c_List_Obind_001t__Nat__Onat_001t__Nat__Onat,type,
bind_nat_nat: list_nat > ( nat > list_nat ) > list_nat ).
thf(sy_c_List_Obind_001t__Nat__Onat_001tf__a,type,
bind_nat_a: list_nat > ( nat > list_a ) > list_a ).
thf(sy_c_List_Obind_001t__Nat__Onat_001tf__f,type,
bind_nat_f: list_nat > ( nat > list_f ) > list_f ).
thf(sy_c_List_Obind_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001t__Nat__Onat,type,
bind_P7182508892803130363ar_nat: list_P8791008543742759928ropVar > ( produc2642885279816024434ropVar > list_nat ) > list_nat ).
thf(sy_c_List_Obind_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001tf__f,type,
bind_P8681900402095835032pVar_f: list_P8791008543742759928ropVar > ( produc2642885279816024434ropVar > list_f ) > list_f ).
thf(sy_c_List_Obind_001tf__a_001t__Nat__Onat,type,
bind_a_nat: list_a > ( a > list_nat ) > list_nat ).
thf(sy_c_List_Obind_001tf__a_001tf__a,type,
bind_a_a: list_a > ( a > list_a ) > list_a ).
thf(sy_c_List_Obind_001tf__a_001tf__f,type,
bind_a_f: list_a > ( a > list_f ) > list_f ).
thf(sy_c_List_Obind_001tf__f_001t__Nat__Onat,type,
bind_f_nat: list_f > ( f > list_nat ) > list_nat ).
thf(sy_c_List_Obind_001tf__f_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
bind_f1299746951821134518ropVar: list_f > ( f > list_P8791008543742759928ropVar ) > list_P8791008543742759928ropVar ).
thf(sy_c_List_Obind_001tf__f_001tf__a,type,
bind_f_a: list_f > ( f > list_a ) > list_a ).
thf(sy_c_List_Obind_001tf__f_001tf__f,type,
bind_f_f: list_f > ( f > list_f ) > list_f ).
thf(sy_c_List_Oconcat_001t__List__Olist_It__Nat__Onat_J,type,
concat_list_nat: list_list_list_nat > list_list_nat ).
thf(sy_c_List_Oconcat_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
concat4944697247486958777ropVar: list_l5872956733571404676ropVar > list_l3415868495287753214ropVar ).
thf(sy_c_List_Oconcat_001t__List__Olist_Itf__f_J,type,
concat_list_f: list_list_list_f > list_list_f ).
thf(sy_c_List_Oconcat_001t__Multiset____Ordering____in____NP__OPropVar,type,
concat2729506608927398813ropVar: list_l3041241048860003048ropVar > list_M6740372356978808802ropVar ).
thf(sy_c_List_Oconcat_001t__Nat__Onat,type,
concat_nat: list_list_nat > list_nat ).
thf(sy_c_List_Oconcat_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
concat1830633707478507187ropVar: list_l3415868495287753214ropVar > list_P8791008543742759928ropVar ).
thf(sy_c_List_Oconcat_001tf__a,type,
concat_a: list_list_a > list_a ).
thf(sy_c_List_Oconcat_001tf__f,type,
concat_f: list_list_f > list_f ).
thf(sy_c_List_Odistinct_001t__Multiset____Ordering____in____NP__OPropVar,type,
distin2675581014522817237ropVar: list_M6740372356978808802ropVar > $o ).
thf(sy_c_List_Odistinct_001t__Nat__Onat,type,
distinct_nat: list_nat > $o ).
thf(sy_c_List_Odrop_001t__Multiset____Ordering____in____NP__OPropVar,type,
drop_M2293212096379261346ropVar: nat > list_M6740372356978808802ropVar > list_M6740372356978808802ropVar ).
thf(sy_c_List_Odrop_001t__Nat__Onat,type,
drop_nat: nat > list_nat > list_nat ).
thf(sy_c_List_Odrop_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
drop_P4829783966340880056ropVar: nat > list_P8791008543742759928ropVar > list_P8791008543742759928ropVar ).
thf(sy_c_List_Olist_OCons_001_Eo,type,
cons_o: $o > list_o > list_o ).
thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Nat__Onat_J,type,
cons_list_nat: list_nat > list_list_nat > list_list_nat ).
thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
cons_l5280711761816980654ropVar: list_P8791008543742759928ropVar > list_l3415868495287753214ropVar > list_l3415868495287753214ropVar ).
thf(sy_c_List_Olist_OCons_001t__List__Olist_Itf__a_J,type,
cons_list_a: list_a > list_list_a > list_list_a ).
thf(sy_c_List_Olist_OCons_001t__List__Olist_Itf__f_J,type,
cons_list_f: list_f > list_list_f > list_list_f ).
thf(sy_c_List_Olist_OCons_001t__Multiset____Ordering____in____NP__OPropVar,type,
cons_M4277272395645347858ropVar: multis3193088007478089820ropVar > list_M6740372356978808802ropVar > list_M6740372356978808802ropVar ).
thf(sy_c_List_Olist_OCons_001t__Nat__Onat,type,
cons_nat: nat > list_nat > list_nat ).
thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Multiset__Omultiset_Itf__a_J_Mt__Multiset__Omultiset_Itf__a_J_J,type,
cons_P7086145107730948317iset_a: produc6518373309651786023iset_a > list_P6988024003011616557iset_a > list_P6988024003011616557iset_a ).
thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
cons_P1504208554336013608ropVar: produc2642885279816024434ropVar > list_P8791008543742759928ropVar > list_P8791008543742759928ropVar ).
thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
cons_P7316939126706565853od_a_a: product_prod_a_a > list_P1396940483166286381od_a_a > list_P1396940483166286381od_a_a ).
thf(sy_c_List_Olist_OCons_001tf__a,type,
cons_a: a > list_a > list_a ).
thf(sy_c_List_Olist_OCons_001tf__f,type,
cons_f: f > list_f > list_f ).
thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Nat__Onat_J,type,
nil_list_nat: list_list_nat ).
thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
nil_li2679230897895549182ropVar: list_l3415868495287753214ropVar ).
thf(sy_c_List_Olist_ONil_001t__List__Olist_Itf__a_J,type,
nil_list_a: list_list_a ).
thf(sy_c_List_Olist_ONil_001t__List__Olist_Itf__f_J,type,
nil_list_f: list_list_f ).
thf(sy_c_List_Olist_ONil_001t__Multiset____Ordering____in____NP__OPropVar,type,
nil_Mu4132399263956683874ropVar: list_M6740372356978808802ropVar ).
thf(sy_c_List_Olist_ONil_001t__Nat__Onat,type,
nil_nat: list_nat ).
thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
nil_Pr6119456312066593144ropVar: list_P8791008543742759928ropVar ).
thf(sy_c_List_Olist_ONil_001tf__a,type,
nil_a: list_a ).
thf(sy_c_List_Olist_ONil_001tf__f,type,
nil_f: list_f ).
thf(sy_c_List_Olist_Ocase__list_001t__Product____Type__Oprod_Itf__f_Mt__List__Olist_Itf__f_J_J_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
case_l5231247004599698859ropVar: produc7257588745650887789list_f > ( produc2642885279816024434ropVar > list_P8791008543742759928ropVar > produc7257588745650887789list_f ) > list_P8791008543742759928ropVar > produc7257588745650887789list_f ).
thf(sy_c_List_Olist_Ohd_001t__Nat__Onat,type,
hd_nat: list_nat > nat ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
map_li960784813134754710st_nat: ( list_nat > list_list_nat ) > list_list_nat > list_list_list_nat ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Multiset____Ordering____in____NP__OPropVar_J,type,
map_li5946103070670478908ropVar: ( list_nat > list_M6740372356978808802ropVar ) > list_list_nat > list_l3041241048860003048ropVar ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Nat__Onat_J,type,
map_li7225945977422193158st_nat: ( list_nat > list_nat ) > list_list_nat > list_list_nat ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
map_li4979107708160704082ropVar: ( list_nat > list_P8791008543742759928ropVar ) > list_list_nat > list_l3415868495287753214ropVar ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_Itf__a_J,type,
map_list_nat_list_a: ( list_nat > list_a ) > list_list_nat > list_list_a ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J_001t__List__Olist_It__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J_J,type,
map_li2030941865990407626ropVar: ( list_P8791008543742759928ropVar > list_l3415868495287753214ropVar ) > list_l3415868495287753214ropVar > list_l5872956733571404676ropVar ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J_001t__List__Olist_It__Multiset____Ordering____in____NP__OPropVar_J,type,
map_li7870304551969808814ropVar: ( list_P8791008543742759928ropVar > list_M6740372356978808802ropVar ) > list_l3415868495287753214ropVar > list_l3041241048860003048ropVar ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
map_li926741104209434052ropVar: ( list_P8791008543742759928ropVar > list_P8791008543742759928ropVar ) > list_l3415868495287753214ropVar > list_l3415868495287753214ropVar ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_Itf__f_J_001t__List__Olist_It__List__Olist_Itf__f_J_J,type,
map_li8627645367811812490list_f: ( list_f > list_list_f ) > list_list_f > list_list_list_f ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_Itf__f_J_001t__List__Olist_Itf__f_J,type,
map_list_f_list_f: ( list_f > list_f ) > list_list_f > list_list_f ).
thf(sy_c_List_Olist_Omap_001t__Multiset____Ordering____in____NP__OPropVar_001t__Multiset____Ordering____in____NP__OPropVar,type,
map_Mu2265489581466636612ropVar: ( multis3193088007478089820ropVar > multis3193088007478089820ropVar ) > list_M6740372356978808802ropVar > list_M6740372356978808802ropVar ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001_Eo,type,
map_nat_o: ( nat > $o ) > list_nat > list_o ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
map_na6205611841492582150st_nat: ( nat > list_list_nat ) > list_nat > list_list_list_nat ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__List__Olist_It__Multiset____Ordering____in____NP__OPropVar_J,type,
map_na5381558106008680140ropVar: ( nat > list_M6740372356978808802ropVar ) > list_nat > list_l3041241048860003048ropVar ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__List__Olist_It__Nat__Onat_J,type,
map_nat_list_nat: ( nat > list_nat ) > list_nat > list_list_nat ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
map_na2676018863266313954ropVar: ( nat > list_P8791008543742759928ropVar ) > list_nat > list_l3415868495287753214ropVar ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__List__Olist_Itf__a_J,type,
map_nat_list_a: ( nat > list_a ) > list_nat > list_list_a ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__List__Olist_Itf__f_J,type,
map_nat_list_f: ( nat > list_f ) > list_nat > list_list_f ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__Multiset____Ordering____in____NP__OPropVar,type,
map_na2466558649495876678ropVar: ( nat > multis3193088007478089820ropVar ) > list_nat > list_M6740372356978808802ropVar ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__Nat__Onat,type,
map_nat_nat: ( nat > nat ) > list_nat > list_nat ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
map_na2145702811007361372ropVar: ( nat > produc2642885279816024434ropVar ) > list_nat > list_P8791008543742759928ropVar ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001tf__a,type,
map_nat_a: ( nat > a ) > list_nat > list_a ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001tf__f,type,
map_nat_f: ( nat > f ) > list_nat > list_f ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Multiset__Omultiset_Itf__a_J_Mt__Multiset__Omultiset_Itf__a_J_J_001t__Product____Type__Oprod_It__Multiset__Omultiset_Itf__a_J_Mt__Multiset__Omultiset_Itf__a_J_J,type,
map_Pr5905680810515755012iset_a: ( produc6518373309651786023iset_a > produc6518373309651786023iset_a ) > list_P6988024003011616557iset_a > list_P6988024003011616557iset_a ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001t__List__Olist_It__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J_J,type,
map_Pr879394845742082896ropVar: ( produc2642885279816024434ropVar > list_l3415868495287753214ropVar ) > list_P8791008543742759928ropVar > list_l5872956733571404676ropVar ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001t__List__Olist_It__Multiset____Ordering____in____NP__OPropVar_J,type,
map_Pr363398673241384500ropVar: ( produc2642885279816024434ropVar > list_M6740372356978808802ropVar ) > list_P8791008543742759928ropVar > list_l3041241048860003048ropVar ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
map_Pr8780118474983044682ropVar: ( produc2642885279816024434ropVar > list_P8791008543742759928ropVar ) > list_P8791008543742759928ropVar > list_l3415868495287753214ropVar ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001t__Multiset____Ordering____in____NP__OPropVar,type,
map_Pr3335389669906741166ropVar: ( produc2642885279816024434ropVar > multis3193088007478089820ropVar ) > list_P8791008543742759928ropVar > list_M6740372356978808802ropVar ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001t__Nat__Onat,type,
map_Pr7810381211709419518ar_nat: ( produc2642885279816024434ropVar > nat ) > list_P8791008543742759928ropVar > list_nat ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J,type,
map_Pr7468255547243610361ropVar: ( produc2642885279816024434ropVar > produc7679832412844898215ropVar ) > list_P8791008543742759928ropVar > list_P444016040222843053ropVar ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
map_Pr3565048146863404228ropVar: ( produc2642885279816024434ropVar > produc2642885279816024434ropVar ) > list_P8791008543742759928ropVar > list_P8791008543742759928ropVar ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001tf__a,type,
map_Pr1064736048566318672pVar_a: ( produc2642885279816024434ropVar > a ) > list_P8791008543742759928ropVar > list_a ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001tf__f,type,
map_Pr1064736048566318677pVar_f: ( produc2642885279816024434ropVar > f ) > list_P8791008543742759928ropVar > list_f ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_Itf__a_Mtf__a_J_001t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
map_Pr7904243085458786820od_a_a: ( product_prod_a_a > product_prod_a_a ) > list_P1396940483166286381od_a_a > list_P1396940483166286381od_a_a ).
thf(sy_c_List_Olist_Omap_001tf__a_001t__Multiset____Ordering____in____NP__OPropVar,type,
map_a_7060686498508945698ropVar: ( a > multis3193088007478089820ropVar ) > list_a > list_M6740372356978808802ropVar ).
thf(sy_c_List_Olist_Omap_001tf__a_001t__Nat__Onat,type,
map_a_nat: ( a > nat ) > list_a > list_nat ).
thf(sy_c_List_Olist_Omap_001tf__a_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
map_a_1400613014311812664ropVar: ( a > produc2642885279816024434ropVar ) > list_a > list_P8791008543742759928ropVar ).
thf(sy_c_List_Olist_Omap_001tf__a_001tf__a,type,
map_a_a: ( a > a ) > list_a > list_a ).
thf(sy_c_List_Olist_Omap_001tf__a_001tf__f,type,
map_a_f: ( a > f ) > list_a > list_f ).
thf(sy_c_List_Olist_Omap_001tf__f_001t__List__Olist_It__List__Olist_Itf__f_J_J,type,
map_f_list_list_f: ( f > list_list_f ) > list_f > list_list_list_f ).
thf(sy_c_List_Olist_Omap_001tf__f_001t__List__Olist_Itf__f_J,type,
map_f_list_f: ( f > list_f ) > list_f > list_list_f ).
thf(sy_c_List_Olist_Omap_001tf__f_001t__Nat__Onat,type,
map_f_nat: ( f > nat ) > list_f > list_nat ).
thf(sy_c_List_Olist_Omap_001tf__f_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
map_f_2905954635146393971ropVar: ( f > produc2642885279816024434ropVar ) > list_f > list_P8791008543742759928ropVar ).
thf(sy_c_List_Olist_Omap_001tf__f_001tf__a,type,
map_f_a: ( f > a ) > list_f > list_a ).
thf(sy_c_List_Olist_Omap_001tf__f_001tf__f,type,
map_f_f: ( f > f ) > list_f > list_f ).
thf(sy_c_List_Olist_Orec__list_001t__List__Olist_It__Multiset____Ordering____in____NP__OPropVar_J_001t__Nat__Onat,type,
rec_li3635176538394059004ar_nat: list_M6740372356978808802ropVar > ( nat > list_nat > list_M6740372356978808802ropVar > list_M6740372356978808802ropVar ) > list_nat > list_M6740372356978808802ropVar ).
thf(sy_c_List_Olist_Orec__list_001t__List__Olist_It__Multiset____Ordering____in____NP__OPropVar_J_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
rec_li3346145771974027078ropVar: list_M6740372356978808802ropVar > ( produc2642885279816024434ropVar > list_P8791008543742759928ropVar > list_M6740372356978808802ropVar > list_M6740372356978808802ropVar ) > list_P8791008543742759928ropVar > list_M6740372356978808802ropVar ).
thf(sy_c_List_Olist_Orec__list_001t__List__Olist_It__Nat__Onat_J_001t__Nat__Onat,type,
rec_li7516600145284979816at_nat: list_nat > ( nat > list_nat > list_nat > list_nat ) > list_nat > list_nat ).
thf(sy_c_List_Olist_Orec__list_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J_001t__Nat__Onat,type,
rec_li2530905255354511122ar_nat: list_P8791008543742759928ropVar > ( nat > list_nat > list_P8791008543742759928ropVar > list_P8791008543742759928ropVar ) > list_nat > list_P8791008543742759928ropVar ).
thf(sy_c_List_Olist_Orec__list_001t__List__Olist_Itf__a_J_001t__Nat__Onat,type,
rec_list_list_a_nat: list_a > ( nat > list_nat > list_a > list_a ) > list_nat > list_a ).
thf(sy_c_List_Olist_Oset_001t__List__Olist_It__Nat__Onat_J,type,
set_list_nat2: list_list_nat > set_list_nat ).
thf(sy_c_List_Olist_Oset_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
set_li6509544621384488717ropVar: list_l3415868495287753214ropVar > set_li8998331099879477720ropVar ).
thf(sy_c_List_Olist_Oset_001t__List__Olist_Itf__a_J,type,
set_list_a2: list_list_a > set_list_a ).
thf(sy_c_List_Olist_Oset_001t__List__Olist_Itf__f_J,type,
set_list_f2: list_list_f > set_list_f ).
thf(sy_c_List_Olist_Oset_001t__Multiset____Ordering____in____NP__OPropVar,type,
set_Mu146256361055586289ropVar: list_M6740372356978808802ropVar > set_Mu5658373669842198716ropVar ).
thf(sy_c_List_Olist_Oset_001t__Nat__Onat,type,
set_nat2: list_nat > set_nat ).
thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Multiset__Omultiset_Itf__a_J_Mt__Multiset__Omultiset_Itf__a_J_J,type,
set_Pr5550698219922361532iset_a: list_P6988024003011616557iset_a > set_Pr79727621955416071iset_a ).
thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
set_Pr3946994337432900359ropVar: list_P8791008543742759928ropVar > set_Pr6405597471078531282ropVar ).
thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
set_Product_prod_a_a2: list_P1396940483166286381od_a_a > set_Product_prod_a_a ).
thf(sy_c_List_Olist_Oset_001tf__a,type,
set_a2: list_a > set_a ).
thf(sy_c_List_Olist_Oset_001tf__f,type,
set_f2: list_f > set_f ).
thf(sy_c_List_Olist_Otl_001t__Nat__Onat,type,
tl_nat: list_nat > list_nat ).
thf(sy_c_List_Omaps_001t__List__Olist_Itf__f_J_001tf__f,type,
maps_list_f_f: ( list_f > list_f ) > list_list_f > list_f ).
thf(sy_c_List_Omaps_001t__Nat__Onat_001t__Nat__Onat,type,
maps_nat_nat: ( nat > list_nat ) > list_nat > list_nat ).
thf(sy_c_List_Omaps_001t__Nat__Onat_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
maps_n6440817060062774047ropVar: ( nat > list_P8791008543742759928ropVar ) > list_nat > list_P8791008543742759928ropVar ).
thf(sy_c_List_Omaps_001t__Nat__Onat_001tf__a,type,
maps_nat_a: ( nat > list_a ) > list_nat > list_a ).
thf(sy_c_List_Omaps_001t__Nat__Onat_001tf__f,type,
maps_nat_f: ( nat > list_f ) > list_nat > list_f ).
thf(sy_c_List_Omaps_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001t__Nat__Onat,type,
maps_P2882123423910056385ar_nat: ( produc2642885279816024434ropVar > list_nat ) > list_P8791008543742759928ropVar > list_nat ).
thf(sy_c_List_Omaps_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001tf__f,type,
maps_P2527380396400262994pVar_f: ( produc2642885279816024434ropVar > list_f ) > list_P8791008543742759928ropVar > list_f ).
thf(sy_c_List_Omaps_001tf__a_001t__Nat__Onat,type,
maps_a_nat: ( a > list_nat ) > list_a > list_nat ).
thf(sy_c_List_Omaps_001tf__a_001tf__a,type,
maps_a_a: ( a > list_a ) > list_a > list_a ).
thf(sy_c_List_Omaps_001tf__a_001tf__f,type,
maps_a_f: ( a > list_f ) > list_a > list_f ).
thf(sy_c_List_Omaps_001tf__f_001t__Nat__Onat,type,
maps_f_nat: ( f > list_nat ) > list_f > list_nat ).
thf(sy_c_List_Omaps_001tf__f_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
maps_f4368598982980338288ropVar: ( f > list_P8791008543742759928ropVar ) > list_f > list_P8791008543742759928ropVar ).
thf(sy_c_List_Omaps_001tf__f_001tf__a,type,
maps_f_a: ( f > list_a ) > list_f > list_a ).
thf(sy_c_List_Omaps_001tf__f_001tf__f,type,
maps_f_f: ( f > list_f ) > list_f > list_f ).
thf(sy_c_List_On__lists_001t__Nat__Onat,type,
n_lists_nat: nat > list_nat > list_list_nat ).
thf(sy_c_List_On__lists_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
n_list6927042657299049856ropVar: nat > list_P8791008543742759928ropVar > list_l3415868495287753214ropVar ).
thf(sy_c_List_On__lists_001tf__a,type,
n_lists_a: nat > list_a > list_list_a ).
thf(sy_c_List_On__lists_001tf__f,type,
n_lists_f: nat > list_f > list_list_f ).
thf(sy_c_List_Onth_001t__List__Olist_Itf__f_J,type,
nth_list_f: list_list_f > nat > list_f ).
thf(sy_c_List_Onth_001t__Multiset____Ordering____in____NP__OPropVar,type,
nth_Mu4537670848183934179ropVar: list_M6740372356978808802ropVar > nat > multis3193088007478089820ropVar ).
thf(sy_c_List_Onth_001t__Nat__Onat,type,
nth_nat: list_nat > nat > nat ).
thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Multiset__Omultiset_Itf__a_J_Mt__Multiset__Omultiset_Itf__a_J_J,type,
nth_Pr1079437516805851566iset_a: list_P6988024003011616557iset_a > nat > produc6518373309651786023iset_a ).
thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
nth_Pr227365692153740281ropVar: list_P8791008543742759928ropVar > nat > produc2642885279816024434ropVar ).
thf(sy_c_List_Onth_001t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
nth_Product_prod_a_a: list_P1396940483166286381od_a_a > nat > product_prod_a_a ).
thf(sy_c_List_Onth_001tf__a,type,
nth_a: list_a > nat > a ).
thf(sy_c_List_Onth_001tf__f,type,
nth_f: list_f > nat > f ).
thf(sy_c_List_Oproduct__lists_001t__Nat__Onat,type,
product_lists_nat: list_list_nat > list_list_nat ).
thf(sy_c_List_Oproduct__lists_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
produc2956654850250905953ropVar: list_l3415868495287753214ropVar > list_l3415868495287753214ropVar ).
thf(sy_c_List_Oproduct__lists_001tf__a,type,
product_lists_a: list_list_a > list_list_a ).
thf(sy_c_List_Oproduct__lists_001tf__f,type,
product_lists_f: list_list_f > list_list_f ).
thf(sy_c_List_Osubseqs_001t__Nat__Onat,type,
subseqs_nat: list_nat > list_list_nat ).
thf(sy_c_List_Osubseqs_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
subseq3825174504735880391ropVar: list_P8791008543742759928ropVar > list_l3415868495287753214ropVar ).
thf(sy_c_List_Osubseqs_001tf__a,type,
subseqs_a: list_a > list_list_a ).
thf(sy_c_List_Osubseqs_001tf__f,type,
subseqs_f: list_f > list_list_f ).
thf(sy_c_List_Otake_001t__Nat__Onat,type,
take_nat: nat > list_nat > list_nat ).
thf(sy_c_List_Oupt,type,
upt: nat > nat > list_nat ).
thf(sy_c_Multiset_Omset_001_Eo,type,
mset_o: list_o > multiset_o ).
thf(sy_c_Multiset_Omset_001t__Multiset____Ordering____in____NP__OPropVar,type,
mset_M6581516532424202993ropVar: list_M6740372356978808802ropVar > multis193838646080965794ropVar ).
thf(sy_c_Multiset_Omset_001t__Nat__Onat,type,
mset_nat: list_nat > multiset_nat ).
thf(sy_c_Multiset_Omset_001tf__a,type,
mset_a: list_a > multiset_a ).
thf(sy_c_Multiset__Extension2_Ons__mul__ext_001_Eo,type,
multis1436808229551206221_ext_o: set_Product_prod_o_o > set_Product_prod_o_o > set_Pr3522822220408633095iset_o ).
thf(sy_c_Multiset__Extension2_Ons__mul__ext_001t__Multiset____Ordering____in____NP__OPropVar,type,
multis738276037714153361ropVar: set_Pr7799659934693882759ropVar > set_Pr7799659934693882759ropVar > set_Pr2934421189634577799ropVar ).
thf(sy_c_Multiset__Extension2_Ons__mul__ext_001t__Nat__Onat,type,
multis8831328596575508315xt_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > set_Pr7086239977703175297et_nat ).
thf(sy_c_Multiset__Extension2_Ons__mul__ext_001tf__a,type,
multis4023584895248362547_ext_a: set_Product_prod_a_a > set_Product_prod_a_a > set_Pr79727621955416071iset_a ).
thf(sy_c_Multiset__Extension2_Os__mul__ext_001tf__a,type,
multiset_s_mul_ext_a: set_Product_prod_a_a > set_Product_prod_a_a > set_Pr79727621955416071iset_a ).
thf(sy_c_Multiset__Ordering__in__NP_OPropVar_OAuxOneIJ,type,
multis6646701651571498855xOneIJ: nat > nat > multis3193088007478089820ropVar ).
thf(sy_c_Multiset__Ordering__in__NP_OPropVar_OAuxOneJI,type,
multis6646701651571564453xOneJI: nat > nat > multis3193088007478089820ropVar ).
thf(sy_c_Multiset__Ordering__in__NP_OPropVar_OAuxZeroIJ,type,
multis2983220944385456105ZeroIJ: nat > nat > multis3193088007478089820ropVar ).
thf(sy_c_Multiset__Ordering__in__NP_OPropVar_OAuxZeroJI,type,
multis2983220944385521703ZeroJI: nat > nat > multis3193088007478089820ropVar ).
thf(sy_c_Multiset__Ordering__in__NP_OPropVar_OEpsilon,type,
multis2544335231667181926psilon: nat > multis3193088007478089820ropVar ).
thf(sy_c_Multiset__Ordering__in__NP_OPropVar_OGamma,type,
multis387687052011358179_Gamma: nat > nat > multis3193088007478089820ropVar ).
thf(sy_c_Multiset__Ordering__in__NP_OPropVar_Ocase__PropVar_001_Eo,type,
multis8641292176345589959pVar_o: ( nat > nat > $o ) > ( nat > $o ) > ( nat > nat > $o ) > ( nat > nat > $o ) > ( nat > nat > $o ) > ( nat > nat > $o ) > multis3193088007478089820ropVar > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_001t__Multiset____Ordering____in____NP__OPropVar_001tf__f,type,
multis2000375938434000499pVar_f: ( ( multis3193088007478089820ropVar > $o ) > f > $o ) > f > f > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( list_M6740372356978808802ropVar > f ) > ( list_f > f ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_001t__Nat__Onat_001t__Nat__Onat,type,
multis9072456028556213230at_nat: ( ( nat > $o ) > nat > $o ) > nat > nat > ( nat > nat ) > ( nat > nat ) > ( nat > nat > nat ) > ( nat > nat > nat > nat ) > ( nat > nat > nat > nat > nat ) > ( nat > nat > nat > nat ) > ( nat > nat > nat ) > ( nat > nat > nat ) > ( nat > nat > nat ) > ( list_nat > nat ) > ( list_nat > nat ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_001t__Nat__Onat_001tf__a,type,
multis15323236012246624_nat_a: ( ( nat > $o ) > a > $o ) > a > a > ( nat > a ) > ( nat > a ) > ( nat > nat > a ) > ( nat > nat > nat > a ) > ( nat > nat > nat > nat > a ) > ( nat > nat > nat > a ) > ( nat > a > a ) > ( nat > nat > a ) > ( nat > nat > a ) > ( list_nat > a ) > ( list_a > a ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_001t__Nat__Onat_001tf__f,type,
multis15323236012246629_nat_f: ( ( nat > $o ) > f > $o ) > f > f > ( nat > f ) > ( nat > f ) > ( nat > nat > f ) > ( nat > nat > nat > f ) > ( nat > nat > nat > nat > f ) > ( nat > nat > nat > f ) > ( nat > f > f ) > ( nat > nat > f ) > ( nat > nat > f ) > ( list_nat > f ) > ( list_f > f ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_001tf__a_001t__Nat__Onat,type,
multis5206763771688736002_a_nat: ( ( a > $o ) > nat > $o ) > nat > nat > ( a > nat ) > ( a > nat ) > ( a > a > nat ) > ( a > a > a > nat ) > ( a > a > a > a > nat ) > ( a > a > a > nat ) > ( a > nat > nat ) > ( a > a > nat ) > ( a > a > nat ) > ( list_a > nat ) > ( list_nat > nat ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_001tf__a_001tf__a,type,
multis2105231276199332428er_a_a: ( ( a > $o ) > a > $o ) > a > a > ( a > a ) > ( a > a ) > ( a > a > a ) > ( a > a > a > a ) > ( a > a > a > a > a ) > ( a > a > a > a ) > ( a > a > a ) > ( a > a > a ) > ( a > a > a ) > ( list_a > a ) > ( list_a > a ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_001tf__a_001tf__f,type,
multis2105231276199332433er_a_f: ( ( a > $o ) > f > $o ) > f > f > ( a > f ) > ( a > f ) > ( a > a > f ) > ( a > a > a > f ) > ( a > a > a > a > f ) > ( a > a > a > f ) > ( a > f > f ) > ( a > a > f ) > ( a > a > f ) > ( list_a > f ) > ( list_f > f ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_001tf__f_001t__Nat__Onat,type,
multis2160613379615932679_f_nat: ( ( f > $o ) > nat > $o ) > nat > nat > ( f > nat ) > ( f > nat ) > ( f > f > nat ) > ( f > f > f > nat ) > ( f > f > f > f > nat ) > ( f > f > f > nat ) > ( f > nat > nat ) > ( f > f > nat ) > ( f > f > nat ) > ( list_f > nat ) > ( list_nat > nat ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_001tf__f_001tf__a,type,
multis6614697440045503879er_f_a: ( ( f > $o ) > a > $o ) > a > a > ( f > a ) > ( f > a ) > ( f > f > a ) > ( f > f > f > a ) > ( f > f > f > f > a ) > ( f > f > f > a ) > ( f > a > a ) > ( f > f > a ) > ( f > f > a ) > ( list_f > a ) > ( list_a > a ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_001tf__f_001tf__f,type,
multis6614697440045503884er_f_f: ( ( f > $o ) > f > $o ) > f > f > ( f > f ) > ( f > f ) > ( f > f > f ) > ( f > f > f > f ) > ( f > f > f > f > f ) > ( f > f > f > f ) > ( f > f > f ) > ( f > f > f ) > ( f > f > f ) > ( list_f > f ) > ( list_f > f ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_OencodeGammaCond_001t__Nat__Onat_001t__Multiset____Ordering____in____NP__OPropVar,type,
multis8432056474937814451ropVar: nat > ( multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o > $o > nat ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_OencodeGammaCond_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001t__Multiset____Ordering____in____NP__OPropVar,type,
multis6911105939383758721ropVar: produc2642885279816024434ropVar > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o > $o > produc2642885279816024434ropVar ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_OencodeGammaCond_001tf__a_001t__Multiset____Ordering____in____NP__OPropVar,type,
multis4381284275714162933ropVar: a > ( multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o > $o > a ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_OencodeGammaCond_001tf__f_001t__Multiset____Ordering____in____NP__OPropVar,type,
multis1454621290665623088ropVar: f > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o > $o > f ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_OencodeGammaCond__rel_001t__Multiset____Ordering____in____NP__OPropVar,type,
multis3344368520953930393ropVar: produc3507939890032686909od_o_o > produc3507939890032686909od_o_o > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_Oencode__exactly__one_001tf__f_001t__Multiset____Ordering____in____NP__OPropVar,type,
multis2195156209094129637ropVar: f > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > list_P8791008543742759928ropVar > produc7257588745650887789list_f ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_Oencode__sum__0__1__main_001t__Multiset____Ordering____in____NP__OPropVar_001tf__f,type,
multis7428212316306422970pVar_f: ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > list_P8791008543742759928ropVar > produc7903949528580895877ropVar ).
thf(sy_c_Multiset__Ordering__in__NP_Oencoder_Oencode__sum__0__1__main__rel_001t__Multiset____Ordering____in____NP__OPropVar,type,
multis162751971668797333ropVar: list_P8791008543742759928ropVar > list_P8791008543742759928ropVar > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_001_Eo,type,
multis5632531380546565553oder_o: $o > $o > ( multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > $o > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( list_M6740372356978808802ropVar > $o ) > ( list_o > $o ) > ( ( multis3193088007478089820ropVar > $o ) > $o > $o ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_001t__Nat__Onat,type,
multis4476563104974320119er_nat: nat > nat > ( multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > nat > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( list_M6740372356978808802ropVar > nat ) > ( list_nat > nat ) > ( ( multis3193088007478089820ropVar > $o ) > nat > $o ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
multis8181102237825478411ropVar: produc2642885279816024434ropVar > produc2642885279816024434ropVar > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( list_M6740372356978808802ropVar > produc2642885279816024434ropVar ) > ( list_P8791008543742759928ropVar > produc2642885279816024434ropVar ) > ( ( multis3193088007478089820ropVar > $o ) > produc2642885279816024434ropVar > $o ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_001tf__a,type,
multis7215977293502021783oder_a: a > a > ( multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > a > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( list_M6740372356978808802ropVar > a ) > ( list_a > a ) > ( ( multis3193088007478089820ropVar > $o ) > a > $o ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_001tf__f,type,
multis7215977293502021788oder_f: f > f > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( list_M6740372356978808802ropVar > f ) > ( list_f > f ) > ( ( multis3193088007478089820ropVar > $o ) > f > $o ) > $o ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oencode__mul__ext_001_Eo_001t__Nat__Onat,type,
multis870653743501676511_o_nat: $o > $o > ( multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > $o > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( list_M6740372356978808802ropVar > $o ) > ( list_o > $o ) > ( nat > nat > product_prod_o_o ) > list_nat > list_nat > product_prod_o_o ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oencode__mul__ext_001_Eo_001tf__a,type,
multis4136079224515316911xt_o_a: $o > $o > ( multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > $o > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( list_M6740372356978808802ropVar > $o ) > ( list_o > $o ) > ( a > a > product_prod_o_o ) > list_a > list_a > product_prod_o_o ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oencode__mul__ext_001t__Nat__Onat_001t__Nat__Onat,type,
multis3784288426396574187at_nat: nat > nat > ( multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > nat > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( list_M6740372356978808802ropVar > nat ) > ( list_nat > nat ) > ( nat > nat > product_prod_o_o ) > list_nat > list_nat > product_prod_nat_nat ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oencode__mul__ext_001t__Nat__Onat_001tf__a,type,
multis7871469701496169891_nat_a: nat > nat > ( multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > nat > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( list_M6740372356978808802ropVar > nat ) > ( list_nat > nat ) > ( a > a > product_prod_o_o ) > list_a > list_a > product_prod_nat_nat ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oencode__mul__ext_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001t__Nat__Onat,type,
multis5504183747909837497ar_nat: produc2642885279816024434ropVar > produc2642885279816024434ropVar > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( list_M6740372356978808802ropVar > produc2642885279816024434ropVar ) > ( list_P8791008543742759928ropVar > produc2642885279816024434ropVar ) > ( nat > nat > product_prod_o_o ) > list_nat > list_nat > produc7137084944585861159ropVar ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oencode__mul__ext_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001tf__a,type,
multis8447049882085784661pVar_a: produc2642885279816024434ropVar > produc2642885279816024434ropVar > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( list_M6740372356978808802ropVar > produc2642885279816024434ropVar ) > ( list_P8791008543742759928ropVar > produc2642885279816024434ropVar ) > ( a > a > product_prod_o_o ) > list_a > list_a > produc7137084944585861159ropVar ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oencode__mul__ext_001tf__a_001t__Nat__Onat,type,
multis3839538200317883461_a_nat: a > a > ( multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > a > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( list_M6740372356978808802ropVar > a ) > ( list_a > a ) > ( nat > nat > product_prod_o_o ) > list_nat > list_nat > product_prod_a_a ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oencode__mul__ext_001tf__a_001tf__a,type,
multis4533784635357410761xt_a_a: a > a > ( multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > a > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( list_M6740372356978808802ropVar > a ) > ( list_a > a ) > ( a > a > product_prod_o_o ) > list_a > list_a > product_prod_a_a ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oencode__mul__ext_001tf__f_001t__Nat__Onat,type,
multis793387808245080138_f_nat: f > f > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( list_M6740372356978808802ropVar > f ) > ( list_f > f ) > ( nat > nat > product_prod_o_o ) > list_nat > list_nat > product_prod_f_f ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oencode__mul__ext_001tf__f_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
multis1064896431811084152ropVar: f > f > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( list_M6740372356978808802ropVar > f ) > ( list_f > f ) > ( produc2642885279816024434ropVar > produc2642885279816024434ropVar > product_prod_o_o ) > list_P8791008543742759928ropVar > list_P8791008543742759928ropVar > product_prod_f_f ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oencode__mul__ext_001tf__f_001tf__a,type,
multis9043250799203582212xt_f_a: f > f > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( list_M6740372356978808802ropVar > f ) > ( list_f > f ) > ( a > a > product_prod_o_o ) > list_a > list_a > product_prod_f_f ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oformula14_001t__Nat__Onat,type,
multis778902868463715824414_nat: nat > ( multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > nat > nat ) > nat > nat > list_nat ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oformula14_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
multis3450153464401155806ropVar: produc2642885279816024434ropVar > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar > produc2642885279816024434ropVar ) > nat > nat > list_P8791008543742759928ropVar ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oformula14_001tf__a,type,
multis1248899897006733418la14_a: a > ( multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > a > a ) > nat > nat > list_a ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oformula14_001tf__f,type,
multis1248899897006733423la14_f: f > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f > f ) > nat > nat > list_f ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oformula15_001_Eo,type,
multis7271095364442511555la15_o: $o > $o > ( multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > $o > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o ) > ( nat > nat > $o ) > ( nat > nat > $o ) > nat > nat > list_o ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oformula15_001t__Nat__Onat,type,
multis902447301359355274115_nat: nat > nat > ( multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > nat > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( nat > nat > $o ) > ( nat > nat > $o ) > nat > nat > list_nat ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oformula15_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
multis5595896195939027229ropVar: produc2642885279816024434ropVar > produc2642885279816024434ropVar > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( nat > nat > $o ) > ( nat > nat > $o ) > nat > nat > list_P8791008543742759928ropVar ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oformula15_001tf__a,type,
multis7684816351888833193la15_a: a > a > ( multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > a > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > a ) > ( nat > nat > $o ) > ( nat > nat > $o ) > nat > nat > list_a ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oformula15_001tf__f,type,
multis7684816351888833198la15_f: f > f > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( nat > nat > $o ) > ( nat > nat > $o ) > nat > nat > list_f ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oformula16_001t__Nat__Onat,type,
multis103654530569517143016_nat: nat > nat > ( multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > nat > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat ) > ( list_M6740372356978808802ropVar > nat ) > ( nat > nat > $o ) > ( nat > nat > $o ) > nat > nat > list_nat ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oformula16_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
multis7741638927476898652ropVar: produc2642885279816024434ropVar > produc2642885279816024434ropVar > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > produc2642885279816024434ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar ) > ( list_M6740372356978808802ropVar > produc2642885279816024434ropVar ) > ( nat > nat > $o ) > ( nat > nat > $o ) > nat > nat > list_P8791008543742759928ropVar ).
thf(sy_c_Multiset__Ordering__in__NP_Oms__encoder_Oformula16_001tf__f,type,
multis4897360769916157165la16_f: f > f > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > f > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ) > ( list_M6740372356978808802ropVar > f ) > ( nat > nat > $o ) > ( nat > nat > $o ) > nat > nat > list_f ).
thf(sy_c_Nat_OSuc,type,
suc: nat > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
size_s3023201423986296836st_nat: list_list_nat > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J_J,type,
size_s6779274088989432426ropVar: list_l3415868495287753214ropVar > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__List__Olist_Itf__a_J_J,type,
size_s349497388124573686list_a: list_list_a > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__List__Olist_Itf__f_J_J,type,
size_s704667588356303611list_f: list_list_f > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Multiset____Ordering____in____NP__OPropVar_J,type,
size_s1943289338788136526ropVar: list_M6740372356978808802ropVar > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Nat__Onat_J,type,
size_size_list_nat: list_nat > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Multiset__Omultiset_Itf__a_J_Mt__Multiset__Omultiset_Itf__a_J_J_J,type,
size_s7238940367606365593iset_a: list_P6988024003011616557iset_a > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
size_s6752116297430514276ropVar: list_P8791008543742759928ropVar > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_Itf__a_Mtf__a_J_J,type,
size_s3885678630836030617od_a_a: list_P1396940483166286381od_a_a > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_Itf__a_J,type,
size_size_list_a: list_a > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_Itf__f_J,type,
size_size_list_f: list_f > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__Multiset____Ordering____in____NP__OPropVar,type,
size_s6253272723116879048ropVar: multis3193088007478089820ropVar > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__String__Ochar,type,
size_size_char: char > nat ).
thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat,type,
ord_less_nat: nat > nat > $o ).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Nat__Onat,type,
ord_less_eq_nat: nat > nat > $o ).
thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat,type,
produc72220940542539688at_nat: ( nat > nat ) > nat > produc8199716216217303280at_nat ).
thf(sy_c_Product__Type_OPair_001_Eo_001_Eo,type,
product_Pair_o_o: $o > $o > product_prod_o_o ).
thf(sy_c_Product__Type_OPair_001t__List__Olist_Itf__f_J_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J,type,
produc5732303558254465141ropVar: list_f > produc7679832412844898215ropVar > produc7903949528580895877ropVar ).
thf(sy_c_Product__Type_OPair_001t__Multiset__Omultiset_I_Eo_J_001t__Multiset__Omultiset_I_Eo_J,type,
produc4035283259145089303iset_o: multiset_o > multiset_o > produc5186363242224454439iset_o ).
thf(sy_c_Product__Type_OPair_001t__Multiset__Omultiset_It__Multiset____Ordering____in____NP__OPropVar_J_001t__Multiset__Omultiset_It__Multiset____Ordering____in____NP__OPropVar_J,type,
produc8064044144368941463ropVar: multis193838646080965794ropVar > multis193838646080965794ropVar > produc313332580105183911ropVar ).
thf(sy_c_Product__Type_OPair_001t__Multiset__Omultiset_It__Nat__Onat_J_001t__Multiset__Omultiset_It__Nat__Onat_J,type,
produc2735455520514455641et_nat: multiset_nat > multiset_nat > produc7112813594591200289et_nat ).
thf(sy_c_Product__Type_OPair_001t__Multiset__Omultiset_Itf__a_J_001t__Multiset__Omultiset_Itf__a_J,type,
produc654756711066625303iset_a: multiset_a > multiset_a > produc6518373309651786023iset_a ).
thf(sy_c_Product__Type_OPair_001t__Multiset____Ordering____in____NP__OPropVar_001t__Multiset____Ordering____in____NP__OPropVar,type,
produc6936306168532358295ropVar: multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc7679832412844898215ropVar ).
thf(sy_c_Product__Type_OPair_001t__Multiset____Ordering____in____NP__OPropVar_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
produc9033520932313852770od_o_o: multis3193088007478089820ropVar > product_prod_o_o > produc1930994613425906418od_o_o ).
thf(sy_c_Product__Type_OPair_001t__Multiset____Ordering____in____NP__OPropVar_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J,type,
produc6194868611276206818ropVar: multis3193088007478089820ropVar > produc7679832412844898215ropVar > produc2642885279816024434ropVar ).
thf(sy_c_Product__Type_OPair_001t__Multiset____Ordering____in____NP__OPropVar_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
produc4931073445691921453od_o_o: multis3193088007478089820ropVar > produc1930994613425906418od_o_o > produc3507939890032686909od_o_o ).
thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Nat__Onat,type,
product_Pair_nat_nat: nat > nat > product_prod_nat_nat ).
thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
produc6842008660352832535ropVar: produc2642885279816024434ropVar > produc2642885279816024434ropVar > produc7137084944585861159ropVar ).
thf(sy_c_Product__Type_OPair_001tf__a_001tf__a,type,
product_Pair_a_a: a > a > product_prod_a_a ).
thf(sy_c_Product__Type_OPair_001tf__f_001t__List__Olist_Itf__f_J,type,
produc4886901243613182557list_f: f > list_f > produc7257588745650887789list_f ).
thf(sy_c_Product__Type_OPair_001tf__f_001tf__f,type,
product_Pair_f_f: f > f > product_prod_f_f ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__List__Olist_Itf__f_J_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_001t__Product____Type__Oprod_It__List__Olist_Itf__f_J_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
produc5770109036932753787ropVar: ( list_f > produc7679832412844898215ropVar > produc7903949528580895877ropVar ) > produc7903949528580895877ropVar > produc7903949528580895877ropVar ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__List__Olist_Itf__f_J_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_001t__Product____Type__Oprod_Itf__f_Mt__List__Olist_Itf__f_J_J,type,
produc9062381539647762275list_f: ( list_f > produc7679832412844898215ropVar > produc7257588745650887789list_f ) > produc7903949528580895877ropVar > produc7257588745650887789list_f ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Multiset____Ordering____in____NP__OPropVar_001t__Multiset____Ordering____in____NP__OPropVar_001t__Product____Type__Oprod_It__List__Olist_Itf__f_J_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
produc5689224170127644889ropVar: ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc7903949528580895877ropVar ) > produc7679832412844898215ropVar > produc7903949528580895877ropVar ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Multiset____Ordering____in____NP__OPropVar_001t__Multiset____Ordering____in____NP__OPropVar_001t__Product____Type__Oprod_Itf__f_Mt__List__Olist_Itf__f_J_J,type,
produc5811297888731727041list_f: ( multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc7257588745650887789list_f ) > produc7679832412844898215ropVar > produc7257588745650887789list_f ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Multiset____Ordering____in____NP__OPropVar_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_001t__Product____Type__Oprod_Itf__f_Mt__List__Olist_Itf__f_J_J,type,
produc1364905799853895606list_f: ( multis3193088007478089820ropVar > produc7679832412844898215ropVar > produc7257588745650887789list_f ) > produc2642885279816024434ropVar > produc7257588745650887789list_f ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__f_001t__List__Olist_Itf__f_J_001t__List__Olist_Itf__f_J,type,
produc150797823399499287list_f: ( f > list_f > list_f ) > produc7257588745650887789list_f > list_f ).
thf(sy_c_Product__Type_Oprod_Ofst_001_Eo_001_Eo,type,
product_fst_o_o: product_prod_o_o > $o ).
thf(sy_c_Product__Type_Oprod_Ofst_001t__Multiset____Ordering____in____NP__OPropVar_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J,type,
produc6918815732823278798ropVar: produc2642885279816024434ropVar > multis3193088007478089820ropVar ).
thf(sy_c_Product__Type_Oprod_Osnd_001_Eo_001_Eo,type,
product_snd_o_o: product_prod_o_o > $o ).
thf(sy_c_Product__Type_Oprod_Osnd_001t__Multiset____Ordering____in____NP__OPropVar_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J,type,
produc7201713744986289680ropVar: produc2642885279816024434ropVar > produc7679832412844898215ropVar ).
thf(sy_c_Set_OCollect_001t__Multiset____Ordering____in____NP__OPropVar,type,
collec8658135508005558727ropVar: ( multis3193088007478089820ropVar > $o ) > set_Mu5658373669842198716ropVar ).
thf(sy_c_Set_OCollect_001t__Nat__Onat,type,
collect_nat: ( nat > $o ) > set_nat ).
thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Multiset__Omultiset_Itf__a_J_Mt__Multiset__Omultiset_Itf__a_J_J,type,
collec6344740439120713362iset_a: ( produc6518373309651786023iset_a > $o ) > set_Pr79727621955416071iset_a ).
thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
collec3336397797384452498od_a_a: ( product_prod_a_a > $o ) > set_Product_prod_a_a ).
thf(sy_c_Set_OCollect_001tf__a,type,
collect_a: ( a > $o ) > set_a ).
thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Nat__Onat,type,
image_nat_nat: ( nat > nat ) > set_nat > set_nat ).
thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_001t__Multiset____Ordering____in____NP__OPropVar,type,
image_4513341045867859311ropVar: ( produc2642885279816024434ropVar > multis3193088007478089820ropVar ) > set_Pr6405597471078531282ropVar > set_Mu5658373669842198716ropVar ).
thf(sy_c_Set_Oinsert_001t__Multiset____Ordering____in____NP__OPropVar,type,
insert1868789817947358764ropVar: multis3193088007478089820ropVar > set_Mu5658373669842198716ropVar > set_Mu5658373669842198716ropVar ).
thf(sy_c_Set_Oinsert_001t__Nat__Onat,type,
insert_nat: nat > set_nat > set_nat ).
thf(sy_c_Set_Othe__elem_001t__List__Olist_Itf__f_J,type,
the_elem_list_f: set_list_f > list_f ).
thf(sy_c_Set_Othe__elem_001t__Nat__Onat,type,
the_elem_nat: set_nat > nat ).
thf(sy_c_Set_Othe__elem_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
the_el184889641172005735ropVar: set_Pr6405597471078531282ropVar > produc2642885279816024434ropVar ).
thf(sy_c_Set_Othe__elem_001tf__a,type,
the_elem_a: set_a > a ).
thf(sy_c_Set_Othe__elem_001tf__f,type,
the_elem_f: set_f > f ).
thf(sy_c_Set__Interval_Oord__class_OatLeastLessThan_001t__Nat__Onat,type,
set_or4665077453230672383an_nat: nat > nat > set_nat ).
thf(sy_c_String_Ochar_Osize__char,type,
size_char: char > nat ).
thf(sy_c_Wellfounded_Oaccp_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
accp_l8790861725341200257ropVar: ( list_P8791008543742759928ropVar > list_P8791008543742759928ropVar > $o ) > list_P8791008543742759928ropVar > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_I_Eo_M_Eo_J_J_J,type,
accp_P8208393750683106630od_o_o: ( produc3507939890032686909od_o_o > produc3507939890032686909od_o_o > $o ) > produc3507939890032686909od_o_o > $o ).
thf(sy_c_fChoice_001t__Nat__Onat,type,
fChoice_nat: ( nat > $o ) > nat ).
thf(sy_c_member_001t__List__Olist_It__Nat__Onat_J,type,
member_list_nat: list_nat > set_list_nat > $o ).
thf(sy_c_member_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J,type,
member6236339133593825953ropVar: list_P8791008543742759928ropVar > set_li8998331099879477720ropVar > $o ).
thf(sy_c_member_001t__List__Olist_Itf__a_J,type,
member_list_a: list_a > set_list_a > $o ).
thf(sy_c_member_001t__List__Olist_Itf__f_J,type,
member_list_f: list_f > set_list_f > $o ).
thf(sy_c_member_001t__Multiset____Ordering____in____NP__OPropVar,type,
member8421201611525043589ropVar: multis3193088007478089820ropVar > set_Mu5658373669842198716ropVar > $o ).
thf(sy_c_member_001t__Nat__Onat,type,
member_nat: nat > set_nat > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
member7466972457876170832od_o_o: product_prod_o_o > set_Product_prod_o_o > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Multiset__Omultiset_I_Eo_J_Mt__Multiset__Omultiset_I_Eo_J_J,type,
member6734461554573772112iset_o: produc5186363242224454439iset_o > set_Pr3522822220408633095iset_o > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Multiset__Omultiset_It__Multiset____Ordering____in____NP__OPropVar_J_Mt__Multiset__Omultiset_It__Multiset____Ordering____in____NP__OPropVar_J_J,type,
member5226782437669593040ropVar: produc313332580105183911ropVar > set_Pr2934421189634577799ropVar > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Multiset__Omultiset_It__Nat__Onat_J_Mt__Multiset__Omultiset_It__Nat__Onat_J_J,type,
member2326506860204807626et_nat: produc7112813594591200289et_nat > set_Pr7086239977703175297et_nat > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Multiset__Omultiset_Itf__a_J_Mt__Multiset__Omultiset_Itf__a_J_J,type,
member5199237121806060112iset_a: produc6518373309651786023iset_a > set_Pr79727621955416071iset_a > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J,type,
member2619728555115997648ropVar: produc7679832412844898215ropVar > set_Pr7799659934693882759ropVar > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J,type,
member9210975342120487067ropVar: produc2642885279816024434ropVar > set_Pr6405597471078531282ropVar > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
member8440522571783428010at_nat: product_prod_nat_nat > set_Pr1261947904930325089at_nat > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
member1426531477525435216od_a_a: product_prod_a_a > set_Product_prod_a_a > $o ).
thf(sy_c_member_001tf__a,type,
member_a: a > set_a > $o ).
thf(sy_c_member_001tf__f,type,
member_f: f > set_f > $o ).
thf(sy_v_NS,type,
ns: set_Product_prod_a_a ).
thf(sy_v_S,type,
s: set_Product_prod_a_a ).
thf(sy_v_Xs1____,type,
xs1: list_a ).
thf(sy_v_Xs2____,type,
xs2: list_a ).
thf(sy_v_Ys1____,type,
ys1: list_a ).
thf(sy_v_Ys2____,type,
ys2: list_a ).
thf(sy_v_cns,type,
cns: nat > nat > $o ).
thf(sy_v_cs,type,
cs: nat > nat > $o ).
thf(sy_v_enc__False,type,
enc_False: f ).
thf(sy_v_enc__True,type,
enc_True: f ).
thf(sy_v_enc__conj,type,
enc_conj: list_f > f ).
thf(sy_v_enc__different,type,
enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ).
thf(sy_v_enc__equiv__and__not,type,
enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ).
thf(sy_v_enc__equiv__ite,type,
enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ).
thf(sy_v_enc__impl,type,
enc_impl: multis3193088007478089820ropVar > f > f ).
thf(sy_v_enc__ite,type,
enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ).
thf(sy_v_enc__neg,type,
enc_neg: multis3193088007478089820ropVar > f ).
thf(sy_v_enc__not__all,type,
enc_not_all: list_M6740372356978808802ropVar > f ).
thf(sy_v_enc__not__and,type,
enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ).
thf(sy_v_enc__pos,type,
enc_pos: multis3193088007478089820ropVar > f ).
thf(sy_v_enc__var__impl,type,
enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f ).
thf(sy_v_eval,type,
eval: ( multis3193088007478089820ropVar > $o ) > f > $o ).
thf(sy_v_i__of__j2____,type,
i_of_j2: nat > nat ).
thf(sy_v_m,type,
m: nat ).
thf(sy_v_n,type,
n: nat ).
thf(sy_v_pos__of____,type,
pos_of: list_nat > nat > nat ).
thf(sy_v_s,type,
s2: nat > a ).
thf(sy_v_t,type,
t: nat > a ).
thf(sy_v_v_H____,type,
v: multis3193088007478089820ropVar > $o ).
thf(sy_v_v____,type,
v2: multis3193088007478089820ropVar > $o ).
thf(sy_v_xs1____,type,
xs12: list_nat ).
thf(sy_v_xs2____,type,
xs22: list_nat ).
thf(sy_v_ys1____,type,
ys12: list_nat ).
thf(sy_v_ys2____,type,
ys22: list_nat ).
% Relevant facts (1104)
thf(fact_0_enc__sound_I7_J,axiom,
! [Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,Y: multis3193088007478089820ropVar,Z: multis3193088007478089820ropVar,U: multis3193088007478089820ropVar] :
( ( eval @ Alpha @ ( enc_equiv_ite @ X @ Y @ Z @ U ) )
= ( ( Alpha @ X )
= ( ( ( Alpha @ Y )
=> ( Alpha @ Z ) )
& ( ~ ( Alpha @ Y )
=> ( Alpha @ U ) ) ) ) ) ).
% enc_sound(7)
thf(fact_1_enc__sound_I6_J,axiom,
! [Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,Y: multis3193088007478089820ropVar,Z: multis3193088007478089820ropVar] :
( ( eval @ Alpha @ ( enc_equiv_and_not @ X @ Y @ Z ) )
= ( ( Alpha @ X )
= ( ( Alpha @ Y )
& ~ ( Alpha @ Z ) ) ) ) ).
% enc_sound(6)
thf(fact_2_enc__sound_I5_J,axiom,
! [Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,Y: multis3193088007478089820ropVar] :
( ( eval @ Alpha @ ( enc_different @ X @ Y ) )
= ( ( Alpha @ X )
!= ( Alpha @ Y ) ) ) ).
% enc_sound(5)
thf(fact_3_enc__sound_I11_J,axiom,
! [Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,Y: multis3193088007478089820ropVar] :
( ( eval @ Alpha @ ( enc_not_and @ X @ Y ) )
= ( ~ ( ( Alpha @ X )
& ( Alpha @ Y ) ) ) ) ).
% enc_sound(11)
thf(fact_4_enc__sound_I10_J,axiom,
! [Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,Y: multis3193088007478089820ropVar] :
( ( eval @ Alpha @ ( enc_var_impl @ X @ Y ) )
= ( ( Alpha @ X )
=> ( Alpha @ Y ) ) ) ).
% enc_sound(10)
thf(fact_5_enc__sound_I4_J,axiom,
! [Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar] :
( ( eval @ Alpha @ ( enc_neg @ X ) )
= ( ~ ( Alpha @ X ) ) ) ).
% enc_sound(4)
thf(fact_6_enc__sound_I2_J,axiom,
! [Alpha: multis3193088007478089820ropVar > $o] : ( eval @ Alpha @ enc_True ) ).
% enc_sound(2)
thf(fact_7_enc__sound_I8_J,axiom,
! [Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,Y: multis3193088007478089820ropVar,Z: multis3193088007478089820ropVar] :
( ( eval @ Alpha @ ( enc_ite @ X @ Y @ Z ) )
= ( ( ( Alpha @ X )
=> ( Alpha @ Y ) )
& ( ~ ( Alpha @ X )
=> ( Alpha @ Z ) ) ) ) ).
% enc_sound(8)
thf(fact_8_enc__sound_I3_J,axiom,
! [Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar] :
( ( eval @ Alpha @ ( enc_pos @ X ) )
= ( Alpha @ X ) ) ).
% enc_sound(3)
thf(fact_9_enc__sound_I1_J,axiom,
! [Alpha: multis3193088007478089820ropVar > $o] :
~ ( eval @ Alpha @ enc_False ) ).
% enc_sound(1)
thf(fact_10_enc__sound_I9_J,axiom,
! [Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,F: f] :
( ( eval @ Alpha @ ( enc_impl @ X @ F ) )
= ( ( Alpha @ X )
=> ( eval @ Alpha @ F ) ) ) ).
% enc_sound(9)
thf(fact_11__C14_C,axiom,
! [X2: f] :
( ( member_f @ X2 @ ( set_f2 @ ( multis1248899897006733423la14_f @ enc_False @ enc_pos @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ n @ m ) ) )
=> ( eval @ v2 @ X2 ) ) ).
% "14"
thf(fact_12_ms__encoder_Oformula16_Ocong,axiom,
multis4897360769916157165la16_f = multis4897360769916157165la16_f ).
% ms_encoder.formula16.cong
thf(fact_13__C15_C,axiom,
! [X2: f] :
( ( member_f @ X2 @ ( set_f2 @ ( multis7684816351888833198la15_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and @ cs @ cns @ n @ m ) ) )
=> ( eval @ v2 @ X2 ) ) ).
% "15"
thf(fact_14_ms__encoder__axioms,axiom,
multis7215977293502021788oder_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and @ enc_not_all @ enc_conj @ eval ).
% ms_encoder_axioms
thf(fact_15_encodeGammaCond_Osimps_I4_J,axiom,
! [Gam: multis3193088007478089820ropVar,Eps: multis3193088007478089820ropVar] :
( ( multis1454621290665623088ropVar @ enc_True @ enc_neg @ enc_var_impl @ enc_not_and @ Gam @ Eps @ $true @ $false )
= ( enc_not_and @ Gam @ Eps ) ) ).
% encodeGammaCond.simps(4)
thf(fact_16_encodeGammaCond_Osimps_I3_J,axiom,
! [Gam: multis3193088007478089820ropVar,Eps: multis3193088007478089820ropVar] :
( ( multis1454621290665623088ropVar @ enc_True @ enc_neg @ enc_var_impl @ enc_not_and @ Gam @ Eps @ $false @ $true )
= ( enc_var_impl @ Gam @ Eps ) ) ).
% encodeGammaCond.simps(3)
thf(fact_17_encodeGammaCond_Osimps_I2_J,axiom,
! [Gam: multis3193088007478089820ropVar,Eps: multis3193088007478089820ropVar] :
( ( multis1454621290665623088ropVar @ enc_True @ enc_neg @ enc_var_impl @ enc_not_and @ Gam @ Eps @ $false @ $false )
= ( enc_neg @ Gam ) ) ).
% encodeGammaCond.simps(2)
thf(fact_18_encodeGammaCond_Osimps_I1_J,axiom,
! [Gam: multis3193088007478089820ropVar,Eps: multis3193088007478089820ropVar] :
( ( multis1454621290665623088ropVar @ enc_True @ enc_neg @ enc_var_impl @ enc_not_and @ Gam @ Eps @ $true @ $true )
= enc_True ) ).
% encodeGammaCond.simps(1)
thf(fact_19_encodeGammaCond_Oelims,axiom,
! [X: multis3193088007478089820ropVar,Xa: multis3193088007478089820ropVar,Xb: $o,Xc: $o,Y: f] :
( ( ( multis1454621290665623088ropVar @ enc_True @ enc_neg @ enc_var_impl @ enc_not_and @ X @ Xa @ Xb @ Xc )
= Y )
=> ( ( Xb
=> ( Xc
=> ( Y != enc_True ) ) )
=> ( ( ~ Xb
=> ( ~ Xc
=> ( Y
!= ( enc_neg @ X ) ) ) )
=> ( ( ~ Xb
=> ( Xc
=> ( Y
!= ( enc_var_impl @ X @ Xa ) ) ) )
=> ~ ( Xb
=> ( ~ Xc
=> ( Y
!= ( enc_not_and @ X @ Xa ) ) ) ) ) ) ) ) ).
% encodeGammaCond.elims
thf(fact_20_encoder__axioms,axiom,
multis2000375938434000499pVar_f @ eval @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and @ enc_not_all @ enc_conj ).
% encoder_axioms
thf(fact_21_encodeGammaCond,axiom,
! [Alpha: multis3193088007478089820ropVar > $o,Gam: multis3193088007478089820ropVar,Eps: multis3193088007478089820ropVar,S: $o,Ns: $o] :
( ( eval @ Alpha @ ( multis1454621290665623088ropVar @ enc_True @ enc_neg @ enc_var_impl @ enc_not_and @ Gam @ Eps @ S @ Ns ) )
= ( ( Alpha @ Gam )
=> ( ( ( Alpha @ Eps )
=> Ns )
& ( ~ ( Alpha @ Eps )
=> S ) ) ) ) ).
% encodeGammaCond
thf(fact_22_eval__all__maps,axiom,
! [F: produc2642885279816024434ropVar > list_f,Fs: list_P8791008543742759928ropVar,Alpha: multis3193088007478089820ropVar > $o] :
( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( maps_P2527380396400262994pVar_f @ F @ Fs ) ) )
=> ( eval @ Alpha @ X3 ) ) )
= ( ! [X3: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X3 @ ( set_Pr3946994337432900359ropVar @ Fs ) )
=> ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ ( F @ X3 ) ) )
=> ( eval @ Alpha @ Y2 ) ) ) ) ) ).
% eval_all_maps
thf(fact_23_eval__all__maps,axiom,
! [F: list_f > list_f,Fs: list_list_f,Alpha: multis3193088007478089820ropVar > $o] :
( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( maps_list_f_f @ F @ Fs ) ) )
=> ( eval @ Alpha @ X3 ) ) )
= ( ! [X3: list_f] :
( ( member_list_f @ X3 @ ( set_list_f2 @ Fs ) )
=> ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ ( F @ X3 ) ) )
=> ( eval @ Alpha @ Y2 ) ) ) ) ) ).
% eval_all_maps
thf(fact_24_eval__all__maps,axiom,
! [F: nat > list_f,Fs: list_nat,Alpha: multis3193088007478089820ropVar > $o] :
( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( maps_nat_f @ F @ Fs ) ) )
=> ( eval @ Alpha @ X3 ) ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Fs ) )
=> ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ ( F @ X3 ) ) )
=> ( eval @ Alpha @ Y2 ) ) ) ) ) ).
% eval_all_maps
thf(fact_25_eval__all__maps,axiom,
! [F: f > list_f,Fs: list_f,Alpha: multis3193088007478089820ropVar > $o] :
( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( maps_f_f @ F @ Fs ) ) )
=> ( eval @ Alpha @ X3 ) ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs ) )
=> ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ ( F @ X3 ) ) )
=> ( eval @ Alpha @ Y2 ) ) ) ) ) ).
% eval_all_maps
thf(fact_26_eval__all__maps,axiom,
! [F: a > list_f,Fs: list_a,Alpha: multis3193088007478089820ropVar > $o] :
( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( maps_a_f @ F @ Fs ) ) )
=> ( eval @ Alpha @ X3 ) ) )
= ( ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Fs ) )
=> ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ ( F @ X3 ) ) )
=> ( eval @ Alpha @ Y2 ) ) ) ) ) ).
% eval_all_maps
thf(fact_27_enc__sound_I13_J,axiom,
! [Alpha: multis3193088007478089820ropVar > $o,Fs: list_f] :
( ( eval @ Alpha @ ( enc_conj @ Fs ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs ) )
=> ( eval @ Alpha @ X3 ) ) ) ) ).
% enc_sound(13)
thf(fact_28_eval__all__Cons,axiom,
! [F: f,Gs: list_f,Alpha: multis3193088007478089820ropVar > $o] :
( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( cons_f @ F @ Gs ) ) )
=> ( eval @ Alpha @ X3 ) ) )
= ( ( eval @ Alpha @ F )
& ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Gs ) )
=> ( eval @ Alpha @ X3 ) ) ) ) ).
% eval_all_Cons
thf(fact_29_encoder_Oenc__sound_I11_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,Y: multis3193088007478089820ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( Eval @ Alpha @ ( Enc_not_and @ X @ Y ) )
= ( ~ ( ( Alpha @ X )
& ( Alpha @ Y ) ) ) ) ) ).
% encoder.enc_sound(11)
thf(fact_30_encoder_Oenc__sound_I10_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,Y: multis3193088007478089820ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( Eval @ Alpha @ ( Enc_var_impl @ X @ Y ) )
= ( ( Alpha @ X )
=> ( Alpha @ Y ) ) ) ) ).
% encoder.enc_sound(10)
thf(fact_31_encoder_Oenc__sound_I9_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,F: f] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( Eval @ Alpha @ ( Enc_impl @ X @ F ) )
= ( ( Alpha @ X )
=> ( Eval @ Alpha @ F ) ) ) ) ).
% encoder.enc_sound(9)
thf(fact_32_encoder_Oenc__sound_I8_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,Y: multis3193088007478089820ropVar,Z: multis3193088007478089820ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( Eval @ Alpha @ ( Enc_ite @ X @ Y @ Z ) )
= ( ( ( Alpha @ X )
=> ( Alpha @ Y ) )
& ( ~ ( Alpha @ X )
=> ( Alpha @ Z ) ) ) ) ) ).
% encoder.enc_sound(8)
thf(fact_33_encoder_Oenc__sound_I7_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,Y: multis3193088007478089820ropVar,Z: multis3193088007478089820ropVar,U: multis3193088007478089820ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( Eval @ Alpha @ ( Enc_equiv_ite @ X @ Y @ Z @ U ) )
= ( ( Alpha @ X )
= ( ( ( Alpha @ Y )
=> ( Alpha @ Z ) )
& ( ~ ( Alpha @ Y )
=> ( Alpha @ U ) ) ) ) ) ) ).
% encoder.enc_sound(7)
thf(fact_34_encoder_Oenc__sound_I6_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,Y: multis3193088007478089820ropVar,Z: multis3193088007478089820ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( Eval @ Alpha @ ( Enc_equiv_and_not @ X @ Y @ Z ) )
= ( ( Alpha @ X )
= ( ( Alpha @ Y )
& ~ ( Alpha @ Z ) ) ) ) ) ).
% encoder.enc_sound(6)
thf(fact_35_encoder_Oenc__sound_I5_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar,Y: multis3193088007478089820ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( Eval @ Alpha @ ( Enc_different @ X @ Y ) )
= ( ( Alpha @ X )
!= ( Alpha @ Y ) ) ) ) ).
% encoder.enc_sound(5)
thf(fact_36_encoder_Oenc__sound_I4_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( Eval @ Alpha @ ( Enc_neg @ X ) )
= ( ~ ( Alpha @ X ) ) ) ) ).
% encoder.enc_sound(4)
thf(fact_37_encoder_Oenc__sound_I3_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( Eval @ Alpha @ ( Enc_pos @ X ) )
= ( Alpha @ X ) ) ) ).
% encoder.enc_sound(3)
thf(fact_38_encoder_Oenc__sound_I2_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( Eval @ Alpha @ Enc_True ) ) ).
% encoder.enc_sound(2)
thf(fact_39_encoder_Oenc__sound_I1_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ~ ( Eval @ Alpha @ Enc_False ) ) ).
% encoder.enc_sound(1)
thf(fact_40_encoder_OencodeGammaCond_Osimps_I4_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Gam: multis3193088007478089820ropVar,Eps: multis3193088007478089820ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( multis1454621290665623088ropVar @ Enc_True @ Enc_neg @ Enc_var_impl @ Enc_not_and @ Gam @ Eps @ $true @ $false )
= ( Enc_not_and @ Gam @ Eps ) ) ) ).
% encoder.encodeGammaCond.simps(4)
thf(fact_41_encoder_OencodeGammaCond_Osimps_I3_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Gam: multis3193088007478089820ropVar,Eps: multis3193088007478089820ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( multis1454621290665623088ropVar @ Enc_True @ Enc_neg @ Enc_var_impl @ Enc_not_and @ Gam @ Eps @ $false @ $true )
= ( Enc_var_impl @ Gam @ Eps ) ) ) ).
% encoder.encodeGammaCond.simps(3)
thf(fact_42_encoder_OencodeGammaCond_Osimps_I2_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Gam: multis3193088007478089820ropVar,Eps: multis3193088007478089820ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( multis1454621290665623088ropVar @ Enc_True @ Enc_neg @ Enc_var_impl @ Enc_not_and @ Gam @ Eps @ $false @ $false )
= ( Enc_neg @ Gam ) ) ) ).
% encoder.encodeGammaCond.simps(2)
thf(fact_43_encoder_OencodeGammaCond_Osimps_I1_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Gam: multis3193088007478089820ropVar,Eps: multis3193088007478089820ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( multis1454621290665623088ropVar @ Enc_True @ Enc_neg @ Enc_var_impl @ Enc_not_and @ Gam @ Eps @ $true @ $true )
= Enc_True ) ) ).
% encoder.encodeGammaCond.simps(1)
thf(fact_44_ms__encoder_Ointro,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval ) ) ).
% ms_encoder.intro
thf(fact_45_ms__encoder_Oaxioms,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj ) ) ).
% ms_encoder.axioms
thf(fact_46_encoder_OencodeGammaCond,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o,Gam: multis3193088007478089820ropVar,Eps: multis3193088007478089820ropVar,S: $o,Ns: $o] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( Eval @ Alpha @ ( multis1454621290665623088ropVar @ Enc_True @ Enc_neg @ Enc_var_impl @ Enc_not_and @ Gam @ Eps @ S @ Ns ) )
= ( ( Alpha @ Gam )
=> ( ( ( Alpha @ Eps )
=> Ns )
& ( ~ ( Alpha @ Eps )
=> S ) ) ) ) ) ).
% encoder.encodeGammaCond
thf(fact_47_encoder_OencodeGammaCond_Oelims,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,X: multis3193088007478089820ropVar,Xa: multis3193088007478089820ropVar,Xb: $o,Xc: $o,Y: f] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( ( multis1454621290665623088ropVar @ Enc_True @ Enc_neg @ Enc_var_impl @ Enc_not_and @ X @ Xa @ Xb @ Xc )
= Y )
=> ( ( Xb
=> ( Xc
=> ( Y != Enc_True ) ) )
=> ( ( ~ Xb
=> ( ~ Xc
=> ( Y
!= ( Enc_neg @ X ) ) ) )
=> ( ( ~ Xb
=> ( Xc
=> ( Y
!= ( Enc_var_impl @ X @ Xa ) ) ) )
=> ~ ( Xb
=> ( ~ Xc
=> ( Y
!= ( Enc_not_and @ X @ Xa ) ) ) ) ) ) ) ) ) ).
% encoder.encodeGammaCond.elims
thf(fact_48_mem__Collect__eq,axiom,
! [A: produc6518373309651786023iset_a,P: produc6518373309651786023iset_a > $o] :
( ( member5199237121806060112iset_a @ A @ ( collec6344740439120713362iset_a @ P ) )
= ( P @ A ) ) ).
% mem_Collect_eq
thf(fact_49_mem__Collect__eq,axiom,
! [A: product_prod_a_a,P: product_prod_a_a > $o] :
( ( member1426531477525435216od_a_a @ A @ ( collec3336397797384452498od_a_a @ P ) )
= ( P @ A ) ) ).
% mem_Collect_eq
thf(fact_50_mem__Collect__eq,axiom,
! [A: a,P: a > $o] :
( ( member_a @ A @ ( collect_a @ P ) )
= ( P @ A ) ) ).
% mem_Collect_eq
thf(fact_51_mem__Collect__eq,axiom,
! [A: nat,P: nat > $o] :
( ( member_nat @ A @ ( collect_nat @ P ) )
= ( P @ A ) ) ).
% mem_Collect_eq
thf(fact_52_mem__Collect__eq,axiom,
! [A: multis3193088007478089820ropVar,P: multis3193088007478089820ropVar > $o] :
( ( member8421201611525043589ropVar @ A @ ( collec8658135508005558727ropVar @ P ) )
= ( P @ A ) ) ).
% mem_Collect_eq
thf(fact_53_Collect__mem__eq,axiom,
! [A2: set_Pr79727621955416071iset_a] :
( ( collec6344740439120713362iset_a
@ ^ [X3: produc6518373309651786023iset_a] : ( member5199237121806060112iset_a @ X3 @ A2 ) )
= A2 ) ).
% Collect_mem_eq
thf(fact_54_Collect__mem__eq,axiom,
! [A2: set_Product_prod_a_a] :
( ( collec3336397797384452498od_a_a
@ ^ [X3: product_prod_a_a] : ( member1426531477525435216od_a_a @ X3 @ A2 ) )
= A2 ) ).
% Collect_mem_eq
thf(fact_55_Collect__mem__eq,axiom,
! [A2: set_a] :
( ( collect_a
@ ^ [X3: a] : ( member_a @ X3 @ A2 ) )
= A2 ) ).
% Collect_mem_eq
thf(fact_56_Collect__mem__eq,axiom,
! [A2: set_nat] :
( ( collect_nat
@ ^ [X3: nat] : ( member_nat @ X3 @ A2 ) )
= A2 ) ).
% Collect_mem_eq
thf(fact_57_Collect__mem__eq,axiom,
! [A2: set_Mu5658373669842198716ropVar] :
( ( collec8658135508005558727ropVar
@ ^ [X3: multis3193088007478089820ropVar] : ( member8421201611525043589ropVar @ X3 @ A2 ) )
= A2 ) ).
% Collect_mem_eq
thf(fact_58_ms__encoder__def,axiom,
( multis7215977293502021788oder_f
= ( ^ [Enc_False2: f,Enc_True2: f,Enc_pos2: multis3193088007478089820ropVar > f,Enc_neg2: multis3193088007478089820ropVar > f,Enc_different2: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not2: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite2: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite2: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl2: multis3193088007478089820ropVar > f > f,Enc_var_impl2: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and2: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all2: list_M6740372356978808802ropVar > f,Enc_conj2: list_f > f,Eval2: ( multis3193088007478089820ropVar > $o ) > f > $o] : ( multis2000375938434000499pVar_f @ Eval2 @ Enc_False2 @ Enc_True2 @ Enc_pos2 @ Enc_neg2 @ Enc_different2 @ Enc_equiv_and_not2 @ Enc_equiv_ite2 @ Enc_ite2 @ Enc_impl2 @ Enc_var_impl2 @ Enc_not_and2 @ Enc_not_all2 @ Enc_conj2 ) ) ) ).
% ms_encoder_def
thf(fact_59_encoder_OencodeGammaCond_Ocong,axiom,
multis1454621290665623088ropVar = multis1454621290665623088ropVar ).
% encoder.encodeGammaCond.cong
thf(fact_60_ms__encoder_Oformula15_Ocong,axiom,
multis7684816351888833198la15_f = multis7684816351888833198la15_f ).
% ms_encoder.formula15.cong
thf(fact_61_ms__encoder_Oformula14_Ocong,axiom,
multis1248899897006733423la14_f = multis1248899897006733423la14_f ).
% ms_encoder.formula14.cong
thf(fact_62_encoder_Oeval__all__Cons,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,F: f,Gs: list_f,Alpha: multis3193088007478089820ropVar > $o] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( cons_f @ F @ Gs ) ) )
=> ( Eval @ Alpha @ X3 ) ) )
= ( ( Eval @ Alpha @ F )
& ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Gs ) )
=> ( Eval @ Alpha @ X3 ) ) ) ) ) ).
% encoder.eval_all_Cons
thf(fact_63_encoder_Oeval__all__maps,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,F: produc2642885279816024434ropVar > list_f,Fs: list_P8791008543742759928ropVar,Alpha: multis3193088007478089820ropVar > $o] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( maps_P2527380396400262994pVar_f @ F @ Fs ) ) )
=> ( Eval @ Alpha @ X3 ) ) )
= ( ! [X3: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X3 @ ( set_Pr3946994337432900359ropVar @ Fs ) )
=> ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ ( F @ X3 ) ) )
=> ( Eval @ Alpha @ Y2 ) ) ) ) ) ) ).
% encoder.eval_all_maps
thf(fact_64_encoder_Oeval__all__maps,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,F: list_f > list_f,Fs: list_list_f,Alpha: multis3193088007478089820ropVar > $o] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( maps_list_f_f @ F @ Fs ) ) )
=> ( Eval @ Alpha @ X3 ) ) )
= ( ! [X3: list_f] :
( ( member_list_f @ X3 @ ( set_list_f2 @ Fs ) )
=> ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ ( F @ X3 ) ) )
=> ( Eval @ Alpha @ Y2 ) ) ) ) ) ) ).
% encoder.eval_all_maps
thf(fact_65_encoder_Oeval__all__maps,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,F: nat > list_f,Fs: list_nat,Alpha: multis3193088007478089820ropVar > $o] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( maps_nat_f @ F @ Fs ) ) )
=> ( Eval @ Alpha @ X3 ) ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Fs ) )
=> ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ ( F @ X3 ) ) )
=> ( Eval @ Alpha @ Y2 ) ) ) ) ) ) ).
% encoder.eval_all_maps
thf(fact_66_encoder_Oeval__all__maps,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,F: f > list_f,Fs: list_f,Alpha: multis3193088007478089820ropVar > $o] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( maps_f_f @ F @ Fs ) ) )
=> ( Eval @ Alpha @ X3 ) ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs ) )
=> ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ ( F @ X3 ) ) )
=> ( Eval @ Alpha @ Y2 ) ) ) ) ) ) ).
% encoder.eval_all_maps
thf(fact_67_encoder_Oeval__all__maps,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,F: a > list_f,Fs: list_a,Alpha: multis3193088007478089820ropVar > $o] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( maps_a_f @ F @ Fs ) ) )
=> ( Eval @ Alpha @ X3 ) ) )
= ( ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Fs ) )
=> ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ ( F @ X3 ) ) )
=> ( Eval @ Alpha @ Y2 ) ) ) ) ) ) ).
% encoder.eval_all_maps
thf(fact_68_encoder__def,axiom,
( multis9072456028556213230at_nat
= ( ^ [Eval2: ( nat > $o ) > nat > $o,Enc_False2: nat,Enc_True2: nat,Enc_pos2: nat > nat,Enc_neg2: nat > nat,Enc_different2: nat > nat > nat,Enc_equiv_and_not2: nat > nat > nat > nat,Enc_equiv_ite2: nat > nat > nat > nat > nat,Enc_ite2: nat > nat > nat > nat,Enc_impl2: nat > nat > nat,Enc_var_impl2: nat > nat > nat,Enc_not_and2: nat > nat > nat,Enc_not_all2: list_nat > nat,Enc_conj2: list_nat > nat] :
( ! [Alpha2: nat > $o] :
~ ( Eval2 @ Alpha2 @ Enc_False2 )
& ! [Alpha2: nat > $o] : ( Eval2 @ Alpha2 @ Enc_True2 )
& ! [Alpha2: nat > $o,X3: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_pos2 @ X3 ) )
= ( Alpha2 @ X3 ) )
& ! [Alpha2: nat > $o,X3: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_neg2 @ X3 ) )
= ( ~ ( Alpha2 @ X3 ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_different2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
= ( ~ ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat,Z2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_and_not2 @ X3 @ Y2 @ Z2 ) )
= ( ( Alpha2 @ X3 )
= ( ( Alpha2 @ Y2 )
& ~ ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat,Z2: nat,U2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_ite2 @ X3 @ Y2 @ Z2 @ U2 ) )
= ( ( Alpha2 @ X3 )
= ( ( ( Alpha2 @ Y2 )
=> ( Alpha2 @ Z2 ) )
& ( ~ ( Alpha2 @ Y2 )
=> ( Alpha2 @ U2 ) ) ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat,Z2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_ite2 @ X3 @ Y2 @ Z2 ) )
= ( ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) )
& ( ~ ( Alpha2 @ X3 )
=> ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: nat > $o,X3: nat,F2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_impl2 @ X3 @ F2 ) )
= ( ( Alpha2 @ X3 )
=> ( Eval2 @ Alpha2 @ F2 ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_var_impl2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_not_and2 @ X3 @ Y2 ) )
= ( ~ ( ( Alpha2 @ X3 )
& ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: nat > $o,Xs: list_nat] :
( ( Eval2 @ Alpha2 @ ( Enc_not_all2 @ Xs ) )
= ( ~ ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
=> ( Alpha2 @ X3 ) ) ) )
& ! [Alpha2: nat > $o,Fs2: list_nat] :
( ( Eval2 @ Alpha2 @ ( Enc_conj2 @ Fs2 ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Fs2 ) )
=> ( Eval2 @ Alpha2 @ X3 ) ) ) ) ) ) ) ).
% encoder_def
thf(fact_69_encoder__def,axiom,
( multis15323236012246629_nat_f
= ( ^ [Eval2: ( nat > $o ) > f > $o,Enc_False2: f,Enc_True2: f,Enc_pos2: nat > f,Enc_neg2: nat > f,Enc_different2: nat > nat > f,Enc_equiv_and_not2: nat > nat > nat > f,Enc_equiv_ite2: nat > nat > nat > nat > f,Enc_ite2: nat > nat > nat > f,Enc_impl2: nat > f > f,Enc_var_impl2: nat > nat > f,Enc_not_and2: nat > nat > f,Enc_not_all2: list_nat > f,Enc_conj2: list_f > f] :
( ! [Alpha2: nat > $o] :
~ ( Eval2 @ Alpha2 @ Enc_False2 )
& ! [Alpha2: nat > $o] : ( Eval2 @ Alpha2 @ Enc_True2 )
& ! [Alpha2: nat > $o,X3: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_pos2 @ X3 ) )
= ( Alpha2 @ X3 ) )
& ! [Alpha2: nat > $o,X3: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_neg2 @ X3 ) )
= ( ~ ( Alpha2 @ X3 ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_different2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
= ( ~ ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat,Z2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_and_not2 @ X3 @ Y2 @ Z2 ) )
= ( ( Alpha2 @ X3 )
= ( ( Alpha2 @ Y2 )
& ~ ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat,Z2: nat,U2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_ite2 @ X3 @ Y2 @ Z2 @ U2 ) )
= ( ( Alpha2 @ X3 )
= ( ( ( Alpha2 @ Y2 )
=> ( Alpha2 @ Z2 ) )
& ( ~ ( Alpha2 @ Y2 )
=> ( Alpha2 @ U2 ) ) ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat,Z2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_ite2 @ X3 @ Y2 @ Z2 ) )
= ( ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) )
& ( ~ ( Alpha2 @ X3 )
=> ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: nat > $o,X3: nat,F2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_impl2 @ X3 @ F2 ) )
= ( ( Alpha2 @ X3 )
=> ( Eval2 @ Alpha2 @ F2 ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_var_impl2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_not_and2 @ X3 @ Y2 ) )
= ( ~ ( ( Alpha2 @ X3 )
& ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: nat > $o,Xs: list_nat] :
( ( Eval2 @ Alpha2 @ ( Enc_not_all2 @ Xs ) )
= ( ~ ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
=> ( Alpha2 @ X3 ) ) ) )
& ! [Alpha2: nat > $o,Fs2: list_f] :
( ( Eval2 @ Alpha2 @ ( Enc_conj2 @ Fs2 ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs2 ) )
=> ( Eval2 @ Alpha2 @ X3 ) ) ) ) ) ) ) ).
% encoder_def
thf(fact_70_encoder__def,axiom,
( multis15323236012246624_nat_a
= ( ^ [Eval2: ( nat > $o ) > a > $o,Enc_False2: a,Enc_True2: a,Enc_pos2: nat > a,Enc_neg2: nat > a,Enc_different2: nat > nat > a,Enc_equiv_and_not2: nat > nat > nat > a,Enc_equiv_ite2: nat > nat > nat > nat > a,Enc_ite2: nat > nat > nat > a,Enc_impl2: nat > a > a,Enc_var_impl2: nat > nat > a,Enc_not_and2: nat > nat > a,Enc_not_all2: list_nat > a,Enc_conj2: list_a > a] :
( ! [Alpha2: nat > $o] :
~ ( Eval2 @ Alpha2 @ Enc_False2 )
& ! [Alpha2: nat > $o] : ( Eval2 @ Alpha2 @ Enc_True2 )
& ! [Alpha2: nat > $o,X3: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_pos2 @ X3 ) )
= ( Alpha2 @ X3 ) )
& ! [Alpha2: nat > $o,X3: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_neg2 @ X3 ) )
= ( ~ ( Alpha2 @ X3 ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_different2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
= ( ~ ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat,Z2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_and_not2 @ X3 @ Y2 @ Z2 ) )
= ( ( Alpha2 @ X3 )
= ( ( Alpha2 @ Y2 )
& ~ ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat,Z2: nat,U2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_ite2 @ X3 @ Y2 @ Z2 @ U2 ) )
= ( ( Alpha2 @ X3 )
= ( ( ( Alpha2 @ Y2 )
=> ( Alpha2 @ Z2 ) )
& ( ~ ( Alpha2 @ Y2 )
=> ( Alpha2 @ U2 ) ) ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat,Z2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_ite2 @ X3 @ Y2 @ Z2 ) )
= ( ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) )
& ( ~ ( Alpha2 @ X3 )
=> ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: nat > $o,X3: nat,F2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_impl2 @ X3 @ F2 ) )
= ( ( Alpha2 @ X3 )
=> ( Eval2 @ Alpha2 @ F2 ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_var_impl2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) ) )
& ! [Alpha2: nat > $o,X3: nat,Y2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_not_and2 @ X3 @ Y2 ) )
= ( ~ ( ( Alpha2 @ X3 )
& ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: nat > $o,Xs: list_nat] :
( ( Eval2 @ Alpha2 @ ( Enc_not_all2 @ Xs ) )
= ( ~ ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
=> ( Alpha2 @ X3 ) ) ) )
& ! [Alpha2: nat > $o,Fs2: list_a] :
( ( Eval2 @ Alpha2 @ ( Enc_conj2 @ Fs2 ) )
= ( ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Fs2 ) )
=> ( Eval2 @ Alpha2 @ X3 ) ) ) ) ) ) ) ).
% encoder_def
thf(fact_71_encoder__def,axiom,
( multis2160613379615932679_f_nat
= ( ^ [Eval2: ( f > $o ) > nat > $o,Enc_False2: nat,Enc_True2: nat,Enc_pos2: f > nat,Enc_neg2: f > nat,Enc_different2: f > f > nat,Enc_equiv_and_not2: f > f > f > nat,Enc_equiv_ite2: f > f > f > f > nat,Enc_ite2: f > f > f > nat,Enc_impl2: f > nat > nat,Enc_var_impl2: f > f > nat,Enc_not_and2: f > f > nat,Enc_not_all2: list_f > nat,Enc_conj2: list_nat > nat] :
( ! [Alpha2: f > $o] :
~ ( Eval2 @ Alpha2 @ Enc_False2 )
& ! [Alpha2: f > $o] : ( Eval2 @ Alpha2 @ Enc_True2 )
& ! [Alpha2: f > $o,X3: f] :
( ( Eval2 @ Alpha2 @ ( Enc_pos2 @ X3 ) )
= ( Alpha2 @ X3 ) )
& ! [Alpha2: f > $o,X3: f] :
( ( Eval2 @ Alpha2 @ ( Enc_neg2 @ X3 ) )
= ( ~ ( Alpha2 @ X3 ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_different2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
= ( ~ ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f,Z2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_and_not2 @ X3 @ Y2 @ Z2 ) )
= ( ( Alpha2 @ X3 )
= ( ( Alpha2 @ Y2 )
& ~ ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f,Z2: f,U2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_ite2 @ X3 @ Y2 @ Z2 @ U2 ) )
= ( ( Alpha2 @ X3 )
= ( ( ( Alpha2 @ Y2 )
=> ( Alpha2 @ Z2 ) )
& ( ~ ( Alpha2 @ Y2 )
=> ( Alpha2 @ U2 ) ) ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f,Z2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_ite2 @ X3 @ Y2 @ Z2 ) )
= ( ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) )
& ( ~ ( Alpha2 @ X3 )
=> ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: f > $o,X3: f,F2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_impl2 @ X3 @ F2 ) )
= ( ( Alpha2 @ X3 )
=> ( Eval2 @ Alpha2 @ F2 ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_var_impl2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_not_and2 @ X3 @ Y2 ) )
= ( ~ ( ( Alpha2 @ X3 )
& ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: f > $o,Xs: list_f] :
( ( Eval2 @ Alpha2 @ ( Enc_not_all2 @ Xs ) )
= ( ~ ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Xs ) )
=> ( Alpha2 @ X3 ) ) ) )
& ! [Alpha2: f > $o,Fs2: list_nat] :
( ( Eval2 @ Alpha2 @ ( Enc_conj2 @ Fs2 ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Fs2 ) )
=> ( Eval2 @ Alpha2 @ X3 ) ) ) ) ) ) ) ).
% encoder_def
thf(fact_72_encoder__def,axiom,
( multis6614697440045503884er_f_f
= ( ^ [Eval2: ( f > $o ) > f > $o,Enc_False2: f,Enc_True2: f,Enc_pos2: f > f,Enc_neg2: f > f,Enc_different2: f > f > f,Enc_equiv_and_not2: f > f > f > f,Enc_equiv_ite2: f > f > f > f > f,Enc_ite2: f > f > f > f,Enc_impl2: f > f > f,Enc_var_impl2: f > f > f,Enc_not_and2: f > f > f,Enc_not_all2: list_f > f,Enc_conj2: list_f > f] :
( ! [Alpha2: f > $o] :
~ ( Eval2 @ Alpha2 @ Enc_False2 )
& ! [Alpha2: f > $o] : ( Eval2 @ Alpha2 @ Enc_True2 )
& ! [Alpha2: f > $o,X3: f] :
( ( Eval2 @ Alpha2 @ ( Enc_pos2 @ X3 ) )
= ( Alpha2 @ X3 ) )
& ! [Alpha2: f > $o,X3: f] :
( ( Eval2 @ Alpha2 @ ( Enc_neg2 @ X3 ) )
= ( ~ ( Alpha2 @ X3 ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_different2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
= ( ~ ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f,Z2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_and_not2 @ X3 @ Y2 @ Z2 ) )
= ( ( Alpha2 @ X3 )
= ( ( Alpha2 @ Y2 )
& ~ ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f,Z2: f,U2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_ite2 @ X3 @ Y2 @ Z2 @ U2 ) )
= ( ( Alpha2 @ X3 )
= ( ( ( Alpha2 @ Y2 )
=> ( Alpha2 @ Z2 ) )
& ( ~ ( Alpha2 @ Y2 )
=> ( Alpha2 @ U2 ) ) ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f,Z2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_ite2 @ X3 @ Y2 @ Z2 ) )
= ( ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) )
& ( ~ ( Alpha2 @ X3 )
=> ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: f > $o,X3: f,F2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_impl2 @ X3 @ F2 ) )
= ( ( Alpha2 @ X3 )
=> ( Eval2 @ Alpha2 @ F2 ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_var_impl2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_not_and2 @ X3 @ Y2 ) )
= ( ~ ( ( Alpha2 @ X3 )
& ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: f > $o,Xs: list_f] :
( ( Eval2 @ Alpha2 @ ( Enc_not_all2 @ Xs ) )
= ( ~ ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Xs ) )
=> ( Alpha2 @ X3 ) ) ) )
& ! [Alpha2: f > $o,Fs2: list_f] :
( ( Eval2 @ Alpha2 @ ( Enc_conj2 @ Fs2 ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs2 ) )
=> ( Eval2 @ Alpha2 @ X3 ) ) ) ) ) ) ) ).
% encoder_def
thf(fact_73_encoder__def,axiom,
( multis6614697440045503879er_f_a
= ( ^ [Eval2: ( f > $o ) > a > $o,Enc_False2: a,Enc_True2: a,Enc_pos2: f > a,Enc_neg2: f > a,Enc_different2: f > f > a,Enc_equiv_and_not2: f > f > f > a,Enc_equiv_ite2: f > f > f > f > a,Enc_ite2: f > f > f > a,Enc_impl2: f > a > a,Enc_var_impl2: f > f > a,Enc_not_and2: f > f > a,Enc_not_all2: list_f > a,Enc_conj2: list_a > a] :
( ! [Alpha2: f > $o] :
~ ( Eval2 @ Alpha2 @ Enc_False2 )
& ! [Alpha2: f > $o] : ( Eval2 @ Alpha2 @ Enc_True2 )
& ! [Alpha2: f > $o,X3: f] :
( ( Eval2 @ Alpha2 @ ( Enc_pos2 @ X3 ) )
= ( Alpha2 @ X3 ) )
& ! [Alpha2: f > $o,X3: f] :
( ( Eval2 @ Alpha2 @ ( Enc_neg2 @ X3 ) )
= ( ~ ( Alpha2 @ X3 ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_different2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
= ( ~ ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f,Z2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_and_not2 @ X3 @ Y2 @ Z2 ) )
= ( ( Alpha2 @ X3 )
= ( ( Alpha2 @ Y2 )
& ~ ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f,Z2: f,U2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_ite2 @ X3 @ Y2 @ Z2 @ U2 ) )
= ( ( Alpha2 @ X3 )
= ( ( ( Alpha2 @ Y2 )
=> ( Alpha2 @ Z2 ) )
& ( ~ ( Alpha2 @ Y2 )
=> ( Alpha2 @ U2 ) ) ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f,Z2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_ite2 @ X3 @ Y2 @ Z2 ) )
= ( ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) )
& ( ~ ( Alpha2 @ X3 )
=> ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: f > $o,X3: f,F2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_impl2 @ X3 @ F2 ) )
= ( ( Alpha2 @ X3 )
=> ( Eval2 @ Alpha2 @ F2 ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_var_impl2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) ) )
& ! [Alpha2: f > $o,X3: f,Y2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_not_and2 @ X3 @ Y2 ) )
= ( ~ ( ( Alpha2 @ X3 )
& ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: f > $o,Xs: list_f] :
( ( Eval2 @ Alpha2 @ ( Enc_not_all2 @ Xs ) )
= ( ~ ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Xs ) )
=> ( Alpha2 @ X3 ) ) ) )
& ! [Alpha2: f > $o,Fs2: list_a] :
( ( Eval2 @ Alpha2 @ ( Enc_conj2 @ Fs2 ) )
= ( ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Fs2 ) )
=> ( Eval2 @ Alpha2 @ X3 ) ) ) ) ) ) ) ).
% encoder_def
thf(fact_74_encoder__def,axiom,
( multis5206763771688736002_a_nat
= ( ^ [Eval2: ( a > $o ) > nat > $o,Enc_False2: nat,Enc_True2: nat,Enc_pos2: a > nat,Enc_neg2: a > nat,Enc_different2: a > a > nat,Enc_equiv_and_not2: a > a > a > nat,Enc_equiv_ite2: a > a > a > a > nat,Enc_ite2: a > a > a > nat,Enc_impl2: a > nat > nat,Enc_var_impl2: a > a > nat,Enc_not_and2: a > a > nat,Enc_not_all2: list_a > nat,Enc_conj2: list_nat > nat] :
( ! [Alpha2: a > $o] :
~ ( Eval2 @ Alpha2 @ Enc_False2 )
& ! [Alpha2: a > $o] : ( Eval2 @ Alpha2 @ Enc_True2 )
& ! [Alpha2: a > $o,X3: a] :
( ( Eval2 @ Alpha2 @ ( Enc_pos2 @ X3 ) )
= ( Alpha2 @ X3 ) )
& ! [Alpha2: a > $o,X3: a] :
( ( Eval2 @ Alpha2 @ ( Enc_neg2 @ X3 ) )
= ( ~ ( Alpha2 @ X3 ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_different2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
= ( ~ ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a,Z2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_and_not2 @ X3 @ Y2 @ Z2 ) )
= ( ( Alpha2 @ X3 )
= ( ( Alpha2 @ Y2 )
& ~ ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a,Z2: a,U2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_ite2 @ X3 @ Y2 @ Z2 @ U2 ) )
= ( ( Alpha2 @ X3 )
= ( ( ( Alpha2 @ Y2 )
=> ( Alpha2 @ Z2 ) )
& ( ~ ( Alpha2 @ Y2 )
=> ( Alpha2 @ U2 ) ) ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a,Z2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_ite2 @ X3 @ Y2 @ Z2 ) )
= ( ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) )
& ( ~ ( Alpha2 @ X3 )
=> ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: a > $o,X3: a,F2: nat] :
( ( Eval2 @ Alpha2 @ ( Enc_impl2 @ X3 @ F2 ) )
= ( ( Alpha2 @ X3 )
=> ( Eval2 @ Alpha2 @ F2 ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_var_impl2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_not_and2 @ X3 @ Y2 ) )
= ( ~ ( ( Alpha2 @ X3 )
& ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: a > $o,Xs: list_a] :
( ( Eval2 @ Alpha2 @ ( Enc_not_all2 @ Xs ) )
= ( ~ ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Xs ) )
=> ( Alpha2 @ X3 ) ) ) )
& ! [Alpha2: a > $o,Fs2: list_nat] :
( ( Eval2 @ Alpha2 @ ( Enc_conj2 @ Fs2 ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Fs2 ) )
=> ( Eval2 @ Alpha2 @ X3 ) ) ) ) ) ) ) ).
% encoder_def
thf(fact_75_encoder__def,axiom,
( multis2105231276199332433er_a_f
= ( ^ [Eval2: ( a > $o ) > f > $o,Enc_False2: f,Enc_True2: f,Enc_pos2: a > f,Enc_neg2: a > f,Enc_different2: a > a > f,Enc_equiv_and_not2: a > a > a > f,Enc_equiv_ite2: a > a > a > a > f,Enc_ite2: a > a > a > f,Enc_impl2: a > f > f,Enc_var_impl2: a > a > f,Enc_not_and2: a > a > f,Enc_not_all2: list_a > f,Enc_conj2: list_f > f] :
( ! [Alpha2: a > $o] :
~ ( Eval2 @ Alpha2 @ Enc_False2 )
& ! [Alpha2: a > $o] : ( Eval2 @ Alpha2 @ Enc_True2 )
& ! [Alpha2: a > $o,X3: a] :
( ( Eval2 @ Alpha2 @ ( Enc_pos2 @ X3 ) )
= ( Alpha2 @ X3 ) )
& ! [Alpha2: a > $o,X3: a] :
( ( Eval2 @ Alpha2 @ ( Enc_neg2 @ X3 ) )
= ( ~ ( Alpha2 @ X3 ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_different2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
= ( ~ ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a,Z2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_and_not2 @ X3 @ Y2 @ Z2 ) )
= ( ( Alpha2 @ X3 )
= ( ( Alpha2 @ Y2 )
& ~ ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a,Z2: a,U2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_ite2 @ X3 @ Y2 @ Z2 @ U2 ) )
= ( ( Alpha2 @ X3 )
= ( ( ( Alpha2 @ Y2 )
=> ( Alpha2 @ Z2 ) )
& ( ~ ( Alpha2 @ Y2 )
=> ( Alpha2 @ U2 ) ) ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a,Z2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_ite2 @ X3 @ Y2 @ Z2 ) )
= ( ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) )
& ( ~ ( Alpha2 @ X3 )
=> ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: a > $o,X3: a,F2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_impl2 @ X3 @ F2 ) )
= ( ( Alpha2 @ X3 )
=> ( Eval2 @ Alpha2 @ F2 ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_var_impl2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_not_and2 @ X3 @ Y2 ) )
= ( ~ ( ( Alpha2 @ X3 )
& ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: a > $o,Xs: list_a] :
( ( Eval2 @ Alpha2 @ ( Enc_not_all2 @ Xs ) )
= ( ~ ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Xs ) )
=> ( Alpha2 @ X3 ) ) ) )
& ! [Alpha2: a > $o,Fs2: list_f] :
( ( Eval2 @ Alpha2 @ ( Enc_conj2 @ Fs2 ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs2 ) )
=> ( Eval2 @ Alpha2 @ X3 ) ) ) ) ) ) ) ).
% encoder_def
thf(fact_76_encoder__def,axiom,
( multis2105231276199332428er_a_a
= ( ^ [Eval2: ( a > $o ) > a > $o,Enc_False2: a,Enc_True2: a,Enc_pos2: a > a,Enc_neg2: a > a,Enc_different2: a > a > a,Enc_equiv_and_not2: a > a > a > a,Enc_equiv_ite2: a > a > a > a > a,Enc_ite2: a > a > a > a,Enc_impl2: a > a > a,Enc_var_impl2: a > a > a,Enc_not_and2: a > a > a,Enc_not_all2: list_a > a,Enc_conj2: list_a > a] :
( ! [Alpha2: a > $o] :
~ ( Eval2 @ Alpha2 @ Enc_False2 )
& ! [Alpha2: a > $o] : ( Eval2 @ Alpha2 @ Enc_True2 )
& ! [Alpha2: a > $o,X3: a] :
( ( Eval2 @ Alpha2 @ ( Enc_pos2 @ X3 ) )
= ( Alpha2 @ X3 ) )
& ! [Alpha2: a > $o,X3: a] :
( ( Eval2 @ Alpha2 @ ( Enc_neg2 @ X3 ) )
= ( ~ ( Alpha2 @ X3 ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_different2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
= ( ~ ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a,Z2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_and_not2 @ X3 @ Y2 @ Z2 ) )
= ( ( Alpha2 @ X3 )
= ( ( Alpha2 @ Y2 )
& ~ ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a,Z2: a,U2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_ite2 @ X3 @ Y2 @ Z2 @ U2 ) )
= ( ( Alpha2 @ X3 )
= ( ( ( Alpha2 @ Y2 )
=> ( Alpha2 @ Z2 ) )
& ( ~ ( Alpha2 @ Y2 )
=> ( Alpha2 @ U2 ) ) ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a,Z2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_ite2 @ X3 @ Y2 @ Z2 ) )
= ( ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) )
& ( ~ ( Alpha2 @ X3 )
=> ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: a > $o,X3: a,F2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_impl2 @ X3 @ F2 ) )
= ( ( Alpha2 @ X3 )
=> ( Eval2 @ Alpha2 @ F2 ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_var_impl2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) ) )
& ! [Alpha2: a > $o,X3: a,Y2: a] :
( ( Eval2 @ Alpha2 @ ( Enc_not_and2 @ X3 @ Y2 ) )
= ( ~ ( ( Alpha2 @ X3 )
& ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: a > $o,Xs: list_a] :
( ( Eval2 @ Alpha2 @ ( Enc_not_all2 @ Xs ) )
= ( ~ ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Xs ) )
=> ( Alpha2 @ X3 ) ) ) )
& ! [Alpha2: a > $o,Fs2: list_a] :
( ( Eval2 @ Alpha2 @ ( Enc_conj2 @ Fs2 ) )
= ( ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Fs2 ) )
=> ( Eval2 @ Alpha2 @ X3 ) ) ) ) ) ) ) ).
% encoder_def
thf(fact_77_encoder__def,axiom,
( multis2000375938434000499pVar_f
= ( ^ [Eval2: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False2: f,Enc_True2: f,Enc_pos2: multis3193088007478089820ropVar > f,Enc_neg2: multis3193088007478089820ropVar > f,Enc_different2: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not2: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite2: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite2: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl2: multis3193088007478089820ropVar > f > f,Enc_var_impl2: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and2: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all2: list_M6740372356978808802ropVar > f,Enc_conj2: list_f > f] :
( ! [Alpha2: multis3193088007478089820ropVar > $o] :
~ ( Eval2 @ Alpha2 @ Enc_False2 )
& ! [Alpha2: multis3193088007478089820ropVar > $o] : ( Eval2 @ Alpha2 @ Enc_True2 )
& ! [Alpha2: multis3193088007478089820ropVar > $o,X3: multis3193088007478089820ropVar] :
( ( Eval2 @ Alpha2 @ ( Enc_pos2 @ X3 ) )
= ( Alpha2 @ X3 ) )
& ! [Alpha2: multis3193088007478089820ropVar > $o,X3: multis3193088007478089820ropVar] :
( ( Eval2 @ Alpha2 @ ( Enc_neg2 @ X3 ) )
= ( ~ ( Alpha2 @ X3 ) ) )
& ! [Alpha2: multis3193088007478089820ropVar > $o,X3: multis3193088007478089820ropVar,Y2: multis3193088007478089820ropVar] :
( ( Eval2 @ Alpha2 @ ( Enc_different2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
= ( ~ ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: multis3193088007478089820ropVar > $o,X3: multis3193088007478089820ropVar,Y2: multis3193088007478089820ropVar,Z2: multis3193088007478089820ropVar] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_and_not2 @ X3 @ Y2 @ Z2 ) )
= ( ( Alpha2 @ X3 )
= ( ( Alpha2 @ Y2 )
& ~ ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: multis3193088007478089820ropVar > $o,X3: multis3193088007478089820ropVar,Y2: multis3193088007478089820ropVar,Z2: multis3193088007478089820ropVar,U2: multis3193088007478089820ropVar] :
( ( Eval2 @ Alpha2 @ ( Enc_equiv_ite2 @ X3 @ Y2 @ Z2 @ U2 ) )
= ( ( Alpha2 @ X3 )
= ( ( ( Alpha2 @ Y2 )
=> ( Alpha2 @ Z2 ) )
& ( ~ ( Alpha2 @ Y2 )
=> ( Alpha2 @ U2 ) ) ) ) )
& ! [Alpha2: multis3193088007478089820ropVar > $o,X3: multis3193088007478089820ropVar,Y2: multis3193088007478089820ropVar,Z2: multis3193088007478089820ropVar] :
( ( Eval2 @ Alpha2 @ ( Enc_ite2 @ X3 @ Y2 @ Z2 ) )
= ( ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) )
& ( ~ ( Alpha2 @ X3 )
=> ( Alpha2 @ Z2 ) ) ) )
& ! [Alpha2: multis3193088007478089820ropVar > $o,X3: multis3193088007478089820ropVar,F2: f] :
( ( Eval2 @ Alpha2 @ ( Enc_impl2 @ X3 @ F2 ) )
= ( ( Alpha2 @ X3 )
=> ( Eval2 @ Alpha2 @ F2 ) ) )
& ! [Alpha2: multis3193088007478089820ropVar > $o,X3: multis3193088007478089820ropVar,Y2: multis3193088007478089820ropVar] :
( ( Eval2 @ Alpha2 @ ( Enc_var_impl2 @ X3 @ Y2 ) )
= ( ( Alpha2 @ X3 )
=> ( Alpha2 @ Y2 ) ) )
& ! [Alpha2: multis3193088007478089820ropVar > $o,X3: multis3193088007478089820ropVar,Y2: multis3193088007478089820ropVar] :
( ( Eval2 @ Alpha2 @ ( Enc_not_and2 @ X3 @ Y2 ) )
= ( ~ ( ( Alpha2 @ X3 )
& ( Alpha2 @ Y2 ) ) ) )
& ! [Alpha2: multis3193088007478089820ropVar > $o,Xs: list_M6740372356978808802ropVar] :
( ( Eval2 @ Alpha2 @ ( Enc_not_all2 @ Xs ) )
= ( ~ ! [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ ( set_Mu146256361055586289ropVar @ Xs ) )
=> ( Alpha2 @ X3 ) ) ) )
& ! [Alpha2: multis3193088007478089820ropVar > $o,Fs2: list_f] :
( ( Eval2 @ Alpha2 @ ( Enc_conj2 @ Fs2 ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs2 ) )
=> ( Eval2 @ Alpha2 @ X3 ) ) ) ) ) ) ) ).
% encoder_def
thf(fact_78_encoder_Ointro,axiom,
! [Eval: ( nat > $o ) > nat > $o,Enc_False: nat,Enc_True: nat,Enc_pos: nat > nat,Enc_neg: nat > nat,Enc_different: nat > nat > nat,Enc_equiv_and_not: nat > nat > nat > nat,Enc_equiv_ite: nat > nat > nat > nat > nat,Enc_ite: nat > nat > nat > nat,Enc_impl: nat > nat > nat,Enc_var_impl: nat > nat > nat,Enc_not_and: nat > nat > nat,Enc_not_all: list_nat > nat,Enc_conj: list_nat > nat] :
( ! [Alpha3: nat > $o] :
~ ( Eval @ Alpha3 @ Enc_False )
=> ( ! [Alpha3: nat > $o] : ( Eval @ Alpha3 @ Enc_True )
=> ( ! [Alpha3: nat > $o,X4: nat] :
( ( Eval @ Alpha3 @ ( Enc_pos @ X4 ) )
= ( Alpha3 @ X4 ) )
=> ( ! [Alpha3: nat > $o,X4: nat] :
( ( Eval @ Alpha3 @ ( Enc_neg @ X4 ) )
= ( ~ ( Alpha3 @ X4 ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat] :
( ( Eval @ Alpha3 @ ( Enc_different @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
= ( ~ ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat,Z3: nat] :
( ( Eval @ Alpha3 @ ( Enc_equiv_and_not @ X4 @ Y3 @ Z3 ) )
= ( ( Alpha3 @ X4 )
= ( ( Alpha3 @ Y3 )
& ~ ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat,Z3: nat,U3: nat] :
( ( Eval @ Alpha3 @ ( Enc_equiv_ite @ X4 @ Y3 @ Z3 @ U3 ) )
= ( ( Alpha3 @ X4 )
= ( ( ( Alpha3 @ Y3 )
=> ( Alpha3 @ Z3 ) )
& ( ~ ( Alpha3 @ Y3 )
=> ( Alpha3 @ U3 ) ) ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat,Z3: nat] :
( ( Eval @ Alpha3 @ ( Enc_ite @ X4 @ Y3 @ Z3 ) )
= ( ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) )
& ( ~ ( Alpha3 @ X4 )
=> ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,F3: nat] :
( ( Eval @ Alpha3 @ ( Enc_impl @ X4 @ F3 ) )
= ( ( Alpha3 @ X4 )
=> ( Eval @ Alpha3 @ F3 ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat] :
( ( Eval @ Alpha3 @ ( Enc_var_impl @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat] :
( ( Eval @ Alpha3 @ ( Enc_not_and @ X4 @ Y3 ) )
= ( ~ ( ( Alpha3 @ X4 )
& ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: nat > $o,Xs2: list_nat] :
( ( Eval @ Alpha3 @ ( Enc_not_all @ Xs2 ) )
= ( ~ ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs2 ) )
=> ( Alpha3 @ X3 ) ) ) )
=> ( ! [Alpha3: nat > $o,Fs3: list_nat] :
( ( Eval @ Alpha3 @ ( Enc_conj @ Fs3 ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Fs3 ) )
=> ( Eval @ Alpha3 @ X3 ) ) ) )
=> ( multis9072456028556213230at_nat @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).
% encoder.intro
thf(fact_79_encoder_Ointro,axiom,
! [Eval: ( nat > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: nat > f,Enc_neg: nat > f,Enc_different: nat > nat > f,Enc_equiv_and_not: nat > nat > nat > f,Enc_equiv_ite: nat > nat > nat > nat > f,Enc_ite: nat > nat > nat > f,Enc_impl: nat > f > f,Enc_var_impl: nat > nat > f,Enc_not_and: nat > nat > f,Enc_not_all: list_nat > f,Enc_conj: list_f > f] :
( ! [Alpha3: nat > $o] :
~ ( Eval @ Alpha3 @ Enc_False )
=> ( ! [Alpha3: nat > $o] : ( Eval @ Alpha3 @ Enc_True )
=> ( ! [Alpha3: nat > $o,X4: nat] :
( ( Eval @ Alpha3 @ ( Enc_pos @ X4 ) )
= ( Alpha3 @ X4 ) )
=> ( ! [Alpha3: nat > $o,X4: nat] :
( ( Eval @ Alpha3 @ ( Enc_neg @ X4 ) )
= ( ~ ( Alpha3 @ X4 ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat] :
( ( Eval @ Alpha3 @ ( Enc_different @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
= ( ~ ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat,Z3: nat] :
( ( Eval @ Alpha3 @ ( Enc_equiv_and_not @ X4 @ Y3 @ Z3 ) )
= ( ( Alpha3 @ X4 )
= ( ( Alpha3 @ Y3 )
& ~ ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat,Z3: nat,U3: nat] :
( ( Eval @ Alpha3 @ ( Enc_equiv_ite @ X4 @ Y3 @ Z3 @ U3 ) )
= ( ( Alpha3 @ X4 )
= ( ( ( Alpha3 @ Y3 )
=> ( Alpha3 @ Z3 ) )
& ( ~ ( Alpha3 @ Y3 )
=> ( Alpha3 @ U3 ) ) ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat,Z3: nat] :
( ( Eval @ Alpha3 @ ( Enc_ite @ X4 @ Y3 @ Z3 ) )
= ( ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) )
& ( ~ ( Alpha3 @ X4 )
=> ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,F3: f] :
( ( Eval @ Alpha3 @ ( Enc_impl @ X4 @ F3 ) )
= ( ( Alpha3 @ X4 )
=> ( Eval @ Alpha3 @ F3 ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat] :
( ( Eval @ Alpha3 @ ( Enc_var_impl @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat] :
( ( Eval @ Alpha3 @ ( Enc_not_and @ X4 @ Y3 ) )
= ( ~ ( ( Alpha3 @ X4 )
& ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: nat > $o,Xs2: list_nat] :
( ( Eval @ Alpha3 @ ( Enc_not_all @ Xs2 ) )
= ( ~ ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs2 ) )
=> ( Alpha3 @ X3 ) ) ) )
=> ( ! [Alpha3: nat > $o,Fs3: list_f] :
( ( Eval @ Alpha3 @ ( Enc_conj @ Fs3 ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs3 ) )
=> ( Eval @ Alpha3 @ X3 ) ) ) )
=> ( multis15323236012246629_nat_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).
% encoder.intro
thf(fact_80_encoder_Ointro,axiom,
! [Eval: ( nat > $o ) > a > $o,Enc_False: a,Enc_True: a,Enc_pos: nat > a,Enc_neg: nat > a,Enc_different: nat > nat > a,Enc_equiv_and_not: nat > nat > nat > a,Enc_equiv_ite: nat > nat > nat > nat > a,Enc_ite: nat > nat > nat > a,Enc_impl: nat > a > a,Enc_var_impl: nat > nat > a,Enc_not_and: nat > nat > a,Enc_not_all: list_nat > a,Enc_conj: list_a > a] :
( ! [Alpha3: nat > $o] :
~ ( Eval @ Alpha3 @ Enc_False )
=> ( ! [Alpha3: nat > $o] : ( Eval @ Alpha3 @ Enc_True )
=> ( ! [Alpha3: nat > $o,X4: nat] :
( ( Eval @ Alpha3 @ ( Enc_pos @ X4 ) )
= ( Alpha3 @ X4 ) )
=> ( ! [Alpha3: nat > $o,X4: nat] :
( ( Eval @ Alpha3 @ ( Enc_neg @ X4 ) )
= ( ~ ( Alpha3 @ X4 ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat] :
( ( Eval @ Alpha3 @ ( Enc_different @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
= ( ~ ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat,Z3: nat] :
( ( Eval @ Alpha3 @ ( Enc_equiv_and_not @ X4 @ Y3 @ Z3 ) )
= ( ( Alpha3 @ X4 )
= ( ( Alpha3 @ Y3 )
& ~ ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat,Z3: nat,U3: nat] :
( ( Eval @ Alpha3 @ ( Enc_equiv_ite @ X4 @ Y3 @ Z3 @ U3 ) )
= ( ( Alpha3 @ X4 )
= ( ( ( Alpha3 @ Y3 )
=> ( Alpha3 @ Z3 ) )
& ( ~ ( Alpha3 @ Y3 )
=> ( Alpha3 @ U3 ) ) ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat,Z3: nat] :
( ( Eval @ Alpha3 @ ( Enc_ite @ X4 @ Y3 @ Z3 ) )
= ( ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) )
& ( ~ ( Alpha3 @ X4 )
=> ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,F3: a] :
( ( Eval @ Alpha3 @ ( Enc_impl @ X4 @ F3 ) )
= ( ( Alpha3 @ X4 )
=> ( Eval @ Alpha3 @ F3 ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat] :
( ( Eval @ Alpha3 @ ( Enc_var_impl @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) ) )
=> ( ! [Alpha3: nat > $o,X4: nat,Y3: nat] :
( ( Eval @ Alpha3 @ ( Enc_not_and @ X4 @ Y3 ) )
= ( ~ ( ( Alpha3 @ X4 )
& ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: nat > $o,Xs2: list_nat] :
( ( Eval @ Alpha3 @ ( Enc_not_all @ Xs2 ) )
= ( ~ ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs2 ) )
=> ( Alpha3 @ X3 ) ) ) )
=> ( ! [Alpha3: nat > $o,Fs3: list_a] :
( ( Eval @ Alpha3 @ ( Enc_conj @ Fs3 ) )
= ( ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Fs3 ) )
=> ( Eval @ Alpha3 @ X3 ) ) ) )
=> ( multis15323236012246624_nat_a @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).
% encoder.intro
thf(fact_81_encoder_Ointro,axiom,
! [Eval: ( f > $o ) > nat > $o,Enc_False: nat,Enc_True: nat,Enc_pos: f > nat,Enc_neg: f > nat,Enc_different: f > f > nat,Enc_equiv_and_not: f > f > f > nat,Enc_equiv_ite: f > f > f > f > nat,Enc_ite: f > f > f > nat,Enc_impl: f > nat > nat,Enc_var_impl: f > f > nat,Enc_not_and: f > f > nat,Enc_not_all: list_f > nat,Enc_conj: list_nat > nat] :
( ! [Alpha3: f > $o] :
~ ( Eval @ Alpha3 @ Enc_False )
=> ( ! [Alpha3: f > $o] : ( Eval @ Alpha3 @ Enc_True )
=> ( ! [Alpha3: f > $o,X4: f] :
( ( Eval @ Alpha3 @ ( Enc_pos @ X4 ) )
= ( Alpha3 @ X4 ) )
=> ( ! [Alpha3: f > $o,X4: f] :
( ( Eval @ Alpha3 @ ( Enc_neg @ X4 ) )
= ( ~ ( Alpha3 @ X4 ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f] :
( ( Eval @ Alpha3 @ ( Enc_different @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
= ( ~ ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f,Z3: f] :
( ( Eval @ Alpha3 @ ( Enc_equiv_and_not @ X4 @ Y3 @ Z3 ) )
= ( ( Alpha3 @ X4 )
= ( ( Alpha3 @ Y3 )
& ~ ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f,Z3: f,U3: f] :
( ( Eval @ Alpha3 @ ( Enc_equiv_ite @ X4 @ Y3 @ Z3 @ U3 ) )
= ( ( Alpha3 @ X4 )
= ( ( ( Alpha3 @ Y3 )
=> ( Alpha3 @ Z3 ) )
& ( ~ ( Alpha3 @ Y3 )
=> ( Alpha3 @ U3 ) ) ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f,Z3: f] :
( ( Eval @ Alpha3 @ ( Enc_ite @ X4 @ Y3 @ Z3 ) )
= ( ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) )
& ( ~ ( Alpha3 @ X4 )
=> ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: f > $o,X4: f,F3: nat] :
( ( Eval @ Alpha3 @ ( Enc_impl @ X4 @ F3 ) )
= ( ( Alpha3 @ X4 )
=> ( Eval @ Alpha3 @ F3 ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f] :
( ( Eval @ Alpha3 @ ( Enc_var_impl @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f] :
( ( Eval @ Alpha3 @ ( Enc_not_and @ X4 @ Y3 ) )
= ( ~ ( ( Alpha3 @ X4 )
& ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: f > $o,Xs2: list_f] :
( ( Eval @ Alpha3 @ ( Enc_not_all @ Xs2 ) )
= ( ~ ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Xs2 ) )
=> ( Alpha3 @ X3 ) ) ) )
=> ( ! [Alpha3: f > $o,Fs3: list_nat] :
( ( Eval @ Alpha3 @ ( Enc_conj @ Fs3 ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Fs3 ) )
=> ( Eval @ Alpha3 @ X3 ) ) ) )
=> ( multis2160613379615932679_f_nat @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).
% encoder.intro
thf(fact_82_encoder_Ointro,axiom,
! [Eval: ( f > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: f > f,Enc_neg: f > f,Enc_different: f > f > f,Enc_equiv_and_not: f > f > f > f,Enc_equiv_ite: f > f > f > f > f,Enc_ite: f > f > f > f,Enc_impl: f > f > f,Enc_var_impl: f > f > f,Enc_not_and: f > f > f,Enc_not_all: list_f > f,Enc_conj: list_f > f] :
( ! [Alpha3: f > $o] :
~ ( Eval @ Alpha3 @ Enc_False )
=> ( ! [Alpha3: f > $o] : ( Eval @ Alpha3 @ Enc_True )
=> ( ! [Alpha3: f > $o,X4: f] :
( ( Eval @ Alpha3 @ ( Enc_pos @ X4 ) )
= ( Alpha3 @ X4 ) )
=> ( ! [Alpha3: f > $o,X4: f] :
( ( Eval @ Alpha3 @ ( Enc_neg @ X4 ) )
= ( ~ ( Alpha3 @ X4 ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f] :
( ( Eval @ Alpha3 @ ( Enc_different @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
= ( ~ ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f,Z3: f] :
( ( Eval @ Alpha3 @ ( Enc_equiv_and_not @ X4 @ Y3 @ Z3 ) )
= ( ( Alpha3 @ X4 )
= ( ( Alpha3 @ Y3 )
& ~ ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f,Z3: f,U3: f] :
( ( Eval @ Alpha3 @ ( Enc_equiv_ite @ X4 @ Y3 @ Z3 @ U3 ) )
= ( ( Alpha3 @ X4 )
= ( ( ( Alpha3 @ Y3 )
=> ( Alpha3 @ Z3 ) )
& ( ~ ( Alpha3 @ Y3 )
=> ( Alpha3 @ U3 ) ) ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f,Z3: f] :
( ( Eval @ Alpha3 @ ( Enc_ite @ X4 @ Y3 @ Z3 ) )
= ( ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) )
& ( ~ ( Alpha3 @ X4 )
=> ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: f > $o,X4: f,F3: f] :
( ( Eval @ Alpha3 @ ( Enc_impl @ X4 @ F3 ) )
= ( ( Alpha3 @ X4 )
=> ( Eval @ Alpha3 @ F3 ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f] :
( ( Eval @ Alpha3 @ ( Enc_var_impl @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f] :
( ( Eval @ Alpha3 @ ( Enc_not_and @ X4 @ Y3 ) )
= ( ~ ( ( Alpha3 @ X4 )
& ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: f > $o,Xs2: list_f] :
( ( Eval @ Alpha3 @ ( Enc_not_all @ Xs2 ) )
= ( ~ ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Xs2 ) )
=> ( Alpha3 @ X3 ) ) ) )
=> ( ! [Alpha3: f > $o,Fs3: list_f] :
( ( Eval @ Alpha3 @ ( Enc_conj @ Fs3 ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs3 ) )
=> ( Eval @ Alpha3 @ X3 ) ) ) )
=> ( multis6614697440045503884er_f_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).
% encoder.intro
thf(fact_83_encoder_Ointro,axiom,
! [Eval: ( f > $o ) > a > $o,Enc_False: a,Enc_True: a,Enc_pos: f > a,Enc_neg: f > a,Enc_different: f > f > a,Enc_equiv_and_not: f > f > f > a,Enc_equiv_ite: f > f > f > f > a,Enc_ite: f > f > f > a,Enc_impl: f > a > a,Enc_var_impl: f > f > a,Enc_not_and: f > f > a,Enc_not_all: list_f > a,Enc_conj: list_a > a] :
( ! [Alpha3: f > $o] :
~ ( Eval @ Alpha3 @ Enc_False )
=> ( ! [Alpha3: f > $o] : ( Eval @ Alpha3 @ Enc_True )
=> ( ! [Alpha3: f > $o,X4: f] :
( ( Eval @ Alpha3 @ ( Enc_pos @ X4 ) )
= ( Alpha3 @ X4 ) )
=> ( ! [Alpha3: f > $o,X4: f] :
( ( Eval @ Alpha3 @ ( Enc_neg @ X4 ) )
= ( ~ ( Alpha3 @ X4 ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f] :
( ( Eval @ Alpha3 @ ( Enc_different @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
= ( ~ ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f,Z3: f] :
( ( Eval @ Alpha3 @ ( Enc_equiv_and_not @ X4 @ Y3 @ Z3 ) )
= ( ( Alpha3 @ X4 )
= ( ( Alpha3 @ Y3 )
& ~ ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f,Z3: f,U3: f] :
( ( Eval @ Alpha3 @ ( Enc_equiv_ite @ X4 @ Y3 @ Z3 @ U3 ) )
= ( ( Alpha3 @ X4 )
= ( ( ( Alpha3 @ Y3 )
=> ( Alpha3 @ Z3 ) )
& ( ~ ( Alpha3 @ Y3 )
=> ( Alpha3 @ U3 ) ) ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f,Z3: f] :
( ( Eval @ Alpha3 @ ( Enc_ite @ X4 @ Y3 @ Z3 ) )
= ( ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) )
& ( ~ ( Alpha3 @ X4 )
=> ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: f > $o,X4: f,F3: a] :
( ( Eval @ Alpha3 @ ( Enc_impl @ X4 @ F3 ) )
= ( ( Alpha3 @ X4 )
=> ( Eval @ Alpha3 @ F3 ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f] :
( ( Eval @ Alpha3 @ ( Enc_var_impl @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) ) )
=> ( ! [Alpha3: f > $o,X4: f,Y3: f] :
( ( Eval @ Alpha3 @ ( Enc_not_and @ X4 @ Y3 ) )
= ( ~ ( ( Alpha3 @ X4 )
& ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: f > $o,Xs2: list_f] :
( ( Eval @ Alpha3 @ ( Enc_not_all @ Xs2 ) )
= ( ~ ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Xs2 ) )
=> ( Alpha3 @ X3 ) ) ) )
=> ( ! [Alpha3: f > $o,Fs3: list_a] :
( ( Eval @ Alpha3 @ ( Enc_conj @ Fs3 ) )
= ( ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Fs3 ) )
=> ( Eval @ Alpha3 @ X3 ) ) ) )
=> ( multis6614697440045503879er_f_a @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).
% encoder.intro
thf(fact_84_encoder_Ointro,axiom,
! [Eval: ( a > $o ) > nat > $o,Enc_False: nat,Enc_True: nat,Enc_pos: a > nat,Enc_neg: a > nat,Enc_different: a > a > nat,Enc_equiv_and_not: a > a > a > nat,Enc_equiv_ite: a > a > a > a > nat,Enc_ite: a > a > a > nat,Enc_impl: a > nat > nat,Enc_var_impl: a > a > nat,Enc_not_and: a > a > nat,Enc_not_all: list_a > nat,Enc_conj: list_nat > nat] :
( ! [Alpha3: a > $o] :
~ ( Eval @ Alpha3 @ Enc_False )
=> ( ! [Alpha3: a > $o] : ( Eval @ Alpha3 @ Enc_True )
=> ( ! [Alpha3: a > $o,X4: a] :
( ( Eval @ Alpha3 @ ( Enc_pos @ X4 ) )
= ( Alpha3 @ X4 ) )
=> ( ! [Alpha3: a > $o,X4: a] :
( ( Eval @ Alpha3 @ ( Enc_neg @ X4 ) )
= ( ~ ( Alpha3 @ X4 ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a] :
( ( Eval @ Alpha3 @ ( Enc_different @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
= ( ~ ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a,Z3: a] :
( ( Eval @ Alpha3 @ ( Enc_equiv_and_not @ X4 @ Y3 @ Z3 ) )
= ( ( Alpha3 @ X4 )
= ( ( Alpha3 @ Y3 )
& ~ ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a,Z3: a,U3: a] :
( ( Eval @ Alpha3 @ ( Enc_equiv_ite @ X4 @ Y3 @ Z3 @ U3 ) )
= ( ( Alpha3 @ X4 )
= ( ( ( Alpha3 @ Y3 )
=> ( Alpha3 @ Z3 ) )
& ( ~ ( Alpha3 @ Y3 )
=> ( Alpha3 @ U3 ) ) ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a,Z3: a] :
( ( Eval @ Alpha3 @ ( Enc_ite @ X4 @ Y3 @ Z3 ) )
= ( ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) )
& ( ~ ( Alpha3 @ X4 )
=> ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: a > $o,X4: a,F3: nat] :
( ( Eval @ Alpha3 @ ( Enc_impl @ X4 @ F3 ) )
= ( ( Alpha3 @ X4 )
=> ( Eval @ Alpha3 @ F3 ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a] :
( ( Eval @ Alpha3 @ ( Enc_var_impl @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a] :
( ( Eval @ Alpha3 @ ( Enc_not_and @ X4 @ Y3 ) )
= ( ~ ( ( Alpha3 @ X4 )
& ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: a > $o,Xs2: list_a] :
( ( Eval @ Alpha3 @ ( Enc_not_all @ Xs2 ) )
= ( ~ ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Xs2 ) )
=> ( Alpha3 @ X3 ) ) ) )
=> ( ! [Alpha3: a > $o,Fs3: list_nat] :
( ( Eval @ Alpha3 @ ( Enc_conj @ Fs3 ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Fs3 ) )
=> ( Eval @ Alpha3 @ X3 ) ) ) )
=> ( multis5206763771688736002_a_nat @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).
% encoder.intro
thf(fact_85_encoder_Ointro,axiom,
! [Eval: ( a > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: a > f,Enc_neg: a > f,Enc_different: a > a > f,Enc_equiv_and_not: a > a > a > f,Enc_equiv_ite: a > a > a > a > f,Enc_ite: a > a > a > f,Enc_impl: a > f > f,Enc_var_impl: a > a > f,Enc_not_and: a > a > f,Enc_not_all: list_a > f,Enc_conj: list_f > f] :
( ! [Alpha3: a > $o] :
~ ( Eval @ Alpha3 @ Enc_False )
=> ( ! [Alpha3: a > $o] : ( Eval @ Alpha3 @ Enc_True )
=> ( ! [Alpha3: a > $o,X4: a] :
( ( Eval @ Alpha3 @ ( Enc_pos @ X4 ) )
= ( Alpha3 @ X4 ) )
=> ( ! [Alpha3: a > $o,X4: a] :
( ( Eval @ Alpha3 @ ( Enc_neg @ X4 ) )
= ( ~ ( Alpha3 @ X4 ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a] :
( ( Eval @ Alpha3 @ ( Enc_different @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
= ( ~ ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a,Z3: a] :
( ( Eval @ Alpha3 @ ( Enc_equiv_and_not @ X4 @ Y3 @ Z3 ) )
= ( ( Alpha3 @ X4 )
= ( ( Alpha3 @ Y3 )
& ~ ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a,Z3: a,U3: a] :
( ( Eval @ Alpha3 @ ( Enc_equiv_ite @ X4 @ Y3 @ Z3 @ U3 ) )
= ( ( Alpha3 @ X4 )
= ( ( ( Alpha3 @ Y3 )
=> ( Alpha3 @ Z3 ) )
& ( ~ ( Alpha3 @ Y3 )
=> ( Alpha3 @ U3 ) ) ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a,Z3: a] :
( ( Eval @ Alpha3 @ ( Enc_ite @ X4 @ Y3 @ Z3 ) )
= ( ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) )
& ( ~ ( Alpha3 @ X4 )
=> ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: a > $o,X4: a,F3: f] :
( ( Eval @ Alpha3 @ ( Enc_impl @ X4 @ F3 ) )
= ( ( Alpha3 @ X4 )
=> ( Eval @ Alpha3 @ F3 ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a] :
( ( Eval @ Alpha3 @ ( Enc_var_impl @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a] :
( ( Eval @ Alpha3 @ ( Enc_not_and @ X4 @ Y3 ) )
= ( ~ ( ( Alpha3 @ X4 )
& ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: a > $o,Xs2: list_a] :
( ( Eval @ Alpha3 @ ( Enc_not_all @ Xs2 ) )
= ( ~ ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Xs2 ) )
=> ( Alpha3 @ X3 ) ) ) )
=> ( ! [Alpha3: a > $o,Fs3: list_f] :
( ( Eval @ Alpha3 @ ( Enc_conj @ Fs3 ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs3 ) )
=> ( Eval @ Alpha3 @ X3 ) ) ) )
=> ( multis2105231276199332433er_a_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).
% encoder.intro
thf(fact_86_encoder_Ointro,axiom,
! [Eval: ( a > $o ) > a > $o,Enc_False: a,Enc_True: a,Enc_pos: a > a,Enc_neg: a > a,Enc_different: a > a > a,Enc_equiv_and_not: a > a > a > a,Enc_equiv_ite: a > a > a > a > a,Enc_ite: a > a > a > a,Enc_impl: a > a > a,Enc_var_impl: a > a > a,Enc_not_and: a > a > a,Enc_not_all: list_a > a,Enc_conj: list_a > a] :
( ! [Alpha3: a > $o] :
~ ( Eval @ Alpha3 @ Enc_False )
=> ( ! [Alpha3: a > $o] : ( Eval @ Alpha3 @ Enc_True )
=> ( ! [Alpha3: a > $o,X4: a] :
( ( Eval @ Alpha3 @ ( Enc_pos @ X4 ) )
= ( Alpha3 @ X4 ) )
=> ( ! [Alpha3: a > $o,X4: a] :
( ( Eval @ Alpha3 @ ( Enc_neg @ X4 ) )
= ( ~ ( Alpha3 @ X4 ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a] :
( ( Eval @ Alpha3 @ ( Enc_different @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
= ( ~ ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a,Z3: a] :
( ( Eval @ Alpha3 @ ( Enc_equiv_and_not @ X4 @ Y3 @ Z3 ) )
= ( ( Alpha3 @ X4 )
= ( ( Alpha3 @ Y3 )
& ~ ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a,Z3: a,U3: a] :
( ( Eval @ Alpha3 @ ( Enc_equiv_ite @ X4 @ Y3 @ Z3 @ U3 ) )
= ( ( Alpha3 @ X4 )
= ( ( ( Alpha3 @ Y3 )
=> ( Alpha3 @ Z3 ) )
& ( ~ ( Alpha3 @ Y3 )
=> ( Alpha3 @ U3 ) ) ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a,Z3: a] :
( ( Eval @ Alpha3 @ ( Enc_ite @ X4 @ Y3 @ Z3 ) )
= ( ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) )
& ( ~ ( Alpha3 @ X4 )
=> ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: a > $o,X4: a,F3: a] :
( ( Eval @ Alpha3 @ ( Enc_impl @ X4 @ F3 ) )
= ( ( Alpha3 @ X4 )
=> ( Eval @ Alpha3 @ F3 ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a] :
( ( Eval @ Alpha3 @ ( Enc_var_impl @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) ) )
=> ( ! [Alpha3: a > $o,X4: a,Y3: a] :
( ( Eval @ Alpha3 @ ( Enc_not_and @ X4 @ Y3 ) )
= ( ~ ( ( Alpha3 @ X4 )
& ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: a > $o,Xs2: list_a] :
( ( Eval @ Alpha3 @ ( Enc_not_all @ Xs2 ) )
= ( ~ ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Xs2 ) )
=> ( Alpha3 @ X3 ) ) ) )
=> ( ! [Alpha3: a > $o,Fs3: list_a] :
( ( Eval @ Alpha3 @ ( Enc_conj @ Fs3 ) )
= ( ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Fs3 ) )
=> ( Eval @ Alpha3 @ X3 ) ) ) )
=> ( multis2105231276199332428er_a_a @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).
% encoder.intro
thf(fact_87_encoder_Ointro,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f] :
( ! [Alpha3: multis3193088007478089820ropVar > $o] :
~ ( Eval @ Alpha3 @ Enc_False )
=> ( ! [Alpha3: multis3193088007478089820ropVar > $o] : ( Eval @ Alpha3 @ Enc_True )
=> ( ! [Alpha3: multis3193088007478089820ropVar > $o,X4: multis3193088007478089820ropVar] :
( ( Eval @ Alpha3 @ ( Enc_pos @ X4 ) )
= ( Alpha3 @ X4 ) )
=> ( ! [Alpha3: multis3193088007478089820ropVar > $o,X4: multis3193088007478089820ropVar] :
( ( Eval @ Alpha3 @ ( Enc_neg @ X4 ) )
= ( ~ ( Alpha3 @ X4 ) ) )
=> ( ! [Alpha3: multis3193088007478089820ropVar > $o,X4: multis3193088007478089820ropVar,Y3: multis3193088007478089820ropVar] :
( ( Eval @ Alpha3 @ ( Enc_different @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
= ( ~ ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: multis3193088007478089820ropVar > $o,X4: multis3193088007478089820ropVar,Y3: multis3193088007478089820ropVar,Z3: multis3193088007478089820ropVar] :
( ( Eval @ Alpha3 @ ( Enc_equiv_and_not @ X4 @ Y3 @ Z3 ) )
= ( ( Alpha3 @ X4 )
= ( ( Alpha3 @ Y3 )
& ~ ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: multis3193088007478089820ropVar > $o,X4: multis3193088007478089820ropVar,Y3: multis3193088007478089820ropVar,Z3: multis3193088007478089820ropVar,U3: multis3193088007478089820ropVar] :
( ( Eval @ Alpha3 @ ( Enc_equiv_ite @ X4 @ Y3 @ Z3 @ U3 ) )
= ( ( Alpha3 @ X4 )
= ( ( ( Alpha3 @ Y3 )
=> ( Alpha3 @ Z3 ) )
& ( ~ ( Alpha3 @ Y3 )
=> ( Alpha3 @ U3 ) ) ) ) )
=> ( ! [Alpha3: multis3193088007478089820ropVar > $o,X4: multis3193088007478089820ropVar,Y3: multis3193088007478089820ropVar,Z3: multis3193088007478089820ropVar] :
( ( Eval @ Alpha3 @ ( Enc_ite @ X4 @ Y3 @ Z3 ) )
= ( ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) )
& ( ~ ( Alpha3 @ X4 )
=> ( Alpha3 @ Z3 ) ) ) )
=> ( ! [Alpha3: multis3193088007478089820ropVar > $o,X4: multis3193088007478089820ropVar,F3: f] :
( ( Eval @ Alpha3 @ ( Enc_impl @ X4 @ F3 ) )
= ( ( Alpha3 @ X4 )
=> ( Eval @ Alpha3 @ F3 ) ) )
=> ( ! [Alpha3: multis3193088007478089820ropVar > $o,X4: multis3193088007478089820ropVar,Y3: multis3193088007478089820ropVar] :
( ( Eval @ Alpha3 @ ( Enc_var_impl @ X4 @ Y3 ) )
= ( ( Alpha3 @ X4 )
=> ( Alpha3 @ Y3 ) ) )
=> ( ! [Alpha3: multis3193088007478089820ropVar > $o,X4: multis3193088007478089820ropVar,Y3: multis3193088007478089820ropVar] :
( ( Eval @ Alpha3 @ ( Enc_not_and @ X4 @ Y3 ) )
= ( ~ ( ( Alpha3 @ X4 )
& ( Alpha3 @ Y3 ) ) ) )
=> ( ! [Alpha3: multis3193088007478089820ropVar > $o,Xs2: list_M6740372356978808802ropVar] :
( ( Eval @ Alpha3 @ ( Enc_not_all @ Xs2 ) )
= ( ~ ! [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ ( set_Mu146256361055586289ropVar @ Xs2 ) )
=> ( Alpha3 @ X3 ) ) ) )
=> ( ! [Alpha3: multis3193088007478089820ropVar > $o,Fs3: list_f] :
( ( Eval @ Alpha3 @ ( Enc_conj @ Fs3 ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs3 ) )
=> ( Eval @ Alpha3 @ X3 ) ) ) )
=> ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).
% encoder.intro
thf(fact_88_encoder_Oenc__sound_I12_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o,Xs3: list_M6740372356978808802ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( Eval @ Alpha @ ( Enc_not_all @ Xs3 ) )
= ( ~ ! [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ ( set_Mu146256361055586289ropVar @ Xs3 ) )
=> ( Alpha @ X3 ) ) ) ) ) ).
% encoder.enc_sound(12)
thf(fact_89_encoder_Oenc__sound_I13_J,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Alpha: multis3193088007478089820ropVar > $o,Fs: list_f] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( Eval @ Alpha @ ( Enc_conj @ Fs ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs ) )
=> ( Eval @ Alpha @ X3 ) ) ) ) ) ).
% encoder.enc_sound(13)
thf(fact_90_list_Oinject,axiom,
! [X21: f,X22: list_f,Y21: f,Y22: list_f] :
( ( ( cons_f @ X21 @ X22 )
= ( cons_f @ Y21 @ Y22 ) )
= ( ( X21 = Y21 )
& ( X22 = Y22 ) ) ) ).
% list.inject
thf(fact_91_list_Oinject,axiom,
! [X21: nat,X22: list_nat,Y21: nat,Y22: list_nat] :
( ( ( cons_nat @ X21 @ X22 )
= ( cons_nat @ Y21 @ Y22 ) )
= ( ( X21 = Y21 )
& ( X22 = Y22 ) ) ) ).
% list.inject
thf(fact_92_list_Oinject,axiom,
! [X21: produc2642885279816024434ropVar,X22: list_P8791008543742759928ropVar,Y21: produc2642885279816024434ropVar,Y22: list_P8791008543742759928ropVar] :
( ( ( cons_P1504208554336013608ropVar @ X21 @ X22 )
= ( cons_P1504208554336013608ropVar @ Y21 @ Y22 ) )
= ( ( X21 = Y21 )
& ( X22 = Y22 ) ) ) ).
% list.inject
thf(fact_93_formula16__def,axiom,
! [Cs: nat > nat > $o,Cns: nat > nat > $o,N: nat,M: nat] :
( ( multis4897360769916157165la16_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and @ enc_not_all @ Cs @ Cns @ N @ M )
= ( cons_f @ ( enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ N ) ) ) @ ( multis7684816351888833198la15_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and @ Cs @ Cns @ N @ M ) ) ) ).
% formula16_def
thf(fact_94_set__ConsD,axiom,
! [Y: produc6518373309651786023iset_a,X: produc6518373309651786023iset_a,Xs3: list_P6988024003011616557iset_a] :
( ( member5199237121806060112iset_a @ Y @ ( set_Pr5550698219922361532iset_a @ ( cons_P7086145107730948317iset_a @ X @ Xs3 ) ) )
=> ( ( Y = X )
| ( member5199237121806060112iset_a @ Y @ ( set_Pr5550698219922361532iset_a @ Xs3 ) ) ) ) ).
% set_ConsD
thf(fact_95_set__ConsD,axiom,
! [Y: product_prod_a_a,X: product_prod_a_a,Xs3: list_P1396940483166286381od_a_a] :
( ( member1426531477525435216od_a_a @ Y @ ( set_Product_prod_a_a2 @ ( cons_P7316939126706565853od_a_a @ X @ Xs3 ) ) )
=> ( ( Y = X )
| ( member1426531477525435216od_a_a @ Y @ ( set_Product_prod_a_a2 @ Xs3 ) ) ) ) ).
% set_ConsD
thf(fact_96_set__ConsD,axiom,
! [Y: multis3193088007478089820ropVar,X: multis3193088007478089820ropVar,Xs3: list_M6740372356978808802ropVar] :
( ( member8421201611525043589ropVar @ Y @ ( set_Mu146256361055586289ropVar @ ( cons_M4277272395645347858ropVar @ X @ Xs3 ) ) )
=> ( ( Y = X )
| ( member8421201611525043589ropVar @ Y @ ( set_Mu146256361055586289ropVar @ Xs3 ) ) ) ) ).
% set_ConsD
thf(fact_97_set__ConsD,axiom,
! [Y: list_f,X: list_f,Xs3: list_list_f] :
( ( member_list_f @ Y @ ( set_list_f2 @ ( cons_list_f @ X @ Xs3 ) ) )
=> ( ( Y = X )
| ( member_list_f @ Y @ ( set_list_f2 @ Xs3 ) ) ) ) ).
% set_ConsD
thf(fact_98_set__ConsD,axiom,
! [Y: a,X: a,Xs3: list_a] :
( ( member_a @ Y @ ( set_a2 @ ( cons_a @ X @ Xs3 ) ) )
=> ( ( Y = X )
| ( member_a @ Y @ ( set_a2 @ Xs3 ) ) ) ) ).
% set_ConsD
thf(fact_99_set__ConsD,axiom,
! [Y: f,X: f,Xs3: list_f] :
( ( member_f @ Y @ ( set_f2 @ ( cons_f @ X @ Xs3 ) ) )
=> ( ( Y = X )
| ( member_f @ Y @ ( set_f2 @ Xs3 ) ) ) ) ).
% set_ConsD
thf(fact_100_set__ConsD,axiom,
! [Y: nat,X: nat,Xs3: list_nat] :
( ( member_nat @ Y @ ( set_nat2 @ ( cons_nat @ X @ Xs3 ) ) )
=> ( ( Y = X )
| ( member_nat @ Y @ ( set_nat2 @ Xs3 ) ) ) ) ).
% set_ConsD
thf(fact_101_set__ConsD,axiom,
! [Y: produc2642885279816024434ropVar,X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( member9210975342120487067ropVar @ Y @ ( set_Pr3946994337432900359ropVar @ ( cons_P1504208554336013608ropVar @ X @ Xs3 ) ) )
=> ( ( Y = X )
| ( member9210975342120487067ropVar @ Y @ ( set_Pr3946994337432900359ropVar @ Xs3 ) ) ) ) ).
% set_ConsD
thf(fact_102_list_Oset__cases,axiom,
! [E: produc6518373309651786023iset_a,A: list_P6988024003011616557iset_a] :
( ( member5199237121806060112iset_a @ E @ ( set_Pr5550698219922361532iset_a @ A ) )
=> ( ! [Z22: list_P6988024003011616557iset_a] :
( A
!= ( cons_P7086145107730948317iset_a @ E @ Z22 ) )
=> ~ ! [Z1: produc6518373309651786023iset_a,Z22: list_P6988024003011616557iset_a] :
( ( A
= ( cons_P7086145107730948317iset_a @ Z1 @ Z22 ) )
=> ~ ( member5199237121806060112iset_a @ E @ ( set_Pr5550698219922361532iset_a @ Z22 ) ) ) ) ) ).
% list.set_cases
thf(fact_103_list_Oset__cases,axiom,
! [E: product_prod_a_a,A: list_P1396940483166286381od_a_a] :
( ( member1426531477525435216od_a_a @ E @ ( set_Product_prod_a_a2 @ A ) )
=> ( ! [Z22: list_P1396940483166286381od_a_a] :
( A
!= ( cons_P7316939126706565853od_a_a @ E @ Z22 ) )
=> ~ ! [Z1: product_prod_a_a,Z22: list_P1396940483166286381od_a_a] :
( ( A
= ( cons_P7316939126706565853od_a_a @ Z1 @ Z22 ) )
=> ~ ( member1426531477525435216od_a_a @ E @ ( set_Product_prod_a_a2 @ Z22 ) ) ) ) ) ).
% list.set_cases
thf(fact_104_list_Oset__cases,axiom,
! [E: multis3193088007478089820ropVar,A: list_M6740372356978808802ropVar] :
( ( member8421201611525043589ropVar @ E @ ( set_Mu146256361055586289ropVar @ A ) )
=> ( ! [Z22: list_M6740372356978808802ropVar] :
( A
!= ( cons_M4277272395645347858ropVar @ E @ Z22 ) )
=> ~ ! [Z1: multis3193088007478089820ropVar,Z22: list_M6740372356978808802ropVar] :
( ( A
= ( cons_M4277272395645347858ropVar @ Z1 @ Z22 ) )
=> ~ ( member8421201611525043589ropVar @ E @ ( set_Mu146256361055586289ropVar @ Z22 ) ) ) ) ) ).
% list.set_cases
thf(fact_105_list_Oset__cases,axiom,
! [E: list_f,A: list_list_f] :
( ( member_list_f @ E @ ( set_list_f2 @ A ) )
=> ( ! [Z22: list_list_f] :
( A
!= ( cons_list_f @ E @ Z22 ) )
=> ~ ! [Z1: list_f,Z22: list_list_f] :
( ( A
= ( cons_list_f @ Z1 @ Z22 ) )
=> ~ ( member_list_f @ E @ ( set_list_f2 @ Z22 ) ) ) ) ) ).
% list.set_cases
thf(fact_106_list_Oset__cases,axiom,
! [E: a,A: list_a] :
( ( member_a @ E @ ( set_a2 @ A ) )
=> ( ! [Z22: list_a] :
( A
!= ( cons_a @ E @ Z22 ) )
=> ~ ! [Z1: a,Z22: list_a] :
( ( A
= ( cons_a @ Z1 @ Z22 ) )
=> ~ ( member_a @ E @ ( set_a2 @ Z22 ) ) ) ) ) ).
% list.set_cases
thf(fact_107_list_Oset__cases,axiom,
! [E: f,A: list_f] :
( ( member_f @ E @ ( set_f2 @ A ) )
=> ( ! [Z22: list_f] :
( A
!= ( cons_f @ E @ Z22 ) )
=> ~ ! [Z1: f,Z22: list_f] :
( ( A
= ( cons_f @ Z1 @ Z22 ) )
=> ~ ( member_f @ E @ ( set_f2 @ Z22 ) ) ) ) ) ).
% list.set_cases
thf(fact_108_list_Oset__cases,axiom,
! [E: nat,A: list_nat] :
( ( member_nat @ E @ ( set_nat2 @ A ) )
=> ( ! [Z22: list_nat] :
( A
!= ( cons_nat @ E @ Z22 ) )
=> ~ ! [Z1: nat,Z22: list_nat] :
( ( A
= ( cons_nat @ Z1 @ Z22 ) )
=> ~ ( member_nat @ E @ ( set_nat2 @ Z22 ) ) ) ) ) ).
% list.set_cases
thf(fact_109_list_Oset__cases,axiom,
! [E: produc2642885279816024434ropVar,A: list_P8791008543742759928ropVar] :
( ( member9210975342120487067ropVar @ E @ ( set_Pr3946994337432900359ropVar @ A ) )
=> ( ! [Z22: list_P8791008543742759928ropVar] :
( A
!= ( cons_P1504208554336013608ropVar @ E @ Z22 ) )
=> ~ ! [Z1: produc2642885279816024434ropVar,Z22: list_P8791008543742759928ropVar] :
( ( A
= ( cons_P1504208554336013608ropVar @ Z1 @ Z22 ) )
=> ~ ( member9210975342120487067ropVar @ E @ ( set_Pr3946994337432900359ropVar @ Z22 ) ) ) ) ) ).
% list.set_cases
thf(fact_110_list_Oset__intros_I1_J,axiom,
! [X21: produc6518373309651786023iset_a,X22: list_P6988024003011616557iset_a] : ( member5199237121806060112iset_a @ X21 @ ( set_Pr5550698219922361532iset_a @ ( cons_P7086145107730948317iset_a @ X21 @ X22 ) ) ) ).
% list.set_intros(1)
thf(fact_111_list_Oset__intros_I1_J,axiom,
! [X21: product_prod_a_a,X22: list_P1396940483166286381od_a_a] : ( member1426531477525435216od_a_a @ X21 @ ( set_Product_prod_a_a2 @ ( cons_P7316939126706565853od_a_a @ X21 @ X22 ) ) ) ).
% list.set_intros(1)
thf(fact_112_list_Oset__intros_I1_J,axiom,
! [X21: multis3193088007478089820ropVar,X22: list_M6740372356978808802ropVar] : ( member8421201611525043589ropVar @ X21 @ ( set_Mu146256361055586289ropVar @ ( cons_M4277272395645347858ropVar @ X21 @ X22 ) ) ) ).
% list.set_intros(1)
thf(fact_113_list_Oset__intros_I1_J,axiom,
! [X21: list_f,X22: list_list_f] : ( member_list_f @ X21 @ ( set_list_f2 @ ( cons_list_f @ X21 @ X22 ) ) ) ).
% list.set_intros(1)
thf(fact_114_list_Oset__intros_I1_J,axiom,
! [X21: a,X22: list_a] : ( member_a @ X21 @ ( set_a2 @ ( cons_a @ X21 @ X22 ) ) ) ).
% list.set_intros(1)
thf(fact_115_list_Oset__intros_I1_J,axiom,
! [X21: f,X22: list_f] : ( member_f @ X21 @ ( set_f2 @ ( cons_f @ X21 @ X22 ) ) ) ).
% list.set_intros(1)
thf(fact_116_list_Oset__intros_I1_J,axiom,
! [X21: nat,X22: list_nat] : ( member_nat @ X21 @ ( set_nat2 @ ( cons_nat @ X21 @ X22 ) ) ) ).
% list.set_intros(1)
thf(fact_117_list_Oset__intros_I1_J,axiom,
! [X21: produc2642885279816024434ropVar,X22: list_P8791008543742759928ropVar] : ( member9210975342120487067ropVar @ X21 @ ( set_Pr3946994337432900359ropVar @ ( cons_P1504208554336013608ropVar @ X21 @ X22 ) ) ) ).
% list.set_intros(1)
thf(fact_118_list_Oset__intros_I2_J,axiom,
! [Y: produc6518373309651786023iset_a,X22: list_P6988024003011616557iset_a,X21: produc6518373309651786023iset_a] :
( ( member5199237121806060112iset_a @ Y @ ( set_Pr5550698219922361532iset_a @ X22 ) )
=> ( member5199237121806060112iset_a @ Y @ ( set_Pr5550698219922361532iset_a @ ( cons_P7086145107730948317iset_a @ X21 @ X22 ) ) ) ) ).
% list.set_intros(2)
thf(fact_119_list_Oset__intros_I2_J,axiom,
! [Y: product_prod_a_a,X22: list_P1396940483166286381od_a_a,X21: product_prod_a_a] :
( ( member1426531477525435216od_a_a @ Y @ ( set_Product_prod_a_a2 @ X22 ) )
=> ( member1426531477525435216od_a_a @ Y @ ( set_Product_prod_a_a2 @ ( cons_P7316939126706565853od_a_a @ X21 @ X22 ) ) ) ) ).
% list.set_intros(2)
thf(fact_120_list_Oset__intros_I2_J,axiom,
! [Y: multis3193088007478089820ropVar,X22: list_M6740372356978808802ropVar,X21: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ Y @ ( set_Mu146256361055586289ropVar @ X22 ) )
=> ( member8421201611525043589ropVar @ Y @ ( set_Mu146256361055586289ropVar @ ( cons_M4277272395645347858ropVar @ X21 @ X22 ) ) ) ) ).
% list.set_intros(2)
thf(fact_121_list_Oset__intros_I2_J,axiom,
! [Y: list_f,X22: list_list_f,X21: list_f] :
( ( member_list_f @ Y @ ( set_list_f2 @ X22 ) )
=> ( member_list_f @ Y @ ( set_list_f2 @ ( cons_list_f @ X21 @ X22 ) ) ) ) ).
% list.set_intros(2)
thf(fact_122_list_Oset__intros_I2_J,axiom,
! [Y: a,X22: list_a,X21: a] :
( ( member_a @ Y @ ( set_a2 @ X22 ) )
=> ( member_a @ Y @ ( set_a2 @ ( cons_a @ X21 @ X22 ) ) ) ) ).
% list.set_intros(2)
thf(fact_123_list_Oset__intros_I2_J,axiom,
! [Y: f,X22: list_f,X21: f] :
( ( member_f @ Y @ ( set_f2 @ X22 ) )
=> ( member_f @ Y @ ( set_f2 @ ( cons_f @ X21 @ X22 ) ) ) ) ).
% list.set_intros(2)
thf(fact_124_list_Oset__intros_I2_J,axiom,
! [Y: nat,X22: list_nat,X21: nat] :
( ( member_nat @ Y @ ( set_nat2 @ X22 ) )
=> ( member_nat @ Y @ ( set_nat2 @ ( cons_nat @ X21 @ X22 ) ) ) ) ).
% list.set_intros(2)
thf(fact_125_list_Oset__intros_I2_J,axiom,
! [Y: produc2642885279816024434ropVar,X22: list_P8791008543742759928ropVar,X21: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ Y @ ( set_Pr3946994337432900359ropVar @ X22 ) )
=> ( member9210975342120487067ropVar @ Y @ ( set_Pr3946994337432900359ropVar @ ( cons_P1504208554336013608ropVar @ X21 @ X22 ) ) ) ) ).
% list.set_intros(2)
thf(fact_126_eval__all__concat,axiom,
! [Fs: list_list_f,Alpha: multis3193088007478089820ropVar > $o] :
( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( concat_f @ Fs ) ) )
=> ( eval @ Alpha @ X3 ) ) )
= ( ! [X3: list_f] :
( ( member_list_f @ X3 @ ( set_list_f2 @ Fs ) )
=> ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ X3 ) )
=> ( eval @ Alpha @ Y2 ) ) ) ) ) ).
% eval_all_concat
thf(fact_127_eval__all__append,axiom,
! [Fs: list_f,Gs: list_f,Alpha: multis3193088007478089820ropVar > $o] :
( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( append_f @ Fs @ Gs ) ) )
=> ( eval @ Alpha @ X3 ) ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs ) )
=> ( eval @ Alpha @ X3 ) )
& ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Gs ) )
=> ( eval @ Alpha @ X3 ) ) ) ) ).
% eval_all_append
thf(fact_128_enc__sound_I12_J,axiom,
! [Alpha: multis3193088007478089820ropVar > $o,Xs3: list_M6740372356978808802ropVar] :
( ( eval @ Alpha @ ( enc_not_all @ Xs3 ) )
= ( ~ ! [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ ( set_Mu146256361055586289ropVar @ Xs3 ) )
=> ( Alpha @ X3 ) ) ) ) ).
% enc_sound(12)
thf(fact_129_compare_I2_J,axiom,
! [I: nat,J: nat] :
( ( ord_less_nat @ I @ n )
=> ( ( ord_less_nat @ J @ m )
=> ( ( v2 @ ( multis387687052011358179_Gamma @ I @ J ) )
=> ( ( v2 @ ( multis2544335231667181926psilon @ I ) )
=> ( cns @ I @ J ) ) ) ) ) ).
% compare(2)
thf(fact_130_compare_I1_J,axiom,
! [I: nat,J: nat] :
( ( ord_less_nat @ I @ n )
=> ( ( ord_less_nat @ J @ m )
=> ( ( v2 @ ( multis387687052011358179_Gamma @ I @ J ) )
=> ( ~ ( v2 @ ( multis2544335231667181926psilon @ I ) )
=> ( cs @ I @ J ) ) ) ) ) ).
% compare(1)
thf(fact_131_same__append__eq,axiom,
! [Xs3: list_f,Ys: list_f,Zs: list_f] :
( ( ( append_f @ Xs3 @ Ys )
= ( append_f @ Xs3 @ Zs ) )
= ( Ys = Zs ) ) ).
% same_append_eq
thf(fact_132_same__append__eq,axiom,
! [Xs3: list_nat,Ys: list_nat,Zs: list_nat] :
( ( ( append_nat @ Xs3 @ Ys )
= ( append_nat @ Xs3 @ Zs ) )
= ( Ys = Zs ) ) ).
% same_append_eq
thf(fact_133_append__same__eq,axiom,
! [Ys: list_f,Xs3: list_f,Zs: list_f] :
( ( ( append_f @ Ys @ Xs3 )
= ( append_f @ Zs @ Xs3 ) )
= ( Ys = Zs ) ) ).
% append_same_eq
thf(fact_134_append__same__eq,axiom,
! [Ys: list_nat,Xs3: list_nat,Zs: list_nat] :
( ( ( append_nat @ Ys @ Xs3 )
= ( append_nat @ Zs @ Xs3 ) )
= ( Ys = Zs ) ) ).
% append_same_eq
thf(fact_135_append__assoc,axiom,
! [Xs3: list_f,Ys: list_f,Zs: list_f] :
( ( append_f @ ( append_f @ Xs3 @ Ys ) @ Zs )
= ( append_f @ Xs3 @ ( append_f @ Ys @ Zs ) ) ) ).
% append_assoc
thf(fact_136_append__assoc,axiom,
! [Xs3: list_nat,Ys: list_nat,Zs: list_nat] :
( ( append_nat @ ( append_nat @ Xs3 @ Ys ) @ Zs )
= ( append_nat @ Xs3 @ ( append_nat @ Ys @ Zs ) ) ) ).
% append_assoc
thf(fact_137_append_Oassoc,axiom,
! [A: list_f,B: list_f,C: list_f] :
( ( append_f @ ( append_f @ A @ B ) @ C )
= ( append_f @ A @ ( append_f @ B @ C ) ) ) ).
% append.assoc
thf(fact_138_append_Oassoc,axiom,
! [A: list_nat,B: list_nat,C: list_nat] :
( ( append_nat @ ( append_nat @ A @ B ) @ C )
= ( append_nat @ A @ ( append_nat @ B @ C ) ) ) ).
% append.assoc
thf(fact_139_PropVar_Oinject_I1_J,axiom,
! [X11: nat,X12: nat,Y11: nat,Y12: nat] :
( ( ( multis387687052011358179_Gamma @ X11 @ X12 )
= ( multis387687052011358179_Gamma @ Y11 @ Y12 ) )
= ( ( X11 = Y11 )
& ( X12 = Y12 ) ) ) ).
% PropVar.inject(1)
thf(fact_140_PropVar_Oinject_I2_J,axiom,
! [X23: nat,Y23: nat] :
( ( ( multis2544335231667181926psilon @ X23 )
= ( multis2544335231667181926psilon @ Y23 ) )
= ( X23 = Y23 ) ) ).
% PropVar.inject(2)
thf(fact_141_map__eq__conv,axiom,
! [F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,Xs3: list_P8791008543742759928ropVar,G: produc2642885279816024434ropVar > multis3193088007478089820ropVar] :
( ( ( map_Pr3335389669906741166ropVar @ F @ Xs3 )
= ( map_Pr3335389669906741166ropVar @ G @ Xs3 ) )
= ( ! [X3: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X3 @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
=> ( ( F @ X3 )
= ( G @ X3 ) ) ) ) ) ).
% map_eq_conv
thf(fact_142_map__eq__conv,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_nat,G: nat > multis3193088007478089820ropVar] :
( ( ( map_na2466558649495876678ropVar @ F @ Xs3 )
= ( map_na2466558649495876678ropVar @ G @ Xs3 ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs3 ) )
=> ( ( F @ X3 )
= ( G @ X3 ) ) ) ) ) ).
% map_eq_conv
thf(fact_143_map__eq__conv,axiom,
! [F: nat > a,Xs3: list_nat,G: nat > a] :
( ( ( map_nat_a @ F @ Xs3 )
= ( map_nat_a @ G @ Xs3 ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs3 ) )
=> ( ( F @ X3 )
= ( G @ X3 ) ) ) ) ) ).
% map_eq_conv
thf(fact_144_map__eq__conv,axiom,
! [F: nat > nat,Xs3: list_nat,G: nat > nat] :
( ( ( map_nat_nat @ F @ Xs3 )
= ( map_nat_nat @ G @ Xs3 ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs3 ) )
=> ( ( F @ X3 )
= ( G @ X3 ) ) ) ) ) ).
% map_eq_conv
thf(fact_145_map__eq__conv,axiom,
! [F: nat > produc2642885279816024434ropVar,Xs3: list_nat,G: nat > produc2642885279816024434ropVar] :
( ( ( map_na2145702811007361372ropVar @ F @ Xs3 )
= ( map_na2145702811007361372ropVar @ G @ Xs3 ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs3 ) )
=> ( ( F @ X3 )
= ( G @ X3 ) ) ) ) ) ).
% map_eq_conv
thf(fact_146_map__append,axiom,
! [F: f > f,Xs3: list_f,Ys: list_f] :
( ( map_f_f @ F @ ( append_f @ Xs3 @ Ys ) )
= ( append_f @ ( map_f_f @ F @ Xs3 ) @ ( map_f_f @ F @ Ys ) ) ) ).
% map_append
thf(fact_147_map__append,axiom,
! [F: f > nat,Xs3: list_f,Ys: list_f] :
( ( map_f_nat @ F @ ( append_f @ Xs3 @ Ys ) )
= ( append_nat @ ( map_f_nat @ F @ Xs3 ) @ ( map_f_nat @ F @ Ys ) ) ) ).
% map_append
thf(fact_148_map__append,axiom,
! [F: nat > f,Xs3: list_nat,Ys: list_nat] :
( ( map_nat_f @ F @ ( append_nat @ Xs3 @ Ys ) )
= ( append_f @ ( map_nat_f @ F @ Xs3 ) @ ( map_nat_f @ F @ Ys ) ) ) ).
% map_append
thf(fact_149_map__append,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_nat,Ys: list_nat] :
( ( map_na2466558649495876678ropVar @ F @ ( append_nat @ Xs3 @ Ys ) )
= ( append2684835082924936439ropVar @ ( map_na2466558649495876678ropVar @ F @ Xs3 ) @ ( map_na2466558649495876678ropVar @ F @ Ys ) ) ) ).
% map_append
thf(fact_150_map__append,axiom,
! [F: nat > a,Xs3: list_nat,Ys: list_nat] :
( ( map_nat_a @ F @ ( append_nat @ Xs3 @ Ys ) )
= ( append_a @ ( map_nat_a @ F @ Xs3 ) @ ( map_nat_a @ F @ Ys ) ) ) ).
% map_append
thf(fact_151_map__append,axiom,
! [F: nat > nat,Xs3: list_nat,Ys: list_nat] :
( ( map_nat_nat @ F @ ( append_nat @ Xs3 @ Ys ) )
= ( append_nat @ ( map_nat_nat @ F @ Xs3 ) @ ( map_nat_nat @ F @ Ys ) ) ) ).
% map_append
thf(fact_152_map__append,axiom,
! [F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar] :
( ( map_Pr3335389669906741166ropVar @ F @ ( append4352292717583037453ropVar @ Xs3 @ Ys ) )
= ( append2684835082924936439ropVar @ ( map_Pr3335389669906741166ropVar @ F @ Xs3 ) @ ( map_Pr3335389669906741166ropVar @ F @ Ys ) ) ) ).
% map_append
thf(fact_153_map__append,axiom,
! [F: nat > produc2642885279816024434ropVar,Xs3: list_nat,Ys: list_nat] :
( ( map_na2145702811007361372ropVar @ F @ ( append_nat @ Xs3 @ Ys ) )
= ( append4352292717583037453ropVar @ ( map_na2145702811007361372ropVar @ F @ Xs3 ) @ ( map_na2145702811007361372ropVar @ F @ Ys ) ) ) ).
% map_append
thf(fact_154_concat__append,axiom,
! [Xs3: list_list_nat,Ys: list_list_nat] :
( ( concat_nat @ ( append_list_nat @ Xs3 @ Ys ) )
= ( append_nat @ ( concat_nat @ Xs3 ) @ ( concat_nat @ Ys ) ) ) ).
% concat_append
thf(fact_155_concat__append,axiom,
! [Xs3: list_list_f,Ys: list_list_f] :
( ( concat_f @ ( append_list_f @ Xs3 @ Ys ) )
= ( append_f @ ( concat_f @ Xs3 ) @ ( concat_f @ Ys ) ) ) ).
% concat_append
thf(fact_156_concat_Osimps_I2_J,axiom,
! [X: list_nat,Xs3: list_list_nat] :
( ( concat_nat @ ( cons_list_nat @ X @ Xs3 ) )
= ( append_nat @ X @ ( concat_nat @ Xs3 ) ) ) ).
% concat.simps(2)
thf(fact_157_concat_Osimps_I2_J,axiom,
! [X: list_f,Xs3: list_list_f] :
( ( concat_f @ ( cons_list_f @ X @ Xs3 ) )
= ( append_f @ X @ ( concat_f @ Xs3 ) ) ) ).
% concat.simps(2)
thf(fact_158_append__eq__append__conv2,axiom,
! [Xs3: list_f,Ys: list_f,Zs: list_f,Ts: list_f] :
( ( ( append_f @ Xs3 @ Ys )
= ( append_f @ Zs @ Ts ) )
= ( ? [Us: list_f] :
( ( ( Xs3
= ( append_f @ Zs @ Us ) )
& ( ( append_f @ Us @ Ys )
= Ts ) )
| ( ( ( append_f @ Xs3 @ Us )
= Zs )
& ( Ys
= ( append_f @ Us @ Ts ) ) ) ) ) ) ).
% append_eq_append_conv2
thf(fact_159_append__eq__append__conv2,axiom,
! [Xs3: list_nat,Ys: list_nat,Zs: list_nat,Ts: list_nat] :
( ( ( append_nat @ Xs3 @ Ys )
= ( append_nat @ Zs @ Ts ) )
= ( ? [Us: list_nat] :
( ( ( Xs3
= ( append_nat @ Zs @ Us ) )
& ( ( append_nat @ Us @ Ys )
= Ts ) )
| ( ( ( append_nat @ Xs3 @ Us )
= Zs )
& ( Ys
= ( append_nat @ Us @ Ts ) ) ) ) ) ) ).
% append_eq_append_conv2
thf(fact_160_map__eq__append__conv,axiom,
! [F: f > f,Xs3: list_f,Ys: list_f,Zs: list_f] :
( ( ( map_f_f @ F @ Xs3 )
= ( append_f @ Ys @ Zs ) )
= ( ? [Us: list_f,Vs: list_f] :
( ( Xs3
= ( append_f @ Us @ Vs ) )
& ( Ys
= ( map_f_f @ F @ Us ) )
& ( Zs
= ( map_f_f @ F @ Vs ) ) ) ) ) ).
% map_eq_append_conv
thf(fact_161_map__eq__append__conv,axiom,
! [F: nat > f,Xs3: list_nat,Ys: list_f,Zs: list_f] :
( ( ( map_nat_f @ F @ Xs3 )
= ( append_f @ Ys @ Zs ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Xs3
= ( append_nat @ Us @ Vs ) )
& ( Ys
= ( map_nat_f @ F @ Us ) )
& ( Zs
= ( map_nat_f @ F @ Vs ) ) ) ) ) ).
% map_eq_append_conv
thf(fact_162_map__eq__append__conv,axiom,
! [F: f > nat,Xs3: list_f,Ys: list_nat,Zs: list_nat] :
( ( ( map_f_nat @ F @ Xs3 )
= ( append_nat @ Ys @ Zs ) )
= ( ? [Us: list_f,Vs: list_f] :
( ( Xs3
= ( append_f @ Us @ Vs ) )
& ( Ys
= ( map_f_nat @ F @ Us ) )
& ( Zs
= ( map_f_nat @ F @ Vs ) ) ) ) ) ).
% map_eq_append_conv
thf(fact_163_map__eq__append__conv,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_nat,Ys: list_M6740372356978808802ropVar,Zs: list_M6740372356978808802ropVar] :
( ( ( map_na2466558649495876678ropVar @ F @ Xs3 )
= ( append2684835082924936439ropVar @ Ys @ Zs ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Xs3
= ( append_nat @ Us @ Vs ) )
& ( Ys
= ( map_na2466558649495876678ropVar @ F @ Us ) )
& ( Zs
= ( map_na2466558649495876678ropVar @ F @ Vs ) ) ) ) ) ).
% map_eq_append_conv
thf(fact_164_map__eq__append__conv,axiom,
! [F: nat > a,Xs3: list_nat,Ys: list_a,Zs: list_a] :
( ( ( map_nat_a @ F @ Xs3 )
= ( append_a @ Ys @ Zs ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Xs3
= ( append_nat @ Us @ Vs ) )
& ( Ys
= ( map_nat_a @ F @ Us ) )
& ( Zs
= ( map_nat_a @ F @ Vs ) ) ) ) ) ).
% map_eq_append_conv
thf(fact_165_map__eq__append__conv,axiom,
! [F: nat > nat,Xs3: list_nat,Ys: list_nat,Zs: list_nat] :
( ( ( map_nat_nat @ F @ Xs3 )
= ( append_nat @ Ys @ Zs ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Xs3
= ( append_nat @ Us @ Vs ) )
& ( Ys
= ( map_nat_nat @ F @ Us ) )
& ( Zs
= ( map_nat_nat @ F @ Vs ) ) ) ) ) ).
% map_eq_append_conv
thf(fact_166_map__eq__append__conv,axiom,
! [F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,Xs3: list_P8791008543742759928ropVar,Ys: list_M6740372356978808802ropVar,Zs: list_M6740372356978808802ropVar] :
( ( ( map_Pr3335389669906741166ropVar @ F @ Xs3 )
= ( append2684835082924936439ropVar @ Ys @ Zs ) )
= ( ? [Us: list_P8791008543742759928ropVar,Vs: list_P8791008543742759928ropVar] :
( ( Xs3
= ( append4352292717583037453ropVar @ Us @ Vs ) )
& ( Ys
= ( map_Pr3335389669906741166ropVar @ F @ Us ) )
& ( Zs
= ( map_Pr3335389669906741166ropVar @ F @ Vs ) ) ) ) ) ).
% map_eq_append_conv
thf(fact_167_map__eq__append__conv,axiom,
! [F: nat > produc2642885279816024434ropVar,Xs3: list_nat,Ys: list_P8791008543742759928ropVar,Zs: list_P8791008543742759928ropVar] :
( ( ( map_na2145702811007361372ropVar @ F @ Xs3 )
= ( append4352292717583037453ropVar @ Ys @ Zs ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Xs3
= ( append_nat @ Us @ Vs ) )
& ( Ys
= ( map_na2145702811007361372ropVar @ F @ Us ) )
& ( Zs
= ( map_na2145702811007361372ropVar @ F @ Vs ) ) ) ) ) ).
% map_eq_append_conv
thf(fact_168_append__eq__map__conv,axiom,
! [Ys: list_f,Zs: list_f,F: f > f,Xs3: list_f] :
( ( ( append_f @ Ys @ Zs )
= ( map_f_f @ F @ Xs3 ) )
= ( ? [Us: list_f,Vs: list_f] :
( ( Xs3
= ( append_f @ Us @ Vs ) )
& ( Ys
= ( map_f_f @ F @ Us ) )
& ( Zs
= ( map_f_f @ F @ Vs ) ) ) ) ) ).
% append_eq_map_conv
thf(fact_169_append__eq__map__conv,axiom,
! [Ys: list_f,Zs: list_f,F: nat > f,Xs3: list_nat] :
( ( ( append_f @ Ys @ Zs )
= ( map_nat_f @ F @ Xs3 ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Xs3
= ( append_nat @ Us @ Vs ) )
& ( Ys
= ( map_nat_f @ F @ Us ) )
& ( Zs
= ( map_nat_f @ F @ Vs ) ) ) ) ) ).
% append_eq_map_conv
thf(fact_170_append__eq__map__conv,axiom,
! [Ys: list_nat,Zs: list_nat,F: f > nat,Xs3: list_f] :
( ( ( append_nat @ Ys @ Zs )
= ( map_f_nat @ F @ Xs3 ) )
= ( ? [Us: list_f,Vs: list_f] :
( ( Xs3
= ( append_f @ Us @ Vs ) )
& ( Ys
= ( map_f_nat @ F @ Us ) )
& ( Zs
= ( map_f_nat @ F @ Vs ) ) ) ) ) ).
% append_eq_map_conv
thf(fact_171_append__eq__map__conv,axiom,
! [Ys: list_M6740372356978808802ropVar,Zs: list_M6740372356978808802ropVar,F: nat > multis3193088007478089820ropVar,Xs3: list_nat] :
( ( ( append2684835082924936439ropVar @ Ys @ Zs )
= ( map_na2466558649495876678ropVar @ F @ Xs3 ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Xs3
= ( append_nat @ Us @ Vs ) )
& ( Ys
= ( map_na2466558649495876678ropVar @ F @ Us ) )
& ( Zs
= ( map_na2466558649495876678ropVar @ F @ Vs ) ) ) ) ) ).
% append_eq_map_conv
thf(fact_172_append__eq__map__conv,axiom,
! [Ys: list_a,Zs: list_a,F: nat > a,Xs3: list_nat] :
( ( ( append_a @ Ys @ Zs )
= ( map_nat_a @ F @ Xs3 ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Xs3
= ( append_nat @ Us @ Vs ) )
& ( Ys
= ( map_nat_a @ F @ Us ) )
& ( Zs
= ( map_nat_a @ F @ Vs ) ) ) ) ) ).
% append_eq_map_conv
thf(fact_173_append__eq__map__conv,axiom,
! [Ys: list_nat,Zs: list_nat,F: nat > nat,Xs3: list_nat] :
( ( ( append_nat @ Ys @ Zs )
= ( map_nat_nat @ F @ Xs3 ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Xs3
= ( append_nat @ Us @ Vs ) )
& ( Ys
= ( map_nat_nat @ F @ Us ) )
& ( Zs
= ( map_nat_nat @ F @ Vs ) ) ) ) ) ).
% append_eq_map_conv
thf(fact_174_append__eq__map__conv,axiom,
! [Ys: list_M6740372356978808802ropVar,Zs: list_M6740372356978808802ropVar,F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( ( append2684835082924936439ropVar @ Ys @ Zs )
= ( map_Pr3335389669906741166ropVar @ F @ Xs3 ) )
= ( ? [Us: list_P8791008543742759928ropVar,Vs: list_P8791008543742759928ropVar] :
( ( Xs3
= ( append4352292717583037453ropVar @ Us @ Vs ) )
& ( Ys
= ( map_Pr3335389669906741166ropVar @ F @ Us ) )
& ( Zs
= ( map_Pr3335389669906741166ropVar @ F @ Vs ) ) ) ) ) ).
% append_eq_map_conv
thf(fact_175_append__eq__map__conv,axiom,
! [Ys: list_P8791008543742759928ropVar,Zs: list_P8791008543742759928ropVar,F: nat > produc2642885279816024434ropVar,Xs3: list_nat] :
( ( ( append4352292717583037453ropVar @ Ys @ Zs )
= ( map_na2145702811007361372ropVar @ F @ Xs3 ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Xs3
= ( append_nat @ Us @ Vs ) )
& ( Ys
= ( map_na2145702811007361372ropVar @ F @ Us ) )
& ( Zs
= ( map_na2145702811007361372ropVar @ F @ Vs ) ) ) ) ) ).
% append_eq_map_conv
thf(fact_176_append__eq__appendI,axiom,
! [Xs3: list_f,Xs1: list_f,Zs: list_f,Ys: list_f,Us2: list_f] :
( ( ( append_f @ Xs3 @ Xs1 )
= Zs )
=> ( ( Ys
= ( append_f @ Xs1 @ Us2 ) )
=> ( ( append_f @ Xs3 @ Ys )
= ( append_f @ Zs @ Us2 ) ) ) ) ).
% append_eq_appendI
thf(fact_177_append__eq__appendI,axiom,
! [Xs3: list_nat,Xs1: list_nat,Zs: list_nat,Ys: list_nat,Us2: list_nat] :
( ( ( append_nat @ Xs3 @ Xs1 )
= Zs )
=> ( ( Ys
= ( append_nat @ Xs1 @ Us2 ) )
=> ( ( append_nat @ Xs3 @ Ys )
= ( append_nat @ Zs @ Us2 ) ) ) ) ).
% append_eq_appendI
thf(fact_178_map__concat,axiom,
! [F: f > f,Xs3: list_list_f] :
( ( map_f_f @ F @ ( concat_f @ Xs3 ) )
= ( concat_f @ ( map_list_f_list_f @ ( map_f_f @ F ) @ Xs3 ) ) ) ).
% map_concat
thf(fact_179_map__concat,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_list_nat] :
( ( map_na2466558649495876678ropVar @ F @ ( concat_nat @ Xs3 ) )
= ( concat2729506608927398813ropVar @ ( map_li5946103070670478908ropVar @ ( map_na2466558649495876678ropVar @ F ) @ Xs3 ) ) ) ).
% map_concat
thf(fact_180_map__concat,axiom,
! [F: nat > a,Xs3: list_list_nat] :
( ( map_nat_a @ F @ ( concat_nat @ Xs3 ) )
= ( concat_a @ ( map_list_nat_list_a @ ( map_nat_a @ F ) @ Xs3 ) ) ) ).
% map_concat
thf(fact_181_map__concat,axiom,
! [F: nat > nat,Xs3: list_list_nat] :
( ( map_nat_nat @ F @ ( concat_nat @ Xs3 ) )
= ( concat_nat @ ( map_li7225945977422193158st_nat @ ( map_nat_nat @ F ) @ Xs3 ) ) ) ).
% map_concat
thf(fact_182_map__concat,axiom,
! [F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,Xs3: list_l3415868495287753214ropVar] :
( ( map_Pr3335389669906741166ropVar @ F @ ( concat1830633707478507187ropVar @ Xs3 ) )
= ( concat2729506608927398813ropVar @ ( map_li7870304551969808814ropVar @ ( map_Pr3335389669906741166ropVar @ F ) @ Xs3 ) ) ) ).
% map_concat
thf(fact_183_map__concat,axiom,
! [F: nat > produc2642885279816024434ropVar,Xs3: list_list_nat] :
( ( map_na2145702811007361372ropVar @ F @ ( concat_nat @ Xs3 ) )
= ( concat1830633707478507187ropVar @ ( map_li4979107708160704082ropVar @ ( map_na2145702811007361372ropVar @ F ) @ Xs3 ) ) ) ).
% map_concat
thf(fact_184_PropVar_Odistinct_I1_J,axiom,
! [X11: nat,X12: nat,X23: nat] :
( ( multis387687052011358179_Gamma @ X11 @ X12 )
!= ( multis2544335231667181926psilon @ X23 ) ) ).
% PropVar.distinct(1)
thf(fact_185_map__eq__Cons__conv,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_nat,Y: multis3193088007478089820ropVar,Ys: list_M6740372356978808802ropVar] :
( ( ( map_na2466558649495876678ropVar @ F @ Xs3 )
= ( cons_M4277272395645347858ropVar @ Y @ Ys ) )
= ( ? [Z2: nat,Zs2: list_nat] :
( ( Xs3
= ( cons_nat @ Z2 @ Zs2 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_na2466558649495876678ropVar @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_186_map__eq__Cons__conv,axiom,
! [F: nat > a,Xs3: list_nat,Y: a,Ys: list_a] :
( ( ( map_nat_a @ F @ Xs3 )
= ( cons_a @ Y @ Ys ) )
= ( ? [Z2: nat,Zs2: list_nat] :
( ( Xs3
= ( cons_nat @ Z2 @ Zs2 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_nat_a @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_187_map__eq__Cons__conv,axiom,
! [F: f > f,Xs3: list_f,Y: f,Ys: list_f] :
( ( ( map_f_f @ F @ Xs3 )
= ( cons_f @ Y @ Ys ) )
= ( ? [Z2: f,Zs2: list_f] :
( ( Xs3
= ( cons_f @ Z2 @ Zs2 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_f_f @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_188_map__eq__Cons__conv,axiom,
! [F: nat > f,Xs3: list_nat,Y: f,Ys: list_f] :
( ( ( map_nat_f @ F @ Xs3 )
= ( cons_f @ Y @ Ys ) )
= ( ? [Z2: nat,Zs2: list_nat] :
( ( Xs3
= ( cons_nat @ Z2 @ Zs2 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_nat_f @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_189_map__eq__Cons__conv,axiom,
! [F: f > nat,Xs3: list_f,Y: nat,Ys: list_nat] :
( ( ( map_f_nat @ F @ Xs3 )
= ( cons_nat @ Y @ Ys ) )
= ( ? [Z2: f,Zs2: list_f] :
( ( Xs3
= ( cons_f @ Z2 @ Zs2 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_f_nat @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_190_map__eq__Cons__conv,axiom,
! [F: nat > nat,Xs3: list_nat,Y: nat,Ys: list_nat] :
( ( ( map_nat_nat @ F @ Xs3 )
= ( cons_nat @ Y @ Ys ) )
= ( ? [Z2: nat,Zs2: list_nat] :
( ( Xs3
= ( cons_nat @ Z2 @ Zs2 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_nat_nat @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_191_map__eq__Cons__conv,axiom,
! [F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,Xs3: list_P8791008543742759928ropVar,Y: multis3193088007478089820ropVar,Ys: list_M6740372356978808802ropVar] :
( ( ( map_Pr3335389669906741166ropVar @ F @ Xs3 )
= ( cons_M4277272395645347858ropVar @ Y @ Ys ) )
= ( ? [Z2: produc2642885279816024434ropVar,Zs2: list_P8791008543742759928ropVar] :
( ( Xs3
= ( cons_P1504208554336013608ropVar @ Z2 @ Zs2 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_Pr3335389669906741166ropVar @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_192_map__eq__Cons__conv,axiom,
! [F: produc2642885279816024434ropVar > f,Xs3: list_P8791008543742759928ropVar,Y: f,Ys: list_f] :
( ( ( map_Pr1064736048566318677pVar_f @ F @ Xs3 )
= ( cons_f @ Y @ Ys ) )
= ( ? [Z2: produc2642885279816024434ropVar,Zs2: list_P8791008543742759928ropVar] :
( ( Xs3
= ( cons_P1504208554336013608ropVar @ Z2 @ Zs2 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_Pr1064736048566318677pVar_f @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_193_map__eq__Cons__conv,axiom,
! [F: produc2642885279816024434ropVar > nat,Xs3: list_P8791008543742759928ropVar,Y: nat,Ys: list_nat] :
( ( ( map_Pr7810381211709419518ar_nat @ F @ Xs3 )
= ( cons_nat @ Y @ Ys ) )
= ( ? [Z2: produc2642885279816024434ropVar,Zs2: list_P8791008543742759928ropVar] :
( ( Xs3
= ( cons_P1504208554336013608ropVar @ Z2 @ Zs2 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_Pr7810381211709419518ar_nat @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_194_map__eq__Cons__conv,axiom,
! [F: f > produc2642885279816024434ropVar,Xs3: list_f,Y: produc2642885279816024434ropVar,Ys: list_P8791008543742759928ropVar] :
( ( ( map_f_2905954635146393971ropVar @ F @ Xs3 )
= ( cons_P1504208554336013608ropVar @ Y @ Ys ) )
= ( ? [Z2: f,Zs2: list_f] :
( ( Xs3
= ( cons_f @ Z2 @ Zs2 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_f_2905954635146393971ropVar @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_195_Cons__eq__map__conv,axiom,
! [X: multis3193088007478089820ropVar,Xs3: list_M6740372356978808802ropVar,F: nat > multis3193088007478089820ropVar,Ys: list_nat] :
( ( ( cons_M4277272395645347858ropVar @ X @ Xs3 )
= ( map_na2466558649495876678ropVar @ F @ Ys ) )
= ( ? [Z2: nat,Zs2: list_nat] :
( ( Ys
= ( cons_nat @ Z2 @ Zs2 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs3
= ( map_na2466558649495876678ropVar @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_196_Cons__eq__map__conv,axiom,
! [X: a,Xs3: list_a,F: nat > a,Ys: list_nat] :
( ( ( cons_a @ X @ Xs3 )
= ( map_nat_a @ F @ Ys ) )
= ( ? [Z2: nat,Zs2: list_nat] :
( ( Ys
= ( cons_nat @ Z2 @ Zs2 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs3
= ( map_nat_a @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_197_Cons__eq__map__conv,axiom,
! [X: f,Xs3: list_f,F: f > f,Ys: list_f] :
( ( ( cons_f @ X @ Xs3 )
= ( map_f_f @ F @ Ys ) )
= ( ? [Z2: f,Zs2: list_f] :
( ( Ys
= ( cons_f @ Z2 @ Zs2 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs3
= ( map_f_f @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_198_Cons__eq__map__conv,axiom,
! [X: f,Xs3: list_f,F: nat > f,Ys: list_nat] :
( ( ( cons_f @ X @ Xs3 )
= ( map_nat_f @ F @ Ys ) )
= ( ? [Z2: nat,Zs2: list_nat] :
( ( Ys
= ( cons_nat @ Z2 @ Zs2 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs3
= ( map_nat_f @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_199_Cons__eq__map__conv,axiom,
! [X: nat,Xs3: list_nat,F: f > nat,Ys: list_f] :
( ( ( cons_nat @ X @ Xs3 )
= ( map_f_nat @ F @ Ys ) )
= ( ? [Z2: f,Zs2: list_f] :
( ( Ys
= ( cons_f @ Z2 @ Zs2 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs3
= ( map_f_nat @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_200_Cons__eq__map__conv,axiom,
! [X: nat,Xs3: list_nat,F: nat > nat,Ys: list_nat] :
( ( ( cons_nat @ X @ Xs3 )
= ( map_nat_nat @ F @ Ys ) )
= ( ? [Z2: nat,Zs2: list_nat] :
( ( Ys
= ( cons_nat @ Z2 @ Zs2 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs3
= ( map_nat_nat @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_201_Cons__eq__map__conv,axiom,
! [X: multis3193088007478089820ropVar,Xs3: list_M6740372356978808802ropVar,F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,Ys: list_P8791008543742759928ropVar] :
( ( ( cons_M4277272395645347858ropVar @ X @ Xs3 )
= ( map_Pr3335389669906741166ropVar @ F @ Ys ) )
= ( ? [Z2: produc2642885279816024434ropVar,Zs2: list_P8791008543742759928ropVar] :
( ( Ys
= ( cons_P1504208554336013608ropVar @ Z2 @ Zs2 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs3
= ( map_Pr3335389669906741166ropVar @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_202_Cons__eq__map__conv,axiom,
! [X: f,Xs3: list_f,F: produc2642885279816024434ropVar > f,Ys: list_P8791008543742759928ropVar] :
( ( ( cons_f @ X @ Xs3 )
= ( map_Pr1064736048566318677pVar_f @ F @ Ys ) )
= ( ? [Z2: produc2642885279816024434ropVar,Zs2: list_P8791008543742759928ropVar] :
( ( Ys
= ( cons_P1504208554336013608ropVar @ Z2 @ Zs2 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs3
= ( map_Pr1064736048566318677pVar_f @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_203_Cons__eq__map__conv,axiom,
! [X: nat,Xs3: list_nat,F: produc2642885279816024434ropVar > nat,Ys: list_P8791008543742759928ropVar] :
( ( ( cons_nat @ X @ Xs3 )
= ( map_Pr7810381211709419518ar_nat @ F @ Ys ) )
= ( ? [Z2: produc2642885279816024434ropVar,Zs2: list_P8791008543742759928ropVar] :
( ( Ys
= ( cons_P1504208554336013608ropVar @ Z2 @ Zs2 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs3
= ( map_Pr7810381211709419518ar_nat @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_204_Cons__eq__map__conv,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar,F: f > produc2642885279816024434ropVar,Ys: list_f] :
( ( ( cons_P1504208554336013608ropVar @ X @ Xs3 )
= ( map_f_2905954635146393971ropVar @ F @ Ys ) )
= ( ? [Z2: f,Zs2: list_f] :
( ( Ys
= ( cons_f @ Z2 @ Zs2 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs3
= ( map_f_2905954635146393971ropVar @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_205_map__eq__Cons__D,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_nat,Y: multis3193088007478089820ropVar,Ys: list_M6740372356978808802ropVar] :
( ( ( map_na2466558649495876678ropVar @ F @ Xs3 )
= ( cons_M4277272395645347858ropVar @ Y @ Ys ) )
=> ? [Z3: nat,Zs3: list_nat] :
( ( Xs3
= ( cons_nat @ Z3 @ Zs3 ) )
& ( ( F @ Z3 )
= Y )
& ( ( map_na2466558649495876678ropVar @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_206_map__eq__Cons__D,axiom,
! [F: nat > a,Xs3: list_nat,Y: a,Ys: list_a] :
( ( ( map_nat_a @ F @ Xs3 )
= ( cons_a @ Y @ Ys ) )
=> ? [Z3: nat,Zs3: list_nat] :
( ( Xs3
= ( cons_nat @ Z3 @ Zs3 ) )
& ( ( F @ Z3 )
= Y )
& ( ( map_nat_a @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_207_map__eq__Cons__D,axiom,
! [F: f > f,Xs3: list_f,Y: f,Ys: list_f] :
( ( ( map_f_f @ F @ Xs3 )
= ( cons_f @ Y @ Ys ) )
=> ? [Z3: f,Zs3: list_f] :
( ( Xs3
= ( cons_f @ Z3 @ Zs3 ) )
& ( ( F @ Z3 )
= Y )
& ( ( map_f_f @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_208_map__eq__Cons__D,axiom,
! [F: nat > f,Xs3: list_nat,Y: f,Ys: list_f] :
( ( ( map_nat_f @ F @ Xs3 )
= ( cons_f @ Y @ Ys ) )
=> ? [Z3: nat,Zs3: list_nat] :
( ( Xs3
= ( cons_nat @ Z3 @ Zs3 ) )
& ( ( F @ Z3 )
= Y )
& ( ( map_nat_f @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_209_map__eq__Cons__D,axiom,
! [F: f > nat,Xs3: list_f,Y: nat,Ys: list_nat] :
( ( ( map_f_nat @ F @ Xs3 )
= ( cons_nat @ Y @ Ys ) )
=> ? [Z3: f,Zs3: list_f] :
( ( Xs3
= ( cons_f @ Z3 @ Zs3 ) )
& ( ( F @ Z3 )
= Y )
& ( ( map_f_nat @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_210_map__eq__Cons__D,axiom,
! [F: nat > nat,Xs3: list_nat,Y: nat,Ys: list_nat] :
( ( ( map_nat_nat @ F @ Xs3 )
= ( cons_nat @ Y @ Ys ) )
=> ? [Z3: nat,Zs3: list_nat] :
( ( Xs3
= ( cons_nat @ Z3 @ Zs3 ) )
& ( ( F @ Z3 )
= Y )
& ( ( map_nat_nat @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_211_map__eq__Cons__D,axiom,
! [F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,Xs3: list_P8791008543742759928ropVar,Y: multis3193088007478089820ropVar,Ys: list_M6740372356978808802ropVar] :
( ( ( map_Pr3335389669906741166ropVar @ F @ Xs3 )
= ( cons_M4277272395645347858ropVar @ Y @ Ys ) )
=> ? [Z3: produc2642885279816024434ropVar,Zs3: list_P8791008543742759928ropVar] :
( ( Xs3
= ( cons_P1504208554336013608ropVar @ Z3 @ Zs3 ) )
& ( ( F @ Z3 )
= Y )
& ( ( map_Pr3335389669906741166ropVar @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_212_map__eq__Cons__D,axiom,
! [F: produc2642885279816024434ropVar > f,Xs3: list_P8791008543742759928ropVar,Y: f,Ys: list_f] :
( ( ( map_Pr1064736048566318677pVar_f @ F @ Xs3 )
= ( cons_f @ Y @ Ys ) )
=> ? [Z3: produc2642885279816024434ropVar,Zs3: list_P8791008543742759928ropVar] :
( ( Xs3
= ( cons_P1504208554336013608ropVar @ Z3 @ Zs3 ) )
& ( ( F @ Z3 )
= Y )
& ( ( map_Pr1064736048566318677pVar_f @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_213_map__eq__Cons__D,axiom,
! [F: produc2642885279816024434ropVar > nat,Xs3: list_P8791008543742759928ropVar,Y: nat,Ys: list_nat] :
( ( ( map_Pr7810381211709419518ar_nat @ F @ Xs3 )
= ( cons_nat @ Y @ Ys ) )
=> ? [Z3: produc2642885279816024434ropVar,Zs3: list_P8791008543742759928ropVar] :
( ( Xs3
= ( cons_P1504208554336013608ropVar @ Z3 @ Zs3 ) )
& ( ( F @ Z3 )
= Y )
& ( ( map_Pr7810381211709419518ar_nat @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_214_map__eq__Cons__D,axiom,
! [F: f > produc2642885279816024434ropVar,Xs3: list_f,Y: produc2642885279816024434ropVar,Ys: list_P8791008543742759928ropVar] :
( ( ( map_f_2905954635146393971ropVar @ F @ Xs3 )
= ( cons_P1504208554336013608ropVar @ Y @ Ys ) )
=> ? [Z3: f,Zs3: list_f] :
( ( Xs3
= ( cons_f @ Z3 @ Zs3 ) )
& ( ( F @ Z3 )
= Y )
& ( ( map_f_2905954635146393971ropVar @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_215_Cons__eq__map__D,axiom,
! [X: multis3193088007478089820ropVar,Xs3: list_M6740372356978808802ropVar,F: nat > multis3193088007478089820ropVar,Ys: list_nat] :
( ( ( cons_M4277272395645347858ropVar @ X @ Xs3 )
= ( map_na2466558649495876678ropVar @ F @ Ys ) )
=> ? [Z3: nat,Zs3: list_nat] :
( ( Ys
= ( cons_nat @ Z3 @ Zs3 ) )
& ( X
= ( F @ Z3 ) )
& ( Xs3
= ( map_na2466558649495876678ropVar @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_216_Cons__eq__map__D,axiom,
! [X: a,Xs3: list_a,F: nat > a,Ys: list_nat] :
( ( ( cons_a @ X @ Xs3 )
= ( map_nat_a @ F @ Ys ) )
=> ? [Z3: nat,Zs3: list_nat] :
( ( Ys
= ( cons_nat @ Z3 @ Zs3 ) )
& ( X
= ( F @ Z3 ) )
& ( Xs3
= ( map_nat_a @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_217_Cons__eq__map__D,axiom,
! [X: f,Xs3: list_f,F: f > f,Ys: list_f] :
( ( ( cons_f @ X @ Xs3 )
= ( map_f_f @ F @ Ys ) )
=> ? [Z3: f,Zs3: list_f] :
( ( Ys
= ( cons_f @ Z3 @ Zs3 ) )
& ( X
= ( F @ Z3 ) )
& ( Xs3
= ( map_f_f @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_218_Cons__eq__map__D,axiom,
! [X: f,Xs3: list_f,F: nat > f,Ys: list_nat] :
( ( ( cons_f @ X @ Xs3 )
= ( map_nat_f @ F @ Ys ) )
=> ? [Z3: nat,Zs3: list_nat] :
( ( Ys
= ( cons_nat @ Z3 @ Zs3 ) )
& ( X
= ( F @ Z3 ) )
& ( Xs3
= ( map_nat_f @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_219_Cons__eq__map__D,axiom,
! [X: nat,Xs3: list_nat,F: f > nat,Ys: list_f] :
( ( ( cons_nat @ X @ Xs3 )
= ( map_f_nat @ F @ Ys ) )
=> ? [Z3: f,Zs3: list_f] :
( ( Ys
= ( cons_f @ Z3 @ Zs3 ) )
& ( X
= ( F @ Z3 ) )
& ( Xs3
= ( map_f_nat @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_220_Cons__eq__map__D,axiom,
! [X: nat,Xs3: list_nat,F: nat > nat,Ys: list_nat] :
( ( ( cons_nat @ X @ Xs3 )
= ( map_nat_nat @ F @ Ys ) )
=> ? [Z3: nat,Zs3: list_nat] :
( ( Ys
= ( cons_nat @ Z3 @ Zs3 ) )
& ( X
= ( F @ Z3 ) )
& ( Xs3
= ( map_nat_nat @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_221_Cons__eq__map__D,axiom,
! [X: multis3193088007478089820ropVar,Xs3: list_M6740372356978808802ropVar,F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,Ys: list_P8791008543742759928ropVar] :
( ( ( cons_M4277272395645347858ropVar @ X @ Xs3 )
= ( map_Pr3335389669906741166ropVar @ F @ Ys ) )
=> ? [Z3: produc2642885279816024434ropVar,Zs3: list_P8791008543742759928ropVar] :
( ( Ys
= ( cons_P1504208554336013608ropVar @ Z3 @ Zs3 ) )
& ( X
= ( F @ Z3 ) )
& ( Xs3
= ( map_Pr3335389669906741166ropVar @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_222_Cons__eq__map__D,axiom,
! [X: f,Xs3: list_f,F: produc2642885279816024434ropVar > f,Ys: list_P8791008543742759928ropVar] :
( ( ( cons_f @ X @ Xs3 )
= ( map_Pr1064736048566318677pVar_f @ F @ Ys ) )
=> ? [Z3: produc2642885279816024434ropVar,Zs3: list_P8791008543742759928ropVar] :
( ( Ys
= ( cons_P1504208554336013608ropVar @ Z3 @ Zs3 ) )
& ( X
= ( F @ Z3 ) )
& ( Xs3
= ( map_Pr1064736048566318677pVar_f @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_223_Cons__eq__map__D,axiom,
! [X: nat,Xs3: list_nat,F: produc2642885279816024434ropVar > nat,Ys: list_P8791008543742759928ropVar] :
( ( ( cons_nat @ X @ Xs3 )
= ( map_Pr7810381211709419518ar_nat @ F @ Ys ) )
=> ? [Z3: produc2642885279816024434ropVar,Zs3: list_P8791008543742759928ropVar] :
( ( Ys
= ( cons_P1504208554336013608ropVar @ Z3 @ Zs3 ) )
& ( X
= ( F @ Z3 ) )
& ( Xs3
= ( map_Pr7810381211709419518ar_nat @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_224_Cons__eq__map__D,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar,F: f > produc2642885279816024434ropVar,Ys: list_f] :
( ( ( cons_P1504208554336013608ropVar @ X @ Xs3 )
= ( map_f_2905954635146393971ropVar @ F @ Ys ) )
=> ? [Z3: f,Zs3: list_f] :
( ( Ys
= ( cons_f @ Z3 @ Zs3 ) )
& ( X
= ( F @ Z3 ) )
& ( Xs3
= ( map_f_2905954635146393971ropVar @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_225_list_Osimps_I9_J,axiom,
! [F: f > f,X21: f,X22: list_f] :
( ( map_f_f @ F @ ( cons_f @ X21 @ X22 ) )
= ( cons_f @ ( F @ X21 ) @ ( map_f_f @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_226_list_Osimps_I9_J,axiom,
! [F: f > nat,X21: f,X22: list_f] :
( ( map_f_nat @ F @ ( cons_f @ X21 @ X22 ) )
= ( cons_nat @ ( F @ X21 ) @ ( map_f_nat @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_227_list_Osimps_I9_J,axiom,
! [F: nat > multis3193088007478089820ropVar,X21: nat,X22: list_nat] :
( ( map_na2466558649495876678ropVar @ F @ ( cons_nat @ X21 @ X22 ) )
= ( cons_M4277272395645347858ropVar @ ( F @ X21 ) @ ( map_na2466558649495876678ropVar @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_228_list_Osimps_I9_J,axiom,
! [F: nat > a,X21: nat,X22: list_nat] :
( ( map_nat_a @ F @ ( cons_nat @ X21 @ X22 ) )
= ( cons_a @ ( F @ X21 ) @ ( map_nat_a @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_229_list_Osimps_I9_J,axiom,
! [F: nat > f,X21: nat,X22: list_nat] :
( ( map_nat_f @ F @ ( cons_nat @ X21 @ X22 ) )
= ( cons_f @ ( F @ X21 ) @ ( map_nat_f @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_230_list_Osimps_I9_J,axiom,
! [F: nat > nat,X21: nat,X22: list_nat] :
( ( map_nat_nat @ F @ ( cons_nat @ X21 @ X22 ) )
= ( cons_nat @ ( F @ X21 ) @ ( map_nat_nat @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_231_list_Osimps_I9_J,axiom,
! [F: f > produc2642885279816024434ropVar,X21: f,X22: list_f] :
( ( map_f_2905954635146393971ropVar @ F @ ( cons_f @ X21 @ X22 ) )
= ( cons_P1504208554336013608ropVar @ ( F @ X21 ) @ ( map_f_2905954635146393971ropVar @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_232_list_Osimps_I9_J,axiom,
! [F: nat > produc2642885279816024434ropVar,X21: nat,X22: list_nat] :
( ( map_na2145702811007361372ropVar @ F @ ( cons_nat @ X21 @ X22 ) )
= ( cons_P1504208554336013608ropVar @ ( F @ X21 ) @ ( map_na2145702811007361372ropVar @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_233_list_Osimps_I9_J,axiom,
! [F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,X21: produc2642885279816024434ropVar,X22: list_P8791008543742759928ropVar] :
( ( map_Pr3335389669906741166ropVar @ F @ ( cons_P1504208554336013608ropVar @ X21 @ X22 ) )
= ( cons_M4277272395645347858ropVar @ ( F @ X21 ) @ ( map_Pr3335389669906741166ropVar @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_234_list_Osimps_I9_J,axiom,
! [F: produc2642885279816024434ropVar > f,X21: produc2642885279816024434ropVar,X22: list_P8791008543742759928ropVar] :
( ( map_Pr1064736048566318677pVar_f @ F @ ( cons_P1504208554336013608ropVar @ X21 @ X22 ) )
= ( cons_f @ ( F @ X21 ) @ ( map_Pr1064736048566318677pVar_f @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_235_list_Omap__cong,axiom,
! [X: list_P8791008543742759928ropVar,Ya: list_P8791008543742759928ropVar,F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,G: produc2642885279816024434ropVar > multis3193088007478089820ropVar] :
( ( X = Ya )
=> ( ! [Z3: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ Z3 @ ( set_Pr3946994337432900359ropVar @ Ya ) )
=> ( ( F @ Z3 )
= ( G @ Z3 ) ) )
=> ( ( map_Pr3335389669906741166ropVar @ F @ X )
= ( map_Pr3335389669906741166ropVar @ G @ Ya ) ) ) ) ).
% list.map_cong
thf(fact_236_list_Omap__cong,axiom,
! [X: list_nat,Ya: list_nat,F: nat > multis3193088007478089820ropVar,G: nat > multis3193088007478089820ropVar] :
( ( X = Ya )
=> ( ! [Z3: nat] :
( ( member_nat @ Z3 @ ( set_nat2 @ Ya ) )
=> ( ( F @ Z3 )
= ( G @ Z3 ) ) )
=> ( ( map_na2466558649495876678ropVar @ F @ X )
= ( map_na2466558649495876678ropVar @ G @ Ya ) ) ) ) ).
% list.map_cong
thf(fact_237_list_Omap__cong,axiom,
! [X: list_nat,Ya: list_nat,F: nat > a,G: nat > a] :
( ( X = Ya )
=> ( ! [Z3: nat] :
( ( member_nat @ Z3 @ ( set_nat2 @ Ya ) )
=> ( ( F @ Z3 )
= ( G @ Z3 ) ) )
=> ( ( map_nat_a @ F @ X )
= ( map_nat_a @ G @ Ya ) ) ) ) ).
% list.map_cong
thf(fact_238_list_Omap__cong,axiom,
! [X: list_nat,Ya: list_nat,F: nat > nat,G: nat > nat] :
( ( X = Ya )
=> ( ! [Z3: nat] :
( ( member_nat @ Z3 @ ( set_nat2 @ Ya ) )
=> ( ( F @ Z3 )
= ( G @ Z3 ) ) )
=> ( ( map_nat_nat @ F @ X )
= ( map_nat_nat @ G @ Ya ) ) ) ) ).
% list.map_cong
thf(fact_239_list_Omap__cong,axiom,
! [X: list_nat,Ya: list_nat,F: nat > produc2642885279816024434ropVar,G: nat > produc2642885279816024434ropVar] :
( ( X = Ya )
=> ( ! [Z3: nat] :
( ( member_nat @ Z3 @ ( set_nat2 @ Ya ) )
=> ( ( F @ Z3 )
= ( G @ Z3 ) ) )
=> ( ( map_na2145702811007361372ropVar @ F @ X )
= ( map_na2145702811007361372ropVar @ G @ Ya ) ) ) ) ).
% list.map_cong
thf(fact_240_list_Omap__cong0,axiom,
! [X: list_P8791008543742759928ropVar,F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,G: produc2642885279816024434ropVar > multis3193088007478089820ropVar] :
( ! [Z3: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ Z3 @ ( set_Pr3946994337432900359ropVar @ X ) )
=> ( ( F @ Z3 )
= ( G @ Z3 ) ) )
=> ( ( map_Pr3335389669906741166ropVar @ F @ X )
= ( map_Pr3335389669906741166ropVar @ G @ X ) ) ) ).
% list.map_cong0
thf(fact_241_list_Omap__cong0,axiom,
! [X: list_nat,F: nat > multis3193088007478089820ropVar,G: nat > multis3193088007478089820ropVar] :
( ! [Z3: nat] :
( ( member_nat @ Z3 @ ( set_nat2 @ X ) )
=> ( ( F @ Z3 )
= ( G @ Z3 ) ) )
=> ( ( map_na2466558649495876678ropVar @ F @ X )
= ( map_na2466558649495876678ropVar @ G @ X ) ) ) ).
% list.map_cong0
thf(fact_242_list_Omap__cong0,axiom,
! [X: list_nat,F: nat > a,G: nat > a] :
( ! [Z3: nat] :
( ( member_nat @ Z3 @ ( set_nat2 @ X ) )
=> ( ( F @ Z3 )
= ( G @ Z3 ) ) )
=> ( ( map_nat_a @ F @ X )
= ( map_nat_a @ G @ X ) ) ) ).
% list.map_cong0
thf(fact_243_list_Omap__cong0,axiom,
! [X: list_nat,F: nat > nat,G: nat > nat] :
( ! [Z3: nat] :
( ( member_nat @ Z3 @ ( set_nat2 @ X ) )
=> ( ( F @ Z3 )
= ( G @ Z3 ) ) )
=> ( ( map_nat_nat @ F @ X )
= ( map_nat_nat @ G @ X ) ) ) ).
% list.map_cong0
thf(fact_244_list_Omap__cong0,axiom,
! [X: list_nat,F: nat > produc2642885279816024434ropVar,G: nat > produc2642885279816024434ropVar] :
( ! [Z3: nat] :
( ( member_nat @ Z3 @ ( set_nat2 @ X ) )
=> ( ( F @ Z3 )
= ( G @ Z3 ) ) )
=> ( ( map_na2145702811007361372ropVar @ F @ X )
= ( map_na2145702811007361372ropVar @ G @ X ) ) ) ).
% list.map_cong0
thf(fact_245_list_Oinj__map__strong,axiom,
! [X: list_P8791008543742759928ropVar,Xa: list_P8791008543742759928ropVar,F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,Fa: produc2642885279816024434ropVar > multis3193088007478089820ropVar] :
( ! [Z3: produc2642885279816024434ropVar,Za: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ Z3 @ ( set_Pr3946994337432900359ropVar @ X ) )
=> ( ( member9210975342120487067ropVar @ Za @ ( set_Pr3946994337432900359ropVar @ Xa ) )
=> ( ( ( F @ Z3 )
= ( Fa @ Za ) )
=> ( Z3 = Za ) ) ) )
=> ( ( ( map_Pr3335389669906741166ropVar @ F @ X )
= ( map_Pr3335389669906741166ropVar @ Fa @ Xa ) )
=> ( X = Xa ) ) ) ).
% list.inj_map_strong
thf(fact_246_list_Oinj__map__strong,axiom,
! [X: list_nat,Xa: list_nat,F: nat > multis3193088007478089820ropVar,Fa: nat > multis3193088007478089820ropVar] :
( ! [Z3: nat,Za: nat] :
( ( member_nat @ Z3 @ ( set_nat2 @ X ) )
=> ( ( member_nat @ Za @ ( set_nat2 @ Xa ) )
=> ( ( ( F @ Z3 )
= ( Fa @ Za ) )
=> ( Z3 = Za ) ) ) )
=> ( ( ( map_na2466558649495876678ropVar @ F @ X )
= ( map_na2466558649495876678ropVar @ Fa @ Xa ) )
=> ( X = Xa ) ) ) ).
% list.inj_map_strong
thf(fact_247_list_Oinj__map__strong,axiom,
! [X: list_nat,Xa: list_nat,F: nat > a,Fa: nat > a] :
( ! [Z3: nat,Za: nat] :
( ( member_nat @ Z3 @ ( set_nat2 @ X ) )
=> ( ( member_nat @ Za @ ( set_nat2 @ Xa ) )
=> ( ( ( F @ Z3 )
= ( Fa @ Za ) )
=> ( Z3 = Za ) ) ) )
=> ( ( ( map_nat_a @ F @ X )
= ( map_nat_a @ Fa @ Xa ) )
=> ( X = Xa ) ) ) ).
% list.inj_map_strong
thf(fact_248_list_Oinj__map__strong,axiom,
! [X: list_nat,Xa: list_nat,F: nat > nat,Fa: nat > nat] :
( ! [Z3: nat,Za: nat] :
( ( member_nat @ Z3 @ ( set_nat2 @ X ) )
=> ( ( member_nat @ Za @ ( set_nat2 @ Xa ) )
=> ( ( ( F @ Z3 )
= ( Fa @ Za ) )
=> ( Z3 = Za ) ) ) )
=> ( ( ( map_nat_nat @ F @ X )
= ( map_nat_nat @ Fa @ Xa ) )
=> ( X = Xa ) ) ) ).
% list.inj_map_strong
thf(fact_249_list_Oinj__map__strong,axiom,
! [X: list_nat,Xa: list_nat,F: nat > produc2642885279816024434ropVar,Fa: nat > produc2642885279816024434ropVar] :
( ! [Z3: nat,Za: nat] :
( ( member_nat @ Z3 @ ( set_nat2 @ X ) )
=> ( ( member_nat @ Za @ ( set_nat2 @ Xa ) )
=> ( ( ( F @ Z3 )
= ( Fa @ Za ) )
=> ( Z3 = Za ) ) ) )
=> ( ( ( map_na2145702811007361372ropVar @ F @ X )
= ( map_na2145702811007361372ropVar @ Fa @ Xa ) )
=> ( X = Xa ) ) ) ).
% list.inj_map_strong
thf(fact_250_list_Omap__ident__strong,axiom,
! [T: list_P6988024003011616557iset_a,F: produc6518373309651786023iset_a > produc6518373309651786023iset_a] :
( ! [Z3: produc6518373309651786023iset_a] :
( ( member5199237121806060112iset_a @ Z3 @ ( set_Pr5550698219922361532iset_a @ T ) )
=> ( ( F @ Z3 )
= Z3 ) )
=> ( ( map_Pr5905680810515755012iset_a @ F @ T )
= T ) ) ).
% list.map_ident_strong
thf(fact_251_list_Omap__ident__strong,axiom,
! [T: list_P1396940483166286381od_a_a,F: product_prod_a_a > product_prod_a_a] :
( ! [Z3: product_prod_a_a] :
( ( member1426531477525435216od_a_a @ Z3 @ ( set_Product_prod_a_a2 @ T ) )
=> ( ( F @ Z3 )
= Z3 ) )
=> ( ( map_Pr7904243085458786820od_a_a @ F @ T )
= T ) ) ).
% list.map_ident_strong
thf(fact_252_list_Omap__ident__strong,axiom,
! [T: list_M6740372356978808802ropVar,F: multis3193088007478089820ropVar > multis3193088007478089820ropVar] :
( ! [Z3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ Z3 @ ( set_Mu146256361055586289ropVar @ T ) )
=> ( ( F @ Z3 )
= Z3 ) )
=> ( ( map_Mu2265489581466636612ropVar @ F @ T )
= T ) ) ).
% list.map_ident_strong
thf(fact_253_list_Omap__ident__strong,axiom,
! [T: list_P8791008543742759928ropVar,F: produc2642885279816024434ropVar > produc2642885279816024434ropVar] :
( ! [Z3: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ Z3 @ ( set_Pr3946994337432900359ropVar @ T ) )
=> ( ( F @ Z3 )
= Z3 ) )
=> ( ( map_Pr3565048146863404228ropVar @ F @ T )
= T ) ) ).
% list.map_ident_strong
thf(fact_254_list_Omap__ident__strong,axiom,
! [T: list_list_f,F: list_f > list_f] :
( ! [Z3: list_f] :
( ( member_list_f @ Z3 @ ( set_list_f2 @ T ) )
=> ( ( F @ Z3 )
= Z3 ) )
=> ( ( map_list_f_list_f @ F @ T )
= T ) ) ).
% list.map_ident_strong
thf(fact_255_list_Omap__ident__strong,axiom,
! [T: list_nat,F: nat > nat] :
( ! [Z3: nat] :
( ( member_nat @ Z3 @ ( set_nat2 @ T ) )
=> ( ( F @ Z3 )
= Z3 ) )
=> ( ( map_nat_nat @ F @ T )
= T ) ) ).
% list.map_ident_strong
thf(fact_256_list_Omap__ident__strong,axiom,
! [T: list_f,F: f > f] :
( ! [Z3: f] :
( ( member_f @ Z3 @ ( set_f2 @ T ) )
=> ( ( F @ Z3 )
= Z3 ) )
=> ( ( map_f_f @ F @ T )
= T ) ) ).
% list.map_ident_strong
thf(fact_257_list_Omap__ident__strong,axiom,
! [T: list_a,F: a > a] :
( ! [Z3: a] :
( ( member_a @ Z3 @ ( set_a2 @ T ) )
=> ( ( F @ Z3 )
= Z3 ) )
=> ( ( map_a_a @ F @ T )
= T ) ) ).
% list.map_ident_strong
thf(fact_258_map__ext,axiom,
! [Xs3: list_P8791008543742759928ropVar,F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,G: produc2642885279816024434ropVar > multis3193088007478089820ropVar] :
( ! [X4: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X4 @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
=> ( ( F @ X4 )
= ( G @ X4 ) ) )
=> ( ( map_Pr3335389669906741166ropVar @ F @ Xs3 )
= ( map_Pr3335389669906741166ropVar @ G @ Xs3 ) ) ) ).
% map_ext
thf(fact_259_map__ext,axiom,
! [Xs3: list_nat,F: nat > multis3193088007478089820ropVar,G: nat > multis3193088007478089820ropVar] :
( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Xs3 ) )
=> ( ( F @ X4 )
= ( G @ X4 ) ) )
=> ( ( map_na2466558649495876678ropVar @ F @ Xs3 )
= ( map_na2466558649495876678ropVar @ G @ Xs3 ) ) ) ).
% map_ext
thf(fact_260_map__ext,axiom,
! [Xs3: list_nat,F: nat > a,G: nat > a] :
( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Xs3 ) )
=> ( ( F @ X4 )
= ( G @ X4 ) ) )
=> ( ( map_nat_a @ F @ Xs3 )
= ( map_nat_a @ G @ Xs3 ) ) ) ).
% map_ext
thf(fact_261_map__ext,axiom,
! [Xs3: list_nat,F: nat > nat,G: nat > nat] :
( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Xs3 ) )
=> ( ( F @ X4 )
= ( G @ X4 ) ) )
=> ( ( map_nat_nat @ F @ Xs3 )
= ( map_nat_nat @ G @ Xs3 ) ) ) ).
% map_ext
thf(fact_262_map__ext,axiom,
! [Xs3: list_nat,F: nat > produc2642885279816024434ropVar,G: nat > produc2642885279816024434ropVar] :
( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Xs3 ) )
=> ( ( F @ X4 )
= ( G @ X4 ) ) )
=> ( ( map_na2145702811007361372ropVar @ F @ Xs3 )
= ( map_na2145702811007361372ropVar @ G @ Xs3 ) ) ) ).
% map_ext
thf(fact_263_map__idI,axiom,
! [Xs3: list_P6988024003011616557iset_a,F: produc6518373309651786023iset_a > produc6518373309651786023iset_a] :
( ! [X4: produc6518373309651786023iset_a] :
( ( member5199237121806060112iset_a @ X4 @ ( set_Pr5550698219922361532iset_a @ Xs3 ) )
=> ( ( F @ X4 )
= X4 ) )
=> ( ( map_Pr5905680810515755012iset_a @ F @ Xs3 )
= Xs3 ) ) ).
% map_idI
thf(fact_264_map__idI,axiom,
! [Xs3: list_P1396940483166286381od_a_a,F: product_prod_a_a > product_prod_a_a] :
( ! [X4: product_prod_a_a] :
( ( member1426531477525435216od_a_a @ X4 @ ( set_Product_prod_a_a2 @ Xs3 ) )
=> ( ( F @ X4 )
= X4 ) )
=> ( ( map_Pr7904243085458786820od_a_a @ F @ Xs3 )
= Xs3 ) ) ).
% map_idI
thf(fact_265_map__idI,axiom,
! [Xs3: list_M6740372356978808802ropVar,F: multis3193088007478089820ropVar > multis3193088007478089820ropVar] :
( ! [X4: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X4 @ ( set_Mu146256361055586289ropVar @ Xs3 ) )
=> ( ( F @ X4 )
= X4 ) )
=> ( ( map_Mu2265489581466636612ropVar @ F @ Xs3 )
= Xs3 ) ) ).
% map_idI
thf(fact_266_map__idI,axiom,
! [Xs3: list_P8791008543742759928ropVar,F: produc2642885279816024434ropVar > produc2642885279816024434ropVar] :
( ! [X4: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X4 @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
=> ( ( F @ X4 )
= X4 ) )
=> ( ( map_Pr3565048146863404228ropVar @ F @ Xs3 )
= Xs3 ) ) ).
% map_idI
thf(fact_267_map__idI,axiom,
! [Xs3: list_list_f,F: list_f > list_f] :
( ! [X4: list_f] :
( ( member_list_f @ X4 @ ( set_list_f2 @ Xs3 ) )
=> ( ( F @ X4 )
= X4 ) )
=> ( ( map_list_f_list_f @ F @ Xs3 )
= Xs3 ) ) ).
% map_idI
thf(fact_268_map__idI,axiom,
! [Xs3: list_nat,F: nat > nat] :
( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Xs3 ) )
=> ( ( F @ X4 )
= X4 ) )
=> ( ( map_nat_nat @ F @ Xs3 )
= Xs3 ) ) ).
% map_idI
thf(fact_269_map__idI,axiom,
! [Xs3: list_f,F: f > f] :
( ! [X4: f] :
( ( member_f @ X4 @ ( set_f2 @ Xs3 ) )
=> ( ( F @ X4 )
= X4 ) )
=> ( ( map_f_f @ F @ Xs3 )
= Xs3 ) ) ).
% map_idI
thf(fact_270_map__idI,axiom,
! [Xs3: list_a,F: a > a] :
( ! [X4: a] :
( ( member_a @ X4 @ ( set_a2 @ Xs3 ) )
=> ( ( F @ X4 )
= X4 ) )
=> ( ( map_a_a @ F @ Xs3 )
= Xs3 ) ) ).
% map_idI
thf(fact_271_map__cong,axiom,
! [Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar,F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,G: produc2642885279816024434ropVar > multis3193088007478089820ropVar] :
( ( Xs3 = Ys )
=> ( ! [X4: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X4 @ ( set_Pr3946994337432900359ropVar @ Ys ) )
=> ( ( F @ X4 )
= ( G @ X4 ) ) )
=> ( ( map_Pr3335389669906741166ropVar @ F @ Xs3 )
= ( map_Pr3335389669906741166ropVar @ G @ Ys ) ) ) ) ).
% map_cong
thf(fact_272_map__cong,axiom,
! [Xs3: list_nat,Ys: list_nat,F: nat > multis3193088007478089820ropVar,G: nat > multis3193088007478089820ropVar] :
( ( Xs3 = Ys )
=> ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Ys ) )
=> ( ( F @ X4 )
= ( G @ X4 ) ) )
=> ( ( map_na2466558649495876678ropVar @ F @ Xs3 )
= ( map_na2466558649495876678ropVar @ G @ Ys ) ) ) ) ).
% map_cong
thf(fact_273_map__cong,axiom,
! [Xs3: list_nat,Ys: list_nat,F: nat > a,G: nat > a] :
( ( Xs3 = Ys )
=> ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Ys ) )
=> ( ( F @ X4 )
= ( G @ X4 ) ) )
=> ( ( map_nat_a @ F @ Xs3 )
= ( map_nat_a @ G @ Ys ) ) ) ) ).
% map_cong
thf(fact_274_map__cong,axiom,
! [Xs3: list_nat,Ys: list_nat,F: nat > nat,G: nat > nat] :
( ( Xs3 = Ys )
=> ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Ys ) )
=> ( ( F @ X4 )
= ( G @ X4 ) ) )
=> ( ( map_nat_nat @ F @ Xs3 )
= ( map_nat_nat @ G @ Ys ) ) ) ) ).
% map_cong
thf(fact_275_map__cong,axiom,
! [Xs3: list_nat,Ys: list_nat,F: nat > produc2642885279816024434ropVar,G: nat > produc2642885279816024434ropVar] :
( ( Xs3 = Ys )
=> ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Ys ) )
=> ( ( F @ X4 )
= ( G @ X4 ) ) )
=> ( ( map_na2145702811007361372ropVar @ F @ Xs3 )
= ( map_na2145702811007361372ropVar @ G @ Ys ) ) ) ) ).
% map_cong
thf(fact_276_ex__map__conv,axiom,
! [Ys: list_M6740372356978808802ropVar,F: nat > multis3193088007478089820ropVar] :
( ( ? [Xs: list_nat] :
( Ys
= ( map_na2466558649495876678ropVar @ F @ Xs ) ) )
= ( ! [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ ( set_Mu146256361055586289ropVar @ Ys ) )
=> ? [Y2: nat] :
( X3
= ( F @ Y2 ) ) ) ) ) ).
% ex_map_conv
thf(fact_277_ex__map__conv,axiom,
! [Ys: list_M6740372356978808802ropVar,F: produc2642885279816024434ropVar > multis3193088007478089820ropVar] :
( ( ? [Xs: list_P8791008543742759928ropVar] :
( Ys
= ( map_Pr3335389669906741166ropVar @ F @ Xs ) ) )
= ( ! [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ ( set_Mu146256361055586289ropVar @ Ys ) )
=> ? [Y2: produc2642885279816024434ropVar] :
( X3
= ( F @ Y2 ) ) ) ) ) ).
% ex_map_conv
thf(fact_278_ex__map__conv,axiom,
! [Ys: list_P8791008543742759928ropVar,F: nat > produc2642885279816024434ropVar] :
( ( ? [Xs: list_nat] :
( Ys
= ( map_na2145702811007361372ropVar @ F @ Xs ) ) )
= ( ! [X3: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X3 @ ( set_Pr3946994337432900359ropVar @ Ys ) )
=> ? [Y2: nat] :
( X3
= ( F @ Y2 ) ) ) ) ) ).
% ex_map_conv
thf(fact_279_ex__map__conv,axiom,
! [Ys: list_nat,F: nat > nat] :
( ( ? [Xs: list_nat] :
( Ys
= ( map_nat_nat @ F @ Xs ) ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Ys ) )
=> ? [Y2: nat] :
( X3
= ( F @ Y2 ) ) ) ) ) ).
% ex_map_conv
thf(fact_280_ex__map__conv,axiom,
! [Ys: list_a,F: nat > a] :
( ( ? [Xs: list_nat] :
( Ys
= ( map_nat_a @ F @ Xs ) ) )
= ( ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Ys ) )
=> ? [Y2: nat] :
( X3
= ( F @ Y2 ) ) ) ) ) ).
% ex_map_conv
thf(fact_281_Cons__eq__appendI,axiom,
! [X: f,Xs1: list_f,Ys: list_f,Xs3: list_f,Zs: list_f] :
( ( ( cons_f @ X @ Xs1 )
= Ys )
=> ( ( Xs3
= ( append_f @ Xs1 @ Zs ) )
=> ( ( cons_f @ X @ Xs3 )
= ( append_f @ Ys @ Zs ) ) ) ) ).
% Cons_eq_appendI
thf(fact_282_Cons__eq__appendI,axiom,
! [X: nat,Xs1: list_nat,Ys: list_nat,Xs3: list_nat,Zs: list_nat] :
( ( ( cons_nat @ X @ Xs1 )
= Ys )
=> ( ( Xs3
= ( append_nat @ Xs1 @ Zs ) )
=> ( ( cons_nat @ X @ Xs3 )
= ( append_nat @ Ys @ Zs ) ) ) ) ).
% Cons_eq_appendI
thf(fact_283_Cons__eq__appendI,axiom,
! [X: produc2642885279816024434ropVar,Xs1: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar,Xs3: list_P8791008543742759928ropVar,Zs: list_P8791008543742759928ropVar] :
( ( ( cons_P1504208554336013608ropVar @ X @ Xs1 )
= Ys )
=> ( ( Xs3
= ( append4352292717583037453ropVar @ Xs1 @ Zs ) )
=> ( ( cons_P1504208554336013608ropVar @ X @ Xs3 )
= ( append4352292717583037453ropVar @ Ys @ Zs ) ) ) ) ).
% Cons_eq_appendI
thf(fact_284_append__Cons,axiom,
! [X: f,Xs3: list_f,Ys: list_f] :
( ( append_f @ ( cons_f @ X @ Xs3 ) @ Ys )
= ( cons_f @ X @ ( append_f @ Xs3 @ Ys ) ) ) ).
% append_Cons
thf(fact_285_append__Cons,axiom,
! [X: nat,Xs3: list_nat,Ys: list_nat] :
( ( append_nat @ ( cons_nat @ X @ Xs3 ) @ Ys )
= ( cons_nat @ X @ ( append_nat @ Xs3 @ Ys ) ) ) ).
% append_Cons
thf(fact_286_append__Cons,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar] :
( ( append4352292717583037453ropVar @ ( cons_P1504208554336013608ropVar @ X @ Xs3 ) @ Ys )
= ( cons_P1504208554336013608ropVar @ X @ ( append4352292717583037453ropVar @ Xs3 @ Ys ) ) ) ).
% append_Cons
thf(fact_287_ms__encoder_Oformula16__def,axiom,
! [Enc_False: nat,Enc_True: nat,Enc_pos: multis3193088007478089820ropVar > nat,Enc_neg: multis3193088007478089820ropVar > nat,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_impl: multis3193088007478089820ropVar > nat > nat,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_all: list_M6740372356978808802ropVar > nat,Enc_conj: list_nat > nat,Eval: ( multis3193088007478089820ropVar > $o ) > nat > $o,Cs: nat > nat > $o,Cns: nat > nat > $o,N: nat,M: nat] :
( ( multis4476563104974320119er_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis103654530569517143016_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Cs @ Cns @ N @ M )
= ( cons_nat @ ( Enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ N ) ) ) @ ( multis902447301359355274115_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M ) ) ) ) ).
% ms_encoder.formula16_def
thf(fact_288_ms__encoder_Oformula16__def,axiom,
! [Enc_False: produc2642885279816024434ropVar,Enc_True: produc2642885279816024434ropVar,Enc_pos: multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_neg: multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_impl: multis3193088007478089820ropVar > produc2642885279816024434ropVar > produc2642885279816024434ropVar,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_not_all: list_M6740372356978808802ropVar > produc2642885279816024434ropVar,Enc_conj: list_P8791008543742759928ropVar > produc2642885279816024434ropVar,Eval: ( multis3193088007478089820ropVar > $o ) > produc2642885279816024434ropVar > $o,Cs: nat > nat > $o,Cns: nat > nat > $o,N: nat,M: nat] :
( ( multis8181102237825478411ropVar @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis7741638927476898652ropVar @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Cs @ Cns @ N @ M )
= ( cons_P1504208554336013608ropVar @ ( Enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ N ) ) ) @ ( multis5595896195939027229ropVar @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M ) ) ) ) ).
% ms_encoder.formula16_def
thf(fact_289_ms__encoder_Oformula16__def,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,Cns: nat > nat > $o,N: nat,M: nat] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis4897360769916157165la16_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Cs @ Cns @ N @ M )
= ( cons_f @ ( Enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ N ) ) ) @ ( multis7684816351888833198la15_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M ) ) ) ) ).
% ms_encoder.formula16_def
thf(fact_290_split__list__first__prop__iff,axiom,
! [Xs3: list_list_f,P: list_f > $o] :
( ( ? [X3: list_f] :
( ( member_list_f @ X3 @ ( set_list_f2 @ Xs3 ) )
& ( P @ X3 ) ) )
= ( ? [Ys2: list_list_f,X3: list_f] :
( ? [Zs2: list_list_f] :
( Xs3
= ( append_list_f @ Ys2 @ ( cons_list_f @ X3 @ Zs2 ) ) )
& ( P @ X3 )
& ! [Y2: list_f] :
( ( member_list_f @ Y2 @ ( set_list_f2 @ Ys2 ) )
=> ~ ( P @ Y2 ) ) ) ) ) ).
% split_list_first_prop_iff
thf(fact_291_split__list__first__prop__iff,axiom,
! [Xs3: list_a,P: a > $o] :
( ( ? [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Xs3 ) )
& ( P @ X3 ) ) )
= ( ? [Ys2: list_a,X3: a] :
( ? [Zs2: list_a] :
( Xs3
= ( append_a @ Ys2 @ ( cons_a @ X3 @ Zs2 ) ) )
& ( P @ X3 )
& ! [Y2: a] :
( ( member_a @ Y2 @ ( set_a2 @ Ys2 ) )
=> ~ ( P @ Y2 ) ) ) ) ) ).
% split_list_first_prop_iff
thf(fact_292_split__list__first__prop__iff,axiom,
! [Xs3: list_f,P: f > $o] :
( ( ? [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Xs3 ) )
& ( P @ X3 ) ) )
= ( ? [Ys2: list_f,X3: f] :
( ? [Zs2: list_f] :
( Xs3
= ( append_f @ Ys2 @ ( cons_f @ X3 @ Zs2 ) ) )
& ( P @ X3 )
& ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ Ys2 ) )
=> ~ ( P @ Y2 ) ) ) ) ) ).
% split_list_first_prop_iff
thf(fact_293_split__list__first__prop__iff,axiom,
! [Xs3: list_nat,P: nat > $o] :
( ( ? [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs3 ) )
& ( P @ X3 ) ) )
= ( ? [Ys2: list_nat,X3: nat] :
( ? [Zs2: list_nat] :
( Xs3
= ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs2 ) ) )
& ( P @ X3 )
& ! [Y2: nat] :
( ( member_nat @ Y2 @ ( set_nat2 @ Ys2 ) )
=> ~ ( P @ Y2 ) ) ) ) ) ).
% split_list_first_prop_iff
thf(fact_294_split__list__first__prop__iff,axiom,
! [Xs3: list_P8791008543742759928ropVar,P: produc2642885279816024434ropVar > $o] :
( ( ? [X3: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X3 @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
& ( P @ X3 ) ) )
= ( ? [Ys2: list_P8791008543742759928ropVar,X3: produc2642885279816024434ropVar] :
( ? [Zs2: list_P8791008543742759928ropVar] :
( Xs3
= ( append4352292717583037453ropVar @ Ys2 @ ( cons_P1504208554336013608ropVar @ X3 @ Zs2 ) ) )
& ( P @ X3 )
& ! [Y2: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ Y2 @ ( set_Pr3946994337432900359ropVar @ Ys2 ) )
=> ~ ( P @ Y2 ) ) ) ) ) ).
% split_list_first_prop_iff
thf(fact_295_split__list__last__prop__iff,axiom,
! [Xs3: list_list_f,P: list_f > $o] :
( ( ? [X3: list_f] :
( ( member_list_f @ X3 @ ( set_list_f2 @ Xs3 ) )
& ( P @ X3 ) ) )
= ( ? [Ys2: list_list_f,X3: list_f,Zs2: list_list_f] :
( ( Xs3
= ( append_list_f @ Ys2 @ ( cons_list_f @ X3 @ Zs2 ) ) )
& ( P @ X3 )
& ! [Y2: list_f] :
( ( member_list_f @ Y2 @ ( set_list_f2 @ Zs2 ) )
=> ~ ( P @ Y2 ) ) ) ) ) ).
% split_list_last_prop_iff
thf(fact_296_split__list__last__prop__iff,axiom,
! [Xs3: list_a,P: a > $o] :
( ( ? [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Xs3 ) )
& ( P @ X3 ) ) )
= ( ? [Ys2: list_a,X3: a,Zs2: list_a] :
( ( Xs3
= ( append_a @ Ys2 @ ( cons_a @ X3 @ Zs2 ) ) )
& ( P @ X3 )
& ! [Y2: a] :
( ( member_a @ Y2 @ ( set_a2 @ Zs2 ) )
=> ~ ( P @ Y2 ) ) ) ) ) ).
% split_list_last_prop_iff
thf(fact_297_split__list__last__prop__iff,axiom,
! [Xs3: list_f,P: f > $o] :
( ( ? [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Xs3 ) )
& ( P @ X3 ) ) )
= ( ? [Ys2: list_f,X3: f,Zs2: list_f] :
( ( Xs3
= ( append_f @ Ys2 @ ( cons_f @ X3 @ Zs2 ) ) )
& ( P @ X3 )
& ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ Zs2 ) )
=> ~ ( P @ Y2 ) ) ) ) ) ).
% split_list_last_prop_iff
thf(fact_298_split__list__last__prop__iff,axiom,
! [Xs3: list_nat,P: nat > $o] :
( ( ? [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs3 ) )
& ( P @ X3 ) ) )
= ( ? [Ys2: list_nat,X3: nat,Zs2: list_nat] :
( ( Xs3
= ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs2 ) ) )
& ( P @ X3 )
& ! [Y2: nat] :
( ( member_nat @ Y2 @ ( set_nat2 @ Zs2 ) )
=> ~ ( P @ Y2 ) ) ) ) ) ).
% split_list_last_prop_iff
thf(fact_299_split__list__last__prop__iff,axiom,
! [Xs3: list_P8791008543742759928ropVar,P: produc2642885279816024434ropVar > $o] :
( ( ? [X3: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X3 @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
& ( P @ X3 ) ) )
= ( ? [Ys2: list_P8791008543742759928ropVar,X3: produc2642885279816024434ropVar,Zs2: list_P8791008543742759928ropVar] :
( ( Xs3
= ( append4352292717583037453ropVar @ Ys2 @ ( cons_P1504208554336013608ropVar @ X3 @ Zs2 ) ) )
& ( P @ X3 )
& ! [Y2: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ Y2 @ ( set_Pr3946994337432900359ropVar @ Zs2 ) )
=> ~ ( P @ Y2 ) ) ) ) ) ).
% split_list_last_prop_iff
thf(fact_300_in__set__conv__decomp__first,axiom,
! [X: produc6518373309651786023iset_a,Xs3: list_P6988024003011616557iset_a] :
( ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Xs3 ) )
= ( ? [Ys2: list_P6988024003011616557iset_a,Zs2: list_P6988024003011616557iset_a] :
( ( Xs3
= ( append1975991668658899394iset_a @ Ys2 @ ( cons_P7086145107730948317iset_a @ X @ Zs2 ) ) )
& ~ ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Ys2 ) ) ) ) ) ).
% in_set_conv_decomp_first
thf(fact_301_in__set__conv__decomp__first,axiom,
! [X: product_prod_a_a,Xs3: list_P1396940483166286381od_a_a] :
( ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Xs3 ) )
= ( ? [Ys2: list_P1396940483166286381od_a_a,Zs2: list_P1396940483166286381od_a_a] :
( ( Xs3
= ( append5335208819046833346od_a_a @ Ys2 @ ( cons_P7316939126706565853od_a_a @ X @ Zs2 ) ) )
& ~ ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Ys2 ) ) ) ) ) ).
% in_set_conv_decomp_first
thf(fact_302_in__set__conv__decomp__first,axiom,
! [X: multis3193088007478089820ropVar,Xs3: list_M6740372356978808802ropVar] :
( ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Xs3 ) )
= ( ? [Ys2: list_M6740372356978808802ropVar,Zs2: list_M6740372356978808802ropVar] :
( ( Xs3
= ( append2684835082924936439ropVar @ Ys2 @ ( cons_M4277272395645347858ropVar @ X @ Zs2 ) ) )
& ~ ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Ys2 ) ) ) ) ) ).
% in_set_conv_decomp_first
thf(fact_303_in__set__conv__decomp__first,axiom,
! [X: list_f,Xs3: list_list_f] :
( ( member_list_f @ X @ ( set_list_f2 @ Xs3 ) )
= ( ? [Ys2: list_list_f,Zs2: list_list_f] :
( ( Xs3
= ( append_list_f @ Ys2 @ ( cons_list_f @ X @ Zs2 ) ) )
& ~ ( member_list_f @ X @ ( set_list_f2 @ Ys2 ) ) ) ) ) ).
% in_set_conv_decomp_first
thf(fact_304_in__set__conv__decomp__first,axiom,
! [X: a,Xs3: list_a] :
( ( member_a @ X @ ( set_a2 @ Xs3 ) )
= ( ? [Ys2: list_a,Zs2: list_a] :
( ( Xs3
= ( append_a @ Ys2 @ ( cons_a @ X @ Zs2 ) ) )
& ~ ( member_a @ X @ ( set_a2 @ Ys2 ) ) ) ) ) ).
% in_set_conv_decomp_first
thf(fact_305_in__set__conv__decomp__first,axiom,
! [X: f,Xs3: list_f] :
( ( member_f @ X @ ( set_f2 @ Xs3 ) )
= ( ? [Ys2: list_f,Zs2: list_f] :
( ( Xs3
= ( append_f @ Ys2 @ ( cons_f @ X @ Zs2 ) ) )
& ~ ( member_f @ X @ ( set_f2 @ Ys2 ) ) ) ) ) ).
% in_set_conv_decomp_first
thf(fact_306_in__set__conv__decomp__first,axiom,
! [X: nat,Xs3: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs3 ) )
= ( ? [Ys2: list_nat,Zs2: list_nat] :
( ( Xs3
= ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs2 ) ) )
& ~ ( member_nat @ X @ ( set_nat2 @ Ys2 ) ) ) ) ) ).
% in_set_conv_decomp_first
thf(fact_307_in__set__conv__decomp__first,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
= ( ? [Ys2: list_P8791008543742759928ropVar,Zs2: list_P8791008543742759928ropVar] :
( ( Xs3
= ( append4352292717583037453ropVar @ Ys2 @ ( cons_P1504208554336013608ropVar @ X @ Zs2 ) ) )
& ~ ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Ys2 ) ) ) ) ) ).
% in_set_conv_decomp_first
thf(fact_308_in__set__conv__decomp__last,axiom,
! [X: produc6518373309651786023iset_a,Xs3: list_P6988024003011616557iset_a] :
( ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Xs3 ) )
= ( ? [Ys2: list_P6988024003011616557iset_a,Zs2: list_P6988024003011616557iset_a] :
( ( Xs3
= ( append1975991668658899394iset_a @ Ys2 @ ( cons_P7086145107730948317iset_a @ X @ Zs2 ) ) )
& ~ ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp_last
thf(fact_309_in__set__conv__decomp__last,axiom,
! [X: product_prod_a_a,Xs3: list_P1396940483166286381od_a_a] :
( ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Xs3 ) )
= ( ? [Ys2: list_P1396940483166286381od_a_a,Zs2: list_P1396940483166286381od_a_a] :
( ( Xs3
= ( append5335208819046833346od_a_a @ Ys2 @ ( cons_P7316939126706565853od_a_a @ X @ Zs2 ) ) )
& ~ ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp_last
thf(fact_310_in__set__conv__decomp__last,axiom,
! [X: multis3193088007478089820ropVar,Xs3: list_M6740372356978808802ropVar] :
( ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Xs3 ) )
= ( ? [Ys2: list_M6740372356978808802ropVar,Zs2: list_M6740372356978808802ropVar] :
( ( Xs3
= ( append2684835082924936439ropVar @ Ys2 @ ( cons_M4277272395645347858ropVar @ X @ Zs2 ) ) )
& ~ ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp_last
thf(fact_311_in__set__conv__decomp__last,axiom,
! [X: list_f,Xs3: list_list_f] :
( ( member_list_f @ X @ ( set_list_f2 @ Xs3 ) )
= ( ? [Ys2: list_list_f,Zs2: list_list_f] :
( ( Xs3
= ( append_list_f @ Ys2 @ ( cons_list_f @ X @ Zs2 ) ) )
& ~ ( member_list_f @ X @ ( set_list_f2 @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp_last
thf(fact_312_in__set__conv__decomp__last,axiom,
! [X: a,Xs3: list_a] :
( ( member_a @ X @ ( set_a2 @ Xs3 ) )
= ( ? [Ys2: list_a,Zs2: list_a] :
( ( Xs3
= ( append_a @ Ys2 @ ( cons_a @ X @ Zs2 ) ) )
& ~ ( member_a @ X @ ( set_a2 @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp_last
thf(fact_313_in__set__conv__decomp__last,axiom,
! [X: f,Xs3: list_f] :
( ( member_f @ X @ ( set_f2 @ Xs3 ) )
= ( ? [Ys2: list_f,Zs2: list_f] :
( ( Xs3
= ( append_f @ Ys2 @ ( cons_f @ X @ Zs2 ) ) )
& ~ ( member_f @ X @ ( set_f2 @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp_last
thf(fact_314_in__set__conv__decomp__last,axiom,
! [X: nat,Xs3: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs3 ) )
= ( ? [Ys2: list_nat,Zs2: list_nat] :
( ( Xs3
= ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs2 ) ) )
& ~ ( member_nat @ X @ ( set_nat2 @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp_last
thf(fact_315_in__set__conv__decomp__last,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
= ( ? [Ys2: list_P8791008543742759928ropVar,Zs2: list_P8791008543742759928ropVar] :
( ( Xs3
= ( append4352292717583037453ropVar @ Ys2 @ ( cons_P1504208554336013608ropVar @ X @ Zs2 ) ) )
& ~ ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp_last
thf(fact_316_split__list__first__propE,axiom,
! [Xs3: list_list_f,P: list_f > $o] :
( ? [X2: list_f] :
( ( member_list_f @ X2 @ ( set_list_f2 @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_list_f,X4: list_f] :
( ? [Zs3: list_list_f] :
( Xs3
= ( append_list_f @ Ys3 @ ( cons_list_f @ X4 @ Zs3 ) ) )
=> ( ( P @ X4 )
=> ~ ! [Xa2: list_f] :
( ( member_list_f @ Xa2 @ ( set_list_f2 @ Ys3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_first_propE
thf(fact_317_split__list__first__propE,axiom,
! [Xs3: list_a,P: a > $o] :
( ? [X2: a] :
( ( member_a @ X2 @ ( set_a2 @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_a,X4: a] :
( ? [Zs3: list_a] :
( Xs3
= ( append_a @ Ys3 @ ( cons_a @ X4 @ Zs3 ) ) )
=> ( ( P @ X4 )
=> ~ ! [Xa2: a] :
( ( member_a @ Xa2 @ ( set_a2 @ Ys3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_first_propE
thf(fact_318_split__list__first__propE,axiom,
! [Xs3: list_f,P: f > $o] :
( ? [X2: f] :
( ( member_f @ X2 @ ( set_f2 @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_f,X4: f] :
( ? [Zs3: list_f] :
( Xs3
= ( append_f @ Ys3 @ ( cons_f @ X4 @ Zs3 ) ) )
=> ( ( P @ X4 )
=> ~ ! [Xa2: f] :
( ( member_f @ Xa2 @ ( set_f2 @ Ys3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_first_propE
thf(fact_319_split__list__first__propE,axiom,
! [Xs3: list_nat,P: nat > $o] :
( ? [X2: nat] :
( ( member_nat @ X2 @ ( set_nat2 @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_nat,X4: nat] :
( ? [Zs3: list_nat] :
( Xs3
= ( append_nat @ Ys3 @ ( cons_nat @ X4 @ Zs3 ) ) )
=> ( ( P @ X4 )
=> ~ ! [Xa2: nat] :
( ( member_nat @ Xa2 @ ( set_nat2 @ Ys3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_first_propE
thf(fact_320_split__list__first__propE,axiom,
! [Xs3: list_P8791008543742759928ropVar,P: produc2642885279816024434ropVar > $o] :
( ? [X2: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X2 @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_P8791008543742759928ropVar,X4: produc2642885279816024434ropVar] :
( ? [Zs3: list_P8791008543742759928ropVar] :
( Xs3
= ( append4352292717583037453ropVar @ Ys3 @ ( cons_P1504208554336013608ropVar @ X4 @ Zs3 ) ) )
=> ( ( P @ X4 )
=> ~ ! [Xa2: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ Xa2 @ ( set_Pr3946994337432900359ropVar @ Ys3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_first_propE
thf(fact_321_split__list__last__propE,axiom,
! [Xs3: list_list_f,P: list_f > $o] :
( ? [X2: list_f] :
( ( member_list_f @ X2 @ ( set_list_f2 @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_list_f,X4: list_f,Zs3: list_list_f] :
( ( Xs3
= ( append_list_f @ Ys3 @ ( cons_list_f @ X4 @ Zs3 ) ) )
=> ( ( P @ X4 )
=> ~ ! [Xa2: list_f] :
( ( member_list_f @ Xa2 @ ( set_list_f2 @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_last_propE
thf(fact_322_split__list__last__propE,axiom,
! [Xs3: list_a,P: a > $o] :
( ? [X2: a] :
( ( member_a @ X2 @ ( set_a2 @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_a,X4: a,Zs3: list_a] :
( ( Xs3
= ( append_a @ Ys3 @ ( cons_a @ X4 @ Zs3 ) ) )
=> ( ( P @ X4 )
=> ~ ! [Xa2: a] :
( ( member_a @ Xa2 @ ( set_a2 @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_last_propE
thf(fact_323_split__list__last__propE,axiom,
! [Xs3: list_f,P: f > $o] :
( ? [X2: f] :
( ( member_f @ X2 @ ( set_f2 @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_f,X4: f,Zs3: list_f] :
( ( Xs3
= ( append_f @ Ys3 @ ( cons_f @ X4 @ Zs3 ) ) )
=> ( ( P @ X4 )
=> ~ ! [Xa2: f] :
( ( member_f @ Xa2 @ ( set_f2 @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_last_propE
thf(fact_324_split__list__last__propE,axiom,
! [Xs3: list_nat,P: nat > $o] :
( ? [X2: nat] :
( ( member_nat @ X2 @ ( set_nat2 @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_nat,X4: nat,Zs3: list_nat] :
( ( Xs3
= ( append_nat @ Ys3 @ ( cons_nat @ X4 @ Zs3 ) ) )
=> ( ( P @ X4 )
=> ~ ! [Xa2: nat] :
( ( member_nat @ Xa2 @ ( set_nat2 @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_last_propE
thf(fact_325_split__list__last__propE,axiom,
! [Xs3: list_P8791008543742759928ropVar,P: produc2642885279816024434ropVar > $o] :
( ? [X2: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X2 @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_P8791008543742759928ropVar,X4: produc2642885279816024434ropVar,Zs3: list_P8791008543742759928ropVar] :
( ( Xs3
= ( append4352292717583037453ropVar @ Ys3 @ ( cons_P1504208554336013608ropVar @ X4 @ Zs3 ) ) )
=> ( ( P @ X4 )
=> ~ ! [Xa2: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ Xa2 @ ( set_Pr3946994337432900359ropVar @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_last_propE
thf(fact_326_split__list__first__prop,axiom,
! [Xs3: list_list_f,P: list_f > $o] :
( ? [X2: list_f] :
( ( member_list_f @ X2 @ ( set_list_f2 @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_list_f,X4: list_f] :
( ? [Zs3: list_list_f] :
( Xs3
= ( append_list_f @ Ys3 @ ( cons_list_f @ X4 @ Zs3 ) ) )
& ( P @ X4 )
& ! [Xa2: list_f] :
( ( member_list_f @ Xa2 @ ( set_list_f2 @ Ys3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_first_prop
thf(fact_327_split__list__first__prop,axiom,
! [Xs3: list_a,P: a > $o] :
( ? [X2: a] :
( ( member_a @ X2 @ ( set_a2 @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_a,X4: a] :
( ? [Zs3: list_a] :
( Xs3
= ( append_a @ Ys3 @ ( cons_a @ X4 @ Zs3 ) ) )
& ( P @ X4 )
& ! [Xa2: a] :
( ( member_a @ Xa2 @ ( set_a2 @ Ys3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_first_prop
thf(fact_328_split__list__first__prop,axiom,
! [Xs3: list_f,P: f > $o] :
( ? [X2: f] :
( ( member_f @ X2 @ ( set_f2 @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_f,X4: f] :
( ? [Zs3: list_f] :
( Xs3
= ( append_f @ Ys3 @ ( cons_f @ X4 @ Zs3 ) ) )
& ( P @ X4 )
& ! [Xa2: f] :
( ( member_f @ Xa2 @ ( set_f2 @ Ys3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_first_prop
thf(fact_329_split__list__first__prop,axiom,
! [Xs3: list_nat,P: nat > $o] :
( ? [X2: nat] :
( ( member_nat @ X2 @ ( set_nat2 @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_nat,X4: nat] :
( ? [Zs3: list_nat] :
( Xs3
= ( append_nat @ Ys3 @ ( cons_nat @ X4 @ Zs3 ) ) )
& ( P @ X4 )
& ! [Xa2: nat] :
( ( member_nat @ Xa2 @ ( set_nat2 @ Ys3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_first_prop
thf(fact_330_split__list__first__prop,axiom,
! [Xs3: list_P8791008543742759928ropVar,P: produc2642885279816024434ropVar > $o] :
( ? [X2: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X2 @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_P8791008543742759928ropVar,X4: produc2642885279816024434ropVar] :
( ? [Zs3: list_P8791008543742759928ropVar] :
( Xs3
= ( append4352292717583037453ropVar @ Ys3 @ ( cons_P1504208554336013608ropVar @ X4 @ Zs3 ) ) )
& ( P @ X4 )
& ! [Xa2: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ Xa2 @ ( set_Pr3946994337432900359ropVar @ Ys3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_first_prop
thf(fact_331_split__list__last__prop,axiom,
! [Xs3: list_list_f,P: list_f > $o] :
( ? [X2: list_f] :
( ( member_list_f @ X2 @ ( set_list_f2 @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_list_f,X4: list_f,Zs3: list_list_f] :
( ( Xs3
= ( append_list_f @ Ys3 @ ( cons_list_f @ X4 @ Zs3 ) ) )
& ( P @ X4 )
& ! [Xa2: list_f] :
( ( member_list_f @ Xa2 @ ( set_list_f2 @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_last_prop
thf(fact_332_split__list__last__prop,axiom,
! [Xs3: list_a,P: a > $o] :
( ? [X2: a] :
( ( member_a @ X2 @ ( set_a2 @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_a,X4: a,Zs3: list_a] :
( ( Xs3
= ( append_a @ Ys3 @ ( cons_a @ X4 @ Zs3 ) ) )
& ( P @ X4 )
& ! [Xa2: a] :
( ( member_a @ Xa2 @ ( set_a2 @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_last_prop
thf(fact_333_split__list__last__prop,axiom,
! [Xs3: list_f,P: f > $o] :
( ? [X2: f] :
( ( member_f @ X2 @ ( set_f2 @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_f,X4: f,Zs3: list_f] :
( ( Xs3
= ( append_f @ Ys3 @ ( cons_f @ X4 @ Zs3 ) ) )
& ( P @ X4 )
& ! [Xa2: f] :
( ( member_f @ Xa2 @ ( set_f2 @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_last_prop
thf(fact_334_split__list__last__prop,axiom,
! [Xs3: list_nat,P: nat > $o] :
( ? [X2: nat] :
( ( member_nat @ X2 @ ( set_nat2 @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_nat,X4: nat,Zs3: list_nat] :
( ( Xs3
= ( append_nat @ Ys3 @ ( cons_nat @ X4 @ Zs3 ) ) )
& ( P @ X4 )
& ! [Xa2: nat] :
( ( member_nat @ Xa2 @ ( set_nat2 @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_last_prop
thf(fact_335_split__list__last__prop,axiom,
! [Xs3: list_P8791008543742759928ropVar,P: produc2642885279816024434ropVar > $o] :
( ? [X2: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X2 @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_P8791008543742759928ropVar,X4: produc2642885279816024434ropVar,Zs3: list_P8791008543742759928ropVar] :
( ( Xs3
= ( append4352292717583037453ropVar @ Ys3 @ ( cons_P1504208554336013608ropVar @ X4 @ Zs3 ) ) )
& ( P @ X4 )
& ! [Xa2: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ Xa2 @ ( set_Pr3946994337432900359ropVar @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_last_prop
thf(fact_336_in__set__conv__decomp,axiom,
! [X: produc6518373309651786023iset_a,Xs3: list_P6988024003011616557iset_a] :
( ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Xs3 ) )
= ( ? [Ys2: list_P6988024003011616557iset_a,Zs2: list_P6988024003011616557iset_a] :
( Xs3
= ( append1975991668658899394iset_a @ Ys2 @ ( cons_P7086145107730948317iset_a @ X @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp
thf(fact_337_in__set__conv__decomp,axiom,
! [X: product_prod_a_a,Xs3: list_P1396940483166286381od_a_a] :
( ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Xs3 ) )
= ( ? [Ys2: list_P1396940483166286381od_a_a,Zs2: list_P1396940483166286381od_a_a] :
( Xs3
= ( append5335208819046833346od_a_a @ Ys2 @ ( cons_P7316939126706565853od_a_a @ X @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp
thf(fact_338_in__set__conv__decomp,axiom,
! [X: multis3193088007478089820ropVar,Xs3: list_M6740372356978808802ropVar] :
( ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Xs3 ) )
= ( ? [Ys2: list_M6740372356978808802ropVar,Zs2: list_M6740372356978808802ropVar] :
( Xs3
= ( append2684835082924936439ropVar @ Ys2 @ ( cons_M4277272395645347858ropVar @ X @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp
thf(fact_339_in__set__conv__decomp,axiom,
! [X: list_f,Xs3: list_list_f] :
( ( member_list_f @ X @ ( set_list_f2 @ Xs3 ) )
= ( ? [Ys2: list_list_f,Zs2: list_list_f] :
( Xs3
= ( append_list_f @ Ys2 @ ( cons_list_f @ X @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp
thf(fact_340_in__set__conv__decomp,axiom,
! [X: a,Xs3: list_a] :
( ( member_a @ X @ ( set_a2 @ Xs3 ) )
= ( ? [Ys2: list_a,Zs2: list_a] :
( Xs3
= ( append_a @ Ys2 @ ( cons_a @ X @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp
thf(fact_341_in__set__conv__decomp,axiom,
! [X: f,Xs3: list_f] :
( ( member_f @ X @ ( set_f2 @ Xs3 ) )
= ( ? [Ys2: list_f,Zs2: list_f] :
( Xs3
= ( append_f @ Ys2 @ ( cons_f @ X @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp
thf(fact_342_in__set__conv__decomp,axiom,
! [X: nat,Xs3: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs3 ) )
= ( ? [Ys2: list_nat,Zs2: list_nat] :
( Xs3
= ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp
thf(fact_343_in__set__conv__decomp,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
= ( ? [Ys2: list_P8791008543742759928ropVar,Zs2: list_P8791008543742759928ropVar] :
( Xs3
= ( append4352292717583037453ropVar @ Ys2 @ ( cons_P1504208554336013608ropVar @ X @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp
thf(fact_344_append__Cons__eq__iff,axiom,
! [X: produc6518373309651786023iset_a,Xs3: list_P6988024003011616557iset_a,Ys: list_P6988024003011616557iset_a,Xs4: list_P6988024003011616557iset_a,Ys4: list_P6988024003011616557iset_a] :
( ~ ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Xs3 ) )
=> ( ~ ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Ys ) )
=> ( ( ( append1975991668658899394iset_a @ Xs3 @ ( cons_P7086145107730948317iset_a @ X @ Ys ) )
= ( append1975991668658899394iset_a @ Xs4 @ ( cons_P7086145107730948317iset_a @ X @ Ys4 ) ) )
= ( ( Xs3 = Xs4 )
& ( Ys = Ys4 ) ) ) ) ) ).
% append_Cons_eq_iff
thf(fact_345_append__Cons__eq__iff,axiom,
! [X: product_prod_a_a,Xs3: list_P1396940483166286381od_a_a,Ys: list_P1396940483166286381od_a_a,Xs4: list_P1396940483166286381od_a_a,Ys4: list_P1396940483166286381od_a_a] :
( ~ ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Xs3 ) )
=> ( ~ ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Ys ) )
=> ( ( ( append5335208819046833346od_a_a @ Xs3 @ ( cons_P7316939126706565853od_a_a @ X @ Ys ) )
= ( append5335208819046833346od_a_a @ Xs4 @ ( cons_P7316939126706565853od_a_a @ X @ Ys4 ) ) )
= ( ( Xs3 = Xs4 )
& ( Ys = Ys4 ) ) ) ) ) ).
% append_Cons_eq_iff
thf(fact_346_append__Cons__eq__iff,axiom,
! [X: multis3193088007478089820ropVar,Xs3: list_M6740372356978808802ropVar,Ys: list_M6740372356978808802ropVar,Xs4: list_M6740372356978808802ropVar,Ys4: list_M6740372356978808802ropVar] :
( ~ ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Xs3 ) )
=> ( ~ ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Ys ) )
=> ( ( ( append2684835082924936439ropVar @ Xs3 @ ( cons_M4277272395645347858ropVar @ X @ Ys ) )
= ( append2684835082924936439ropVar @ Xs4 @ ( cons_M4277272395645347858ropVar @ X @ Ys4 ) ) )
= ( ( Xs3 = Xs4 )
& ( Ys = Ys4 ) ) ) ) ) ).
% append_Cons_eq_iff
thf(fact_347_append__Cons__eq__iff,axiom,
! [X: list_f,Xs3: list_list_f,Ys: list_list_f,Xs4: list_list_f,Ys4: list_list_f] :
( ~ ( member_list_f @ X @ ( set_list_f2 @ Xs3 ) )
=> ( ~ ( member_list_f @ X @ ( set_list_f2 @ Ys ) )
=> ( ( ( append_list_f @ Xs3 @ ( cons_list_f @ X @ Ys ) )
= ( append_list_f @ Xs4 @ ( cons_list_f @ X @ Ys4 ) ) )
= ( ( Xs3 = Xs4 )
& ( Ys = Ys4 ) ) ) ) ) ).
% append_Cons_eq_iff
thf(fact_348_append__Cons__eq__iff,axiom,
! [X: a,Xs3: list_a,Ys: list_a,Xs4: list_a,Ys4: list_a] :
( ~ ( member_a @ X @ ( set_a2 @ Xs3 ) )
=> ( ~ ( member_a @ X @ ( set_a2 @ Ys ) )
=> ( ( ( append_a @ Xs3 @ ( cons_a @ X @ Ys ) )
= ( append_a @ Xs4 @ ( cons_a @ X @ Ys4 ) ) )
= ( ( Xs3 = Xs4 )
& ( Ys = Ys4 ) ) ) ) ) ).
% append_Cons_eq_iff
thf(fact_349_append__Cons__eq__iff,axiom,
! [X: f,Xs3: list_f,Ys: list_f,Xs4: list_f,Ys4: list_f] :
( ~ ( member_f @ X @ ( set_f2 @ Xs3 ) )
=> ( ~ ( member_f @ X @ ( set_f2 @ Ys ) )
=> ( ( ( append_f @ Xs3 @ ( cons_f @ X @ Ys ) )
= ( append_f @ Xs4 @ ( cons_f @ X @ Ys4 ) ) )
= ( ( Xs3 = Xs4 )
& ( Ys = Ys4 ) ) ) ) ) ).
% append_Cons_eq_iff
thf(fact_350_append__Cons__eq__iff,axiom,
! [X: nat,Xs3: list_nat,Ys: list_nat,Xs4: list_nat,Ys4: list_nat] :
( ~ ( member_nat @ X @ ( set_nat2 @ Xs3 ) )
=> ( ~ ( member_nat @ X @ ( set_nat2 @ Ys ) )
=> ( ( ( append_nat @ Xs3 @ ( cons_nat @ X @ Ys ) )
= ( append_nat @ Xs4 @ ( cons_nat @ X @ Ys4 ) ) )
= ( ( Xs3 = Xs4 )
& ( Ys = Ys4 ) ) ) ) ) ).
% append_Cons_eq_iff
thf(fact_351_append__Cons__eq__iff,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar,Xs4: list_P8791008543742759928ropVar,Ys4: list_P8791008543742759928ropVar] :
( ~ ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
=> ( ~ ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Ys ) )
=> ( ( ( append4352292717583037453ropVar @ Xs3 @ ( cons_P1504208554336013608ropVar @ X @ Ys ) )
= ( append4352292717583037453ropVar @ Xs4 @ ( cons_P1504208554336013608ropVar @ X @ Ys4 ) ) )
= ( ( Xs3 = Xs4 )
& ( Ys = Ys4 ) ) ) ) ) ).
% append_Cons_eq_iff
thf(fact_352_split__list__propE,axiom,
! [Xs3: list_list_f,P: list_f > $o] :
( ? [X2: list_f] :
( ( member_list_f @ X2 @ ( set_list_f2 @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_list_f,X4: list_f] :
( ? [Zs3: list_list_f] :
( Xs3
= ( append_list_f @ Ys3 @ ( cons_list_f @ X4 @ Zs3 ) ) )
=> ~ ( P @ X4 ) ) ) ).
% split_list_propE
thf(fact_353_split__list__propE,axiom,
! [Xs3: list_a,P: a > $o] :
( ? [X2: a] :
( ( member_a @ X2 @ ( set_a2 @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_a,X4: a] :
( ? [Zs3: list_a] :
( Xs3
= ( append_a @ Ys3 @ ( cons_a @ X4 @ Zs3 ) ) )
=> ~ ( P @ X4 ) ) ) ).
% split_list_propE
thf(fact_354_split__list__propE,axiom,
! [Xs3: list_f,P: f > $o] :
( ? [X2: f] :
( ( member_f @ X2 @ ( set_f2 @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_f,X4: f] :
( ? [Zs3: list_f] :
( Xs3
= ( append_f @ Ys3 @ ( cons_f @ X4 @ Zs3 ) ) )
=> ~ ( P @ X4 ) ) ) ).
% split_list_propE
thf(fact_355_split__list__propE,axiom,
! [Xs3: list_nat,P: nat > $o] :
( ? [X2: nat] :
( ( member_nat @ X2 @ ( set_nat2 @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_nat,X4: nat] :
( ? [Zs3: list_nat] :
( Xs3
= ( append_nat @ Ys3 @ ( cons_nat @ X4 @ Zs3 ) ) )
=> ~ ( P @ X4 ) ) ) ).
% split_list_propE
thf(fact_356_split__list__propE,axiom,
! [Xs3: list_P8791008543742759928ropVar,P: produc2642885279816024434ropVar > $o] :
( ? [X2: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X2 @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
& ( P @ X2 ) )
=> ~ ! [Ys3: list_P8791008543742759928ropVar,X4: produc2642885279816024434ropVar] :
( ? [Zs3: list_P8791008543742759928ropVar] :
( Xs3
= ( append4352292717583037453ropVar @ Ys3 @ ( cons_P1504208554336013608ropVar @ X4 @ Zs3 ) ) )
=> ~ ( P @ X4 ) ) ) ).
% split_list_propE
thf(fact_357_split__list__first,axiom,
! [X: produc6518373309651786023iset_a,Xs3: list_P6988024003011616557iset_a] :
( ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Xs3 ) )
=> ? [Ys3: list_P6988024003011616557iset_a,Zs3: list_P6988024003011616557iset_a] :
( ( Xs3
= ( append1975991668658899394iset_a @ Ys3 @ ( cons_P7086145107730948317iset_a @ X @ Zs3 ) ) )
& ~ ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Ys3 ) ) ) ) ).
% split_list_first
thf(fact_358_split__list__first,axiom,
! [X: product_prod_a_a,Xs3: list_P1396940483166286381od_a_a] :
( ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Xs3 ) )
=> ? [Ys3: list_P1396940483166286381od_a_a,Zs3: list_P1396940483166286381od_a_a] :
( ( Xs3
= ( append5335208819046833346od_a_a @ Ys3 @ ( cons_P7316939126706565853od_a_a @ X @ Zs3 ) ) )
& ~ ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Ys3 ) ) ) ) ).
% split_list_first
thf(fact_359_split__list__first,axiom,
! [X: multis3193088007478089820ropVar,Xs3: list_M6740372356978808802ropVar] :
( ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Xs3 ) )
=> ? [Ys3: list_M6740372356978808802ropVar,Zs3: list_M6740372356978808802ropVar] :
( ( Xs3
= ( append2684835082924936439ropVar @ Ys3 @ ( cons_M4277272395645347858ropVar @ X @ Zs3 ) ) )
& ~ ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Ys3 ) ) ) ) ).
% split_list_first
thf(fact_360_split__list__first,axiom,
! [X: list_f,Xs3: list_list_f] :
( ( member_list_f @ X @ ( set_list_f2 @ Xs3 ) )
=> ? [Ys3: list_list_f,Zs3: list_list_f] :
( ( Xs3
= ( append_list_f @ Ys3 @ ( cons_list_f @ X @ Zs3 ) ) )
& ~ ( member_list_f @ X @ ( set_list_f2 @ Ys3 ) ) ) ) ).
% split_list_first
thf(fact_361_split__list__first,axiom,
! [X: a,Xs3: list_a] :
( ( member_a @ X @ ( set_a2 @ Xs3 ) )
=> ? [Ys3: list_a,Zs3: list_a] :
( ( Xs3
= ( append_a @ Ys3 @ ( cons_a @ X @ Zs3 ) ) )
& ~ ( member_a @ X @ ( set_a2 @ Ys3 ) ) ) ) ).
% split_list_first
thf(fact_362_split__list__first,axiom,
! [X: f,Xs3: list_f] :
( ( member_f @ X @ ( set_f2 @ Xs3 ) )
=> ? [Ys3: list_f,Zs3: list_f] :
( ( Xs3
= ( append_f @ Ys3 @ ( cons_f @ X @ Zs3 ) ) )
& ~ ( member_f @ X @ ( set_f2 @ Ys3 ) ) ) ) ).
% split_list_first
thf(fact_363_split__list__first,axiom,
! [X: nat,Xs3: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs3 ) )
=> ? [Ys3: list_nat,Zs3: list_nat] :
( ( Xs3
= ( append_nat @ Ys3 @ ( cons_nat @ X @ Zs3 ) ) )
& ~ ( member_nat @ X @ ( set_nat2 @ Ys3 ) ) ) ) ).
% split_list_first
thf(fact_364_split__list__first,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
=> ? [Ys3: list_P8791008543742759928ropVar,Zs3: list_P8791008543742759928ropVar] :
( ( Xs3
= ( append4352292717583037453ropVar @ Ys3 @ ( cons_P1504208554336013608ropVar @ X @ Zs3 ) ) )
& ~ ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Ys3 ) ) ) ) ).
% split_list_first
thf(fact_365_split__list__prop,axiom,
! [Xs3: list_list_f,P: list_f > $o] :
( ? [X2: list_f] :
( ( member_list_f @ X2 @ ( set_list_f2 @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_list_f,X4: list_f] :
( ? [Zs3: list_list_f] :
( Xs3
= ( append_list_f @ Ys3 @ ( cons_list_f @ X4 @ Zs3 ) ) )
& ( P @ X4 ) ) ) ).
% split_list_prop
thf(fact_366_split__list__prop,axiom,
! [Xs3: list_a,P: a > $o] :
( ? [X2: a] :
( ( member_a @ X2 @ ( set_a2 @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_a,X4: a] :
( ? [Zs3: list_a] :
( Xs3
= ( append_a @ Ys3 @ ( cons_a @ X4 @ Zs3 ) ) )
& ( P @ X4 ) ) ) ).
% split_list_prop
thf(fact_367_split__list__prop,axiom,
! [Xs3: list_f,P: f > $o] :
( ? [X2: f] :
( ( member_f @ X2 @ ( set_f2 @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_f,X4: f] :
( ? [Zs3: list_f] :
( Xs3
= ( append_f @ Ys3 @ ( cons_f @ X4 @ Zs3 ) ) )
& ( P @ X4 ) ) ) ).
% split_list_prop
thf(fact_368_split__list__prop,axiom,
! [Xs3: list_nat,P: nat > $o] :
( ? [X2: nat] :
( ( member_nat @ X2 @ ( set_nat2 @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_nat,X4: nat] :
( ? [Zs3: list_nat] :
( Xs3
= ( append_nat @ Ys3 @ ( cons_nat @ X4 @ Zs3 ) ) )
& ( P @ X4 ) ) ) ).
% split_list_prop
thf(fact_369_split__list__prop,axiom,
! [Xs3: list_P8791008543742759928ropVar,P: produc2642885279816024434ropVar > $o] :
( ? [X2: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X2 @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
& ( P @ X2 ) )
=> ? [Ys3: list_P8791008543742759928ropVar,X4: produc2642885279816024434ropVar] :
( ? [Zs3: list_P8791008543742759928ropVar] :
( Xs3
= ( append4352292717583037453ropVar @ Ys3 @ ( cons_P1504208554336013608ropVar @ X4 @ Zs3 ) ) )
& ( P @ X4 ) ) ) ).
% split_list_prop
thf(fact_370_split__list__last,axiom,
! [X: produc6518373309651786023iset_a,Xs3: list_P6988024003011616557iset_a] :
( ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Xs3 ) )
=> ? [Ys3: list_P6988024003011616557iset_a,Zs3: list_P6988024003011616557iset_a] :
( ( Xs3
= ( append1975991668658899394iset_a @ Ys3 @ ( cons_P7086145107730948317iset_a @ X @ Zs3 ) ) )
& ~ ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Zs3 ) ) ) ) ).
% split_list_last
thf(fact_371_split__list__last,axiom,
! [X: product_prod_a_a,Xs3: list_P1396940483166286381od_a_a] :
( ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Xs3 ) )
=> ? [Ys3: list_P1396940483166286381od_a_a,Zs3: list_P1396940483166286381od_a_a] :
( ( Xs3
= ( append5335208819046833346od_a_a @ Ys3 @ ( cons_P7316939126706565853od_a_a @ X @ Zs3 ) ) )
& ~ ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Zs3 ) ) ) ) ).
% split_list_last
thf(fact_372_split__list__last,axiom,
! [X: multis3193088007478089820ropVar,Xs3: list_M6740372356978808802ropVar] :
( ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Xs3 ) )
=> ? [Ys3: list_M6740372356978808802ropVar,Zs3: list_M6740372356978808802ropVar] :
( ( Xs3
= ( append2684835082924936439ropVar @ Ys3 @ ( cons_M4277272395645347858ropVar @ X @ Zs3 ) ) )
& ~ ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Zs3 ) ) ) ) ).
% split_list_last
thf(fact_373_split__list__last,axiom,
! [X: list_f,Xs3: list_list_f] :
( ( member_list_f @ X @ ( set_list_f2 @ Xs3 ) )
=> ? [Ys3: list_list_f,Zs3: list_list_f] :
( ( Xs3
= ( append_list_f @ Ys3 @ ( cons_list_f @ X @ Zs3 ) ) )
& ~ ( member_list_f @ X @ ( set_list_f2 @ Zs3 ) ) ) ) ).
% split_list_last
thf(fact_374_split__list__last,axiom,
! [X: a,Xs3: list_a] :
( ( member_a @ X @ ( set_a2 @ Xs3 ) )
=> ? [Ys3: list_a,Zs3: list_a] :
( ( Xs3
= ( append_a @ Ys3 @ ( cons_a @ X @ Zs3 ) ) )
& ~ ( member_a @ X @ ( set_a2 @ Zs3 ) ) ) ) ).
% split_list_last
thf(fact_375_split__list__last,axiom,
! [X: f,Xs3: list_f] :
( ( member_f @ X @ ( set_f2 @ Xs3 ) )
=> ? [Ys3: list_f,Zs3: list_f] :
( ( Xs3
= ( append_f @ Ys3 @ ( cons_f @ X @ Zs3 ) ) )
& ~ ( member_f @ X @ ( set_f2 @ Zs3 ) ) ) ) ).
% split_list_last
thf(fact_376_split__list__last,axiom,
! [X: nat,Xs3: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs3 ) )
=> ? [Ys3: list_nat,Zs3: list_nat] :
( ( Xs3
= ( append_nat @ Ys3 @ ( cons_nat @ X @ Zs3 ) ) )
& ~ ( member_nat @ X @ ( set_nat2 @ Zs3 ) ) ) ) ).
% split_list_last
thf(fact_377_split__list__last,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
=> ? [Ys3: list_P8791008543742759928ropVar,Zs3: list_P8791008543742759928ropVar] :
( ( Xs3
= ( append4352292717583037453ropVar @ Ys3 @ ( cons_P1504208554336013608ropVar @ X @ Zs3 ) ) )
& ~ ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Zs3 ) ) ) ) ).
% split_list_last
thf(fact_378_split__list,axiom,
! [X: produc6518373309651786023iset_a,Xs3: list_P6988024003011616557iset_a] :
( ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Xs3 ) )
=> ? [Ys3: list_P6988024003011616557iset_a,Zs3: list_P6988024003011616557iset_a] :
( Xs3
= ( append1975991668658899394iset_a @ Ys3 @ ( cons_P7086145107730948317iset_a @ X @ Zs3 ) ) ) ) ).
% split_list
thf(fact_379_split__list,axiom,
! [X: product_prod_a_a,Xs3: list_P1396940483166286381od_a_a] :
( ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Xs3 ) )
=> ? [Ys3: list_P1396940483166286381od_a_a,Zs3: list_P1396940483166286381od_a_a] :
( Xs3
= ( append5335208819046833346od_a_a @ Ys3 @ ( cons_P7316939126706565853od_a_a @ X @ Zs3 ) ) ) ) ).
% split_list
thf(fact_380_split__list,axiom,
! [X: multis3193088007478089820ropVar,Xs3: list_M6740372356978808802ropVar] :
( ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Xs3 ) )
=> ? [Ys3: list_M6740372356978808802ropVar,Zs3: list_M6740372356978808802ropVar] :
( Xs3
= ( append2684835082924936439ropVar @ Ys3 @ ( cons_M4277272395645347858ropVar @ X @ Zs3 ) ) ) ) ).
% split_list
thf(fact_381_split__list,axiom,
! [X: list_f,Xs3: list_list_f] :
( ( member_list_f @ X @ ( set_list_f2 @ Xs3 ) )
=> ? [Ys3: list_list_f,Zs3: list_list_f] :
( Xs3
= ( append_list_f @ Ys3 @ ( cons_list_f @ X @ Zs3 ) ) ) ) ).
% split_list
thf(fact_382_split__list,axiom,
! [X: a,Xs3: list_a] :
( ( member_a @ X @ ( set_a2 @ Xs3 ) )
=> ? [Ys3: list_a,Zs3: list_a] :
( Xs3
= ( append_a @ Ys3 @ ( cons_a @ X @ Zs3 ) ) ) ) ).
% split_list
thf(fact_383_split__list,axiom,
! [X: f,Xs3: list_f] :
( ( member_f @ X @ ( set_f2 @ Xs3 ) )
=> ? [Ys3: list_f,Zs3: list_f] :
( Xs3
= ( append_f @ Ys3 @ ( cons_f @ X @ Zs3 ) ) ) ) ).
% split_list
thf(fact_384_split__list,axiom,
! [X: nat,Xs3: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs3 ) )
=> ? [Ys3: list_nat,Zs3: list_nat] :
( Xs3
= ( append_nat @ Ys3 @ ( cons_nat @ X @ Zs3 ) ) ) ) ).
% split_list
thf(fact_385_split__list,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
=> ? [Ys3: list_P8791008543742759928ropVar,Zs3: list_P8791008543742759928ropVar] :
( Xs3
= ( append4352292717583037453ropVar @ Ys3 @ ( cons_P1504208554336013608ropVar @ X @ Zs3 ) ) ) ) ).
% split_list
thf(fact_386_maps__simps_I1_J,axiom,
! [F: f > list_f,X: f,Xs3: list_f] :
( ( maps_f_f @ F @ ( cons_f @ X @ Xs3 ) )
= ( append_f @ ( F @ X ) @ ( maps_f_f @ F @ Xs3 ) ) ) ).
% maps_simps(1)
thf(fact_387_maps__simps_I1_J,axiom,
! [F: f > list_nat,X: f,Xs3: list_f] :
( ( maps_f_nat @ F @ ( cons_f @ X @ Xs3 ) )
= ( append_nat @ ( F @ X ) @ ( maps_f_nat @ F @ Xs3 ) ) ) ).
% maps_simps(1)
thf(fact_388_maps__simps_I1_J,axiom,
! [F: nat > list_f,X: nat,Xs3: list_nat] :
( ( maps_nat_f @ F @ ( cons_nat @ X @ Xs3 ) )
= ( append_f @ ( F @ X ) @ ( maps_nat_f @ F @ Xs3 ) ) ) ).
% maps_simps(1)
thf(fact_389_maps__simps_I1_J,axiom,
! [F: nat > list_nat,X: nat,Xs3: list_nat] :
( ( maps_nat_nat @ F @ ( cons_nat @ X @ Xs3 ) )
= ( append_nat @ ( F @ X ) @ ( maps_nat_nat @ F @ Xs3 ) ) ) ).
% maps_simps(1)
thf(fact_390_maps__simps_I1_J,axiom,
! [F: produc2642885279816024434ropVar > list_f,X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( maps_P2527380396400262994pVar_f @ F @ ( cons_P1504208554336013608ropVar @ X @ Xs3 ) )
= ( append_f @ ( F @ X ) @ ( maps_P2527380396400262994pVar_f @ F @ Xs3 ) ) ) ).
% maps_simps(1)
thf(fact_391_maps__simps_I1_J,axiom,
! [F: produc2642885279816024434ropVar > list_nat,X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( maps_P2882123423910056385ar_nat @ F @ ( cons_P1504208554336013608ropVar @ X @ Xs3 ) )
= ( append_nat @ ( F @ X ) @ ( maps_P2882123423910056385ar_nat @ F @ Xs3 ) ) ) ).
% maps_simps(1)
thf(fact_392_encoder_Oeval__all__append,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Fs: list_f,Gs: list_f,Alpha: multis3193088007478089820ropVar > $o] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( append_f @ Fs @ Gs ) ) )
=> ( Eval @ Alpha @ X3 ) ) )
= ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Fs ) )
=> ( Eval @ Alpha @ X3 ) )
& ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Gs ) )
=> ( Eval @ Alpha @ X3 ) ) ) ) ) ).
% encoder.eval_all_append
thf(fact_393_not__Cons__self2,axiom,
! [X: f,Xs3: list_f] :
( ( cons_f @ X @ Xs3 )
!= Xs3 ) ).
% not_Cons_self2
thf(fact_394_not__Cons__self2,axiom,
! [X: nat,Xs3: list_nat] :
( ( cons_nat @ X @ Xs3 )
!= Xs3 ) ).
% not_Cons_self2
thf(fact_395_not__Cons__self2,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( cons_P1504208554336013608ropVar @ X @ Xs3 )
!= Xs3 ) ).
% not_Cons_self2
thf(fact_396_encoder_Oeval__all__concat,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Fs: list_list_f,Alpha: multis3193088007478089820ropVar > $o] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ ( concat_f @ Fs ) ) )
=> ( Eval @ Alpha @ X3 ) ) )
= ( ! [X3: list_f] :
( ( member_list_f @ X3 @ ( set_list_f2 @ Fs ) )
=> ! [Y2: f] :
( ( member_f @ Y2 @ ( set_f2 @ X3 ) )
=> ( Eval @ Alpha @ Y2 ) ) ) ) ) ) ).
% encoder.eval_all_concat
thf(fact_397_less__nat__zero__code,axiom,
! [N: nat] :
~ ( ord_less_nat @ N @ zero_zero_nat ) ).
% less_nat_zero_code
thf(fact_398_neq0__conv,axiom,
! [N: nat] :
( ( N != zero_zero_nat )
= ( ord_less_nat @ zero_zero_nat @ N ) ) ).
% neq0_conv
thf(fact_399_bot__nat__0_Onot__eq__extremum,axiom,
! [A: nat] :
( ( A != zero_zero_nat )
= ( ord_less_nat @ zero_zero_nat @ A ) ) ).
% bot_nat_0.not_eq_extremum
thf(fact_400_not__gr__zero,axiom,
! [N: nat] :
( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
= ( N = zero_zero_nat ) ) ).
% not_gr_zero
thf(fact_401__C16_C,axiom,
? [X4: nat] :
( ( member_nat @ X4 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ n ) )
& ~ ( v2 @ ( multis2544335231667181926psilon @ X4 ) ) ) ).
% "16"
thf(fact_402_formula15__def,axiom,
! [Cs: nat > nat > $o,Cns: nat > nat > $o,N: nat,M: nat] :
( ( multis7684816351888833198la15_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and @ Cs @ Cns @ N @ M )
= ( append_f
@ ( maps_nat_f
@ ^ [I2: nat] :
( maps_nat_f
@ ^ [J2: nat] :
( if_list_f
@ ( ( Cs @ I2 @ J2 )
& ( Cns @ I2 @ J2 ) )
@ nil_f
@ ( cons_f @ ( multis1454621290665623088ropVar @ enc_True @ enc_neg @ enc_var_impl @ enc_not_and @ ( multis387687052011358179_Gamma @ I2 @ J2 ) @ ( multis2544335231667181926psilon @ I2 ) @ ( Cs @ I2 @ J2 ) @ ( Cns @ I2 @ J2 ) ) @ nil_f ) )
@ ( upt @ zero_zero_nat @ M ) )
@ ( upt @ zero_zero_nat @ N ) )
@ ( multis1248899897006733423la14_f @ enc_False @ enc_pos @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ N @ M ) ) ) ).
% formula15_def
thf(fact_403_infinite__descent0,axiom,
! [P: nat > $o,N: nat] :
( ( P @ zero_zero_nat )
=> ( ! [N2: nat] :
( ( ord_less_nat @ zero_zero_nat @ N2 )
=> ( ~ ( P @ N2 )
=> ? [M2: nat] :
( ( ord_less_nat @ M2 @ N2 )
& ~ ( P @ M2 ) ) ) )
=> ( P @ N ) ) ) ).
% infinite_descent0
thf(fact_404_gr__implies__not0,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ( N != zero_zero_nat ) ) ).
% gr_implies_not0
thf(fact_405_map__ident,axiom,
( ( map_nat_nat
@ ^ [X3: nat] : X3 )
= ( ^ [Xs: list_nat] : Xs ) ) ).
% map_ident
thf(fact_406_list_Omap__disc__iff,axiom,
! [F: f > f,A: list_f] :
( ( ( map_f_f @ F @ A )
= nil_f )
= ( A = nil_f ) ) ).
% list.map_disc_iff
thf(fact_407_list_Omap__disc__iff,axiom,
! [F: nat > f,A: list_nat] :
( ( ( map_nat_f @ F @ A )
= nil_f )
= ( A = nil_nat ) ) ).
% list.map_disc_iff
thf(fact_408_list_Omap__disc__iff,axiom,
! [F: a > f,A: list_a] :
( ( ( map_a_f @ F @ A )
= nil_f )
= ( A = nil_a ) ) ).
% list.map_disc_iff
thf(fact_409_list_Omap__disc__iff,axiom,
! [F: f > nat,A: list_f] :
( ( ( map_f_nat @ F @ A )
= nil_nat )
= ( A = nil_f ) ) ).
% list.map_disc_iff
thf(fact_410_list_Omap__disc__iff,axiom,
! [F: a > nat,A: list_a] :
( ( ( map_a_nat @ F @ A )
= nil_nat )
= ( A = nil_a ) ) ).
% list.map_disc_iff
thf(fact_411_list_Omap__disc__iff,axiom,
! [F: f > a,A: list_f] :
( ( ( map_f_a @ F @ A )
= nil_a )
= ( A = nil_f ) ) ).
% list.map_disc_iff
thf(fact_412_list_Omap__disc__iff,axiom,
! [F: a > a,A: list_a] :
( ( ( map_a_a @ F @ A )
= nil_a )
= ( A = nil_a ) ) ).
% list.map_disc_iff
thf(fact_413_list_Omap__disc__iff,axiom,
! [F: nat > multis3193088007478089820ropVar,A: list_nat] :
( ( ( map_na2466558649495876678ropVar @ F @ A )
= nil_Mu4132399263956683874ropVar )
= ( A = nil_nat ) ) ).
% list.map_disc_iff
thf(fact_414_list_Omap__disc__iff,axiom,
! [F: nat > a,A: list_nat] :
( ( ( map_nat_a @ F @ A )
= nil_a )
= ( A = nil_nat ) ) ).
% list.map_disc_iff
thf(fact_415_list_Omap__disc__iff,axiom,
! [F: nat > nat,A: list_nat] :
( ( ( map_nat_nat @ F @ A )
= nil_nat )
= ( A = nil_nat ) ) ).
% list.map_disc_iff
thf(fact_416_Nil__is__map__conv,axiom,
! [F: f > f,Xs3: list_f] :
( ( nil_f
= ( map_f_f @ F @ Xs3 ) )
= ( Xs3 = nil_f ) ) ).
% Nil_is_map_conv
thf(fact_417_Nil__is__map__conv,axiom,
! [F: nat > f,Xs3: list_nat] :
( ( nil_f
= ( map_nat_f @ F @ Xs3 ) )
= ( Xs3 = nil_nat ) ) ).
% Nil_is_map_conv
thf(fact_418_Nil__is__map__conv,axiom,
! [F: a > f,Xs3: list_a] :
( ( nil_f
= ( map_a_f @ F @ Xs3 ) )
= ( Xs3 = nil_a ) ) ).
% Nil_is_map_conv
thf(fact_419_Nil__is__map__conv,axiom,
! [F: f > nat,Xs3: list_f] :
( ( nil_nat
= ( map_f_nat @ F @ Xs3 ) )
= ( Xs3 = nil_f ) ) ).
% Nil_is_map_conv
thf(fact_420_Nil__is__map__conv,axiom,
! [F: a > nat,Xs3: list_a] :
( ( nil_nat
= ( map_a_nat @ F @ Xs3 ) )
= ( Xs3 = nil_a ) ) ).
% Nil_is_map_conv
thf(fact_421_Nil__is__map__conv,axiom,
! [F: f > a,Xs3: list_f] :
( ( nil_a
= ( map_f_a @ F @ Xs3 ) )
= ( Xs3 = nil_f ) ) ).
% Nil_is_map_conv
thf(fact_422_Nil__is__map__conv,axiom,
! [F: a > a,Xs3: list_a] :
( ( nil_a
= ( map_a_a @ F @ Xs3 ) )
= ( Xs3 = nil_a ) ) ).
% Nil_is_map_conv
thf(fact_423_Nil__is__map__conv,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_nat] :
( ( nil_Mu4132399263956683874ropVar
= ( map_na2466558649495876678ropVar @ F @ Xs3 ) )
= ( Xs3 = nil_nat ) ) ).
% Nil_is_map_conv
thf(fact_424_Nil__is__map__conv,axiom,
! [F: nat > a,Xs3: list_nat] :
( ( nil_a
= ( map_nat_a @ F @ Xs3 ) )
= ( Xs3 = nil_nat ) ) ).
% Nil_is_map_conv
thf(fact_425_Nil__is__map__conv,axiom,
! [F: nat > nat,Xs3: list_nat] :
( ( nil_nat
= ( map_nat_nat @ F @ Xs3 ) )
= ( Xs3 = nil_nat ) ) ).
% Nil_is_map_conv
thf(fact_426_map__is__Nil__conv,axiom,
! [F: f > f,Xs3: list_f] :
( ( ( map_f_f @ F @ Xs3 )
= nil_f )
= ( Xs3 = nil_f ) ) ).
% map_is_Nil_conv
thf(fact_427_map__is__Nil__conv,axiom,
! [F: nat > f,Xs3: list_nat] :
( ( ( map_nat_f @ F @ Xs3 )
= nil_f )
= ( Xs3 = nil_nat ) ) ).
% map_is_Nil_conv
thf(fact_428_map__is__Nil__conv,axiom,
! [F: a > f,Xs3: list_a] :
( ( ( map_a_f @ F @ Xs3 )
= nil_f )
= ( Xs3 = nil_a ) ) ).
% map_is_Nil_conv
thf(fact_429_map__is__Nil__conv,axiom,
! [F: f > nat,Xs3: list_f] :
( ( ( map_f_nat @ F @ Xs3 )
= nil_nat )
= ( Xs3 = nil_f ) ) ).
% map_is_Nil_conv
thf(fact_430_map__is__Nil__conv,axiom,
! [F: a > nat,Xs3: list_a] :
( ( ( map_a_nat @ F @ Xs3 )
= nil_nat )
= ( Xs3 = nil_a ) ) ).
% map_is_Nil_conv
thf(fact_431_map__is__Nil__conv,axiom,
! [F: f > a,Xs3: list_f] :
( ( ( map_f_a @ F @ Xs3 )
= nil_a )
= ( Xs3 = nil_f ) ) ).
% map_is_Nil_conv
thf(fact_432_map__is__Nil__conv,axiom,
! [F: a > a,Xs3: list_a] :
( ( ( map_a_a @ F @ Xs3 )
= nil_a )
= ( Xs3 = nil_a ) ) ).
% map_is_Nil_conv
thf(fact_433_map__is__Nil__conv,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_nat] :
( ( ( map_na2466558649495876678ropVar @ F @ Xs3 )
= nil_Mu4132399263956683874ropVar )
= ( Xs3 = nil_nat ) ) ).
% map_is_Nil_conv
thf(fact_434_map__is__Nil__conv,axiom,
! [F: nat > a,Xs3: list_nat] :
( ( ( map_nat_a @ F @ Xs3 )
= nil_a )
= ( Xs3 = nil_nat ) ) ).
% map_is_Nil_conv
thf(fact_435_map__is__Nil__conv,axiom,
! [F: nat > nat,Xs3: list_nat] :
( ( ( map_nat_nat @ F @ Xs3 )
= nil_nat )
= ( Xs3 = nil_nat ) ) ).
% map_is_Nil_conv
thf(fact_436_append_Oright__neutral,axiom,
! [A: list_f] :
( ( append_f @ A @ nil_f )
= A ) ).
% append.right_neutral
thf(fact_437_append_Oright__neutral,axiom,
! [A: list_nat] :
( ( append_nat @ A @ nil_nat )
= A ) ).
% append.right_neutral
thf(fact_438_append_Oright__neutral,axiom,
! [A: list_a] :
( ( append_a @ A @ nil_a )
= A ) ).
% append.right_neutral
thf(fact_439_append_Oright__neutral,axiom,
! [A: list_P8791008543742759928ropVar] :
( ( append4352292717583037453ropVar @ A @ nil_Pr6119456312066593144ropVar )
= A ) ).
% append.right_neutral
thf(fact_440_append__Nil2,axiom,
! [Xs3: list_f] :
( ( append_f @ Xs3 @ nil_f )
= Xs3 ) ).
% append_Nil2
thf(fact_441_append__Nil2,axiom,
! [Xs3: list_nat] :
( ( append_nat @ Xs3 @ nil_nat )
= Xs3 ) ).
% append_Nil2
thf(fact_442_append__Nil2,axiom,
! [Xs3: list_a] :
( ( append_a @ Xs3 @ nil_a )
= Xs3 ) ).
% append_Nil2
thf(fact_443_append__Nil2,axiom,
! [Xs3: list_P8791008543742759928ropVar] :
( ( append4352292717583037453ropVar @ Xs3 @ nil_Pr6119456312066593144ropVar )
= Xs3 ) ).
% append_Nil2
thf(fact_444_append__self__conv,axiom,
! [Xs3: list_f,Ys: list_f] :
( ( ( append_f @ Xs3 @ Ys )
= Xs3 )
= ( Ys = nil_f ) ) ).
% append_self_conv
thf(fact_445_append__self__conv,axiom,
! [Xs3: list_nat,Ys: list_nat] :
( ( ( append_nat @ Xs3 @ Ys )
= Xs3 )
= ( Ys = nil_nat ) ) ).
% append_self_conv
thf(fact_446_append__self__conv,axiom,
! [Xs3: list_a,Ys: list_a] :
( ( ( append_a @ Xs3 @ Ys )
= Xs3 )
= ( Ys = nil_a ) ) ).
% append_self_conv
thf(fact_447_append__self__conv,axiom,
! [Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar] :
( ( ( append4352292717583037453ropVar @ Xs3 @ Ys )
= Xs3 )
= ( Ys = nil_Pr6119456312066593144ropVar ) ) ).
% append_self_conv
thf(fact_448_self__append__conv,axiom,
! [Y: list_f,Ys: list_f] :
( ( Y
= ( append_f @ Y @ Ys ) )
= ( Ys = nil_f ) ) ).
% self_append_conv
thf(fact_449_self__append__conv,axiom,
! [Y: list_nat,Ys: list_nat] :
( ( Y
= ( append_nat @ Y @ Ys ) )
= ( Ys = nil_nat ) ) ).
% self_append_conv
thf(fact_450_self__append__conv,axiom,
! [Y: list_a,Ys: list_a] :
( ( Y
= ( append_a @ Y @ Ys ) )
= ( Ys = nil_a ) ) ).
% self_append_conv
thf(fact_451_self__append__conv,axiom,
! [Y: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar] :
( ( Y
= ( append4352292717583037453ropVar @ Y @ Ys ) )
= ( Ys = nil_Pr6119456312066593144ropVar ) ) ).
% self_append_conv
thf(fact_452_append__self__conv2,axiom,
! [Xs3: list_f,Ys: list_f] :
( ( ( append_f @ Xs3 @ Ys )
= Ys )
= ( Xs3 = nil_f ) ) ).
% append_self_conv2
thf(fact_453_append__self__conv2,axiom,
! [Xs3: list_nat,Ys: list_nat] :
( ( ( append_nat @ Xs3 @ Ys )
= Ys )
= ( Xs3 = nil_nat ) ) ).
% append_self_conv2
thf(fact_454_append__self__conv2,axiom,
! [Xs3: list_a,Ys: list_a] :
( ( ( append_a @ Xs3 @ Ys )
= Ys )
= ( Xs3 = nil_a ) ) ).
% append_self_conv2
thf(fact_455_append__self__conv2,axiom,
! [Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar] :
( ( ( append4352292717583037453ropVar @ Xs3 @ Ys )
= Ys )
= ( Xs3 = nil_Pr6119456312066593144ropVar ) ) ).
% append_self_conv2
thf(fact_456_self__append__conv2,axiom,
! [Y: list_f,Xs3: list_f] :
( ( Y
= ( append_f @ Xs3 @ Y ) )
= ( Xs3 = nil_f ) ) ).
% self_append_conv2
thf(fact_457_self__append__conv2,axiom,
! [Y: list_nat,Xs3: list_nat] :
( ( Y
= ( append_nat @ Xs3 @ Y ) )
= ( Xs3 = nil_nat ) ) ).
% self_append_conv2
thf(fact_458_self__append__conv2,axiom,
! [Y: list_a,Xs3: list_a] :
( ( Y
= ( append_a @ Xs3 @ Y ) )
= ( Xs3 = nil_a ) ) ).
% self_append_conv2
thf(fact_459_self__append__conv2,axiom,
! [Y: list_P8791008543742759928ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( Y
= ( append4352292717583037453ropVar @ Xs3 @ Y ) )
= ( Xs3 = nil_Pr6119456312066593144ropVar ) ) ).
% self_append_conv2
thf(fact_460_Nil__is__append__conv,axiom,
! [Xs3: list_f,Ys: list_f] :
( ( nil_f
= ( append_f @ Xs3 @ Ys ) )
= ( ( Xs3 = nil_f )
& ( Ys = nil_f ) ) ) ).
% Nil_is_append_conv
thf(fact_461_Nil__is__append__conv,axiom,
! [Xs3: list_nat,Ys: list_nat] :
( ( nil_nat
= ( append_nat @ Xs3 @ Ys ) )
= ( ( Xs3 = nil_nat )
& ( Ys = nil_nat ) ) ) ).
% Nil_is_append_conv
thf(fact_462_Nil__is__append__conv,axiom,
! [Xs3: list_a,Ys: list_a] :
( ( nil_a
= ( append_a @ Xs3 @ Ys ) )
= ( ( Xs3 = nil_a )
& ( Ys = nil_a ) ) ) ).
% Nil_is_append_conv
thf(fact_463_Nil__is__append__conv,axiom,
! [Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar] :
( ( nil_Pr6119456312066593144ropVar
= ( append4352292717583037453ropVar @ Xs3 @ Ys ) )
= ( ( Xs3 = nil_Pr6119456312066593144ropVar )
& ( Ys = nil_Pr6119456312066593144ropVar ) ) ) ).
% Nil_is_append_conv
thf(fact_464_append__is__Nil__conv,axiom,
! [Xs3: list_f,Ys: list_f] :
( ( ( append_f @ Xs3 @ Ys )
= nil_f )
= ( ( Xs3 = nil_f )
& ( Ys = nil_f ) ) ) ).
% append_is_Nil_conv
thf(fact_465_append__is__Nil__conv,axiom,
! [Xs3: list_nat,Ys: list_nat] :
( ( ( append_nat @ Xs3 @ Ys )
= nil_nat )
= ( ( Xs3 = nil_nat )
& ( Ys = nil_nat ) ) ) ).
% append_is_Nil_conv
thf(fact_466_append__is__Nil__conv,axiom,
! [Xs3: list_a,Ys: list_a] :
( ( ( append_a @ Xs3 @ Ys )
= nil_a )
= ( ( Xs3 = nil_a )
& ( Ys = nil_a ) ) ) ).
% append_is_Nil_conv
thf(fact_467_append__is__Nil__conv,axiom,
! [Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar] :
( ( ( append4352292717583037453ropVar @ Xs3 @ Ys )
= nil_Pr6119456312066593144ropVar )
= ( ( Xs3 = nil_Pr6119456312066593144ropVar )
& ( Ys = nil_Pr6119456312066593144ropVar ) ) ) ).
% append_is_Nil_conv
thf(fact_468_append1__eq__conv,axiom,
! [Xs3: list_a,X: a,Ys: list_a,Y: a] :
( ( ( append_a @ Xs3 @ ( cons_a @ X @ nil_a ) )
= ( append_a @ Ys @ ( cons_a @ Y @ nil_a ) ) )
= ( ( Xs3 = Ys )
& ( X = Y ) ) ) ).
% append1_eq_conv
thf(fact_469_append1__eq__conv,axiom,
! [Xs3: list_f,X: f,Ys: list_f,Y: f] :
( ( ( append_f @ Xs3 @ ( cons_f @ X @ nil_f ) )
= ( append_f @ Ys @ ( cons_f @ Y @ nil_f ) ) )
= ( ( Xs3 = Ys )
& ( X = Y ) ) ) ).
% append1_eq_conv
thf(fact_470_append1__eq__conv,axiom,
! [Xs3: list_nat,X: nat,Ys: list_nat,Y: nat] :
( ( ( append_nat @ Xs3 @ ( cons_nat @ X @ nil_nat ) )
= ( append_nat @ Ys @ ( cons_nat @ Y @ nil_nat ) ) )
= ( ( Xs3 = Ys )
& ( X = Y ) ) ) ).
% append1_eq_conv
thf(fact_471_append1__eq__conv,axiom,
! [Xs3: list_P8791008543742759928ropVar,X: produc2642885279816024434ropVar,Ys: list_P8791008543742759928ropVar,Y: produc2642885279816024434ropVar] :
( ( ( append4352292717583037453ropVar @ Xs3 @ ( cons_P1504208554336013608ropVar @ X @ nil_Pr6119456312066593144ropVar ) )
= ( append4352292717583037453ropVar @ Ys @ ( cons_P1504208554336013608ropVar @ Y @ nil_Pr6119456312066593144ropVar ) ) )
= ( ( Xs3 = Ys )
& ( X = Y ) ) ) ).
% append1_eq_conv
thf(fact_472_concat__eq__Nil__conv,axiom,
! [Xss: list_list_nat] :
( ( ( concat_nat @ Xss )
= nil_nat )
= ( ! [X3: list_nat] :
( ( member_list_nat @ X3 @ ( set_list_nat2 @ Xss ) )
=> ( X3 = nil_nat ) ) ) ) ).
% concat_eq_Nil_conv
thf(fact_473_concat__eq__Nil__conv,axiom,
! [Xss: list_list_a] :
( ( ( concat_a @ Xss )
= nil_a )
= ( ! [X3: list_a] :
( ( member_list_a @ X3 @ ( set_list_a2 @ Xss ) )
=> ( X3 = nil_a ) ) ) ) ).
% concat_eq_Nil_conv
thf(fact_474_concat__eq__Nil__conv,axiom,
! [Xss: list_l3415868495287753214ropVar] :
( ( ( concat1830633707478507187ropVar @ Xss )
= nil_Pr6119456312066593144ropVar )
= ( ! [X3: list_P8791008543742759928ropVar] :
( ( member6236339133593825953ropVar @ X3 @ ( set_li6509544621384488717ropVar @ Xss ) )
=> ( X3 = nil_Pr6119456312066593144ropVar ) ) ) ) ).
% concat_eq_Nil_conv
thf(fact_475_concat__eq__Nil__conv,axiom,
! [Xss: list_list_f] :
( ( ( concat_f @ Xss )
= nil_f )
= ( ! [X3: list_f] :
( ( member_list_f @ X3 @ ( set_list_f2 @ Xss ) )
=> ( X3 = nil_f ) ) ) ) ).
% concat_eq_Nil_conv
thf(fact_476_Nil__eq__concat__conv,axiom,
! [Xss: list_list_nat] :
( ( nil_nat
= ( concat_nat @ Xss ) )
= ( ! [X3: list_nat] :
( ( member_list_nat @ X3 @ ( set_list_nat2 @ Xss ) )
=> ( X3 = nil_nat ) ) ) ) ).
% Nil_eq_concat_conv
thf(fact_477_Nil__eq__concat__conv,axiom,
! [Xss: list_list_a] :
( ( nil_a
= ( concat_a @ Xss ) )
= ( ! [X3: list_a] :
( ( member_list_a @ X3 @ ( set_list_a2 @ Xss ) )
=> ( X3 = nil_a ) ) ) ) ).
% Nil_eq_concat_conv
thf(fact_478_Nil__eq__concat__conv,axiom,
! [Xss: list_l3415868495287753214ropVar] :
( ( nil_Pr6119456312066593144ropVar
= ( concat1830633707478507187ropVar @ Xss ) )
= ( ! [X3: list_P8791008543742759928ropVar] :
( ( member6236339133593825953ropVar @ X3 @ ( set_li6509544621384488717ropVar @ Xss ) )
=> ( X3 = nil_Pr6119456312066593144ropVar ) ) ) ) ).
% Nil_eq_concat_conv
thf(fact_479_Nil__eq__concat__conv,axiom,
! [Xss: list_list_f] :
( ( nil_f
= ( concat_f @ Xss ) )
= ( ! [X3: list_f] :
( ( member_list_f @ X3 @ ( set_list_f2 @ Xss ) )
=> ( X3 = nil_f ) ) ) ) ).
% Nil_eq_concat_conv
thf(fact_480_concat__map__singleton,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_nat] :
( ( concat2729506608927398813ropVar
@ ( map_na5381558106008680140ropVar
@ ^ [X3: nat] : ( cons_M4277272395645347858ropVar @ ( F @ X3 ) @ nil_Mu4132399263956683874ropVar )
@ Xs3 ) )
= ( map_na2466558649495876678ropVar @ F @ Xs3 ) ) ).
% concat_map_singleton
thf(fact_481_concat__map__singleton,axiom,
! [F: nat > a,Xs3: list_nat] :
( ( concat_a
@ ( map_nat_list_a
@ ^ [X3: nat] : ( cons_a @ ( F @ X3 ) @ nil_a )
@ Xs3 ) )
= ( map_nat_a @ F @ Xs3 ) ) ).
% concat_map_singleton
thf(fact_482_concat__map__singleton,axiom,
! [F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( concat2729506608927398813ropVar
@ ( map_Pr363398673241384500ropVar
@ ^ [X3: produc2642885279816024434ropVar] : ( cons_M4277272395645347858ropVar @ ( F @ X3 ) @ nil_Mu4132399263956683874ropVar )
@ Xs3 ) )
= ( map_Pr3335389669906741166ropVar @ F @ Xs3 ) ) ).
% concat_map_singleton
thf(fact_483_concat__map__singleton,axiom,
! [F: nat > nat,Xs3: list_nat] :
( ( concat_nat
@ ( map_nat_list_nat
@ ^ [X3: nat] : ( cons_nat @ ( F @ X3 ) @ nil_nat )
@ Xs3 ) )
= ( map_nat_nat @ F @ Xs3 ) ) ).
% concat_map_singleton
thf(fact_484_concat__map__singleton,axiom,
! [F: nat > produc2642885279816024434ropVar,Xs3: list_nat] :
( ( concat1830633707478507187ropVar
@ ( map_na2676018863266313954ropVar
@ ^ [X3: nat] : ( cons_P1504208554336013608ropVar @ ( F @ X3 ) @ nil_Pr6119456312066593144ropVar )
@ Xs3 ) )
= ( map_na2145702811007361372ropVar @ F @ Xs3 ) ) ).
% concat_map_singleton
thf(fact_485_list_Omap__ident,axiom,
! [T: list_nat] :
( ( map_nat_nat
@ ^ [X3: nat] : X3
@ T )
= T ) ).
% list.map_ident
thf(fact_486_transpose_Ocases,axiom,
! [X: list_list_a] :
( ( X != nil_list_a )
=> ( ! [Xss2: list_list_a] :
( X
!= ( cons_list_a @ nil_a @ Xss2 ) )
=> ~ ! [X4: a,Xs2: list_a,Xss2: list_list_a] :
( X
!= ( cons_list_a @ ( cons_a @ X4 @ Xs2 ) @ Xss2 ) ) ) ) ).
% transpose.cases
thf(fact_487_transpose_Ocases,axiom,
! [X: list_list_f] :
( ( X != nil_list_f )
=> ( ! [Xss2: list_list_f] :
( X
!= ( cons_list_f @ nil_f @ Xss2 ) )
=> ~ ! [X4: f,Xs2: list_f,Xss2: list_list_f] :
( X
!= ( cons_list_f @ ( cons_f @ X4 @ Xs2 ) @ Xss2 ) ) ) ) ).
% transpose.cases
thf(fact_488_transpose_Ocases,axiom,
! [X: list_list_nat] :
( ( X != nil_list_nat )
=> ( ! [Xss2: list_list_nat] :
( X
!= ( cons_list_nat @ nil_nat @ Xss2 ) )
=> ~ ! [X4: nat,Xs2: list_nat,Xss2: list_list_nat] :
( X
!= ( cons_list_nat @ ( cons_nat @ X4 @ Xs2 ) @ Xss2 ) ) ) ) ).
% transpose.cases
thf(fact_489_transpose_Ocases,axiom,
! [X: list_l3415868495287753214ropVar] :
( ( X != nil_li2679230897895549182ropVar )
=> ( ! [Xss2: list_l3415868495287753214ropVar] :
( X
!= ( cons_l5280711761816980654ropVar @ nil_Pr6119456312066593144ropVar @ Xss2 ) )
=> ~ ! [X4: produc2642885279816024434ropVar,Xs2: list_P8791008543742759928ropVar,Xss2: list_l3415868495287753214ropVar] :
( X
!= ( cons_l5280711761816980654ropVar @ ( cons_P1504208554336013608ropVar @ X4 @ Xs2 ) @ Xss2 ) ) ) ) ).
% transpose.cases
thf(fact_490_concat_Osimps_I1_J,axiom,
( ( concat_f @ nil_list_f )
= nil_f ) ).
% concat.simps(1)
thf(fact_491_concat_Osimps_I1_J,axiom,
( ( concat_nat @ nil_list_nat )
= nil_nat ) ).
% concat.simps(1)
thf(fact_492_concat_Osimps_I1_J,axiom,
( ( concat_a @ nil_list_a )
= nil_a ) ).
% concat.simps(1)
thf(fact_493_concat_Osimps_I1_J,axiom,
( ( concat1830633707478507187ropVar @ nil_li2679230897895549182ropVar )
= nil_Pr6119456312066593144ropVar ) ).
% concat.simps(1)
thf(fact_494_concat__eq__append__conv,axiom,
! [Xss: list_list_f,Ys: list_f,Zs: list_f] :
( ( ( concat_f @ Xss )
= ( append_f @ Ys @ Zs ) )
= ( ( ( Xss = nil_list_f )
=> ( ( Ys = nil_f )
& ( Zs = nil_f ) ) )
& ( ( Xss != nil_list_f )
=> ? [Xss1: list_list_f,Xs: list_f,Xs5: list_f,Xss22: list_list_f] :
( ( Xss
= ( append_list_f @ Xss1 @ ( cons_list_f @ ( append_f @ Xs @ Xs5 ) @ Xss22 ) ) )
& ( Ys
= ( append_f @ ( concat_f @ Xss1 ) @ Xs ) )
& ( Zs
= ( append_f @ Xs5 @ ( concat_f @ Xss22 ) ) ) ) ) ) ) ).
% concat_eq_append_conv
thf(fact_495_concat__eq__append__conv,axiom,
! [Xss: list_list_nat,Ys: list_nat,Zs: list_nat] :
( ( ( concat_nat @ Xss )
= ( append_nat @ Ys @ Zs ) )
= ( ( ( Xss = nil_list_nat )
=> ( ( Ys = nil_nat )
& ( Zs = nil_nat ) ) )
& ( ( Xss != nil_list_nat )
=> ? [Xss1: list_list_nat,Xs: list_nat,Xs5: list_nat,Xss22: list_list_nat] :
( ( Xss
= ( append_list_nat @ Xss1 @ ( cons_list_nat @ ( append_nat @ Xs @ Xs5 ) @ Xss22 ) ) )
& ( Ys
= ( append_nat @ ( concat_nat @ Xss1 ) @ Xs ) )
& ( Zs
= ( append_nat @ Xs5 @ ( concat_nat @ Xss22 ) ) ) ) ) ) ) ).
% concat_eq_append_conv
thf(fact_496_concat__eq__append__conv,axiom,
! [Xss: list_list_a,Ys: list_a,Zs: list_a] :
( ( ( concat_a @ Xss )
= ( append_a @ Ys @ Zs ) )
= ( ( ( Xss = nil_list_a )
=> ( ( Ys = nil_a )
& ( Zs = nil_a ) ) )
& ( ( Xss != nil_list_a )
=> ? [Xss1: list_list_a,Xs: list_a,Xs5: list_a,Xss22: list_list_a] :
( ( Xss
= ( append_list_a @ Xss1 @ ( cons_list_a @ ( append_a @ Xs @ Xs5 ) @ Xss22 ) ) )
& ( Ys
= ( append_a @ ( concat_a @ Xss1 ) @ Xs ) )
& ( Zs
= ( append_a @ Xs5 @ ( concat_a @ Xss22 ) ) ) ) ) ) ) ).
% concat_eq_append_conv
thf(fact_497_concat__eq__append__conv,axiom,
! [Xss: list_l3415868495287753214ropVar,Ys: list_P8791008543742759928ropVar,Zs: list_P8791008543742759928ropVar] :
( ( ( concat1830633707478507187ropVar @ Xss )
= ( append4352292717583037453ropVar @ Ys @ Zs ) )
= ( ( ( Xss = nil_li2679230897895549182ropVar )
=> ( ( Ys = nil_Pr6119456312066593144ropVar )
& ( Zs = nil_Pr6119456312066593144ropVar ) ) )
& ( ( Xss != nil_li2679230897895549182ropVar )
=> ? [Xss1: list_l3415868495287753214ropVar,Xs: list_P8791008543742759928ropVar,Xs5: list_P8791008543742759928ropVar,Xss22: list_l3415868495287753214ropVar] :
( ( Xss
= ( append4316637162825710867ropVar @ Xss1 @ ( cons_l5280711761816980654ropVar @ ( append4352292717583037453ropVar @ Xs @ Xs5 ) @ Xss22 ) ) )
& ( Ys
= ( append4352292717583037453ropVar @ ( concat1830633707478507187ropVar @ Xss1 ) @ Xs ) )
& ( Zs
= ( append4352292717583037453ropVar @ Xs5 @ ( concat1830633707478507187ropVar @ Xss22 ) ) ) ) ) ) ) ).
% concat_eq_append_conv
thf(fact_498_atLeastLessThan__upt,axiom,
( set_or4665077453230672383an_nat
= ( ^ [I2: nat,J2: nat] : ( set_nat2 @ ( upt @ I2 @ J2 ) ) ) ) ).
% atLeastLessThan_upt
thf(fact_499_list_Odistinct_I1_J,axiom,
! [X21: a,X22: list_a] :
( nil_a
!= ( cons_a @ X21 @ X22 ) ) ).
% list.distinct(1)
thf(fact_500_list_Odistinct_I1_J,axiom,
! [X21: f,X22: list_f] :
( nil_f
!= ( cons_f @ X21 @ X22 ) ) ).
% list.distinct(1)
thf(fact_501_list_Odistinct_I1_J,axiom,
! [X21: nat,X22: list_nat] :
( nil_nat
!= ( cons_nat @ X21 @ X22 ) ) ).
% list.distinct(1)
thf(fact_502_list_Odistinct_I1_J,axiom,
! [X21: produc2642885279816024434ropVar,X22: list_P8791008543742759928ropVar] :
( nil_Pr6119456312066593144ropVar
!= ( cons_P1504208554336013608ropVar @ X21 @ X22 ) ) ).
% list.distinct(1)
thf(fact_503_list_OdiscI,axiom,
! [List: list_a,X21: a,X22: list_a] :
( ( List
= ( cons_a @ X21 @ X22 ) )
=> ( List != nil_a ) ) ).
% list.discI
thf(fact_504_list_OdiscI,axiom,
! [List: list_f,X21: f,X22: list_f] :
( ( List
= ( cons_f @ X21 @ X22 ) )
=> ( List != nil_f ) ) ).
% list.discI
thf(fact_505_list_OdiscI,axiom,
! [List: list_nat,X21: nat,X22: list_nat] :
( ( List
= ( cons_nat @ X21 @ X22 ) )
=> ( List != nil_nat ) ) ).
% list.discI
thf(fact_506_list_OdiscI,axiom,
! [List: list_P8791008543742759928ropVar,X21: produc2642885279816024434ropVar,X22: list_P8791008543742759928ropVar] :
( ( List
= ( cons_P1504208554336013608ropVar @ X21 @ X22 ) )
=> ( List != nil_Pr6119456312066593144ropVar ) ) ).
% list.discI
thf(fact_507_list_Oexhaust,axiom,
! [Y: list_a] :
( ( Y != nil_a )
=> ~ ! [X212: a,X222: list_a] :
( Y
!= ( cons_a @ X212 @ X222 ) ) ) ).
% list.exhaust
thf(fact_508_list_Oexhaust,axiom,
! [Y: list_f] :
( ( Y != nil_f )
=> ~ ! [X212: f,X222: list_f] :
( Y
!= ( cons_f @ X212 @ X222 ) ) ) ).
% list.exhaust
thf(fact_509_list_Oexhaust,axiom,
! [Y: list_nat] :
( ( Y != nil_nat )
=> ~ ! [X212: nat,X222: list_nat] :
( Y
!= ( cons_nat @ X212 @ X222 ) ) ) ).
% list.exhaust
thf(fact_510_list_Oexhaust,axiom,
! [Y: list_P8791008543742759928ropVar] :
( ( Y != nil_Pr6119456312066593144ropVar )
=> ~ ! [X212: produc2642885279816024434ropVar,X222: list_P8791008543742759928ropVar] :
( Y
!= ( cons_P1504208554336013608ropVar @ X212 @ X222 ) ) ) ).
% list.exhaust
thf(fact_511_min__list_Ocases,axiom,
! [X: list_nat] :
( ! [X4: nat,Xs2: list_nat] :
( X
!= ( cons_nat @ X4 @ Xs2 ) )
=> ( X = nil_nat ) ) ).
% min_list.cases
thf(fact_512_remdups__adj_Ocases,axiom,
! [X: list_a] :
( ( X != nil_a )
=> ( ! [X4: a] :
( X
!= ( cons_a @ X4 @ nil_a ) )
=> ~ ! [X4: a,Y3: a,Xs2: list_a] :
( X
!= ( cons_a @ X4 @ ( cons_a @ Y3 @ Xs2 ) ) ) ) ) ).
% remdups_adj.cases
thf(fact_513_remdups__adj_Ocases,axiom,
! [X: list_f] :
( ( X != nil_f )
=> ( ! [X4: f] :
( X
!= ( cons_f @ X4 @ nil_f ) )
=> ~ ! [X4: f,Y3: f,Xs2: list_f] :
( X
!= ( cons_f @ X4 @ ( cons_f @ Y3 @ Xs2 ) ) ) ) ) ).
% remdups_adj.cases
thf(fact_514_remdups__adj_Ocases,axiom,
! [X: list_nat] :
( ( X != nil_nat )
=> ( ! [X4: nat] :
( X
!= ( cons_nat @ X4 @ nil_nat ) )
=> ~ ! [X4: nat,Y3: nat,Xs2: list_nat] :
( X
!= ( cons_nat @ X4 @ ( cons_nat @ Y3 @ Xs2 ) ) ) ) ) ).
% remdups_adj.cases
thf(fact_515_remdups__adj_Ocases,axiom,
! [X: list_P8791008543742759928ropVar] :
( ( X != nil_Pr6119456312066593144ropVar )
=> ( ! [X4: produc2642885279816024434ropVar] :
( X
!= ( cons_P1504208554336013608ropVar @ X4 @ nil_Pr6119456312066593144ropVar ) )
=> ~ ! [X4: produc2642885279816024434ropVar,Y3: produc2642885279816024434ropVar,Xs2: list_P8791008543742759928ropVar] :
( X
!= ( cons_P1504208554336013608ropVar @ X4 @ ( cons_P1504208554336013608ropVar @ Y3 @ Xs2 ) ) ) ) ) ).
% remdups_adj.cases
thf(fact_516_neq__Nil__conv,axiom,
! [Xs3: list_a] :
( ( Xs3 != nil_a )
= ( ? [Y2: a,Ys2: list_a] :
( Xs3
= ( cons_a @ Y2 @ Ys2 ) ) ) ) ).
% neq_Nil_conv
thf(fact_517_neq__Nil__conv,axiom,
! [Xs3: list_f] :
( ( Xs3 != nil_f )
= ( ? [Y2: f,Ys2: list_f] :
( Xs3
= ( cons_f @ Y2 @ Ys2 ) ) ) ) ).
% neq_Nil_conv
thf(fact_518_neq__Nil__conv,axiom,
! [Xs3: list_nat] :
( ( Xs3 != nil_nat )
= ( ? [Y2: nat,Ys2: list_nat] :
( Xs3
= ( cons_nat @ Y2 @ Ys2 ) ) ) ) ).
% neq_Nil_conv
thf(fact_519_neq__Nil__conv,axiom,
! [Xs3: list_P8791008543742759928ropVar] :
( ( Xs3 != nil_Pr6119456312066593144ropVar )
= ( ? [Y2: produc2642885279816024434ropVar,Ys2: list_P8791008543742759928ropVar] :
( Xs3
= ( cons_P1504208554336013608ropVar @ Y2 @ Ys2 ) ) ) ) ).
% neq_Nil_conv
thf(fact_520_list__induct2_H,axiom,
! [P: list_a > list_a > $o,Xs3: list_a,Ys: list_a] :
( ( P @ nil_a @ nil_a )
=> ( ! [X4: a,Xs2: list_a] : ( P @ ( cons_a @ X4 @ Xs2 ) @ nil_a )
=> ( ! [Y3: a,Ys3: list_a] : ( P @ nil_a @ ( cons_a @ Y3 @ Ys3 ) )
=> ( ! [X4: a,Xs2: list_a,Y3: a,Ys3: list_a] :
( ( P @ Xs2 @ Ys3 )
=> ( P @ ( cons_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) )
=> ( P @ Xs3 @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_521_list__induct2_H,axiom,
! [P: list_a > list_f > $o,Xs3: list_a,Ys: list_f] :
( ( P @ nil_a @ nil_f )
=> ( ! [X4: a,Xs2: list_a] : ( P @ ( cons_a @ X4 @ Xs2 ) @ nil_f )
=> ( ! [Y3: f,Ys3: list_f] : ( P @ nil_a @ ( cons_f @ Y3 @ Ys3 ) )
=> ( ! [X4: a,Xs2: list_a,Y3: f,Ys3: list_f] :
( ( P @ Xs2 @ Ys3 )
=> ( P @ ( cons_a @ X4 @ Xs2 ) @ ( cons_f @ Y3 @ Ys3 ) ) )
=> ( P @ Xs3 @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_522_list__induct2_H,axiom,
! [P: list_a > list_nat > $o,Xs3: list_a,Ys: list_nat] :
( ( P @ nil_a @ nil_nat )
=> ( ! [X4: a,Xs2: list_a] : ( P @ ( cons_a @ X4 @ Xs2 ) @ nil_nat )
=> ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_a @ ( cons_nat @ Y3 @ Ys3 ) )
=> ( ! [X4: a,Xs2: list_a,Y3: nat,Ys3: list_nat] :
( ( P @ Xs2 @ Ys3 )
=> ( P @ ( cons_a @ X4 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
=> ( P @ Xs3 @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_523_list__induct2_H,axiom,
! [P: list_f > list_a > $o,Xs3: list_f,Ys: list_a] :
( ( P @ nil_f @ nil_a )
=> ( ! [X4: f,Xs2: list_f] : ( P @ ( cons_f @ X4 @ Xs2 ) @ nil_a )
=> ( ! [Y3: a,Ys3: list_a] : ( P @ nil_f @ ( cons_a @ Y3 @ Ys3 ) )
=> ( ! [X4: f,Xs2: list_f,Y3: a,Ys3: list_a] :
( ( P @ Xs2 @ Ys3 )
=> ( P @ ( cons_f @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) )
=> ( P @ Xs3 @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_524_list__induct2_H,axiom,
! [P: list_f > list_f > $o,Xs3: list_f,Ys: list_f] :
( ( P @ nil_f @ nil_f )
=> ( ! [X4: f,Xs2: list_f] : ( P @ ( cons_f @ X4 @ Xs2 ) @ nil_f )
=> ( ! [Y3: f,Ys3: list_f] : ( P @ nil_f @ ( cons_f @ Y3 @ Ys3 ) )
=> ( ! [X4: f,Xs2: list_f,Y3: f,Ys3: list_f] :
( ( P @ Xs2 @ Ys3 )
=> ( P @ ( cons_f @ X4 @ Xs2 ) @ ( cons_f @ Y3 @ Ys3 ) ) )
=> ( P @ Xs3 @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_525_list__induct2_H,axiom,
! [P: list_f > list_nat > $o,Xs3: list_f,Ys: list_nat] :
( ( P @ nil_f @ nil_nat )
=> ( ! [X4: f,Xs2: list_f] : ( P @ ( cons_f @ X4 @ Xs2 ) @ nil_nat )
=> ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_f @ ( cons_nat @ Y3 @ Ys3 ) )
=> ( ! [X4: f,Xs2: list_f,Y3: nat,Ys3: list_nat] :
( ( P @ Xs2 @ Ys3 )
=> ( P @ ( cons_f @ X4 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
=> ( P @ Xs3 @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_526_list__induct2_H,axiom,
! [P: list_nat > list_a > $o,Xs3: list_nat,Ys: list_a] :
( ( P @ nil_nat @ nil_a )
=> ( ! [X4: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X4 @ Xs2 ) @ nil_a )
=> ( ! [Y3: a,Ys3: list_a] : ( P @ nil_nat @ ( cons_a @ Y3 @ Ys3 ) )
=> ( ! [X4: nat,Xs2: list_nat,Y3: a,Ys3: list_a] :
( ( P @ Xs2 @ Ys3 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) )
=> ( P @ Xs3 @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_527_list__induct2_H,axiom,
! [P: list_nat > list_f > $o,Xs3: list_nat,Ys: list_f] :
( ( P @ nil_nat @ nil_f )
=> ( ! [X4: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X4 @ Xs2 ) @ nil_f )
=> ( ! [Y3: f,Ys3: list_f] : ( P @ nil_nat @ ( cons_f @ Y3 @ Ys3 ) )
=> ( ! [X4: nat,Xs2: list_nat,Y3: f,Ys3: list_f] :
( ( P @ Xs2 @ Ys3 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) @ ( cons_f @ Y3 @ Ys3 ) ) )
=> ( P @ Xs3 @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_528_list__induct2_H,axiom,
! [P: list_nat > list_nat > $o,Xs3: list_nat,Ys: list_nat] :
( ( P @ nil_nat @ nil_nat )
=> ( ! [X4: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X4 @ Xs2 ) @ nil_nat )
=> ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_nat @ ( cons_nat @ Y3 @ Ys3 ) )
=> ( ! [X4: nat,Xs2: list_nat,Y3: nat,Ys3: list_nat] :
( ( P @ Xs2 @ Ys3 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
=> ( P @ Xs3 @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_529_list__induct2_H,axiom,
! [P: list_a > list_P8791008543742759928ropVar > $o,Xs3: list_a,Ys: list_P8791008543742759928ropVar] :
( ( P @ nil_a @ nil_Pr6119456312066593144ropVar )
=> ( ! [X4: a,Xs2: list_a] : ( P @ ( cons_a @ X4 @ Xs2 ) @ nil_Pr6119456312066593144ropVar )
=> ( ! [Y3: produc2642885279816024434ropVar,Ys3: list_P8791008543742759928ropVar] : ( P @ nil_a @ ( cons_P1504208554336013608ropVar @ Y3 @ Ys3 ) )
=> ( ! [X4: a,Xs2: list_a,Y3: produc2642885279816024434ropVar,Ys3: list_P8791008543742759928ropVar] :
( ( P @ Xs2 @ Ys3 )
=> ( P @ ( cons_a @ X4 @ Xs2 ) @ ( cons_P1504208554336013608ropVar @ Y3 @ Ys3 ) ) )
=> ( P @ Xs3 @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_530_list__nonempty__induct,axiom,
! [Xs3: list_a,P: list_a > $o] :
( ( Xs3 != nil_a )
=> ( ! [X4: a] : ( P @ ( cons_a @ X4 @ nil_a ) )
=> ( ! [X4: a,Xs2: list_a] :
( ( Xs2 != nil_a )
=> ( ( P @ Xs2 )
=> ( P @ ( cons_a @ X4 @ Xs2 ) ) ) )
=> ( P @ Xs3 ) ) ) ) ).
% list_nonempty_induct
thf(fact_531_list__nonempty__induct,axiom,
! [Xs3: list_f,P: list_f > $o] :
( ( Xs3 != nil_f )
=> ( ! [X4: f] : ( P @ ( cons_f @ X4 @ nil_f ) )
=> ( ! [X4: f,Xs2: list_f] :
( ( Xs2 != nil_f )
=> ( ( P @ Xs2 )
=> ( P @ ( cons_f @ X4 @ Xs2 ) ) ) )
=> ( P @ Xs3 ) ) ) ) ).
% list_nonempty_induct
thf(fact_532_list__nonempty__induct,axiom,
! [Xs3: list_nat,P: list_nat > $o] :
( ( Xs3 != nil_nat )
=> ( ! [X4: nat] : ( P @ ( cons_nat @ X4 @ nil_nat ) )
=> ( ! [X4: nat,Xs2: list_nat] :
( ( Xs2 != nil_nat )
=> ( ( P @ Xs2 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) ) ) )
=> ( P @ Xs3 ) ) ) ) ).
% list_nonempty_induct
thf(fact_533_list__nonempty__induct,axiom,
! [Xs3: list_P8791008543742759928ropVar,P: list_P8791008543742759928ropVar > $o] :
( ( Xs3 != nil_Pr6119456312066593144ropVar )
=> ( ! [X4: produc2642885279816024434ropVar] : ( P @ ( cons_P1504208554336013608ropVar @ X4 @ nil_Pr6119456312066593144ropVar ) )
=> ( ! [X4: produc2642885279816024434ropVar,Xs2: list_P8791008543742759928ropVar] :
( ( Xs2 != nil_Pr6119456312066593144ropVar )
=> ( ( P @ Xs2 )
=> ( P @ ( cons_P1504208554336013608ropVar @ X4 @ Xs2 ) ) ) )
=> ( P @ Xs3 ) ) ) ) ).
% list_nonempty_induct
thf(fact_534_list_Osimps_I8_J,axiom,
! [F: f > f] :
( ( map_f_f @ F @ nil_f )
= nil_f ) ).
% list.simps(8)
thf(fact_535_list_Osimps_I8_J,axiom,
! [F: f > nat] :
( ( map_f_nat @ F @ nil_f )
= nil_nat ) ).
% list.simps(8)
thf(fact_536_list_Osimps_I8_J,axiom,
! [F: f > a] :
( ( map_f_a @ F @ nil_f )
= nil_a ) ).
% list.simps(8)
thf(fact_537_list_Osimps_I8_J,axiom,
! [F: nat > f] :
( ( map_nat_f @ F @ nil_nat )
= nil_f ) ).
% list.simps(8)
thf(fact_538_list_Osimps_I8_J,axiom,
! [F: a > f] :
( ( map_a_f @ F @ nil_a )
= nil_f ) ).
% list.simps(8)
thf(fact_539_list_Osimps_I8_J,axiom,
! [F: a > nat] :
( ( map_a_nat @ F @ nil_a )
= nil_nat ) ).
% list.simps(8)
thf(fact_540_list_Osimps_I8_J,axiom,
! [F: a > a] :
( ( map_a_a @ F @ nil_a )
= nil_a ) ).
% list.simps(8)
thf(fact_541_list_Osimps_I8_J,axiom,
! [F: nat > multis3193088007478089820ropVar] :
( ( map_na2466558649495876678ropVar @ F @ nil_nat )
= nil_Mu4132399263956683874ropVar ) ).
% list.simps(8)
thf(fact_542_list_Osimps_I8_J,axiom,
! [F: nat > a] :
( ( map_nat_a @ F @ nil_nat )
= nil_a ) ).
% list.simps(8)
thf(fact_543_list_Osimps_I8_J,axiom,
! [F: nat > nat] :
( ( map_nat_nat @ F @ nil_nat )
= nil_nat ) ).
% list.simps(8)
thf(fact_544_append__Nil,axiom,
! [Ys: list_f] :
( ( append_f @ nil_f @ Ys )
= Ys ) ).
% append_Nil
thf(fact_545_append__Nil,axiom,
! [Ys: list_nat] :
( ( append_nat @ nil_nat @ Ys )
= Ys ) ).
% append_Nil
thf(fact_546_append__Nil,axiom,
! [Ys: list_a] :
( ( append_a @ nil_a @ Ys )
= Ys ) ).
% append_Nil
thf(fact_547_append__Nil,axiom,
! [Ys: list_P8791008543742759928ropVar] :
( ( append4352292717583037453ropVar @ nil_Pr6119456312066593144ropVar @ Ys )
= Ys ) ).
% append_Nil
thf(fact_548_append_Oleft__neutral,axiom,
! [A: list_f] :
( ( append_f @ nil_f @ A )
= A ) ).
% append.left_neutral
thf(fact_549_append_Oleft__neutral,axiom,
! [A: list_nat] :
( ( append_nat @ nil_nat @ A )
= A ) ).
% append.left_neutral
thf(fact_550_append_Oleft__neutral,axiom,
! [A: list_a] :
( ( append_a @ nil_a @ A )
= A ) ).
% append.left_neutral
thf(fact_551_append_Oleft__neutral,axiom,
! [A: list_P8791008543742759928ropVar] :
( ( append4352292717583037453ropVar @ nil_Pr6119456312066593144ropVar @ A )
= A ) ).
% append.left_neutral
thf(fact_552_eq__Nil__appendI,axiom,
! [Xs3: list_f,Ys: list_f] :
( ( Xs3 = Ys )
=> ( Xs3
= ( append_f @ nil_f @ Ys ) ) ) ).
% eq_Nil_appendI
thf(fact_553_eq__Nil__appendI,axiom,
! [Xs3: list_nat,Ys: list_nat] :
( ( Xs3 = Ys )
=> ( Xs3
= ( append_nat @ nil_nat @ Ys ) ) ) ).
% eq_Nil_appendI
thf(fact_554_eq__Nil__appendI,axiom,
! [Xs3: list_a,Ys: list_a] :
( ( Xs3 = Ys )
=> ( Xs3
= ( append_a @ nil_a @ Ys ) ) ) ).
% eq_Nil_appendI
thf(fact_555_eq__Nil__appendI,axiom,
! [Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar] :
( ( Xs3 = Ys )
=> ( Xs3
= ( append4352292717583037453ropVar @ nil_Pr6119456312066593144ropVar @ Ys ) ) ) ).
% eq_Nil_appendI
thf(fact_556_maps__simps_I2_J,axiom,
! [F: f > list_f] :
( ( maps_f_f @ F @ nil_f )
= nil_f ) ).
% maps_simps(2)
thf(fact_557_maps__simps_I2_J,axiom,
! [F: f > list_nat] :
( ( maps_f_nat @ F @ nil_f )
= nil_nat ) ).
% maps_simps(2)
thf(fact_558_maps__simps_I2_J,axiom,
! [F: f > list_a] :
( ( maps_f_a @ F @ nil_f )
= nil_a ) ).
% maps_simps(2)
thf(fact_559_maps__simps_I2_J,axiom,
! [F: nat > list_f] :
( ( maps_nat_f @ F @ nil_nat )
= nil_f ) ).
% maps_simps(2)
thf(fact_560_maps__simps_I2_J,axiom,
! [F: nat > list_nat] :
( ( maps_nat_nat @ F @ nil_nat )
= nil_nat ) ).
% maps_simps(2)
thf(fact_561_maps__simps_I2_J,axiom,
! [F: nat > list_a] :
( ( maps_nat_a @ F @ nil_nat )
= nil_a ) ).
% maps_simps(2)
thf(fact_562_maps__simps_I2_J,axiom,
! [F: a > list_f] :
( ( maps_a_f @ F @ nil_a )
= nil_f ) ).
% maps_simps(2)
thf(fact_563_maps__simps_I2_J,axiom,
! [F: a > list_nat] :
( ( maps_a_nat @ F @ nil_a )
= nil_nat ) ).
% maps_simps(2)
thf(fact_564_maps__simps_I2_J,axiom,
! [F: a > list_a] :
( ( maps_a_a @ F @ nil_a )
= nil_a ) ).
% maps_simps(2)
thf(fact_565_maps__simps_I2_J,axiom,
! [F: f > list_P8791008543742759928ropVar] :
( ( maps_f4368598982980338288ropVar @ F @ nil_f )
= nil_Pr6119456312066593144ropVar ) ).
% maps_simps(2)
thf(fact_566_ex__nat__less__eq,axiom,
! [N: nat,P: nat > $o] :
( ( ? [M3: nat] :
( ( ord_less_nat @ M3 @ N )
& ( P @ M3 ) ) )
= ( ? [X3: nat] :
( ( member_nat @ X3 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
& ( P @ X3 ) ) ) ) ).
% ex_nat_less_eq
thf(fact_567_all__nat__less__eq,axiom,
! [N: nat,P: nat > $o] :
( ( ! [M3: nat] :
( ( ord_less_nat @ M3 @ N )
=> ( P @ M3 ) ) )
= ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
=> ( P @ X3 ) ) ) ) ).
% all_nat_less_eq
thf(fact_568_rev__nonempty__induct,axiom,
! [Xs3: list_a,P: list_a > $o] :
( ( Xs3 != nil_a )
=> ( ! [X4: a] : ( P @ ( cons_a @ X4 @ nil_a ) )
=> ( ! [X4: a,Xs2: list_a] :
( ( Xs2 != nil_a )
=> ( ( P @ Xs2 )
=> ( P @ ( append_a @ Xs2 @ ( cons_a @ X4 @ nil_a ) ) ) ) )
=> ( P @ Xs3 ) ) ) ) ).
% rev_nonempty_induct
thf(fact_569_rev__nonempty__induct,axiom,
! [Xs3: list_f,P: list_f > $o] :
( ( Xs3 != nil_f )
=> ( ! [X4: f] : ( P @ ( cons_f @ X4 @ nil_f ) )
=> ( ! [X4: f,Xs2: list_f] :
( ( Xs2 != nil_f )
=> ( ( P @ Xs2 )
=> ( P @ ( append_f @ Xs2 @ ( cons_f @ X4 @ nil_f ) ) ) ) )
=> ( P @ Xs3 ) ) ) ) ).
% rev_nonempty_induct
thf(fact_570_rev__nonempty__induct,axiom,
! [Xs3: list_nat,P: list_nat > $o] :
( ( Xs3 != nil_nat )
=> ( ! [X4: nat] : ( P @ ( cons_nat @ X4 @ nil_nat ) )
=> ( ! [X4: nat,Xs2: list_nat] :
( ( Xs2 != nil_nat )
=> ( ( P @ Xs2 )
=> ( P @ ( append_nat @ Xs2 @ ( cons_nat @ X4 @ nil_nat ) ) ) ) )
=> ( P @ Xs3 ) ) ) ) ).
% rev_nonempty_induct
thf(fact_571_rev__nonempty__induct,axiom,
! [Xs3: list_P8791008543742759928ropVar,P: list_P8791008543742759928ropVar > $o] :
( ( Xs3 != nil_Pr6119456312066593144ropVar )
=> ( ! [X4: produc2642885279816024434ropVar] : ( P @ ( cons_P1504208554336013608ropVar @ X4 @ nil_Pr6119456312066593144ropVar ) )
=> ( ! [X4: produc2642885279816024434ropVar,Xs2: list_P8791008543742759928ropVar] :
( ( Xs2 != nil_Pr6119456312066593144ropVar )
=> ( ( P @ Xs2 )
=> ( P @ ( append4352292717583037453ropVar @ Xs2 @ ( cons_P1504208554336013608ropVar @ X4 @ nil_Pr6119456312066593144ropVar ) ) ) ) )
=> ( P @ Xs3 ) ) ) ) ).
% rev_nonempty_induct
thf(fact_572_append__eq__Cons__conv,axiom,
! [Ys: list_a,Zs: list_a,X: a,Xs3: list_a] :
( ( ( append_a @ Ys @ Zs )
= ( cons_a @ X @ Xs3 ) )
= ( ( ( Ys = nil_a )
& ( Zs
= ( cons_a @ X @ Xs3 ) ) )
| ? [Ys5: list_a] :
( ( Ys
= ( cons_a @ X @ Ys5 ) )
& ( ( append_a @ Ys5 @ Zs )
= Xs3 ) ) ) ) ).
% append_eq_Cons_conv
thf(fact_573_append__eq__Cons__conv,axiom,
! [Ys: list_f,Zs: list_f,X: f,Xs3: list_f] :
( ( ( append_f @ Ys @ Zs )
= ( cons_f @ X @ Xs3 ) )
= ( ( ( Ys = nil_f )
& ( Zs
= ( cons_f @ X @ Xs3 ) ) )
| ? [Ys5: list_f] :
( ( Ys
= ( cons_f @ X @ Ys5 ) )
& ( ( append_f @ Ys5 @ Zs )
= Xs3 ) ) ) ) ).
% append_eq_Cons_conv
thf(fact_574_append__eq__Cons__conv,axiom,
! [Ys: list_nat,Zs: list_nat,X: nat,Xs3: list_nat] :
( ( ( append_nat @ Ys @ Zs )
= ( cons_nat @ X @ Xs3 ) )
= ( ( ( Ys = nil_nat )
& ( Zs
= ( cons_nat @ X @ Xs3 ) ) )
| ? [Ys5: list_nat] :
( ( Ys
= ( cons_nat @ X @ Ys5 ) )
& ( ( append_nat @ Ys5 @ Zs )
= Xs3 ) ) ) ) ).
% append_eq_Cons_conv
thf(fact_575_append__eq__Cons__conv,axiom,
! [Ys: list_P8791008543742759928ropVar,Zs: list_P8791008543742759928ropVar,X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( ( append4352292717583037453ropVar @ Ys @ Zs )
= ( cons_P1504208554336013608ropVar @ X @ Xs3 ) )
= ( ( ( Ys = nil_Pr6119456312066593144ropVar )
& ( Zs
= ( cons_P1504208554336013608ropVar @ X @ Xs3 ) ) )
| ? [Ys5: list_P8791008543742759928ropVar] :
( ( Ys
= ( cons_P1504208554336013608ropVar @ X @ Ys5 ) )
& ( ( append4352292717583037453ropVar @ Ys5 @ Zs )
= Xs3 ) ) ) ) ).
% append_eq_Cons_conv
thf(fact_576_Cons__eq__append__conv,axiom,
! [X: a,Xs3: list_a,Ys: list_a,Zs: list_a] :
( ( ( cons_a @ X @ Xs3 )
= ( append_a @ Ys @ Zs ) )
= ( ( ( Ys = nil_a )
& ( ( cons_a @ X @ Xs3 )
= Zs ) )
| ? [Ys5: list_a] :
( ( ( cons_a @ X @ Ys5 )
= Ys )
& ( Xs3
= ( append_a @ Ys5 @ Zs ) ) ) ) ) ).
% Cons_eq_append_conv
thf(fact_577_Cons__eq__append__conv,axiom,
! [X: f,Xs3: list_f,Ys: list_f,Zs: list_f] :
( ( ( cons_f @ X @ Xs3 )
= ( append_f @ Ys @ Zs ) )
= ( ( ( Ys = nil_f )
& ( ( cons_f @ X @ Xs3 )
= Zs ) )
| ? [Ys5: list_f] :
( ( ( cons_f @ X @ Ys5 )
= Ys )
& ( Xs3
= ( append_f @ Ys5 @ Zs ) ) ) ) ) ).
% Cons_eq_append_conv
thf(fact_578_Cons__eq__append__conv,axiom,
! [X: nat,Xs3: list_nat,Ys: list_nat,Zs: list_nat] :
( ( ( cons_nat @ X @ Xs3 )
= ( append_nat @ Ys @ Zs ) )
= ( ( ( Ys = nil_nat )
& ( ( cons_nat @ X @ Xs3 )
= Zs ) )
| ? [Ys5: list_nat] :
( ( ( cons_nat @ X @ Ys5 )
= Ys )
& ( Xs3
= ( append_nat @ Ys5 @ Zs ) ) ) ) ) ).
% Cons_eq_append_conv
thf(fact_579_Cons__eq__append__conv,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar,Zs: list_P8791008543742759928ropVar] :
( ( ( cons_P1504208554336013608ropVar @ X @ Xs3 )
= ( append4352292717583037453ropVar @ Ys @ Zs ) )
= ( ( ( Ys = nil_Pr6119456312066593144ropVar )
& ( ( cons_P1504208554336013608ropVar @ X @ Xs3 )
= Zs ) )
| ? [Ys5: list_P8791008543742759928ropVar] :
( ( ( cons_P1504208554336013608ropVar @ X @ Ys5 )
= Ys )
& ( Xs3
= ( append4352292717583037453ropVar @ Ys5 @ Zs ) ) ) ) ) ).
% Cons_eq_append_conv
thf(fact_580_rev__exhaust,axiom,
! [Xs3: list_a] :
( ( Xs3 != nil_a )
=> ~ ! [Ys3: list_a,Y3: a] :
( Xs3
!= ( append_a @ Ys3 @ ( cons_a @ Y3 @ nil_a ) ) ) ) ).
% rev_exhaust
thf(fact_581_rev__exhaust,axiom,
! [Xs3: list_f] :
( ( Xs3 != nil_f )
=> ~ ! [Ys3: list_f,Y3: f] :
( Xs3
!= ( append_f @ Ys3 @ ( cons_f @ Y3 @ nil_f ) ) ) ) ).
% rev_exhaust
thf(fact_582_rev__exhaust,axiom,
! [Xs3: list_nat] :
( ( Xs3 != nil_nat )
=> ~ ! [Ys3: list_nat,Y3: nat] :
( Xs3
!= ( append_nat @ Ys3 @ ( cons_nat @ Y3 @ nil_nat ) ) ) ) ).
% rev_exhaust
thf(fact_583_rev__exhaust,axiom,
! [Xs3: list_P8791008543742759928ropVar] :
( ( Xs3 != nil_Pr6119456312066593144ropVar )
=> ~ ! [Ys3: list_P8791008543742759928ropVar,Y3: produc2642885279816024434ropVar] :
( Xs3
!= ( append4352292717583037453ropVar @ Ys3 @ ( cons_P1504208554336013608ropVar @ Y3 @ nil_Pr6119456312066593144ropVar ) ) ) ) ).
% rev_exhaust
thf(fact_584_rev__induct,axiom,
! [P: list_a > $o,Xs3: list_a] :
( ( P @ nil_a )
=> ( ! [X4: a,Xs2: list_a] :
( ( P @ Xs2 )
=> ( P @ ( append_a @ Xs2 @ ( cons_a @ X4 @ nil_a ) ) ) )
=> ( P @ Xs3 ) ) ) ).
% rev_induct
thf(fact_585_rev__induct,axiom,
! [P: list_f > $o,Xs3: list_f] :
( ( P @ nil_f )
=> ( ! [X4: f,Xs2: list_f] :
( ( P @ Xs2 )
=> ( P @ ( append_f @ Xs2 @ ( cons_f @ X4 @ nil_f ) ) ) )
=> ( P @ Xs3 ) ) ) ).
% rev_induct
thf(fact_586_rev__induct,axiom,
! [P: list_nat > $o,Xs3: list_nat] :
( ( P @ nil_nat )
=> ( ! [X4: nat,Xs2: list_nat] :
( ( P @ Xs2 )
=> ( P @ ( append_nat @ Xs2 @ ( cons_nat @ X4 @ nil_nat ) ) ) )
=> ( P @ Xs3 ) ) ) ).
% rev_induct
thf(fact_587_rev__induct,axiom,
! [P: list_P8791008543742759928ropVar > $o,Xs3: list_P8791008543742759928ropVar] :
( ( P @ nil_Pr6119456312066593144ropVar )
=> ( ! [X4: produc2642885279816024434ropVar,Xs2: list_P8791008543742759928ropVar] :
( ( P @ Xs2 )
=> ( P @ ( append4352292717583037453ropVar @ Xs2 @ ( cons_P1504208554336013608ropVar @ X4 @ nil_Pr6119456312066593144ropVar ) ) ) )
=> ( P @ Xs3 ) ) ) ).
% rev_induct
thf(fact_588_concat__map__maps,axiom,
! [F: nat > list_f,Xs3: list_nat] :
( ( concat_f @ ( map_nat_list_f @ F @ Xs3 ) )
= ( maps_nat_f @ F @ Xs3 ) ) ).
% concat_map_maps
thf(fact_589_maps__def,axiom,
( maps_nat_f
= ( ^ [F2: nat > list_f,Xs: list_nat] : ( concat_f @ ( map_nat_list_f @ F2 @ Xs ) ) ) ) ).
% maps_def
thf(fact_590_zero__reorient,axiom,
! [X: nat] :
( ( zero_zero_nat = X )
= ( X = zero_zero_nat ) ) ).
% zero_reorient
thf(fact_591_nat__neq__iff,axiom,
! [M: nat,N: nat] :
( ( M != N )
= ( ( ord_less_nat @ M @ N )
| ( ord_less_nat @ N @ M ) ) ) ).
% nat_neq_iff
thf(fact_592_less__not__refl,axiom,
! [N: nat] :
~ ( ord_less_nat @ N @ N ) ).
% less_not_refl
thf(fact_593_less__not__refl2,axiom,
! [N: nat,M: nat] :
( ( ord_less_nat @ N @ M )
=> ( M != N ) ) ).
% less_not_refl2
thf(fact_594_less__not__refl3,axiom,
! [S: nat,T: nat] :
( ( ord_less_nat @ S @ T )
=> ( S != T ) ) ).
% less_not_refl3
thf(fact_595_less__irrefl__nat,axiom,
! [N: nat] :
~ ( ord_less_nat @ N @ N ) ).
% less_irrefl_nat
thf(fact_596_nat__less__induct,axiom,
! [P: nat > $o,N: nat] :
( ! [N2: nat] :
( ! [M2: nat] :
( ( ord_less_nat @ M2 @ N2 )
=> ( P @ M2 ) )
=> ( P @ N2 ) )
=> ( P @ N ) ) ).
% nat_less_induct
thf(fact_597_infinite__descent,axiom,
! [P: nat > $o,N: nat] :
( ! [N2: nat] :
( ~ ( P @ N2 )
=> ? [M2: nat] :
( ( ord_less_nat @ M2 @ N2 )
& ~ ( P @ M2 ) ) )
=> ( P @ N ) ) ).
% infinite_descent
thf(fact_598_linorder__neqE__nat,axiom,
! [X: nat,Y: nat] :
( ( X != Y )
=> ( ~ ( ord_less_nat @ X @ Y )
=> ( ord_less_nat @ Y @ X ) ) ) ).
% linorder_neqE_nat
thf(fact_599_ms__encoder_Oformula15__def,axiom,
! [Enc_False: a,Enc_True: a,Enc_pos: multis3193088007478089820ropVar > a,Enc_neg: multis3193088007478089820ropVar > a,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_impl: multis3193088007478089820ropVar > a > a,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_all: list_M6740372356978808802ropVar > a,Enc_conj: list_a > a,Eval: ( multis3193088007478089820ropVar > $o ) > a > $o,Cs: nat > nat > $o,Cns: nat > nat > $o,N: nat,M: nat] :
( ( multis7215977293502021783oder_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis7684816351888833193la15_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M )
= ( append_a
@ ( maps_nat_a
@ ^ [I2: nat] :
( maps_nat_a
@ ^ [J2: nat] :
( if_list_a
@ ( ( Cs @ I2 @ J2 )
& ( Cns @ I2 @ J2 ) )
@ nil_a
@ ( cons_a @ ( multis4381284275714162933ropVar @ Enc_True @ Enc_neg @ Enc_var_impl @ Enc_not_and @ ( multis387687052011358179_Gamma @ I2 @ J2 ) @ ( multis2544335231667181926psilon @ I2 ) @ ( Cs @ I2 @ J2 ) @ ( Cns @ I2 @ J2 ) ) @ nil_a ) )
@ ( upt @ zero_zero_nat @ M ) )
@ ( upt @ zero_zero_nat @ N ) )
@ ( multis1248899897006733418la14_a @ Enc_False @ Enc_pos @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ N @ M ) ) ) ) ).
% ms_encoder.formula15_def
thf(fact_600_ms__encoder_Oformula15__def,axiom,
! [Enc_False: nat,Enc_True: nat,Enc_pos: multis3193088007478089820ropVar > nat,Enc_neg: multis3193088007478089820ropVar > nat,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_impl: multis3193088007478089820ropVar > nat > nat,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_all: list_M6740372356978808802ropVar > nat,Enc_conj: list_nat > nat,Eval: ( multis3193088007478089820ropVar > $o ) > nat > $o,Cs: nat > nat > $o,Cns: nat > nat > $o,N: nat,M: nat] :
( ( multis4476563104974320119er_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis902447301359355274115_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M )
= ( append_nat
@ ( maps_nat_nat
@ ^ [I2: nat] :
( maps_nat_nat
@ ^ [J2: nat] :
( if_list_nat
@ ( ( Cs @ I2 @ J2 )
& ( Cns @ I2 @ J2 ) )
@ nil_nat
@ ( cons_nat @ ( multis8432056474937814451ropVar @ Enc_True @ Enc_neg @ Enc_var_impl @ Enc_not_and @ ( multis387687052011358179_Gamma @ I2 @ J2 ) @ ( multis2544335231667181926psilon @ I2 ) @ ( Cs @ I2 @ J2 ) @ ( Cns @ I2 @ J2 ) ) @ nil_nat ) )
@ ( upt @ zero_zero_nat @ M ) )
@ ( upt @ zero_zero_nat @ N ) )
@ ( multis778902868463715824414_nat @ Enc_False @ Enc_pos @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ N @ M ) ) ) ) ).
% ms_encoder.formula15_def
thf(fact_601_ms__encoder_Oformula15__def,axiom,
! [Enc_False: produc2642885279816024434ropVar,Enc_True: produc2642885279816024434ropVar,Enc_pos: multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_neg: multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_impl: multis3193088007478089820ropVar > produc2642885279816024434ropVar > produc2642885279816024434ropVar,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_not_all: list_M6740372356978808802ropVar > produc2642885279816024434ropVar,Enc_conj: list_P8791008543742759928ropVar > produc2642885279816024434ropVar,Eval: ( multis3193088007478089820ropVar > $o ) > produc2642885279816024434ropVar > $o,Cs: nat > nat > $o,Cns: nat > nat > $o,N: nat,M: nat] :
( ( multis8181102237825478411ropVar @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis5595896195939027229ropVar @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M )
= ( append4352292717583037453ropVar
@ ( maps_n6440817060062774047ropVar
@ ^ [I2: nat] :
( maps_n6440817060062774047ropVar
@ ^ [J2: nat] :
( if_lis1975434623467068862ropVar
@ ( ( Cs @ I2 @ J2 )
& ( Cns @ I2 @ J2 ) )
@ nil_Pr6119456312066593144ropVar
@ ( cons_P1504208554336013608ropVar @ ( multis6911105939383758721ropVar @ Enc_True @ Enc_neg @ Enc_var_impl @ Enc_not_and @ ( multis387687052011358179_Gamma @ I2 @ J2 ) @ ( multis2544335231667181926psilon @ I2 ) @ ( Cs @ I2 @ J2 ) @ ( Cns @ I2 @ J2 ) ) @ nil_Pr6119456312066593144ropVar ) )
@ ( upt @ zero_zero_nat @ M ) )
@ ( upt @ zero_zero_nat @ N ) )
@ ( multis3450153464401155806ropVar @ Enc_False @ Enc_pos @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ N @ M ) ) ) ) ).
% ms_encoder.formula15_def
thf(fact_602_ms__encoder_Oformula15__def,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,Cns: nat > nat > $o,N: nat,M: nat] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis7684816351888833198la15_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M )
= ( append_f
@ ( maps_nat_f
@ ^ [I2: nat] :
( maps_nat_f
@ ^ [J2: nat] :
( if_list_f
@ ( ( Cs @ I2 @ J2 )
& ( Cns @ I2 @ J2 ) )
@ nil_f
@ ( cons_f @ ( multis1454621290665623088ropVar @ Enc_True @ Enc_neg @ Enc_var_impl @ Enc_not_and @ ( multis387687052011358179_Gamma @ I2 @ J2 ) @ ( multis2544335231667181926psilon @ I2 ) @ ( Cs @ I2 @ J2 ) @ ( Cns @ I2 @ J2 ) ) @ nil_f ) )
@ ( upt @ zero_zero_nat @ M ) )
@ ( upt @ zero_zero_nat @ N ) )
@ ( multis1248899897006733423la14_f @ Enc_False @ Enc_pos @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ N @ M ) ) ) ) ).
% ms_encoder.formula15_def
thf(fact_603_gr__zeroI,axiom,
! [N: nat] :
( ( N != zero_zero_nat )
=> ( ord_less_nat @ zero_zero_nat @ N ) ) ).
% gr_zeroI
thf(fact_604_not__less__zero,axiom,
! [N: nat] :
~ ( ord_less_nat @ N @ zero_zero_nat ) ).
% not_less_zero
thf(fact_605_gr__implies__not__zero,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ( N != zero_zero_nat ) ) ).
% gr_implies_not_zero
thf(fact_606_zero__less__iff__neq__zero,axiom,
! [N: nat] :
( ( ord_less_nat @ zero_zero_nat @ N )
= ( N != zero_zero_nat ) ) ).
% zero_less_iff_neq_zero
thf(fact_607_bot__nat__0_Oextremum__strict,axiom,
! [A: nat] :
~ ( ord_less_nat @ A @ zero_zero_nat ) ).
% bot_nat_0.extremum_strict
thf(fact_608_gr0I,axiom,
! [N: nat] :
( ( N != zero_zero_nat )
=> ( ord_less_nat @ zero_zero_nat @ N ) ) ).
% gr0I
thf(fact_609_not__gr0,axiom,
! [N: nat] :
( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
= ( N = zero_zero_nat ) ) ).
% not_gr0
thf(fact_610_not__less0,axiom,
! [N: nat] :
~ ( ord_less_nat @ N @ zero_zero_nat ) ).
% not_less0
thf(fact_611_less__zeroE,axiom,
! [N: nat] :
~ ( ord_less_nat @ N @ zero_zero_nat ) ).
% less_zeroE
thf(fact_612_n__lists__Nil,axiom,
! [N: nat] :
( ( ( N = zero_zero_nat )
=> ( ( n_lists_f @ N @ nil_f )
= ( cons_list_f @ nil_f @ nil_list_f ) ) )
& ( ( N != zero_zero_nat )
=> ( ( n_lists_f @ N @ nil_f )
= nil_list_f ) ) ) ).
% n_lists_Nil
thf(fact_613_n__lists__Nil,axiom,
! [N: nat] :
( ( ( N = zero_zero_nat )
=> ( ( n_lists_nat @ N @ nil_nat )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) )
& ( ( N != zero_zero_nat )
=> ( ( n_lists_nat @ N @ nil_nat )
= nil_list_nat ) ) ) ).
% n_lists_Nil
thf(fact_614_n__lists__Nil,axiom,
! [N: nat] :
( ( ( N = zero_zero_nat )
=> ( ( n_lists_a @ N @ nil_a )
= ( cons_list_a @ nil_a @ nil_list_a ) ) )
& ( ( N != zero_zero_nat )
=> ( ( n_lists_a @ N @ nil_a )
= nil_list_a ) ) ) ).
% n_lists_Nil
thf(fact_615_n__lists__Nil,axiom,
! [N: nat] :
( ( ( N = zero_zero_nat )
=> ( ( n_list6927042657299049856ropVar @ N @ nil_Pr6119456312066593144ropVar )
= ( cons_l5280711761816980654ropVar @ nil_Pr6119456312066593144ropVar @ nil_li2679230897895549182ropVar ) ) )
& ( ( N != zero_zero_nat )
=> ( ( n_list6927042657299049856ropVar @ N @ nil_Pr6119456312066593144ropVar )
= nil_li2679230897895549182ropVar ) ) ) ).
% n_lists_Nil
thf(fact_616_the__elem__set,axiom,
! [X: list_f] :
( ( the_elem_list_f @ ( set_list_f2 @ ( cons_list_f @ X @ nil_list_f ) ) )
= X ) ).
% the_elem_set
thf(fact_617_the__elem__set,axiom,
! [X: a] :
( ( the_elem_a @ ( set_a2 @ ( cons_a @ X @ nil_a ) ) )
= X ) ).
% the_elem_set
thf(fact_618_the__elem__set,axiom,
! [X: f] :
( ( the_elem_f @ ( set_f2 @ ( cons_f @ X @ nil_f ) ) )
= X ) ).
% the_elem_set
thf(fact_619_the__elem__set,axiom,
! [X: nat] :
( ( the_elem_nat @ ( set_nat2 @ ( cons_nat @ X @ nil_nat ) ) )
= X ) ).
% the_elem_set
thf(fact_620_the__elem__set,axiom,
! [X: produc2642885279816024434ropVar] :
( ( the_el184889641172005735ropVar @ ( set_Pr3946994337432900359ropVar @ ( cons_P1504208554336013608ropVar @ X @ nil_Pr6119456312066593144ropVar ) ) )
= X ) ).
% the_elem_set
thf(fact_621_product__lists_Osimps_I2_J,axiom,
! [Xs3: list_f,Xss: list_list_f] :
( ( product_lists_f @ ( cons_list_f @ Xs3 @ Xss ) )
= ( concat_list_f
@ ( map_f_list_list_f
@ ^ [X3: f] : ( map_list_f_list_f @ ( cons_f @ X3 ) @ ( product_lists_f @ Xss ) )
@ Xs3 ) ) ) ).
% product_lists.simps(2)
thf(fact_622_product__lists_Osimps_I2_J,axiom,
! [Xs3: list_nat,Xss: list_list_nat] :
( ( product_lists_nat @ ( cons_list_nat @ Xs3 @ Xss ) )
= ( concat_list_nat
@ ( map_na6205611841492582150st_nat
@ ^ [X3: nat] : ( map_li7225945977422193158st_nat @ ( cons_nat @ X3 ) @ ( product_lists_nat @ Xss ) )
@ Xs3 ) ) ) ).
% product_lists.simps(2)
thf(fact_623_product__lists_Osimps_I2_J,axiom,
! [Xs3: list_P8791008543742759928ropVar,Xss: list_l3415868495287753214ropVar] :
( ( produc2956654850250905953ropVar @ ( cons_l5280711761816980654ropVar @ Xs3 @ Xss ) )
= ( concat4944697247486958777ropVar
@ ( map_Pr879394845742082896ropVar
@ ^ [X3: produc2642885279816024434ropVar] : ( map_li926741104209434052ropVar @ ( cons_P1504208554336013608ropVar @ X3 ) @ ( produc2956654850250905953ropVar @ Xss ) )
@ Xs3 ) ) ) ).
% product_lists.simps(2)
thf(fact_624_subseqs_Osimps_I2_J,axiom,
! [X: f,Xs3: list_f] :
( ( subseqs_f @ ( cons_f @ X @ Xs3 ) )
= ( append_list_f @ ( map_list_f_list_f @ ( cons_f @ X ) @ ( subseqs_f @ Xs3 ) ) @ ( subseqs_f @ Xs3 ) ) ) ).
% subseqs.simps(2)
thf(fact_625_subseqs_Osimps_I2_J,axiom,
! [X: nat,Xs3: list_nat] :
( ( subseqs_nat @ ( cons_nat @ X @ Xs3 ) )
= ( append_list_nat @ ( map_li7225945977422193158st_nat @ ( cons_nat @ X ) @ ( subseqs_nat @ Xs3 ) ) @ ( subseqs_nat @ Xs3 ) ) ) ).
% subseqs.simps(2)
thf(fact_626_subseqs_Osimps_I2_J,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( subseq3825174504735880391ropVar @ ( cons_P1504208554336013608ropVar @ X @ Xs3 ) )
= ( append4316637162825710867ropVar @ ( map_li926741104209434052ropVar @ ( cons_P1504208554336013608ropVar @ X ) @ ( subseq3825174504735880391ropVar @ Xs3 ) ) @ ( subseq3825174504735880391ropVar @ Xs3 ) ) ) ).
% subseqs.simps(2)
thf(fact_627_atLeastLessThan__inj_I2_J,axiom,
! [A: nat,B: nat,C: nat,D: nat] :
( ( ( set_or4665077453230672383an_nat @ A @ B )
= ( set_or4665077453230672383an_nat @ C @ D ) )
=> ( ( ord_less_nat @ A @ B )
=> ( ( ord_less_nat @ C @ D )
=> ( B = D ) ) ) ) ).
% atLeastLessThan_inj(2)
thf(fact_628_atLeastLessThan__inj_I1_J,axiom,
! [A: nat,B: nat,C: nat,D: nat] :
( ( ( set_or4665077453230672383an_nat @ A @ B )
= ( set_or4665077453230672383an_nat @ C @ D ) )
=> ( ( ord_less_nat @ A @ B )
=> ( ( ord_less_nat @ C @ D )
=> ( A = C ) ) ) ) ).
% atLeastLessThan_inj(1)
thf(fact_629_Ico__eq__Ico,axiom,
! [L: nat,H: nat,L2: nat,H2: nat] :
( ( ( set_or4665077453230672383an_nat @ L @ H )
= ( set_or4665077453230672383an_nat @ L2 @ H2 ) )
= ( ( ( L = L2 )
& ( H = H2 ) )
| ( ~ ( ord_less_nat @ L @ H )
& ~ ( ord_less_nat @ L2 @ H2 ) ) ) ) ).
% Ico_eq_Ico
thf(fact_630_atLeastLessThan__eq__iff,axiom,
! [A: nat,B: nat,C: nat,D: nat] :
( ( ord_less_nat @ A @ B )
=> ( ( ord_less_nat @ C @ D )
=> ( ( ( set_or4665077453230672383an_nat @ A @ B )
= ( set_or4665077453230672383an_nat @ C @ D ) )
= ( ( A = C )
& ( B = D ) ) ) ) ) ).
% atLeastLessThan_eq_iff
thf(fact_631_less__numeral__extra_I3_J,axiom,
~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).
% less_numeral_extra(3)
thf(fact_632_subseqs__refl,axiom,
! [Xs3: list_f] : ( member_list_f @ Xs3 @ ( set_list_f2 @ ( subseqs_f @ Xs3 ) ) ) ).
% subseqs_refl
thf(fact_633_upt__0,axiom,
! [I: nat] :
( ( upt @ I @ zero_zero_nat )
= nil_nat ) ).
% upt_0
thf(fact_634_subseqs_Osimps_I1_J,axiom,
( ( subseqs_f @ nil_f )
= ( cons_list_f @ nil_f @ nil_list_f ) ) ).
% subseqs.simps(1)
thf(fact_635_subseqs_Osimps_I1_J,axiom,
( ( subseqs_nat @ nil_nat )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).
% subseqs.simps(1)
thf(fact_636_subseqs_Osimps_I1_J,axiom,
( ( subseqs_a @ nil_a )
= ( cons_list_a @ nil_a @ nil_list_a ) ) ).
% subseqs.simps(1)
thf(fact_637_subseqs_Osimps_I1_J,axiom,
( ( subseq3825174504735880391ropVar @ nil_Pr6119456312066593144ropVar )
= ( cons_l5280711761816980654ropVar @ nil_Pr6119456312066593144ropVar @ nil_li2679230897895549182ropVar ) ) ).
% subseqs.simps(1)
thf(fact_638_Cons__in__subseqsD,axiom,
! [Y: f,Ys: list_f,Xs3: list_f] :
( ( member_list_f @ ( cons_f @ Y @ Ys ) @ ( set_list_f2 @ ( subseqs_f @ Xs3 ) ) )
=> ( member_list_f @ Ys @ ( set_list_f2 @ ( subseqs_f @ Xs3 ) ) ) ) ).
% Cons_in_subseqsD
thf(fact_639_Cons__in__subseqsD,axiom,
! [Y: nat,Ys: list_nat,Xs3: list_nat] :
( ( member_list_nat @ ( cons_nat @ Y @ Ys ) @ ( set_list_nat2 @ ( subseqs_nat @ Xs3 ) ) )
=> ( member_list_nat @ Ys @ ( set_list_nat2 @ ( subseqs_nat @ Xs3 ) ) ) ) ).
% Cons_in_subseqsD
thf(fact_640_Cons__in__subseqsD,axiom,
! [Y: produc2642885279816024434ropVar,Ys: list_P8791008543742759928ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( member6236339133593825953ropVar @ ( cons_P1504208554336013608ropVar @ Y @ Ys ) @ ( set_li6509544621384488717ropVar @ ( subseq3825174504735880391ropVar @ Xs3 ) ) )
=> ( member6236339133593825953ropVar @ Ys @ ( set_li6509544621384488717ropVar @ ( subseq3825174504735880391ropVar @ Xs3 ) ) ) ) ).
% Cons_in_subseqsD
thf(fact_641_product__lists_Osimps_I1_J,axiom,
( ( product_lists_f @ nil_list_f )
= ( cons_list_f @ nil_f @ nil_list_f ) ) ).
% product_lists.simps(1)
thf(fact_642_product__lists_Osimps_I1_J,axiom,
( ( product_lists_nat @ nil_list_nat )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).
% product_lists.simps(1)
thf(fact_643_product__lists_Osimps_I1_J,axiom,
( ( product_lists_a @ nil_list_a )
= ( cons_list_a @ nil_a @ nil_list_a ) ) ).
% product_lists.simps(1)
thf(fact_644_product__lists_Osimps_I1_J,axiom,
( ( produc2956654850250905953ropVar @ nil_li2679230897895549182ropVar )
= ( cons_l5280711761816980654ropVar @ nil_Pr6119456312066593144ropVar @ nil_li2679230897895549182ropVar ) ) ).
% product_lists.simps(1)
thf(fact_645_concat__eq__appendD,axiom,
! [Xss: list_list_nat,Ys: list_nat,Zs: list_nat] :
( ( ( concat_nat @ Xss )
= ( append_nat @ Ys @ Zs ) )
=> ( ( Xss != nil_list_nat )
=> ? [Xss12: list_list_nat,Xs2: list_nat,Xs6: list_nat,Xss23: list_list_nat] :
( ( Xss
= ( append_list_nat @ Xss12 @ ( cons_list_nat @ ( append_nat @ Xs2 @ Xs6 ) @ Xss23 ) ) )
& ( Ys
= ( append_nat @ ( concat_nat @ Xss12 ) @ Xs2 ) )
& ( Zs
= ( append_nat @ Xs6 @ ( concat_nat @ Xss23 ) ) ) ) ) ) ).
% concat_eq_appendD
thf(fact_646_concat__eq__appendD,axiom,
! [Xss: list_list_f,Ys: list_f,Zs: list_f] :
( ( ( concat_f @ Xss )
= ( append_f @ Ys @ Zs ) )
=> ( ( Xss != nil_list_f )
=> ? [Xss12: list_list_f,Xs2: list_f,Xs6: list_f,Xss23: list_list_f] :
( ( Xss
= ( append_list_f @ Xss12 @ ( cons_list_f @ ( append_f @ Xs2 @ Xs6 ) @ Xss23 ) ) )
& ( Ys
= ( append_f @ ( concat_f @ Xss12 ) @ Xs2 ) )
& ( Zs
= ( append_f @ Xs6 @ ( concat_f @ Xss23 ) ) ) ) ) ) ).
% concat_eq_appendD
thf(fact_647_n__lists_Osimps_I1_J,axiom,
! [Xs3: list_f] :
( ( n_lists_f @ zero_zero_nat @ Xs3 )
= ( cons_list_f @ nil_f @ nil_list_f ) ) ).
% n_lists.simps(1)
thf(fact_648_n__lists_Osimps_I1_J,axiom,
! [Xs3: list_nat] :
( ( n_lists_nat @ zero_zero_nat @ Xs3 )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).
% n_lists.simps(1)
thf(fact_649_n__lists_Osimps_I1_J,axiom,
! [Xs3: list_a] :
( ( n_lists_a @ zero_zero_nat @ Xs3 )
= ( cons_list_a @ nil_a @ nil_list_a ) ) ).
% n_lists.simps(1)
thf(fact_650_n__lists_Osimps_I1_J,axiom,
! [Xs3: list_P8791008543742759928ropVar] :
( ( n_list6927042657299049856ropVar @ zero_zero_nat @ Xs3 )
= ( cons_l5280711761816980654ropVar @ nil_Pr6119456312066593144ropVar @ nil_li2679230897895549182ropVar ) ) ).
% n_lists.simps(1)
thf(fact_651_encode__mul__ext__def,axiom,
! [S_ns: a > a > product_prod_o_o,Xs3: list_a,Ys: list_a] :
( ( multis9043250799203582212xt_f_a @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and @ enc_not_all @ enc_conj @ S_ns @ Xs3 @ Ys )
= ( product_Pair_f_f
@ ( enc_conj
@ ( cons_f @ ( enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ ( size_size_list_a @ Xs3 ) ) ) )
@ ( multis7684816351888833198la15_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ( size_size_list_a @ Xs3 )
@ ( size_size_list_a @ Ys ) ) ) )
@ ( enc_conj
@ ( multis7684816351888833198la15_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ( size_size_list_a @ Xs3 )
@ ( size_size_list_a @ Ys ) ) ) ) ) ).
% encode_mul_ext_def
thf(fact_652_encode__mul__ext__def,axiom,
! [S_ns: nat > nat > product_prod_o_o,Xs3: list_nat,Ys: list_nat] :
( ( multis793387808245080138_f_nat @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and @ enc_not_all @ enc_conj @ S_ns @ Xs3 @ Ys )
= ( product_Pair_f_f
@ ( enc_conj
@ ( cons_f @ ( enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ ( size_size_list_nat @ Xs3 ) ) ) )
@ ( multis7684816351888833198la15_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ( size_size_list_nat @ Xs3 )
@ ( size_size_list_nat @ Ys ) ) ) )
@ ( enc_conj
@ ( multis7684816351888833198la15_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ( size_size_list_nat @ Xs3 )
@ ( size_size_list_nat @ Ys ) ) ) ) ) ).
% encode_mul_ext_def
thf(fact_653_encode__mul__ext__def,axiom,
! [S_ns: produc2642885279816024434ropVar > produc2642885279816024434ropVar > product_prod_o_o,Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar] :
( ( multis1064896431811084152ropVar @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and @ enc_not_all @ enc_conj @ S_ns @ Xs3 @ Ys )
= ( product_Pair_f_f
@ ( enc_conj
@ ( cons_f @ ( enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ ( size_s6752116297430514276ropVar @ Xs3 ) ) ) )
@ ( multis7684816351888833198la15_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_Pr227365692153740281ropVar @ Xs3 @ I2 ) @ ( nth_Pr227365692153740281ropVar @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_Pr227365692153740281ropVar @ Xs3 @ I2 ) @ ( nth_Pr227365692153740281ropVar @ Ys @ J2 ) ) )
@ ( size_s6752116297430514276ropVar @ Xs3 )
@ ( size_s6752116297430514276ropVar @ Ys ) ) ) )
@ ( enc_conj
@ ( multis7684816351888833198la15_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_Pr227365692153740281ropVar @ Xs3 @ I2 ) @ ( nth_Pr227365692153740281ropVar @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_Pr227365692153740281ropVar @ Xs3 @ I2 ) @ ( nth_Pr227365692153740281ropVar @ Ys @ J2 ) ) )
@ ( size_s6752116297430514276ropVar @ Xs3 )
@ ( size_s6752116297430514276ropVar @ Ys ) ) ) ) ) ).
% encode_mul_ext_def
thf(fact_654_bind__simps_I2_J,axiom,
! [X: f,Xs3: list_f,F: f > list_f] :
( ( bind_f_f @ ( cons_f @ X @ Xs3 ) @ F )
= ( append_f @ ( F @ X ) @ ( bind_f_f @ Xs3 @ F ) ) ) ).
% bind_simps(2)
thf(fact_655_bind__simps_I2_J,axiom,
! [X: f,Xs3: list_f,F: f > list_nat] :
( ( bind_f_nat @ ( cons_f @ X @ Xs3 ) @ F )
= ( append_nat @ ( F @ X ) @ ( bind_f_nat @ Xs3 @ F ) ) ) ).
% bind_simps(2)
thf(fact_656_bind__simps_I2_J,axiom,
! [X: nat,Xs3: list_nat,F: nat > list_f] :
( ( bind_nat_f @ ( cons_nat @ X @ Xs3 ) @ F )
= ( append_f @ ( F @ X ) @ ( bind_nat_f @ Xs3 @ F ) ) ) ).
% bind_simps(2)
thf(fact_657_bind__simps_I2_J,axiom,
! [X: nat,Xs3: list_nat,F: nat > list_nat] :
( ( bind_nat_nat @ ( cons_nat @ X @ Xs3 ) @ F )
= ( append_nat @ ( F @ X ) @ ( bind_nat_nat @ Xs3 @ F ) ) ) ).
% bind_simps(2)
thf(fact_658_bind__simps_I2_J,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar,F: produc2642885279816024434ropVar > list_f] :
( ( bind_P8681900402095835032pVar_f @ ( cons_P1504208554336013608ropVar @ X @ Xs3 ) @ F )
= ( append_f @ ( F @ X ) @ ( bind_P8681900402095835032pVar_f @ Xs3 @ F ) ) ) ).
% bind_simps(2)
thf(fact_659_bind__simps_I2_J,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar,F: produc2642885279816024434ropVar > list_nat] :
( ( bind_P7182508892803130363ar_nat @ ( cons_P1504208554336013608ropVar @ X @ Xs3 ) @ F )
= ( append_nat @ ( F @ X ) @ ( bind_P7182508892803130363ar_nat @ Xs3 @ F ) ) ) ).
% bind_simps(2)
thf(fact_660_encoding__sound_I2_J,axiom,
! [V: multis3193088007478089820ropVar > $o] :
( ! [X4: f] :
( ( member_f @ X4 @ ( set_f2 @ ( multis7684816351888833198la15_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and @ cs @ cns @ n @ m ) ) )
=> ( eval @ V @ X4 ) )
=> ( ! [X4: f] :
( ( member_f @ X4 @ ( set_f2 @ ( multis4897360769916157165la16_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and @ enc_not_all @ cs @ cns @ n @ m ) ) )
=> ( eval @ V @ X4 ) )
=> ( member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( mset_a @ ( map_nat_a @ s2 @ ( upt @ zero_zero_nat @ n ) ) ) @ ( mset_a @ ( map_nat_a @ t @ ( upt @ zero_zero_nat @ m ) ) ) ) @ ( multiset_s_mul_ext_a @ ns @ s ) ) ) ) ).
% encoding_sound(2)
thf(fact_661_map__rec,axiom,
( map_na2466558649495876678ropVar
= ( ^ [F2: nat > multis3193088007478089820ropVar] :
( rec_li3635176538394059004ar_nat @ nil_Mu4132399263956683874ropVar
@ ^ [X3: nat,Uu: list_nat] : ( cons_M4277272395645347858ropVar @ ( F2 @ X3 ) ) ) ) ) ).
% map_rec
thf(fact_662_map__rec,axiom,
( map_nat_a
= ( ^ [F2: nat > a] :
( rec_list_list_a_nat @ nil_a
@ ^ [X3: nat,Uu: list_nat] : ( cons_a @ ( F2 @ X3 ) ) ) ) ) ).
% map_rec
thf(fact_663_map__rec,axiom,
( map_Pr3335389669906741166ropVar
= ( ^ [F2: produc2642885279816024434ropVar > multis3193088007478089820ropVar] :
( rec_li3346145771974027078ropVar @ nil_Mu4132399263956683874ropVar
@ ^ [X3: produc2642885279816024434ropVar,Uu: list_P8791008543742759928ropVar] : ( cons_M4277272395645347858ropVar @ ( F2 @ X3 ) ) ) ) ) ).
% map_rec
thf(fact_664_map__rec,axiom,
( map_nat_nat
= ( ^ [F2: nat > nat] :
( rec_li7516600145284979816at_nat @ nil_nat
@ ^ [X3: nat,Uu: list_nat] : ( cons_nat @ ( F2 @ X3 ) ) ) ) ) ).
% map_rec
thf(fact_665_map__rec,axiom,
( map_na2145702811007361372ropVar
= ( ^ [F2: nat > produc2642885279816024434ropVar] :
( rec_li2530905255354511122ar_nat @ nil_Pr6119456312066593144ropVar
@ ^ [X3: nat,Uu: list_nat] : ( cons_P1504208554336013608ropVar @ ( F2 @ X3 ) ) ) ) ) ).
% map_rec
thf(fact_666_n__lists_Osimps_I2_J,axiom,
! [N: nat,Xs3: list_f] :
( ( n_lists_f @ ( suc @ N ) @ Xs3 )
= ( concat_list_f
@ ( map_li8627645367811812490list_f
@ ^ [Ys2: list_f] :
( map_f_list_f
@ ^ [Y2: f] : ( cons_f @ Y2 @ Ys2 )
@ Xs3 )
@ ( n_lists_f @ N @ Xs3 ) ) ) ) ).
% n_lists.simps(2)
thf(fact_667_n__lists_Osimps_I2_J,axiom,
! [N: nat,Xs3: list_nat] :
( ( n_lists_nat @ ( suc @ N ) @ Xs3 )
= ( concat_list_nat
@ ( map_li960784813134754710st_nat
@ ^ [Ys2: list_nat] :
( map_nat_list_nat
@ ^ [Y2: nat] : ( cons_nat @ Y2 @ Ys2 )
@ Xs3 )
@ ( n_lists_nat @ N @ Xs3 ) ) ) ) ).
% n_lists.simps(2)
thf(fact_668_n__lists_Osimps_I2_J,axiom,
! [N: nat,Xs3: list_P8791008543742759928ropVar] :
( ( n_list6927042657299049856ropVar @ ( suc @ N ) @ Xs3 )
= ( concat4944697247486958777ropVar
@ ( map_li2030941865990407626ropVar
@ ^ [Ys2: list_P8791008543742759928ropVar] :
( map_Pr8780118474983044682ropVar
@ ^ [Y2: produc2642885279816024434ropVar] : ( cons_P1504208554336013608ropVar @ Y2 @ Ys2 )
@ Xs3 )
@ ( n_list6927042657299049856ropVar @ N @ Xs3 ) ) ) ) ).
% n_lists.simps(2)
thf(fact_669_encoding__sound_I1_J,axiom,
! [V: multis3193088007478089820ropVar > $o] :
( ! [X4: f] :
( ( member_f @ X4 @ ( set_f2 @ ( multis7684816351888833198la15_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and @ cs @ cns @ n @ m ) ) )
=> ( eval @ V @ X4 ) )
=> ( member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( mset_a @ ( map_nat_a @ s2 @ ( upt @ zero_zero_nat @ n ) ) ) @ ( mset_a @ ( map_nat_a @ t @ ( upt @ zero_zero_nat @ m ) ) ) ) @ ( multis4023584895248362547_ext_a @ ns @ s ) ) ) ).
% encoding_sound(1)
thf(fact_670_old_Onat_Oinject,axiom,
! [Nat: nat,Nat2: nat] :
( ( ( suc @ Nat )
= ( suc @ Nat2 ) )
= ( Nat = Nat2 ) ) ).
% old.nat.inject
thf(fact_671_nat_Oinject,axiom,
! [X23: nat,Y23: nat] :
( ( ( suc @ X23 )
= ( suc @ Y23 ) )
= ( X23 = Y23 ) ) ).
% nat.inject
thf(fact_672_lessI,axiom,
! [N: nat] : ( ord_less_nat @ N @ ( suc @ N ) ) ).
% lessI
thf(fact_673_Suc__mono,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) ) ) ).
% Suc_mono
thf(fact_674_Suc__less__eq,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
= ( ord_less_nat @ M @ N ) ) ).
% Suc_less_eq
thf(fact_675_length__map,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_nat] :
( ( size_s1943289338788136526ropVar @ ( map_na2466558649495876678ropVar @ F @ Xs3 ) )
= ( size_size_list_nat @ Xs3 ) ) ).
% length_map
thf(fact_676_length__map,axiom,
! [F: a > a,Xs3: list_a] :
( ( size_size_list_a @ ( map_a_a @ F @ Xs3 ) )
= ( size_size_list_a @ Xs3 ) ) ).
% length_map
thf(fact_677_length__map,axiom,
! [F: nat > a,Xs3: list_nat] :
( ( size_size_list_a @ ( map_nat_a @ F @ Xs3 ) )
= ( size_size_list_nat @ Xs3 ) ) ).
% length_map
thf(fact_678_length__map,axiom,
! [F: a > nat,Xs3: list_a] :
( ( size_size_list_nat @ ( map_a_nat @ F @ Xs3 ) )
= ( size_size_list_a @ Xs3 ) ) ).
% length_map
thf(fact_679_length__map,axiom,
! [F: nat > nat,Xs3: list_nat] :
( ( size_size_list_nat @ ( map_nat_nat @ F @ Xs3 ) )
= ( size_size_list_nat @ Xs3 ) ) ).
% length_map
thf(fact_680_length__map,axiom,
! [F: produc2642885279816024434ropVar > multis3193088007478089820ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( size_s1943289338788136526ropVar @ ( map_Pr3335389669906741166ropVar @ F @ Xs3 ) )
= ( size_s6752116297430514276ropVar @ Xs3 ) ) ).
% length_map
thf(fact_681_length__map,axiom,
! [F: produc2642885279816024434ropVar > a,Xs3: list_P8791008543742759928ropVar] :
( ( size_size_list_a @ ( map_Pr1064736048566318672pVar_a @ F @ Xs3 ) )
= ( size_s6752116297430514276ropVar @ Xs3 ) ) ).
% length_map
thf(fact_682_length__map,axiom,
! [F: produc2642885279816024434ropVar > nat,Xs3: list_P8791008543742759928ropVar] :
( ( size_size_list_nat @ ( map_Pr7810381211709419518ar_nat @ F @ Xs3 ) )
= ( size_s6752116297430514276ropVar @ Xs3 ) ) ).
% length_map
thf(fact_683_length__map,axiom,
! [F: a > produc2642885279816024434ropVar,Xs3: list_a] :
( ( size_s6752116297430514276ropVar @ ( map_a_1400613014311812664ropVar @ F @ Xs3 ) )
= ( size_size_list_a @ Xs3 ) ) ).
% length_map
thf(fact_684_length__map,axiom,
! [F: nat > produc2642885279816024434ropVar,Xs3: list_nat] :
( ( size_s6752116297430514276ropVar @ ( map_na2145702811007361372ropVar @ F @ Xs3 ) )
= ( size_size_list_nat @ Xs3 ) ) ).
% length_map
thf(fact_685_append__eq__append__conv,axiom,
! [Xs3: list_f,Ys: list_f,Us2: list_f,Vs2: list_f] :
( ( ( ( size_size_list_f @ Xs3 )
= ( size_size_list_f @ Ys ) )
| ( ( size_size_list_f @ Us2 )
= ( size_size_list_f @ Vs2 ) ) )
=> ( ( ( append_f @ Xs3 @ Us2 )
= ( append_f @ Ys @ Vs2 ) )
= ( ( Xs3 = Ys )
& ( Us2 = Vs2 ) ) ) ) ).
% append_eq_append_conv
thf(fact_686_append__eq__append__conv,axiom,
! [Xs3: list_a,Ys: list_a,Us2: list_a,Vs2: list_a] :
( ( ( ( size_size_list_a @ Xs3 )
= ( size_size_list_a @ Ys ) )
| ( ( size_size_list_a @ Us2 )
= ( size_size_list_a @ Vs2 ) ) )
=> ( ( ( append_a @ Xs3 @ Us2 )
= ( append_a @ Ys @ Vs2 ) )
= ( ( Xs3 = Ys )
& ( Us2 = Vs2 ) ) ) ) ).
% append_eq_append_conv
thf(fact_687_append__eq__append__conv,axiom,
! [Xs3: list_nat,Ys: list_nat,Us2: list_nat,Vs2: list_nat] :
( ( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_nat @ Ys ) )
| ( ( size_size_list_nat @ Us2 )
= ( size_size_list_nat @ Vs2 ) ) )
=> ( ( ( append_nat @ Xs3 @ Us2 )
= ( append_nat @ Ys @ Vs2 ) )
= ( ( Xs3 = Ys )
& ( Us2 = Vs2 ) ) ) ) ).
% append_eq_append_conv
thf(fact_688_append__eq__append__conv,axiom,
! [Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar,Us2: list_P8791008543742759928ropVar,Vs2: list_P8791008543742759928ropVar] :
( ( ( ( size_s6752116297430514276ropVar @ Xs3 )
= ( size_s6752116297430514276ropVar @ Ys ) )
| ( ( size_s6752116297430514276ropVar @ Us2 )
= ( size_s6752116297430514276ropVar @ Vs2 ) ) )
=> ( ( ( append4352292717583037453ropVar @ Xs3 @ Us2 )
= ( append4352292717583037453ropVar @ Ys @ Vs2 ) )
= ( ( Xs3 = Ys )
& ( Us2 = Vs2 ) ) ) ) ).
% append_eq_append_conv
thf(fact_689__092_060open_062_Imset_A_Imap_As_A_0910_O_O_060n_093_J_M_Amset_A_Imap_At_A_0910_O_O_060m_093_J_J_A_092_060in_062_As__mul__ext_ANS_AS_092_060close_062,axiom,
member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( mset_a @ ( map_nat_a @ s2 @ ( upt @ zero_zero_nat @ n ) ) ) @ ( mset_a @ ( map_nat_a @ t @ ( upt @ zero_zero_nat @ m ) ) ) ) @ ( multiset_s_mul_ext_a @ ns @ s ) ).
% \<open>(mset (map s [0..<n]), mset (map t [0..<m])) \<in> s_mul_ext NS S\<close>
thf(fact_690_assms,axiom,
member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( mset_a @ ( map_nat_a @ s2 @ ( upt @ zero_zero_nat @ n ) ) ) @ ( mset_a @ ( map_nat_a @ t @ ( upt @ zero_zero_nat @ m ) ) ) ) @ ( multis4023584895248362547_ext_a @ ns @ s ) ).
% assms
thf(fact_691_bind__simps_I1_J,axiom,
! [F: f > list_f] :
( ( bind_f_f @ nil_f @ F )
= nil_f ) ).
% bind_simps(1)
thf(fact_692_bind__simps_I1_J,axiom,
! [F: f > list_nat] :
( ( bind_f_nat @ nil_f @ F )
= nil_nat ) ).
% bind_simps(1)
thf(fact_693_bind__simps_I1_J,axiom,
! [F: f > list_a] :
( ( bind_f_a @ nil_f @ F )
= nil_a ) ).
% bind_simps(1)
thf(fact_694_bind__simps_I1_J,axiom,
! [F: nat > list_f] :
( ( bind_nat_f @ nil_nat @ F )
= nil_f ) ).
% bind_simps(1)
thf(fact_695_bind__simps_I1_J,axiom,
! [F: nat > list_nat] :
( ( bind_nat_nat @ nil_nat @ F )
= nil_nat ) ).
% bind_simps(1)
thf(fact_696_bind__simps_I1_J,axiom,
! [F: nat > list_a] :
( ( bind_nat_a @ nil_nat @ F )
= nil_a ) ).
% bind_simps(1)
thf(fact_697_bind__simps_I1_J,axiom,
! [F: a > list_f] :
( ( bind_a_f @ nil_a @ F )
= nil_f ) ).
% bind_simps(1)
thf(fact_698_bind__simps_I1_J,axiom,
! [F: a > list_nat] :
( ( bind_a_nat @ nil_a @ F )
= nil_nat ) ).
% bind_simps(1)
thf(fact_699_bind__simps_I1_J,axiom,
! [F: a > list_a] :
( ( bind_a_a @ nil_a @ F )
= nil_a ) ).
% bind_simps(1)
thf(fact_700_bind__simps_I1_J,axiom,
! [F: f > list_P8791008543742759928ropVar] :
( ( bind_f1299746951821134518ropVar @ nil_f @ F )
= nil_Pr6119456312066593144ropVar ) ).
% bind_simps(1)
thf(fact_701_less__Suc0,axiom,
! [N: nat] :
( ( ord_less_nat @ N @ ( suc @ zero_zero_nat ) )
= ( N = zero_zero_nat ) ) ).
% less_Suc0
thf(fact_702_zero__less__Suc,axiom,
! [N: nat] : ( ord_less_nat @ zero_zero_nat @ ( suc @ N ) ) ).
% zero_less_Suc
thf(fact_703_length__0__conv,axiom,
! [Xs3: list_f] :
( ( ( size_size_list_f @ Xs3 )
= zero_zero_nat )
= ( Xs3 = nil_f ) ) ).
% length_0_conv
thf(fact_704_length__0__conv,axiom,
! [Xs3: list_a] :
( ( ( size_size_list_a @ Xs3 )
= zero_zero_nat )
= ( Xs3 = nil_a ) ) ).
% length_0_conv
thf(fact_705_length__0__conv,axiom,
! [Xs3: list_nat] :
( ( ( size_size_list_nat @ Xs3 )
= zero_zero_nat )
= ( Xs3 = nil_nat ) ) ).
% length_0_conv
thf(fact_706_length__0__conv,axiom,
! [Xs3: list_P8791008543742759928ropVar] :
( ( ( size_s6752116297430514276ropVar @ Xs3 )
= zero_zero_nat )
= ( Xs3 = nil_Pr6119456312066593144ropVar ) ) ).
% length_0_conv
thf(fact_707_nth__Cons__0,axiom,
! [X: a,Xs3: list_a] :
( ( nth_a @ ( cons_a @ X @ Xs3 ) @ zero_zero_nat )
= X ) ).
% nth_Cons_0
thf(fact_708_nth__Cons__0,axiom,
! [X: f,Xs3: list_f] :
( ( nth_f @ ( cons_f @ X @ Xs3 ) @ zero_zero_nat )
= X ) ).
% nth_Cons_0
thf(fact_709_nth__Cons__0,axiom,
! [X: nat,Xs3: list_nat] :
( ( nth_nat @ ( cons_nat @ X @ Xs3 ) @ zero_zero_nat )
= X ) ).
% nth_Cons_0
thf(fact_710_nth__Cons__0,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( nth_Pr227365692153740281ropVar @ ( cons_P1504208554336013608ropVar @ X @ Xs3 ) @ zero_zero_nat )
= X ) ).
% nth_Cons_0
thf(fact_711_nth__Cons__Suc,axiom,
! [X: a,Xs3: list_a,N: nat] :
( ( nth_a @ ( cons_a @ X @ Xs3 ) @ ( suc @ N ) )
= ( nth_a @ Xs3 @ N ) ) ).
% nth_Cons_Suc
thf(fact_712_nth__Cons__Suc,axiom,
! [X: f,Xs3: list_f,N: nat] :
( ( nth_f @ ( cons_f @ X @ Xs3 ) @ ( suc @ N ) )
= ( nth_f @ Xs3 @ N ) ) ).
% nth_Cons_Suc
thf(fact_713_nth__Cons__Suc,axiom,
! [X: nat,Xs3: list_nat,N: nat] :
( ( nth_nat @ ( cons_nat @ X @ Xs3 ) @ ( suc @ N ) )
= ( nth_nat @ Xs3 @ N ) ) ).
% nth_Cons_Suc
thf(fact_714_nth__Cons__Suc,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar,N: nat] :
( ( nth_Pr227365692153740281ropVar @ ( cons_P1504208554336013608ropVar @ X @ Xs3 ) @ ( suc @ N ) )
= ( nth_Pr227365692153740281ropVar @ Xs3 @ N ) ) ).
% nth_Cons_Suc
thf(fact_715_length__greater__0__conv,axiom,
! [Xs3: list_f] :
( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_f @ Xs3 ) )
= ( Xs3 != nil_f ) ) ).
% length_greater_0_conv
thf(fact_716_length__greater__0__conv,axiom,
! [Xs3: list_a] :
( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_a @ Xs3 ) )
= ( Xs3 != nil_a ) ) ).
% length_greater_0_conv
thf(fact_717_length__greater__0__conv,axiom,
! [Xs3: list_nat] :
( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_nat @ Xs3 ) )
= ( Xs3 != nil_nat ) ) ).
% length_greater_0_conv
thf(fact_718_length__greater__0__conv,axiom,
! [Xs3: list_P8791008543742759928ropVar] :
( ( ord_less_nat @ zero_zero_nat @ ( size_s6752116297430514276ropVar @ Xs3 ) )
= ( Xs3 != nil_Pr6119456312066593144ropVar ) ) ).
% length_greater_0_conv
thf(fact_719_nth__map,axiom,
! [N: nat,Xs3: list_a,F: a > a] :
( ( ord_less_nat @ N @ ( size_size_list_a @ Xs3 ) )
=> ( ( nth_a @ ( map_a_a @ F @ Xs3 ) @ N )
= ( F @ ( nth_a @ Xs3 @ N ) ) ) ) ).
% nth_map
thf(fact_720_nth__map,axiom,
! [N: nat,Xs3: list_a,F: a > nat] :
( ( ord_less_nat @ N @ ( size_size_list_a @ Xs3 ) )
=> ( ( nth_nat @ ( map_a_nat @ F @ Xs3 ) @ N )
= ( F @ ( nth_a @ Xs3 @ N ) ) ) ) ).
% nth_map
thf(fact_721_nth__map,axiom,
! [N: nat,Xs3: list_nat,F: nat > multis3193088007478089820ropVar] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs3 ) )
=> ( ( nth_Mu4537670848183934179ropVar @ ( map_na2466558649495876678ropVar @ F @ Xs3 ) @ N )
= ( F @ ( nth_nat @ Xs3 @ N ) ) ) ) ).
% nth_map
thf(fact_722_nth__map,axiom,
! [N: nat,Xs3: list_nat,F: nat > a] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs3 ) )
=> ( ( nth_a @ ( map_nat_a @ F @ Xs3 ) @ N )
= ( F @ ( nth_nat @ Xs3 @ N ) ) ) ) ).
% nth_map
thf(fact_723_nth__map,axiom,
! [N: nat,Xs3: list_nat,F: nat > nat] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs3 ) )
=> ( ( nth_nat @ ( map_nat_nat @ F @ Xs3 ) @ N )
= ( F @ ( nth_nat @ Xs3 @ N ) ) ) ) ).
% nth_map
thf(fact_724_nth__map,axiom,
! [N: nat,Xs3: list_a,F: a > produc2642885279816024434ropVar] :
( ( ord_less_nat @ N @ ( size_size_list_a @ Xs3 ) )
=> ( ( nth_Pr227365692153740281ropVar @ ( map_a_1400613014311812664ropVar @ F @ Xs3 ) @ N )
= ( F @ ( nth_a @ Xs3 @ N ) ) ) ) ).
% nth_map
thf(fact_725_nth__map,axiom,
! [N: nat,Xs3: list_nat,F: nat > produc2642885279816024434ropVar] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs3 ) )
=> ( ( nth_Pr227365692153740281ropVar @ ( map_na2145702811007361372ropVar @ F @ Xs3 ) @ N )
= ( F @ ( nth_nat @ Xs3 @ N ) ) ) ) ).
% nth_map
thf(fact_726_nth__map,axiom,
! [N: nat,Xs3: list_P8791008543742759928ropVar,F: produc2642885279816024434ropVar > a] :
( ( ord_less_nat @ N @ ( size_s6752116297430514276ropVar @ Xs3 ) )
=> ( ( nth_a @ ( map_Pr1064736048566318672pVar_a @ F @ Xs3 ) @ N )
= ( F @ ( nth_Pr227365692153740281ropVar @ Xs3 @ N ) ) ) ) ).
% nth_map
thf(fact_727_nth__map,axiom,
! [N: nat,Xs3: list_P8791008543742759928ropVar,F: produc2642885279816024434ropVar > nat] :
( ( ord_less_nat @ N @ ( size_s6752116297430514276ropVar @ Xs3 ) )
=> ( ( nth_nat @ ( map_Pr7810381211709419518ar_nat @ F @ Xs3 ) @ N )
= ( F @ ( nth_Pr227365692153740281ropVar @ Xs3 @ N ) ) ) ) ).
% nth_map
thf(fact_728_nth__map,axiom,
! [N: nat,Xs3: list_P8791008543742759928ropVar,F: produc2642885279816024434ropVar > multis3193088007478089820ropVar] :
( ( ord_less_nat @ N @ ( size_s6752116297430514276ropVar @ Xs3 ) )
=> ( ( nth_Mu4537670848183934179ropVar @ ( map_Pr3335389669906741166ropVar @ F @ Xs3 ) @ N )
= ( F @ ( nth_Pr227365692153740281ropVar @ Xs3 @ N ) ) ) ) ).
% nth_map
thf(fact_729_nth__append__length,axiom,
! [Xs3: list_f,X: f,Ys: list_f] :
( ( nth_f @ ( append_f @ Xs3 @ ( cons_f @ X @ Ys ) ) @ ( size_size_list_f @ Xs3 ) )
= X ) ).
% nth_append_length
thf(fact_730_nth__append__length,axiom,
! [Xs3: list_a,X: a,Ys: list_a] :
( ( nth_a @ ( append_a @ Xs3 @ ( cons_a @ X @ Ys ) ) @ ( size_size_list_a @ Xs3 ) )
= X ) ).
% nth_append_length
thf(fact_731_nth__append__length,axiom,
! [Xs3: list_nat,X: nat,Ys: list_nat] :
( ( nth_nat @ ( append_nat @ Xs3 @ ( cons_nat @ X @ Ys ) ) @ ( size_size_list_nat @ Xs3 ) )
= X ) ).
% nth_append_length
thf(fact_732_nth__append__length,axiom,
! [Xs3: list_P8791008543742759928ropVar,X: produc2642885279816024434ropVar,Ys: list_P8791008543742759928ropVar] :
( ( nth_Pr227365692153740281ropVar @ ( append4352292717583037453ropVar @ Xs3 @ ( cons_P1504208554336013608ropVar @ X @ Ys ) ) @ ( size_s6752116297430514276ropVar @ Xs3 ) )
= X ) ).
% nth_append_length
thf(fact_733_ne,axiom,
( ( member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( mset_a @ ( map_nat_a @ s2 @ ( upt @ zero_zero_nat @ n ) ) ) @ ( mset_a @ ( map_nat_a @ t @ ( upt @ zero_zero_nat @ m ) ) ) ) @ ( multiset_s_mul_ext_a @ ns @ s ) )
=> ( xs2 != nil_a ) ) ).
% ne
thf(fact_734_encoder_Oencode__sum__0__1__main_Ocases,axiom,
! [Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,X: list_P8791008543742759928ropVar] :
( ( multis2000375938434000499pVar_f @ Eval @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj )
=> ( ! [X4: multis3193088007478089820ropVar,Zero: multis3193088007478089820ropVar,One: multis3193088007478089820ropVar] :
( X
!= ( cons_P1504208554336013608ropVar @ ( produc6194868611276206818ropVar @ X4 @ ( produc6936306168532358295ropVar @ Zero @ One ) ) @ nil_Pr6119456312066593144ropVar ) )
=> ( ! [X4: multis3193088007478089820ropVar,Zero: multis3193088007478089820ropVar,One: multis3193088007478089820ropVar,V2: produc2642885279816024434ropVar,Va: list_P8791008543742759928ropVar] :
( X
!= ( cons_P1504208554336013608ropVar @ ( produc6194868611276206818ropVar @ X4 @ ( produc6936306168532358295ropVar @ Zero @ One ) ) @ ( cons_P1504208554336013608ropVar @ V2 @ Va ) ) )
=> ( X = nil_Pr6119456312066593144ropVar ) ) ) ) ).
% encoder.encode_sum_0_1_main.cases
thf(fact_735_pair__list__eqI,axiom,
! [Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar] :
( ( ( map_Pr3335389669906741166ropVar @ produc6918815732823278798ropVar @ Xs3 )
= ( map_Pr3335389669906741166ropVar @ produc6918815732823278798ropVar @ Ys ) )
=> ( ( ( map_Pr7468255547243610361ropVar @ produc7201713744986289680ropVar @ Xs3 )
= ( map_Pr7468255547243610361ropVar @ produc7201713744986289680ropVar @ Ys ) )
=> ( Xs3 = Ys ) ) ) ).
% pair_list_eqI
thf(fact_736_neq__if__length__neq,axiom,
! [Xs3: list_a,Ys: list_a] :
( ( ( size_size_list_a @ Xs3 )
!= ( size_size_list_a @ Ys ) )
=> ( Xs3 != Ys ) ) ).
% neq_if_length_neq
thf(fact_737_neq__if__length__neq,axiom,
! [Xs3: list_nat,Ys: list_nat] :
( ( ( size_size_list_nat @ Xs3 )
!= ( size_size_list_nat @ Ys ) )
=> ( Xs3 != Ys ) ) ).
% neq_if_length_neq
thf(fact_738_neq__if__length__neq,axiom,
! [Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar] :
( ( ( size_s6752116297430514276ropVar @ Xs3 )
!= ( size_s6752116297430514276ropVar @ Ys ) )
=> ( Xs3 != Ys ) ) ).
% neq_if_length_neq
thf(fact_739_Ex__list__of__length,axiom,
! [N: nat] :
? [Xs2: list_a] :
( ( size_size_list_a @ Xs2 )
= N ) ).
% Ex_list_of_length
thf(fact_740_Ex__list__of__length,axiom,
! [N: nat] :
? [Xs2: list_nat] :
( ( size_size_list_nat @ Xs2 )
= N ) ).
% Ex_list_of_length
thf(fact_741_Ex__list__of__length,axiom,
! [N: nat] :
? [Xs2: list_P8791008543742759928ropVar] :
( ( size_s6752116297430514276ropVar @ Xs2 )
= N ) ).
% Ex_list_of_length
thf(fact_742_Suc__length__conv,axiom,
! [N: nat,Xs3: list_f] :
( ( ( suc @ N )
= ( size_size_list_f @ Xs3 ) )
= ( ? [Y2: f,Ys2: list_f] :
( ( Xs3
= ( cons_f @ Y2 @ Ys2 ) )
& ( ( size_size_list_f @ Ys2 )
= N ) ) ) ) ).
% Suc_length_conv
thf(fact_743_Suc__length__conv,axiom,
! [N: nat,Xs3: list_a] :
( ( ( suc @ N )
= ( size_size_list_a @ Xs3 ) )
= ( ? [Y2: a,Ys2: list_a] :
( ( Xs3
= ( cons_a @ Y2 @ Ys2 ) )
& ( ( size_size_list_a @ Ys2 )
= N ) ) ) ) ).
% Suc_length_conv
thf(fact_744_Suc__length__conv,axiom,
! [N: nat,Xs3: list_nat] :
( ( ( suc @ N )
= ( size_size_list_nat @ Xs3 ) )
= ( ? [Y2: nat,Ys2: list_nat] :
( ( Xs3
= ( cons_nat @ Y2 @ Ys2 ) )
& ( ( size_size_list_nat @ Ys2 )
= N ) ) ) ) ).
% Suc_length_conv
thf(fact_745_Suc__length__conv,axiom,
! [N: nat,Xs3: list_P8791008543742759928ropVar] :
( ( ( suc @ N )
= ( size_s6752116297430514276ropVar @ Xs3 ) )
= ( ? [Y2: produc2642885279816024434ropVar,Ys2: list_P8791008543742759928ropVar] :
( ( Xs3
= ( cons_P1504208554336013608ropVar @ Y2 @ Ys2 ) )
& ( ( size_s6752116297430514276ropVar @ Ys2 )
= N ) ) ) ) ).
% Suc_length_conv
thf(fact_746_length__Suc__conv,axiom,
! [Xs3: list_f,N: nat] :
( ( ( size_size_list_f @ Xs3 )
= ( suc @ N ) )
= ( ? [Y2: f,Ys2: list_f] :
( ( Xs3
= ( cons_f @ Y2 @ Ys2 ) )
& ( ( size_size_list_f @ Ys2 )
= N ) ) ) ) ).
% length_Suc_conv
thf(fact_747_length__Suc__conv,axiom,
! [Xs3: list_a,N: nat] :
( ( ( size_size_list_a @ Xs3 )
= ( suc @ N ) )
= ( ? [Y2: a,Ys2: list_a] :
( ( Xs3
= ( cons_a @ Y2 @ Ys2 ) )
& ( ( size_size_list_a @ Ys2 )
= N ) ) ) ) ).
% length_Suc_conv
thf(fact_748_length__Suc__conv,axiom,
! [Xs3: list_nat,N: nat] :
( ( ( size_size_list_nat @ Xs3 )
= ( suc @ N ) )
= ( ? [Y2: nat,Ys2: list_nat] :
( ( Xs3
= ( cons_nat @ Y2 @ Ys2 ) )
& ( ( size_size_list_nat @ Ys2 )
= N ) ) ) ) ).
% length_Suc_conv
thf(fact_749_length__Suc__conv,axiom,
! [Xs3: list_P8791008543742759928ropVar,N: nat] :
( ( ( size_s6752116297430514276ropVar @ Xs3 )
= ( suc @ N ) )
= ( ? [Y2: produc2642885279816024434ropVar,Ys2: list_P8791008543742759928ropVar] :
( ( Xs3
= ( cons_P1504208554336013608ropVar @ Y2 @ Ys2 ) )
& ( ( size_s6752116297430514276ropVar @ Ys2 )
= N ) ) ) ) ).
% length_Suc_conv
thf(fact_750_n__not__Suc__n,axiom,
! [N: nat] :
( N
!= ( suc @ N ) ) ).
% n_not_Suc_n
thf(fact_751_Suc__inject,axiom,
! [X: nat,Y: nat] :
( ( ( suc @ X )
= ( suc @ Y ) )
=> ( X = Y ) ) ).
% Suc_inject
thf(fact_752_nth__equalityI,axiom,
! [Xs3: list_a,Ys: list_a] :
( ( ( size_size_list_a @ Xs3 )
= ( size_size_list_a @ Ys ) )
=> ( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_size_list_a @ Xs3 ) )
=> ( ( nth_a @ Xs3 @ I3 )
= ( nth_a @ Ys @ I3 ) ) )
=> ( Xs3 = Ys ) ) ) ).
% nth_equalityI
thf(fact_753_nth__equalityI,axiom,
! [Xs3: list_nat,Ys: list_nat] :
( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_nat @ Ys ) )
=> ( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs3 ) )
=> ( ( nth_nat @ Xs3 @ I3 )
= ( nth_nat @ Ys @ I3 ) ) )
=> ( Xs3 = Ys ) ) ) ).
% nth_equalityI
thf(fact_754_nth__equalityI,axiom,
! [Xs3: list_P8791008543742759928ropVar,Ys: list_P8791008543742759928ropVar] :
( ( ( size_s6752116297430514276ropVar @ Xs3 )
= ( size_s6752116297430514276ropVar @ Ys ) )
=> ( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_s6752116297430514276ropVar @ Xs3 ) )
=> ( ( nth_Pr227365692153740281ropVar @ Xs3 @ I3 )
= ( nth_Pr227365692153740281ropVar @ Ys @ I3 ) ) )
=> ( Xs3 = Ys ) ) ) ).
% nth_equalityI
thf(fact_755_Skolem__list__nth,axiom,
! [K: nat,P: nat > a > $o] :
( ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ K )
=> ? [X5: a] : ( P @ I2 @ X5 ) ) )
= ( ? [Xs: list_a] :
( ( ( size_size_list_a @ Xs )
= K )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ K )
=> ( P @ I2 @ ( nth_a @ Xs @ I2 ) ) ) ) ) ) ).
% Skolem_list_nth
thf(fact_756_Skolem__list__nth,axiom,
! [K: nat,P: nat > nat > $o] :
( ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ K )
=> ? [X5: nat] : ( P @ I2 @ X5 ) ) )
= ( ? [Xs: list_nat] :
( ( ( size_size_list_nat @ Xs )
= K )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ K )
=> ( P @ I2 @ ( nth_nat @ Xs @ I2 ) ) ) ) ) ) ).
% Skolem_list_nth
thf(fact_757_Skolem__list__nth,axiom,
! [K: nat,P: nat > produc2642885279816024434ropVar > $o] :
( ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ K )
=> ? [X5: produc2642885279816024434ropVar] : ( P @ I2 @ X5 ) ) )
= ( ? [Xs: list_P8791008543742759928ropVar] :
( ( ( size_s6752116297430514276ropVar @ Xs )
= K )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ K )
=> ( P @ I2 @ ( nth_Pr227365692153740281ropVar @ Xs @ I2 ) ) ) ) ) ) ).
% Skolem_list_nth
thf(fact_758_list__eq__iff__nth__eq,axiom,
( ( ^ [Y4: list_a,Z4: list_a] : ( Y4 = Z4 ) )
= ( ^ [Xs: list_a,Ys2: list_a] :
( ( ( size_size_list_a @ Xs )
= ( size_size_list_a @ Ys2 ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_a @ Xs ) )
=> ( ( nth_a @ Xs @ I2 )
= ( nth_a @ Ys2 @ I2 ) ) ) ) ) ) ).
% list_eq_iff_nth_eq
thf(fact_759_list__eq__iff__nth__eq,axiom,
( ( ^ [Y4: list_nat,Z4: list_nat] : ( Y4 = Z4 ) )
= ( ^ [Xs: list_nat,Ys2: list_nat] :
( ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys2 ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs ) )
=> ( ( nth_nat @ Xs @ I2 )
= ( nth_nat @ Ys2 @ I2 ) ) ) ) ) ) ).
% list_eq_iff_nth_eq
thf(fact_760_list__eq__iff__nth__eq,axiom,
( ( ^ [Y4: list_P8791008543742759928ropVar,Z4: list_P8791008543742759928ropVar] : ( Y4 = Z4 ) )
= ( ^ [Xs: list_P8791008543742759928ropVar,Ys2: list_P8791008543742759928ropVar] :
( ( ( size_s6752116297430514276ropVar @ Xs )
= ( size_s6752116297430514276ropVar @ Ys2 ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_s6752116297430514276ropVar @ Xs ) )
=> ( ( nth_Pr227365692153740281ropVar @ Xs @ I2 )
= ( nth_Pr227365692153740281ropVar @ Ys2 @ I2 ) ) ) ) ) ) ).
% list_eq_iff_nth_eq
thf(fact_761_list_Ocase__distrib,axiom,
! [H: produc7257588745650887789list_f > produc7257588745650887789list_f,F1: produc7257588745650887789list_f,F22: produc2642885279816024434ropVar > list_P8791008543742759928ropVar > produc7257588745650887789list_f,List: list_P8791008543742759928ropVar] :
( ( H @ ( case_l5231247004599698859ropVar @ F1 @ F22 @ List ) )
= ( case_l5231247004599698859ropVar @ ( H @ F1 )
@ ^ [X1: produc2642885279816024434ropVar,X24: list_P8791008543742759928ropVar] : ( H @ ( F22 @ X1 @ X24 ) )
@ List ) ) ).
% list.case_distrib
thf(fact_762_all__set__conv__all__nth,axiom,
! [Xs3: list_list_f,P: list_f > $o] :
( ( ! [X3: list_f] :
( ( member_list_f @ X3 @ ( set_list_f2 @ Xs3 ) )
=> ( P @ X3 ) ) )
= ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_s704667588356303611list_f @ Xs3 ) )
=> ( P @ ( nth_list_f @ Xs3 @ I2 ) ) ) ) ) ).
% all_set_conv_all_nth
thf(fact_763_all__set__conv__all__nth,axiom,
! [Xs3: list_f,P: f > $o] :
( ( ! [X3: f] :
( ( member_f @ X3 @ ( set_f2 @ Xs3 ) )
=> ( P @ X3 ) ) )
= ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_f @ Xs3 ) )
=> ( P @ ( nth_f @ Xs3 @ I2 ) ) ) ) ) ).
% all_set_conv_all_nth
thf(fact_764_all__set__conv__all__nth,axiom,
! [Xs3: list_a,P: a > $o] :
( ( ! [X3: a] :
( ( member_a @ X3 @ ( set_a2 @ Xs3 ) )
=> ( P @ X3 ) ) )
= ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_a @ Xs3 ) )
=> ( P @ ( nth_a @ Xs3 @ I2 ) ) ) ) ) ).
% all_set_conv_all_nth
thf(fact_765_all__set__conv__all__nth,axiom,
! [Xs3: list_nat,P: nat > $o] :
( ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs3 ) )
=> ( P @ X3 ) ) )
= ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs3 ) )
=> ( P @ ( nth_nat @ Xs3 @ I2 ) ) ) ) ) ).
% all_set_conv_all_nth
thf(fact_766_all__set__conv__all__nth,axiom,
! [Xs3: list_P8791008543742759928ropVar,P: produc2642885279816024434ropVar > $o] :
( ( ! [X3: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X3 @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
=> ( P @ X3 ) ) )
= ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_s6752116297430514276ropVar @ Xs3 ) )
=> ( P @ ( nth_Pr227365692153740281ropVar @ Xs3 @ I2 ) ) ) ) ) ).
% all_set_conv_all_nth
thf(fact_767_all__nth__imp__all__set,axiom,
! [Xs3: list_P6988024003011616557iset_a,P: produc6518373309651786023iset_a > $o,X: produc6518373309651786023iset_a] :
( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_s7238940367606365593iset_a @ Xs3 ) )
=> ( P @ ( nth_Pr1079437516805851566iset_a @ Xs3 @ I3 ) ) )
=> ( ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Xs3 ) )
=> ( P @ X ) ) ) ).
% all_nth_imp_all_set
thf(fact_768_all__nth__imp__all__set,axiom,
! [Xs3: list_P1396940483166286381od_a_a,P: product_prod_a_a > $o,X: product_prod_a_a] :
( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_s3885678630836030617od_a_a @ Xs3 ) )
=> ( P @ ( nth_Product_prod_a_a @ Xs3 @ I3 ) ) )
=> ( ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Xs3 ) )
=> ( P @ X ) ) ) ).
% all_nth_imp_all_set
thf(fact_769_all__nth__imp__all__set,axiom,
! [Xs3: list_M6740372356978808802ropVar,P: multis3193088007478089820ropVar > $o,X: multis3193088007478089820ropVar] :
( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_s1943289338788136526ropVar @ Xs3 ) )
=> ( P @ ( nth_Mu4537670848183934179ropVar @ Xs3 @ I3 ) ) )
=> ( ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Xs3 ) )
=> ( P @ X ) ) ) ).
% all_nth_imp_all_set
thf(fact_770_all__nth__imp__all__set,axiom,
! [Xs3: list_list_f,P: list_f > $o,X: list_f] :
( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_s704667588356303611list_f @ Xs3 ) )
=> ( P @ ( nth_list_f @ Xs3 @ I3 ) ) )
=> ( ( member_list_f @ X @ ( set_list_f2 @ Xs3 ) )
=> ( P @ X ) ) ) ).
% all_nth_imp_all_set
thf(fact_771_all__nth__imp__all__set,axiom,
! [Xs3: list_f,P: f > $o,X: f] :
( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_size_list_f @ Xs3 ) )
=> ( P @ ( nth_f @ Xs3 @ I3 ) ) )
=> ( ( member_f @ X @ ( set_f2 @ Xs3 ) )
=> ( P @ X ) ) ) ).
% all_nth_imp_all_set
thf(fact_772_all__nth__imp__all__set,axiom,
! [Xs3: list_a,P: a > $o,X: a] :
( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_size_list_a @ Xs3 ) )
=> ( P @ ( nth_a @ Xs3 @ I3 ) ) )
=> ( ( member_a @ X @ ( set_a2 @ Xs3 ) )
=> ( P @ X ) ) ) ).
% all_nth_imp_all_set
thf(fact_773_all__nth__imp__all__set,axiom,
! [Xs3: list_nat,P: nat > $o,X: nat] :
( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs3 ) )
=> ( P @ ( nth_nat @ Xs3 @ I3 ) ) )
=> ( ( member_nat @ X @ ( set_nat2 @ Xs3 ) )
=> ( P @ X ) ) ) ).
% all_nth_imp_all_set
thf(fact_774_all__nth__imp__all__set,axiom,
! [Xs3: list_P8791008543742759928ropVar,P: produc2642885279816024434ropVar > $o,X: produc2642885279816024434ropVar] :
( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_s6752116297430514276ropVar @ Xs3 ) )
=> ( P @ ( nth_Pr227365692153740281ropVar @ Xs3 @ I3 ) ) )
=> ( ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
=> ( P @ X ) ) ) ).
% all_nth_imp_all_set
thf(fact_775_in__set__conv__nth,axiom,
! [X: produc6518373309651786023iset_a,Xs3: list_P6988024003011616557iset_a] :
( ( member5199237121806060112iset_a @ X @ ( set_Pr5550698219922361532iset_a @ Xs3 ) )
= ( ? [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_s7238940367606365593iset_a @ Xs3 ) )
& ( ( nth_Pr1079437516805851566iset_a @ Xs3 @ I2 )
= X ) ) ) ) ).
% in_set_conv_nth
thf(fact_776_in__set__conv__nth,axiom,
! [X: product_prod_a_a,Xs3: list_P1396940483166286381od_a_a] :
( ( member1426531477525435216od_a_a @ X @ ( set_Product_prod_a_a2 @ Xs3 ) )
= ( ? [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_s3885678630836030617od_a_a @ Xs3 ) )
& ( ( nth_Product_prod_a_a @ Xs3 @ I2 )
= X ) ) ) ) ).
% in_set_conv_nth
thf(fact_777_in__set__conv__nth,axiom,
! [X: multis3193088007478089820ropVar,Xs3: list_M6740372356978808802ropVar] :
( ( member8421201611525043589ropVar @ X @ ( set_Mu146256361055586289ropVar @ Xs3 ) )
= ( ? [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_s1943289338788136526ropVar @ Xs3 ) )
& ( ( nth_Mu4537670848183934179ropVar @ Xs3 @ I2 )
= X ) ) ) ) ).
% in_set_conv_nth
thf(fact_778_in__set__conv__nth,axiom,
! [X: list_f,Xs3: list_list_f] :
( ( member_list_f @ X @ ( set_list_f2 @ Xs3 ) )
= ( ? [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_s704667588356303611list_f @ Xs3 ) )
& ( ( nth_list_f @ Xs3 @ I2 )
= X ) ) ) ) ).
% in_set_conv_nth
thf(fact_779_in__set__conv__nth,axiom,
! [X: f,Xs3: list_f] :
( ( member_f @ X @ ( set_f2 @ Xs3 ) )
= ( ? [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_f @ Xs3 ) )
& ( ( nth_f @ Xs3 @ I2 )
= X ) ) ) ) ).
% in_set_conv_nth
thf(fact_780_in__set__conv__nth,axiom,
! [X: a,Xs3: list_a] :
( ( member_a @ X @ ( set_a2 @ Xs3 ) )
= ( ? [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_a @ Xs3 ) )
& ( ( nth_a @ Xs3 @ I2 )
= X ) ) ) ) ).
% in_set_conv_nth
thf(fact_781_in__set__conv__nth,axiom,
! [X: nat,Xs3: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs3 ) )
= ( ? [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs3 ) )
& ( ( nth_nat @ Xs3 @ I2 )
= X ) ) ) ) ).
% in_set_conv_nth
thf(fact_782_in__set__conv__nth,axiom,
! [X: produc2642885279816024434ropVar,Xs3: list_P8791008543742759928ropVar] :
( ( member9210975342120487067ropVar @ X @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
= ( ? [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_s6752116297430514276ropVar @ Xs3 ) )
& ( ( nth_Pr227365692153740281ropVar @ Xs3 @ I2 )
= X ) ) ) ) ).
% in_set_conv_nth
thf(fact_783_list__ball__nth,axiom,
! [N: nat,Xs3: list_list_f,P: list_f > $o] :
( ( ord_less_nat @ N @ ( size_s704667588356303611list_f @ Xs3 ) )
=> ( ! [X4: list_f] :
( ( member_list_f @ X4 @ ( set_list_f2 @ Xs3 ) )
=> ( P @ X4 ) )
=> ( P @ ( nth_list_f @ Xs3 @ N ) ) ) ) ).
% list_ball_nth
thf(fact_784_list__ball__nth,axiom,
! [N: nat,Xs3: list_f,P: f > $o] :
( ( ord_less_nat @ N @ ( size_size_list_f @ Xs3 ) )
=> ( ! [X4: f] :
( ( member_f @ X4 @ ( set_f2 @ Xs3 ) )
=> ( P @ X4 ) )
=> ( P @ ( nth_f @ Xs3 @ N ) ) ) ) ).
% list_ball_nth
thf(fact_785_list__ball__nth,axiom,
! [N: nat,Xs3: list_a,P: a > $o] :
( ( ord_less_nat @ N @ ( size_size_list_a @ Xs3 ) )
=> ( ! [X4: a] :
( ( member_a @ X4 @ ( set_a2 @ Xs3 ) )
=> ( P @ X4 ) )
=> ( P @ ( nth_a @ Xs3 @ N ) ) ) ) ).
% list_ball_nth
thf(fact_786_list__ball__nth,axiom,
! [N: nat,Xs3: list_nat,P: nat > $o] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs3 ) )
=> ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Xs3 ) )
=> ( P @ X4 ) )
=> ( P @ ( nth_nat @ Xs3 @ N ) ) ) ) ).
% list_ball_nth
thf(fact_787_list__ball__nth,axiom,
! [N: nat,Xs3: list_P8791008543742759928ropVar,P: produc2642885279816024434ropVar > $o] :
( ( ord_less_nat @ N @ ( size_s6752116297430514276ropVar @ Xs3 ) )
=> ( ! [X4: produc2642885279816024434ropVar] :
( ( member9210975342120487067ropVar @ X4 @ ( set_Pr3946994337432900359ropVar @ Xs3 ) )
=> ( P @ X4 ) )
=> ( P @ ( nth_Pr227365692153740281ropVar @ Xs3 @ N ) ) ) ) ).
% list_ball_nth
thf(fact_788_nth__mem,axiom,
! [N: nat,Xs3: list_P6988024003011616557iset_a] :
( ( ord_less_nat @ N @ ( size_s7238940367606365593iset_a @ Xs3 ) )
=> ( member5199237121806060112iset_a @ ( nth_Pr1079437516805851566iset_a @ Xs3 @ N ) @ ( set_Pr5550698219922361532iset_a @ Xs3 ) ) ) ).
% nth_mem
thf(fact_789_nth__mem,axiom,
! [N: nat,Xs3: list_P1396940483166286381od_a_a] :
( ( ord_less_nat @ N @ ( size_s3885678630836030617od_a_a @ Xs3 ) )
=> ( member1426531477525435216od_a_a @ ( nth_Product_prod_a_a @ Xs3 @ N ) @ ( set_Product_prod_a_a2 @ Xs3 ) ) ) ).
% nth_mem
thf(fact_790_nth__mem,axiom,
! [N: nat,Xs3: list_M6740372356978808802ropVar] :
( ( ord_less_nat @ N @ ( size_s1943289338788136526ropVar @ Xs3 ) )
=> ( member8421201611525043589ropVar @ ( nth_Mu4537670848183934179ropVar @ Xs3 @ N ) @ ( set_Mu146256361055586289ropVar @ Xs3 ) ) ) ).
% nth_mem
thf(fact_791_nth__mem,axiom,
! [N: nat,Xs3: list_list_f] :
( ( ord_less_nat @ N @ ( size_s704667588356303611list_f @ Xs3 ) )
=> ( member_list_f @ ( nth_list_f @ Xs3 @ N ) @ ( set_list_f2 @ Xs3 ) ) ) ).
% nth_mem
thf(fact_792_nth__mem,axiom,
! [N: nat,Xs3: list_f] :
( ( ord_less_nat @ N @ ( size_size_list_f @ Xs3 ) )
=> ( member_f @ ( nth_f @ Xs3 @ N ) @ ( set_f2 @ Xs3 ) ) ) ).
% nth_mem
thf(fact_793_nth__mem,axiom,
! [N: nat,Xs3: list_a] :
( ( ord_less_nat @ N @ ( size_size_list_a @ Xs3 ) )
=> ( member_a @ ( nth_a @ Xs3 @ N ) @ ( set_a2 @ Xs3 ) ) ) ).
% nth_mem
thf(fact_794_nth__mem,axiom,
! [N: nat,Xs3: list_nat] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs3 ) )
=> ( member_nat @ ( nth_nat @ Xs3 @ N ) @ ( set_nat2 @ Xs3 ) ) ) ).
% nth_mem
thf(fact_795_nth__mem,axiom,
! [N: nat,Xs3: list_P8791008543742759928ropVar] :
( ( ord_less_nat @ N @ ( size_s6752116297430514276ropVar @ Xs3 ) )
=> ( member9210975342120487067ropVar @ ( nth_Pr227365692153740281ropVar @ Xs3 @ N ) @ ( set_Pr3946994337432900359ropVar @ Xs3 ) ) ) ).
% nth_mem
thf(fact_796_size__neq__size__imp__neq,axiom,
! [X: multis3193088007478089820ropVar,Y: multis3193088007478089820ropVar] :
( ( ( size_s6253272723116879048ropVar @ X )
!= ( size_s6253272723116879048ropVar @ Y ) )
=> ( X != Y ) ) ).
% size_neq_size_imp_neq
thf(fact_797_size__neq__size__imp__neq,axiom,
! [X: list_a,Y: list_a] :
( ( ( size_size_list_a @ X )
!= ( size_size_list_a @ Y ) )
=> ( X != Y ) ) ).
% size_neq_size_imp_neq
thf(fact_798_size__neq__size__imp__neq,axiom,
! [X: list_nat,Y: list_nat] :
( ( ( size_size_list_nat @ X )
!= ( size_size_list_nat @ Y ) )
=> ( X != Y ) ) ).
% size_neq_size_imp_neq
thf(fact_799_size__neq__size__imp__neq,axiom,
! [X: list_P8791008543742759928ropVar,Y: list_P8791008543742759928ropVar] :
( ( ( size_s6752116297430514276ropVar @ X )
!= ( size_s6752116297430514276ropVar @ Y ) )
=> ( X != Y ) ) ).
% size_neq_size_imp_neq
thf(fact_800_size__neq__size__imp__neq,axiom,
! [X: char,Y: char] :
( ( ( size_size_char @ X )
!= ( size_size_char @ Y ) )
=> ( X != Y ) ) ).
% size_neq_size_imp_neq
thf(fact_801_map__equality__iff,axiom,
! [F: a > multis3193088007478089820ropVar,Xs3: list_a,G: nat > multis3193088007478089820ropVar,Ys: list_nat] :
( ( ( map_a_7060686498508945698ropVar @ F @ Xs3 )
= ( map_na2466558649495876678ropVar @ G @ Ys ) )
= ( ( ( size_size_list_a @ Xs3 )
= ( size_size_list_nat @ Ys ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys ) )
=> ( ( F @ ( nth_a @ Xs3 @ I2 ) )
= ( G @ ( nth_nat @ Ys @ I2 ) ) ) ) ) ) ).
% map_equality_iff
thf(fact_802_map__equality__iff,axiom,
! [F: a > a,Xs3: list_a,G: nat > a,Ys: list_nat] :
( ( ( map_a_a @ F @ Xs3 )
= ( map_nat_a @ G @ Ys ) )
= ( ( ( size_size_list_a @ Xs3 )
= ( size_size_list_nat @ Ys ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys ) )
=> ( ( F @ ( nth_a @ Xs3 @ I2 ) )
= ( G @ ( nth_nat @ Ys @ I2 ) ) ) ) ) ) ).
% map_equality_iff
thf(fact_803_map__equality__iff,axiom,
! [F: a > nat,Xs3: list_a,G: nat > nat,Ys: list_nat] :
( ( ( map_a_nat @ F @ Xs3 )
= ( map_nat_nat @ G @ Ys ) )
= ( ( ( size_size_list_a @ Xs3 )
= ( size_size_list_nat @ Ys ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys ) )
=> ( ( F @ ( nth_a @ Xs3 @ I2 ) )
= ( G @ ( nth_nat @ Ys @ I2 ) ) ) ) ) ) ).
% map_equality_iff
thf(fact_804_map__equality__iff,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_nat,G: a > multis3193088007478089820ropVar,Ys: list_a] :
( ( ( map_na2466558649495876678ropVar @ F @ Xs3 )
= ( map_a_7060686498508945698ropVar @ G @ Ys ) )
= ( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_a @ Ys ) )
=> ( ( F @ ( nth_nat @ Xs3 @ I2 ) )
= ( G @ ( nth_a @ Ys @ I2 ) ) ) ) ) ) ).
% map_equality_iff
thf(fact_805_map__equality__iff,axiom,
! [F: nat > a,Xs3: list_nat,G: a > a,Ys: list_a] :
( ( ( map_nat_a @ F @ Xs3 )
= ( map_a_a @ G @ Ys ) )
= ( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_a @ Ys ) )
=> ( ( F @ ( nth_nat @ Xs3 @ I2 ) )
= ( G @ ( nth_a @ Ys @ I2 ) ) ) ) ) ) ).
% map_equality_iff
thf(fact_806_map__equality__iff,axiom,
! [F: nat > nat,Xs3: list_nat,G: a > nat,Ys: list_a] :
( ( ( map_nat_nat @ F @ Xs3 )
= ( map_a_nat @ G @ Ys ) )
= ( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_a @ Ys ) )
=> ( ( F @ ( nth_nat @ Xs3 @ I2 ) )
= ( G @ ( nth_a @ Ys @ I2 ) ) ) ) ) ) ).
% map_equality_iff
thf(fact_807_map__equality__iff,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_nat,G: nat > multis3193088007478089820ropVar,Ys: list_nat] :
( ( ( map_na2466558649495876678ropVar @ F @ Xs3 )
= ( map_na2466558649495876678ropVar @ G @ Ys ) )
= ( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_nat @ Ys ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys ) )
=> ( ( F @ ( nth_nat @ Xs3 @ I2 ) )
= ( G @ ( nth_nat @ Ys @ I2 ) ) ) ) ) ) ).
% map_equality_iff
thf(fact_808_map__equality__iff,axiom,
! [F: nat > a,Xs3: list_nat,G: nat > a,Ys: list_nat] :
( ( ( map_nat_a @ F @ Xs3 )
= ( map_nat_a @ G @ Ys ) )
= ( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_nat @ Ys ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys ) )
=> ( ( F @ ( nth_nat @ Xs3 @ I2 ) )
= ( G @ ( nth_nat @ Ys @ I2 ) ) ) ) ) ) ).
% map_equality_iff
thf(fact_809_map__equality__iff,axiom,
! [F: nat > nat,Xs3: list_nat,G: nat > nat,Ys: list_nat] :
( ( ( map_nat_nat @ F @ Xs3 )
= ( map_nat_nat @ G @ Ys ) )
= ( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_nat @ Ys ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys ) )
=> ( ( F @ ( nth_nat @ Xs3 @ I2 ) )
= ( G @ ( nth_nat @ Ys @ I2 ) ) ) ) ) ) ).
% map_equality_iff
thf(fact_810_map__equality__iff,axiom,
! [F: a > produc2642885279816024434ropVar,Xs3: list_a,G: nat > produc2642885279816024434ropVar,Ys: list_nat] :
( ( ( map_a_1400613014311812664ropVar @ F @ Xs3 )
= ( map_na2145702811007361372ropVar @ G @ Ys ) )
= ( ( ( size_size_list_a @ Xs3 )
= ( size_size_list_nat @ Ys ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys ) )
=> ( ( F @ ( nth_a @ Xs3 @ I2 ) )
= ( G @ ( nth_nat @ Ys @ I2 ) ) ) ) ) ) ).
% map_equality_iff
thf(fact_811_length__induct,axiom,
! [P: list_a > $o,Xs3: list_a] :
( ! [Xs2: list_a] :
( ! [Ys6: list_a] :
( ( ord_less_nat @ ( size_size_list_a @ Ys6 ) @ ( size_size_list_a @ Xs2 ) )
=> ( P @ Ys6 ) )
=> ( P @ Xs2 ) )
=> ( P @ Xs3 ) ) ).
% length_induct
thf(fact_812_length__induct,axiom,
! [P: list_nat > $o,Xs3: list_nat] :
( ! [Xs2: list_nat] :
( ! [Ys6: list_nat] :
( ( ord_less_nat @ ( size_size_list_nat @ Ys6 ) @ ( size_size_list_nat @ Xs2 ) )
=> ( P @ Ys6 ) )
=> ( P @ Xs2 ) )
=> ( P @ Xs3 ) ) ).
% length_induct
thf(fact_813_length__induct,axiom,
! [P: list_P8791008543742759928ropVar > $o,Xs3: list_P8791008543742759928ropVar] :
( ! [Xs2: list_P8791008543742759928ropVar] :
( ! [Ys6: list_P8791008543742759928ropVar] :
( ( ord_less_nat @ ( size_s6752116297430514276ropVar @ Ys6 ) @ ( size_s6752116297430514276ropVar @ Xs2 ) )
=> ( P @ Ys6 ) )
=> ( P @ Xs2 ) )
=> ( P @ Xs3 ) ) ).
% length_induct
thf(fact_814_map__eq__imp__length__eq,axiom,
! [F: a > multis3193088007478089820ropVar,Xs3: list_a,G: nat > multis3193088007478089820ropVar,Ys: list_nat] :
( ( ( map_a_7060686498508945698ropVar @ F @ Xs3 )
= ( map_na2466558649495876678ropVar @ G @ Ys ) )
=> ( ( size_size_list_a @ Xs3 )
= ( size_size_list_nat @ Ys ) ) ) ).
% map_eq_imp_length_eq
thf(fact_815_map__eq__imp__length__eq,axiom,
! [F: a > a,Xs3: list_a,G: nat > a,Ys: list_nat] :
( ( ( map_a_a @ F @ Xs3 )
= ( map_nat_a @ G @ Ys ) )
=> ( ( size_size_list_a @ Xs3 )
= ( size_size_list_nat @ Ys ) ) ) ).
% map_eq_imp_length_eq
thf(fact_816_map__eq__imp__length__eq,axiom,
! [F: a > nat,Xs3: list_a,G: nat > nat,Ys: list_nat] :
( ( ( map_a_nat @ F @ Xs3 )
= ( map_nat_nat @ G @ Ys ) )
=> ( ( size_size_list_a @ Xs3 )
= ( size_size_list_nat @ Ys ) ) ) ).
% map_eq_imp_length_eq
thf(fact_817_map__eq__imp__length__eq,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_nat,G: a > multis3193088007478089820ropVar,Ys: list_a] :
( ( ( map_na2466558649495876678ropVar @ F @ Xs3 )
= ( map_a_7060686498508945698ropVar @ G @ Ys ) )
=> ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) ) ) ).
% map_eq_imp_length_eq
thf(fact_818_map__eq__imp__length__eq,axiom,
! [F: nat > a,Xs3: list_nat,G: a > a,Ys: list_a] :
( ( ( map_nat_a @ F @ Xs3 )
= ( map_a_a @ G @ Ys ) )
=> ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) ) ) ).
% map_eq_imp_length_eq
thf(fact_819_map__eq__imp__length__eq,axiom,
! [F: nat > nat,Xs3: list_nat,G: a > nat,Ys: list_a] :
( ( ( map_nat_nat @ F @ Xs3 )
= ( map_a_nat @ G @ Ys ) )
=> ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) ) ) ).
% map_eq_imp_length_eq
thf(fact_820_map__eq__imp__length__eq,axiom,
! [F: nat > multis3193088007478089820ropVar,Xs3: list_nat,G: nat > multis3193088007478089820ropVar,Ys: list_nat] :
( ( ( map_na2466558649495876678ropVar @ F @ Xs3 )
= ( map_na2466558649495876678ropVar @ G @ Ys ) )
=> ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_nat @ Ys ) ) ) ).
% map_eq_imp_length_eq
thf(fact_821_map__eq__imp__length__eq,axiom,
! [F: nat > a,Xs3: list_nat,G: nat > a,Ys: list_nat] :
( ( ( map_nat_a @ F @ Xs3 )
= ( map_nat_a @ G @ Ys ) )
=> ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_nat @ Ys ) ) ) ).
% map_eq_imp_length_eq
thf(fact_822_map__eq__imp__length__eq,axiom,
! [F: nat > nat,Xs3: list_nat,G: nat > nat,Ys: list_nat] :
( ( ( map_nat_nat @ F @ Xs3 )
= ( map_nat_nat @ G @ Ys ) )
=> ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_nat @ Ys ) ) ) ).
% map_eq_imp_length_eq
thf(fact_823_map__eq__imp__length__eq,axiom,
! [F: a > produc2642885279816024434ropVar,Xs3: list_a,G: nat > produc2642885279816024434ropVar,Ys: list_nat] :
( ( ( map_a_1400613014311812664ropVar @ F @ Xs3 )
= ( map_na2145702811007361372ropVar @ G @ Ys ) )
=> ( ( size_size_list_a @ Xs3 )
= ( size_size_list_nat @ Ys ) ) ) ).
% map_eq_imp_length_eq
thf(fact_824_nat_Odistinct_I1_J,axiom,
! [X23: nat] :
( zero_zero_nat
!= ( suc @ X23 ) ) ).
% nat.distinct(1)
thf(fact_825_old_Onat_Odistinct_I2_J,axiom,
! [Nat2: nat] :
( ( suc @ Nat2 )
!= zero_zero_nat ) ).
% old.nat.distinct(2)
thf(fact_826_old_Onat_Odistinct_I1_J,axiom,
! [Nat2: nat] :
( zero_zero_nat
!= ( suc @ Nat2 ) ) ).
% old.nat.distinct(1)
thf(fact_827_nat_OdiscI,axiom,
! [Nat: nat,X23: nat] :
( ( Nat
= ( suc @ X23 ) )
=> ( Nat != zero_zero_nat ) ) ).
% nat.discI
thf(fact_828_old_Onat_Oexhaust,axiom,
! [Y: nat] :
( ( Y != zero_zero_nat )
=> ~ ! [Nat3: nat] :
( Y
!= ( suc @ Nat3 ) ) ) ).
% old.nat.exhaust
thf(fact_829_nat__induct,axiom,
! [P: nat > $o,N: nat] :
( ( P @ zero_zero_nat )
=> ( ! [N2: nat] :
( ( P @ N2 )
=> ( P @ ( suc @ N2 ) ) )
=> ( P @ N ) ) ) ).
% nat_induct
thf(fact_830_diff__induct,axiom,
! [P: nat > nat > $o,M: nat,N: nat] :
( ! [X4: nat] : ( P @ X4 @ zero_zero_nat )
=> ( ! [Y3: nat] : ( P @ zero_zero_nat @ ( suc @ Y3 ) )
=> ( ! [X4: nat,Y3: nat] :
( ( P @ X4 @ Y3 )
=> ( P @ ( suc @ X4 ) @ ( suc @ Y3 ) ) )
=> ( P @ M @ N ) ) ) ) ).
% diff_induct
thf(fact_831_zero__induct,axiom,
! [P: nat > $o,K: nat] :
( ( P @ K )
=> ( ! [N2: nat] :
( ( P @ ( suc @ N2 ) )
=> ( P @ N2 ) )
=> ( P @ zero_zero_nat ) ) ) ).
% zero_induct
thf(fact_832_Suc__neq__Zero,axiom,
! [M: nat] :
( ( suc @ M )
!= zero_zero_nat ) ).
% Suc_neq_Zero
thf(fact_833_Zero__neq__Suc,axiom,
! [M: nat] :
( zero_zero_nat
!= ( suc @ M ) ) ).
% Zero_neq_Suc
thf(fact_834_Zero__not__Suc,axiom,
! [M: nat] :
( zero_zero_nat
!= ( suc @ M ) ) ).
% Zero_not_Suc
thf(fact_835_not0__implies__Suc,axiom,
! [N: nat] :
( ( N != zero_zero_nat )
=> ? [M4: nat] :
( N
= ( suc @ M4 ) ) ) ).
% not0_implies_Suc
thf(fact_836_Nat_OlessE,axiom,
! [I: nat,K: nat] :
( ( ord_less_nat @ I @ K )
=> ( ( K
!= ( suc @ I ) )
=> ~ ! [J3: nat] :
( ( ord_less_nat @ I @ J3 )
=> ( K
!= ( suc @ J3 ) ) ) ) ) ).
% Nat.lessE
thf(fact_837_Suc__lessD,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ ( suc @ M ) @ N )
=> ( ord_less_nat @ M @ N ) ) ).
% Suc_lessD
thf(fact_838_Suc__lessE,axiom,
! [I: nat,K: nat] :
( ( ord_less_nat @ ( suc @ I ) @ K )
=> ~ ! [J3: nat] :
( ( ord_less_nat @ I @ J3 )
=> ( K
!= ( suc @ J3 ) ) ) ) ).
% Suc_lessE
thf(fact_839_Suc__lessI,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ( ( ( suc @ M )
!= N )
=> ( ord_less_nat @ ( suc @ M ) @ N ) ) ) ).
% Suc_lessI
thf(fact_840_less__SucE,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ ( suc @ N ) )
=> ( ~ ( ord_less_nat @ M @ N )
=> ( M = N ) ) ) ).
% less_SucE
thf(fact_841_less__SucI,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ( ord_less_nat @ M @ ( suc @ N ) ) ) ).
% less_SucI
thf(fact_842_Ex__less__Suc,axiom,
! [N: nat,P: nat > $o] :
( ( ? [I2: nat] :
( ( ord_less_nat @ I2 @ ( suc @ N ) )
& ( P @ I2 ) ) )
= ( ( P @ N )
| ? [I2: nat] :
( ( ord_less_nat @ I2 @ N )
& ( P @ I2 ) ) ) ) ).
% Ex_less_Suc
thf(fact_843_less__Suc__eq,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ ( suc @ N ) )
= ( ( ord_less_nat @ M @ N )
| ( M = N ) ) ) ).
% less_Suc_eq
thf(fact_844_not__less__eq,axiom,
! [M: nat,N: nat] :
( ( ~ ( ord_less_nat @ M @ N ) )
= ( ord_less_nat @ N @ ( suc @ M ) ) ) ).
% not_less_eq
thf(fact_845_All__less__Suc,axiom,
! [N: nat,P: nat > $o] :
( ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( suc @ N ) )
=> ( P @ I2 ) ) )
= ( ( P @ N )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ N )
=> ( P @ I2 ) ) ) ) ).
% All_less_Suc
thf(fact_846_Suc__less__eq2,axiom,
! [N: nat,M: nat] :
( ( ord_less_nat @ ( suc @ N ) @ M )
= ( ? [M5: nat] :
( ( M
= ( suc @ M5 ) )
& ( ord_less_nat @ N @ M5 ) ) ) ) ).
% Suc_less_eq2
thf(fact_847_less__antisym,axiom,
! [N: nat,M: nat] :
( ~ ( ord_less_nat @ N @ M )
=> ( ( ord_less_nat @ N @ ( suc @ M ) )
=> ( M = N ) ) ) ).
% less_antisym
thf(fact_848_Suc__less__SucD,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
=> ( ord_less_nat @ M @ N ) ) ).
% Suc_less_SucD
thf(fact_849_less__trans__Suc,axiom,
! [I: nat,J: nat,K: nat] :
( ( ord_less_nat @ I @ J )
=> ( ( ord_less_nat @ J @ K )
=> ( ord_less_nat @ ( suc @ I ) @ K ) ) ) ).
% less_trans_Suc
thf(fact_850_less__Suc__induct,axiom,
! [I: nat,J: nat,P: nat > nat > $o] :
( ( ord_less_nat @ I @ J )
=> ( ! [I3: nat] : ( P @ I3 @ ( suc @ I3 ) )
=> ( ! [I3: nat,J3: nat,K2: nat] :
( ( ord_less_nat @ I3 @ J3 )
=> ( ( ord_less_nat @ J3 @ K2 )
=> ( ( P @ I3 @ J3 )
=> ( ( P @ J3 @ K2 )
=> ( P @ I3 @ K2 ) ) ) ) )
=> ( P @ I @ J ) ) ) ) ).
% less_Suc_induct
thf(fact_851_strict__inc__induct,axiom,
! [I: nat,J: nat,P: nat > $o] :
( ( ord_less_nat @ I @ J )
=> ( ! [I3: nat] :
( ( J
= ( suc @ I3 ) )
=> ( P @ I3 ) )
=> ( ! [I3: nat] :
( ( ord_less_nat @ I3 @ J )
=> ( ( P @ ( suc @ I3 ) )
=> ( P @ I3 ) ) )
=> ( P @ I ) ) ) ) ).
% strict_inc_induct
thf(fact_852_not__less__less__Suc__eq,axiom,
! [N: nat,M: nat] :
( ~ ( ord_less_nat @ N @ M )
=> ( ( ord_less_nat @ N @ ( suc @ M ) )
= ( N = M ) ) ) ).
% not_less_less_Suc_eq
thf(fact_853_map__Suc__upt,axiom,
! [M: nat,N: nat] :
( ( map_nat_nat @ suc @ ( upt @ M @ N ) )
= ( upt @ ( suc @ M ) @ ( suc @ N ) ) ) ).
% map_Suc_upt
thf(fact_854_upt__conv__Cons__Cons,axiom,
! [M: nat,N: nat,Ns: list_nat,Q: nat] :
( ( ( cons_nat @ M @ ( cons_nat @ N @ Ns ) )
= ( upt @ M @ Q ) )
= ( ( cons_nat @ N @ Ns )
= ( upt @ ( suc @ M ) @ Q ) ) ) ).
% upt_conv_Cons_Cons
thf(fact_855_in__set__product__lists__length,axiom,
! [Xs3: list_f,Xss: list_list_f] :
( ( member_list_f @ Xs3 @ ( set_list_f2 @ ( product_lists_f @ Xss ) ) )
=> ( ( size_size_list_f @ Xs3 )
= ( size_s704667588356303611list_f @ Xss ) ) ) ).
% in_set_product_lists_length
thf(fact_856_in__set__product__lists__length,axiom,
! [Xs3: list_a,Xss: list_list_a] :
( ( member_list_a @ Xs3 @ ( set_list_a2 @ ( product_lists_a @ Xss ) ) )
=> ( ( size_size_list_a @ Xs3 )
= ( size_s349497388124573686list_a @ Xss ) ) ) ).
% in_set_product_lists_length
thf(fact_857_in__set__product__lists__length,axiom,
! [Xs3: list_nat,Xss: list_list_nat] :
( ( member_list_nat @ Xs3 @ ( set_list_nat2 @ ( product_lists_nat @ Xss ) ) )
=> ( ( size_size_list_nat @ Xs3 )
= ( size_s3023201423986296836st_nat @ Xss ) ) ) ).
% in_set_product_lists_length
thf(fact_858_in__set__product__lists__length,axiom,
! [Xs3: list_P8791008543742759928ropVar,Xss: list_l3415868495287753214ropVar] :
( ( member6236339133593825953ropVar @ Xs3 @ ( set_li6509544621384488717ropVar @ ( produc2956654850250905953ropVar @ Xss ) ) )
=> ( ( size_s6752116297430514276ropVar @ Xs3 )
= ( size_s6779274088989432426ropVar @ Xss ) ) ) ).
% in_set_product_lists_length
thf(fact_859_length__Suc__conv__rev,axiom,
! [Xs3: list_f,N: nat] :
( ( ( size_size_list_f @ Xs3 )
= ( suc @ N ) )
= ( ? [Y2: f,Ys2: list_f] :
( ( Xs3
= ( append_f @ Ys2 @ ( cons_f @ Y2 @ nil_f ) ) )
& ( ( size_size_list_f @ Ys2 )
= N ) ) ) ) ).
% length_Suc_conv_rev
thf(fact_860_length__Suc__conv__rev,axiom,
! [Xs3: list_a,N: nat] :
( ( ( size_size_list_a @ Xs3 )
= ( suc @ N ) )
= ( ? [Y2: a,Ys2: list_a] :
( ( Xs3
= ( append_a @ Ys2 @ ( cons_a @ Y2 @ nil_a ) ) )
& ( ( size_size_list_a @ Ys2 )
= N ) ) ) ) ).
% length_Suc_conv_rev
thf(fact_861_length__Suc__conv__rev,axiom,
! [Xs3: list_nat,N: nat] :
( ( ( size_size_list_nat @ Xs3 )
= ( suc @ N ) )
= ( ? [Y2: nat,Ys2: list_nat] :
( ( Xs3
= ( append_nat @ Ys2 @ ( cons_nat @ Y2 @ nil_nat ) ) )
& ( ( size_size_list_nat @ Ys2 )
= N ) ) ) ) ).
% length_Suc_conv_rev
thf(fact_862_length__Suc__conv__rev,axiom,
! [Xs3: list_P8791008543742759928ropVar,N: nat] :
( ( ( size_s6752116297430514276ropVar @ Xs3 )
= ( suc @ N ) )
= ( ? [Y2: produc2642885279816024434ropVar,Ys2: list_P8791008543742759928ropVar] :
( ( Xs3
= ( append4352292717583037453ropVar @ Ys2 @ ( cons_P1504208554336013608ropVar @ Y2 @ nil_Pr6119456312066593144ropVar ) ) )
& ( ( size_s6752116297430514276ropVar @ Ys2 )
= N ) ) ) ) ).
% length_Suc_conv_rev
thf(fact_863_ms__encoder_Oencode__mul__ext__def,axiom,
! [Enc_False: nat,Enc_True: nat,Enc_pos: multis3193088007478089820ropVar > nat,Enc_neg: multis3193088007478089820ropVar > nat,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_impl: multis3193088007478089820ropVar > nat > nat,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_all: list_M6740372356978808802ropVar > nat,Enc_conj: list_nat > nat,Eval: ( multis3193088007478089820ropVar > $o ) > nat > $o,S_ns: a > a > product_prod_o_o,Xs3: list_a,Ys: list_a] :
( ( multis4476563104974320119er_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis7871469701496169891_nat_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ S_ns @ Xs3 @ Ys )
= ( product_Pair_nat_nat
@ ( Enc_conj
@ ( cons_nat @ ( Enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ ( size_size_list_a @ Xs3 ) ) ) )
@ ( multis902447301359355274115_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ( size_size_list_a @ Xs3 )
@ ( size_size_list_a @ Ys ) ) ) )
@ ( Enc_conj
@ ( multis902447301359355274115_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ( size_size_list_a @ Xs3 )
@ ( size_size_list_a @ Ys ) ) ) ) ) ) ).
% ms_encoder.encode_mul_ext_def
thf(fact_864_ms__encoder_Oencode__mul__ext__def,axiom,
! [Enc_False: $o,Enc_True: $o,Enc_pos: multis3193088007478089820ropVar > $o,Enc_neg: multis3193088007478089820ropVar > $o,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o,Enc_impl: multis3193088007478089820ropVar > $o > $o,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o,Enc_not_all: list_M6740372356978808802ropVar > $o,Enc_conj: list_o > $o,Eval: ( multis3193088007478089820ropVar > $o ) > $o > $o,S_ns: a > a > product_prod_o_o,Xs3: list_a,Ys: list_a] :
( ( multis5632531380546565553oder_o @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis4136079224515316911xt_o_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ S_ns @ Xs3 @ Ys )
= ( product_Pair_o_o
@ ( Enc_conj
@ ( cons_o @ ( Enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ ( size_size_list_a @ Xs3 ) ) ) )
@ ( multis7271095364442511555la15_o @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ( size_size_list_a @ Xs3 )
@ ( size_size_list_a @ Ys ) ) ) )
@ ( Enc_conj
@ ( multis7271095364442511555la15_o @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ( size_size_list_a @ Xs3 )
@ ( size_size_list_a @ Ys ) ) ) ) ) ) ).
% ms_encoder.encode_mul_ext_def
thf(fact_865_ms__encoder_Oencode__mul__ext__def,axiom,
! [Enc_False: a,Enc_True: a,Enc_pos: multis3193088007478089820ropVar > a,Enc_neg: multis3193088007478089820ropVar > a,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_impl: multis3193088007478089820ropVar > a > a,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_all: list_M6740372356978808802ropVar > a,Enc_conj: list_a > a,Eval: ( multis3193088007478089820ropVar > $o ) > a > $o,S_ns: a > a > product_prod_o_o,Xs3: list_a,Ys: list_a] :
( ( multis7215977293502021783oder_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis4533784635357410761xt_a_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ S_ns @ Xs3 @ Ys )
= ( product_Pair_a_a
@ ( Enc_conj
@ ( cons_a @ ( Enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ ( size_size_list_a @ Xs3 ) ) ) )
@ ( multis7684816351888833193la15_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ( size_size_list_a @ Xs3 )
@ ( size_size_list_a @ Ys ) ) ) )
@ ( Enc_conj
@ ( multis7684816351888833193la15_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ( size_size_list_a @ Xs3 )
@ ( size_size_list_a @ Ys ) ) ) ) ) ) ).
% ms_encoder.encode_mul_ext_def
thf(fact_866_ms__encoder_Oencode__mul__ext__def,axiom,
! [Enc_False: nat,Enc_True: nat,Enc_pos: multis3193088007478089820ropVar > nat,Enc_neg: multis3193088007478089820ropVar > nat,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_impl: multis3193088007478089820ropVar > nat > nat,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_all: list_M6740372356978808802ropVar > nat,Enc_conj: list_nat > nat,Eval: ( multis3193088007478089820ropVar > $o ) > nat > $o,S_ns: nat > nat > product_prod_o_o,Xs3: list_nat,Ys: list_nat] :
( ( multis4476563104974320119er_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis3784288426396574187at_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ S_ns @ Xs3 @ Ys )
= ( product_Pair_nat_nat
@ ( Enc_conj
@ ( cons_nat @ ( Enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ ( size_size_list_nat @ Xs3 ) ) ) )
@ ( multis902447301359355274115_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ( size_size_list_nat @ Xs3 )
@ ( size_size_list_nat @ Ys ) ) ) )
@ ( Enc_conj
@ ( multis902447301359355274115_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ( size_size_list_nat @ Xs3 )
@ ( size_size_list_nat @ Ys ) ) ) ) ) ) ).
% ms_encoder.encode_mul_ext_def
thf(fact_867_ms__encoder_Oencode__mul__ext__def,axiom,
! [Enc_False: $o,Enc_True: $o,Enc_pos: multis3193088007478089820ropVar > $o,Enc_neg: multis3193088007478089820ropVar > $o,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o,Enc_impl: multis3193088007478089820ropVar > $o > $o,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > $o,Enc_not_all: list_M6740372356978808802ropVar > $o,Enc_conj: list_o > $o,Eval: ( multis3193088007478089820ropVar > $o ) > $o > $o,S_ns: nat > nat > product_prod_o_o,Xs3: list_nat,Ys: list_nat] :
( ( multis5632531380546565553oder_o @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis870653743501676511_o_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ S_ns @ Xs3 @ Ys )
= ( product_Pair_o_o
@ ( Enc_conj
@ ( cons_o @ ( Enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ ( size_size_list_nat @ Xs3 ) ) ) )
@ ( multis7271095364442511555la15_o @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ( size_size_list_nat @ Xs3 )
@ ( size_size_list_nat @ Ys ) ) ) )
@ ( Enc_conj
@ ( multis7271095364442511555la15_o @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ( size_size_list_nat @ Xs3 )
@ ( size_size_list_nat @ Ys ) ) ) ) ) ) ).
% ms_encoder.encode_mul_ext_def
thf(fact_868_ms__encoder_Oencode__mul__ext__def,axiom,
! [Enc_False: a,Enc_True: a,Enc_pos: multis3193088007478089820ropVar > a,Enc_neg: multis3193088007478089820ropVar > a,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_impl: multis3193088007478089820ropVar > a > a,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_all: list_M6740372356978808802ropVar > a,Enc_conj: list_a > a,Eval: ( multis3193088007478089820ropVar > $o ) > a > $o,S_ns: nat > nat > product_prod_o_o,Xs3: list_nat,Ys: list_nat] :
( ( multis7215977293502021783oder_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis3839538200317883461_a_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ S_ns @ Xs3 @ Ys )
= ( product_Pair_a_a
@ ( Enc_conj
@ ( cons_a @ ( Enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ ( size_size_list_nat @ Xs3 ) ) ) )
@ ( multis7684816351888833193la15_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ( size_size_list_nat @ Xs3 )
@ ( size_size_list_nat @ Ys ) ) ) )
@ ( Enc_conj
@ ( multis7684816351888833193la15_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ( size_size_list_nat @ Xs3 )
@ ( size_size_list_nat @ Ys ) ) ) ) ) ) ).
% ms_encoder.encode_mul_ext_def
thf(fact_869_ms__encoder_Oencode__mul__ext__def,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,S_ns: a > a > product_prod_o_o,Xs3: list_a,Ys: list_a] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis9043250799203582212xt_f_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ S_ns @ Xs3 @ Ys )
= ( product_Pair_f_f
@ ( Enc_conj
@ ( cons_f @ ( Enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ ( size_size_list_a @ Xs3 ) ) ) )
@ ( multis7684816351888833198la15_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ( size_size_list_a @ Xs3 )
@ ( size_size_list_a @ Ys ) ) ) )
@ ( Enc_conj
@ ( multis7684816351888833198la15_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ( size_size_list_a @ Xs3 )
@ ( size_size_list_a @ Ys ) ) ) ) ) ) ).
% ms_encoder.encode_mul_ext_def
thf(fact_870_ms__encoder_Oencode__mul__ext__def,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,S_ns: nat > nat > product_prod_o_o,Xs3: list_nat,Ys: list_nat] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis793387808245080138_f_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ S_ns @ Xs3 @ Ys )
= ( product_Pair_f_f
@ ( Enc_conj
@ ( cons_f @ ( Enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ ( size_size_list_nat @ Xs3 ) ) ) )
@ ( multis7684816351888833198la15_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ( size_size_list_nat @ Xs3 )
@ ( size_size_list_nat @ Ys ) ) ) )
@ ( Enc_conj
@ ( multis7684816351888833198la15_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ( size_size_list_nat @ Xs3 )
@ ( size_size_list_nat @ Ys ) ) ) ) ) ) ).
% ms_encoder.encode_mul_ext_def
thf(fact_871_ms__encoder_Oencode__mul__ext__def,axiom,
! [Enc_False: produc2642885279816024434ropVar,Enc_True: produc2642885279816024434ropVar,Enc_pos: multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_neg: multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_impl: multis3193088007478089820ropVar > produc2642885279816024434ropVar > produc2642885279816024434ropVar,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_not_all: list_M6740372356978808802ropVar > produc2642885279816024434ropVar,Enc_conj: list_P8791008543742759928ropVar > produc2642885279816024434ropVar,Eval: ( multis3193088007478089820ropVar > $o ) > produc2642885279816024434ropVar > $o,S_ns: a > a > product_prod_o_o,Xs3: list_a,Ys: list_a] :
( ( multis8181102237825478411ropVar @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis8447049882085784661pVar_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ S_ns @ Xs3 @ Ys )
= ( produc6842008660352832535ropVar
@ ( Enc_conj
@ ( cons_P1504208554336013608ropVar @ ( Enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ ( size_size_list_a @ Xs3 ) ) ) )
@ ( multis5595896195939027229ropVar @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ( size_size_list_a @ Xs3 )
@ ( size_size_list_a @ Ys ) ) ) )
@ ( Enc_conj
@ ( multis5595896195939027229ropVar @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_a @ Xs3 @ I2 ) @ ( nth_a @ Ys @ J2 ) ) )
@ ( size_size_list_a @ Xs3 )
@ ( size_size_list_a @ Ys ) ) ) ) ) ) ).
% ms_encoder.encode_mul_ext_def
thf(fact_872_ms__encoder_Oencode__mul__ext__def,axiom,
! [Enc_False: produc2642885279816024434ropVar,Enc_True: produc2642885279816024434ropVar,Enc_pos: multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_neg: multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_impl: multis3193088007478089820ropVar > produc2642885279816024434ropVar > produc2642885279816024434ropVar,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > produc2642885279816024434ropVar,Enc_not_all: list_M6740372356978808802ropVar > produc2642885279816024434ropVar,Enc_conj: list_P8791008543742759928ropVar > produc2642885279816024434ropVar,Eval: ( multis3193088007478089820ropVar > $o ) > produc2642885279816024434ropVar > $o,S_ns: nat > nat > product_prod_o_o,Xs3: list_nat,Ys: list_nat] :
( ( multis8181102237825478411ropVar @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ( multis5504183747909837497ar_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ S_ns @ Xs3 @ Ys )
= ( produc6842008660352832535ropVar
@ ( Enc_conj
@ ( cons_P1504208554336013608ropVar @ ( Enc_not_all @ ( map_na2466558649495876678ropVar @ multis2544335231667181926psilon @ ( upt @ zero_zero_nat @ ( size_size_list_nat @ Xs3 ) ) ) )
@ ( multis5595896195939027229ropVar @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ( size_size_list_nat @ Xs3 )
@ ( size_size_list_nat @ Ys ) ) ) )
@ ( Enc_conj
@ ( multis5595896195939027229ropVar @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and
@ ^ [I2: nat,J2: nat] : ( product_fst_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ^ [I2: nat,J2: nat] : ( product_snd_o_o @ ( S_ns @ ( nth_nat @ Xs3 @ I2 ) @ ( nth_nat @ Ys @ J2 ) ) )
@ ( size_size_list_nat @ Xs3 )
@ ( size_size_list_nat @ Ys ) ) ) ) ) ) ).
% ms_encoder.encode_mul_ext_def
thf(fact_873_ms__encoder_Obex1__cong,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,S: nat > $o,T: nat > $o,S2: set_Product_prod_o_o,Cns: nat > nat > $o,NS: set_Product_prod_o_o,X6: set_a,Y5: set_a,P: a > $o,Q2: a > $o] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ( X6 = Y5 )
=> ( ! [X4: a] :
( ( member_a @ X4 @ Y5 )
=> ( ( P @ X4 )
= ( Q2 @ X4 ) ) )
=> ( ( ? [X3: a] :
( ( member_a @ X3 @ X6 )
& ( P @ X3 )
& ! [Y2: a] :
( ( ( member_a @ Y2 @ X6 )
& ( P @ Y2 ) )
=> ( Y2 = X3 ) ) ) )
= ( ? [X3: a] :
( ( member_a @ X3 @ Y5 )
& ( Q2 @ X3 )
& ! [Y2: a] :
( ( ( member_a @ Y2 @ Y5 )
& ( Q2 @ Y2 ) )
=> ( Y2 = X3 ) ) ) ) ) ) ) ) ) ) ).
% ms_encoder.bex1_cong
thf(fact_874_ms__encoder_Obex1__cong,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,S: nat > $o,T: nat > $o,S2: set_Product_prod_o_o,Cns: nat > nat > $o,NS: set_Product_prod_o_o,X6: set_nat,Y5: set_nat,P: nat > $o,Q2: nat > $o] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ( X6 = Y5 )
=> ( ! [X4: nat] :
( ( member_nat @ X4 @ Y5 )
=> ( ( P @ X4 )
= ( Q2 @ X4 ) ) )
=> ( ( ? [X3: nat] :
( ( member_nat @ X3 @ X6 )
& ( P @ X3 )
& ! [Y2: nat] :
( ( ( member_nat @ Y2 @ X6 )
& ( P @ Y2 ) )
=> ( Y2 = X3 ) ) ) )
= ( ? [X3: nat] :
( ( member_nat @ X3 @ Y5 )
& ( Q2 @ X3 )
& ! [Y2: nat] :
( ( ( member_nat @ Y2 @ Y5 )
& ( Q2 @ Y2 ) )
=> ( Y2 = X3 ) ) ) ) ) ) ) ) ) ) ).
% ms_encoder.bex1_cong
thf(fact_875_ms__encoder_Obex1__cong,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,S: nat > $o,T: nat > $o,S2: set_Product_prod_o_o,Cns: nat > nat > $o,NS: set_Product_prod_o_o,X6: set_Mu5658373669842198716ropVar,Y5: set_Mu5658373669842198716ropVar,P: multis3193088007478089820ropVar > $o,Q2: multis3193088007478089820ropVar > $o] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ( X6 = Y5 )
=> ( ! [X4: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X4 @ Y5 )
=> ( ( P @ X4 )
= ( Q2 @ X4 ) ) )
=> ( ( ? [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ X6 )
& ( P @ X3 )
& ! [Y2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Y2 @ X6 )
& ( P @ Y2 ) )
=> ( Y2 = X3 ) ) ) )
= ( ? [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ Y5 )
& ( Q2 @ X3 )
& ! [Y2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Y2 @ Y5 )
& ( Q2 @ Y2 ) )
=> ( Y2 = X3 ) ) ) ) ) ) ) ) ) ) ).
% ms_encoder.bex1_cong
thf(fact_876_ms__encoder_Obex1__cong,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,S: nat > a,T: nat > a,S2: set_Product_prod_a_a,Cns: nat > nat > $o,NS: set_Product_prod_a_a,X6: set_a,Y5: set_a,P: a > $o,Q2: a > $o] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ( X6 = Y5 )
=> ( ! [X4: a] :
( ( member_a @ X4 @ Y5 )
=> ( ( P @ X4 )
= ( Q2 @ X4 ) ) )
=> ( ( ? [X3: a] :
( ( member_a @ X3 @ X6 )
& ( P @ X3 )
& ! [Y2: a] :
( ( ( member_a @ Y2 @ X6 )
& ( P @ Y2 ) )
=> ( Y2 = X3 ) ) ) )
= ( ? [X3: a] :
( ( member_a @ X3 @ Y5 )
& ( Q2 @ X3 )
& ! [Y2: a] :
( ( ( member_a @ Y2 @ Y5 )
& ( Q2 @ Y2 ) )
=> ( Y2 = X3 ) ) ) ) ) ) ) ) ) ) ).
% ms_encoder.bex1_cong
thf(fact_877_ms__encoder_Obex1__cong,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,S: nat > a,T: nat > a,S2: set_Product_prod_a_a,Cns: nat > nat > $o,NS: set_Product_prod_a_a,X6: set_nat,Y5: set_nat,P: nat > $o,Q2: nat > $o] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ( X6 = Y5 )
=> ( ! [X4: nat] :
( ( member_nat @ X4 @ Y5 )
=> ( ( P @ X4 )
= ( Q2 @ X4 ) ) )
=> ( ( ? [X3: nat] :
( ( member_nat @ X3 @ X6 )
& ( P @ X3 )
& ! [Y2: nat] :
( ( ( member_nat @ Y2 @ X6 )
& ( P @ Y2 ) )
=> ( Y2 = X3 ) ) ) )
= ( ? [X3: nat] :
( ( member_nat @ X3 @ Y5 )
& ( Q2 @ X3 )
& ! [Y2: nat] :
( ( ( member_nat @ Y2 @ Y5 )
& ( Q2 @ Y2 ) )
=> ( Y2 = X3 ) ) ) ) ) ) ) ) ) ) ).
% ms_encoder.bex1_cong
thf(fact_878_ms__encoder_Obex1__cong,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,S: nat > a,T: nat > a,S2: set_Product_prod_a_a,Cns: nat > nat > $o,NS: set_Product_prod_a_a,X6: set_Mu5658373669842198716ropVar,Y5: set_Mu5658373669842198716ropVar,P: multis3193088007478089820ropVar > $o,Q2: multis3193088007478089820ropVar > $o] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ( X6 = Y5 )
=> ( ! [X4: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X4 @ Y5 )
=> ( ( P @ X4 )
= ( Q2 @ X4 ) ) )
=> ( ( ? [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ X6 )
& ( P @ X3 )
& ! [Y2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Y2 @ X6 )
& ( P @ Y2 ) )
=> ( Y2 = X3 ) ) ) )
= ( ? [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ Y5 )
& ( Q2 @ X3 )
& ! [Y2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Y2 @ Y5 )
& ( Q2 @ Y2 ) )
=> ( Y2 = X3 ) ) ) ) ) ) ) ) ) ) ).
% ms_encoder.bex1_cong
thf(fact_879_ms__encoder_Obex1__cong,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,S: nat > multiset_a,T: nat > multiset_a,S2: set_Pr79727621955416071iset_a,Cns: nat > nat > $o,NS: set_Pr79727621955416071iset_a,X6: set_a,Y5: set_a,P: a > $o,Q2: a > $o] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ( X6 = Y5 )
=> ( ! [X4: a] :
( ( member_a @ X4 @ Y5 )
=> ( ( P @ X4 )
= ( Q2 @ X4 ) ) )
=> ( ( ? [X3: a] :
( ( member_a @ X3 @ X6 )
& ( P @ X3 )
& ! [Y2: a] :
( ( ( member_a @ Y2 @ X6 )
& ( P @ Y2 ) )
=> ( Y2 = X3 ) ) ) )
= ( ? [X3: a] :
( ( member_a @ X3 @ Y5 )
& ( Q2 @ X3 )
& ! [Y2: a] :
( ( ( member_a @ Y2 @ Y5 )
& ( Q2 @ Y2 ) )
=> ( Y2 = X3 ) ) ) ) ) ) ) ) ) ) ).
% ms_encoder.bex1_cong
thf(fact_880_ms__encoder_Obex1__cong,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,S: nat > multiset_a,T: nat > multiset_a,S2: set_Pr79727621955416071iset_a,Cns: nat > nat > $o,NS: set_Pr79727621955416071iset_a,X6: set_nat,Y5: set_nat,P: nat > $o,Q2: nat > $o] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ( X6 = Y5 )
=> ( ! [X4: nat] :
( ( member_nat @ X4 @ Y5 )
=> ( ( P @ X4 )
= ( Q2 @ X4 ) ) )
=> ( ( ? [X3: nat] :
( ( member_nat @ X3 @ X6 )
& ( P @ X3 )
& ! [Y2: nat] :
( ( ( member_nat @ Y2 @ X6 )
& ( P @ Y2 ) )
=> ( Y2 = X3 ) ) ) )
= ( ? [X3: nat] :
( ( member_nat @ X3 @ Y5 )
& ( Q2 @ X3 )
& ! [Y2: nat] :
( ( ( member_nat @ Y2 @ Y5 )
& ( Q2 @ Y2 ) )
=> ( Y2 = X3 ) ) ) ) ) ) ) ) ) ) ).
% ms_encoder.bex1_cong
thf(fact_881_ms__encoder_Obex1__cong,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,S: nat > multiset_a,T: nat > multiset_a,S2: set_Pr79727621955416071iset_a,Cns: nat > nat > $o,NS: set_Pr79727621955416071iset_a,X6: set_Mu5658373669842198716ropVar,Y5: set_Mu5658373669842198716ropVar,P: multis3193088007478089820ropVar > $o,Q2: multis3193088007478089820ropVar > $o] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ( X6 = Y5 )
=> ( ! [X4: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X4 @ Y5 )
=> ( ( P @ X4 )
= ( Q2 @ X4 ) ) )
=> ( ( ? [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ X6 )
& ( P @ X3 )
& ! [Y2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Y2 @ X6 )
& ( P @ Y2 ) )
=> ( Y2 = X3 ) ) ) )
= ( ? [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ Y5 )
& ( Q2 @ X3 )
& ! [Y2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Y2 @ Y5 )
& ( Q2 @ Y2 ) )
=> ( Y2 = X3 ) ) ) ) ) ) ) ) ) ) ).
% ms_encoder.bex1_cong
thf(fact_882_ms__encoder_Obex1__cong,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,S: nat > $o,T: nat > $o,S2: set_Product_prod_o_o,Cns: nat > nat > $o,NS: set_Product_prod_o_o,X6: set_Product_prod_a_a,Y5: set_Product_prod_a_a,P: product_prod_a_a > $o,Q2: product_prod_a_a > $o] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ( X6 = Y5 )
=> ( ! [X4: product_prod_a_a] :
( ( member1426531477525435216od_a_a @ X4 @ Y5 )
=> ( ( P @ X4 )
= ( Q2 @ X4 ) ) )
=> ( ( ? [X3: product_prod_a_a] :
( ( member1426531477525435216od_a_a @ X3 @ X6 )
& ( P @ X3 )
& ! [Y2: product_prod_a_a] :
( ( ( member1426531477525435216od_a_a @ Y2 @ X6 )
& ( P @ Y2 ) )
=> ( Y2 = X3 ) ) ) )
= ( ? [X3: product_prod_a_a] :
( ( member1426531477525435216od_a_a @ X3 @ Y5 )
& ( Q2 @ X3 )
& ! [Y2: product_prod_a_a] :
( ( ( member1426531477525435216od_a_a @ Y2 @ Y5 )
& ( Q2 @ Y2 ) )
=> ( Y2 = X3 ) ) ) ) ) ) ) ) ) ) ).
% ms_encoder.bex1_cong
thf(fact_883_map__nth,axiom,
! [Xs3: list_M6740372356978808802ropVar] :
( ( map_na2466558649495876678ropVar @ ( nth_Mu4537670848183934179ropVar @ Xs3 ) @ ( upt @ zero_zero_nat @ ( size_s1943289338788136526ropVar @ Xs3 ) ) )
= Xs3 ) ).
% map_nth
thf(fact_884_map__nth,axiom,
! [Xs3: list_a] :
( ( map_nat_a @ ( nth_a @ Xs3 ) @ ( upt @ zero_zero_nat @ ( size_size_list_a @ Xs3 ) ) )
= Xs3 ) ).
% map_nth
thf(fact_885_map__nth,axiom,
! [Xs3: list_nat] :
( ( map_nat_nat @ ( nth_nat @ Xs3 ) @ ( upt @ zero_zero_nat @ ( size_size_list_nat @ Xs3 ) ) )
= Xs3 ) ).
% map_nth
thf(fact_886_map__nth,axiom,
! [Xs3: list_P8791008543742759928ropVar] :
( ( map_na2145702811007361372ropVar @ ( nth_Pr227365692153740281ropVar @ Xs3 ) @ ( upt @ zero_zero_nat @ ( size_s6752116297430514276ropVar @ Xs3 ) ) )
= Xs3 ) ).
% map_nth
thf(fact_887_list_Osimps_I5_J,axiom,
! [F1: produc7257588745650887789list_f,F22: produc2642885279816024434ropVar > list_P8791008543742759928ropVar > produc7257588745650887789list_f,X21: produc2642885279816024434ropVar,X22: list_P8791008543742759928ropVar] :
( ( case_l5231247004599698859ropVar @ F1 @ F22 @ ( cons_P1504208554336013608ropVar @ X21 @ X22 ) )
= ( F22 @ X21 @ X22 ) ) ).
% list.simps(5)
thf(fact_888_list_Osimps_I4_J,axiom,
! [F1: produc7257588745650887789list_f,F22: produc2642885279816024434ropVar > list_P8791008543742759928ropVar > produc7257588745650887789list_f] :
( ( case_l5231247004599698859ropVar @ F1 @ F22 @ nil_Pr6119456312066593144ropVar )
= F1 ) ).
% list.simps(4)
thf(fact_889_ms__encoder_Oencoding__sound_I1_J,axiom,
! [Enc_False: nat,Enc_True: nat,Enc_pos: multis3193088007478089820ropVar > nat,Enc_neg: multis3193088007478089820ropVar > nat,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_impl: multis3193088007478089820ropVar > nat > nat,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_all: list_M6740372356978808802ropVar > nat,Enc_conj: list_nat > nat,Eval: ( multis3193088007478089820ropVar > $o ) > nat > $o,Cs: nat > nat > $o,S: nat > multis3193088007478089820ropVar,T: nat > multis3193088007478089820ropVar,S2: set_Pr7799659934693882759ropVar,Cns: nat > nat > $o,NS: set_Pr7799659934693882759ropVar,N: nat,M: nat,V: multis3193088007478089820ropVar > $o] :
( ( multis4476563104974320119er_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member2619728555115997648ropVar @ ( produc6936306168532358295ropVar @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member2619728555115997648ropVar @ ( produc6936306168532358295ropVar @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ ( multis902447301359355274115_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M ) ) )
=> ( Eval @ V @ X4 ) )
=> ( member5226782437669593040ropVar @ ( produc8064044144368941463ropVar @ ( mset_M6581516532424202993ropVar @ ( map_na2466558649495876678ropVar @ S @ ( upt @ zero_zero_nat @ N ) ) ) @ ( mset_M6581516532424202993ropVar @ ( map_na2466558649495876678ropVar @ T @ ( upt @ zero_zero_nat @ M ) ) ) ) @ ( multis738276037714153361ropVar @ NS @ S2 ) ) ) ) ) ) ).
% ms_encoder.encoding_sound(1)
thf(fact_890_ms__encoder_Oencoding__sound_I1_J,axiom,
! [Enc_False: a,Enc_True: a,Enc_pos: multis3193088007478089820ropVar > a,Enc_neg: multis3193088007478089820ropVar > a,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_impl: multis3193088007478089820ropVar > a > a,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_all: list_M6740372356978808802ropVar > a,Enc_conj: list_a > a,Eval: ( multis3193088007478089820ropVar > $o ) > a > $o,Cs: nat > nat > $o,S: nat > multis3193088007478089820ropVar,T: nat > multis3193088007478089820ropVar,S2: set_Pr7799659934693882759ropVar,Cns: nat > nat > $o,NS: set_Pr7799659934693882759ropVar,N: nat,M: nat,V: multis3193088007478089820ropVar > $o] :
( ( multis7215977293502021783oder_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member2619728555115997648ropVar @ ( produc6936306168532358295ropVar @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member2619728555115997648ropVar @ ( produc6936306168532358295ropVar @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ! [X4: a] :
( ( member_a @ X4 @ ( set_a2 @ ( multis7684816351888833193la15_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M ) ) )
=> ( Eval @ V @ X4 ) )
=> ( member5226782437669593040ropVar @ ( produc8064044144368941463ropVar @ ( mset_M6581516532424202993ropVar @ ( map_na2466558649495876678ropVar @ S @ ( upt @ zero_zero_nat @ N ) ) ) @ ( mset_M6581516532424202993ropVar @ ( map_na2466558649495876678ropVar @ T @ ( upt @ zero_zero_nat @ M ) ) ) ) @ ( multis738276037714153361ropVar @ NS @ S2 ) ) ) ) ) ) ).
% ms_encoder.encoding_sound(1)
thf(fact_891_ms__encoder_Oencoding__sound_I1_J,axiom,
! [Enc_False: nat,Enc_True: nat,Enc_pos: multis3193088007478089820ropVar > nat,Enc_neg: multis3193088007478089820ropVar > nat,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_impl: multis3193088007478089820ropVar > nat > nat,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_all: list_M6740372356978808802ropVar > nat,Enc_conj: list_nat > nat,Eval: ( multis3193088007478089820ropVar > $o ) > nat > $o,Cs: nat > nat > $o,S: nat > nat,T: nat > nat,S2: set_Pr1261947904930325089at_nat,Cns: nat > nat > $o,NS: set_Pr1261947904930325089at_nat,N: nat,M: nat,V: multis3193088007478089820ropVar > $o] :
( ( multis4476563104974320119er_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ ( multis902447301359355274115_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M ) ) )
=> ( Eval @ V @ X4 ) )
=> ( member2326506860204807626et_nat @ ( produc2735455520514455641et_nat @ ( mset_nat @ ( map_nat_nat @ S @ ( upt @ zero_zero_nat @ N ) ) ) @ ( mset_nat @ ( map_nat_nat @ T @ ( upt @ zero_zero_nat @ M ) ) ) ) @ ( multis8831328596575508315xt_nat @ NS @ S2 ) ) ) ) ) ) ).
% ms_encoder.encoding_sound(1)
thf(fact_892_ms__encoder_Oencoding__sound_I1_J,axiom,
! [Enc_False: a,Enc_True: a,Enc_pos: multis3193088007478089820ropVar > a,Enc_neg: multis3193088007478089820ropVar > a,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_impl: multis3193088007478089820ropVar > a > a,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_all: list_M6740372356978808802ropVar > a,Enc_conj: list_a > a,Eval: ( multis3193088007478089820ropVar > $o ) > a > $o,Cs: nat > nat > $o,S: nat > nat,T: nat > nat,S2: set_Pr1261947904930325089at_nat,Cns: nat > nat > $o,NS: set_Pr1261947904930325089at_nat,N: nat,M: nat,V: multis3193088007478089820ropVar > $o] :
( ( multis7215977293502021783oder_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ! [X4: a] :
( ( member_a @ X4 @ ( set_a2 @ ( multis7684816351888833193la15_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M ) ) )
=> ( Eval @ V @ X4 ) )
=> ( member2326506860204807626et_nat @ ( produc2735455520514455641et_nat @ ( mset_nat @ ( map_nat_nat @ S @ ( upt @ zero_zero_nat @ N ) ) ) @ ( mset_nat @ ( map_nat_nat @ T @ ( upt @ zero_zero_nat @ M ) ) ) ) @ ( multis8831328596575508315xt_nat @ NS @ S2 ) ) ) ) ) ) ).
% ms_encoder.encoding_sound(1)
thf(fact_893_ms__encoder_Oencoding__sound_I1_J,axiom,
! [Enc_False: nat,Enc_True: nat,Enc_pos: multis3193088007478089820ropVar > nat,Enc_neg: multis3193088007478089820ropVar > nat,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_impl: multis3193088007478089820ropVar > nat > nat,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_all: list_M6740372356978808802ropVar > nat,Enc_conj: list_nat > nat,Eval: ( multis3193088007478089820ropVar > $o ) > nat > $o,Cs: nat > nat > $o,S: nat > $o,T: nat > $o,S2: set_Product_prod_o_o,Cns: nat > nat > $o,NS: set_Product_prod_o_o,N: nat,M: nat,V: multis3193088007478089820ropVar > $o] :
( ( multis4476563104974320119er_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ ( multis902447301359355274115_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M ) ) )
=> ( Eval @ V @ X4 ) )
=> ( member6734461554573772112iset_o @ ( produc4035283259145089303iset_o @ ( mset_o @ ( map_nat_o @ S @ ( upt @ zero_zero_nat @ N ) ) ) @ ( mset_o @ ( map_nat_o @ T @ ( upt @ zero_zero_nat @ M ) ) ) ) @ ( multis1436808229551206221_ext_o @ NS @ S2 ) ) ) ) ) ) ).
% ms_encoder.encoding_sound(1)
thf(fact_894_ms__encoder_Oencoding__sound_I1_J,axiom,
! [Enc_False: a,Enc_True: a,Enc_pos: multis3193088007478089820ropVar > a,Enc_neg: multis3193088007478089820ropVar > a,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_impl: multis3193088007478089820ropVar > a > a,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_all: list_M6740372356978808802ropVar > a,Enc_conj: list_a > a,Eval: ( multis3193088007478089820ropVar > $o ) > a > $o,Cs: nat > nat > $o,S: nat > $o,T: nat > $o,S2: set_Product_prod_o_o,Cns: nat > nat > $o,NS: set_Product_prod_o_o,N: nat,M: nat,V: multis3193088007478089820ropVar > $o] :
( ( multis7215977293502021783oder_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ! [X4: a] :
( ( member_a @ X4 @ ( set_a2 @ ( multis7684816351888833193la15_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M ) ) )
=> ( Eval @ V @ X4 ) )
=> ( member6734461554573772112iset_o @ ( produc4035283259145089303iset_o @ ( mset_o @ ( map_nat_o @ S @ ( upt @ zero_zero_nat @ N ) ) ) @ ( mset_o @ ( map_nat_o @ T @ ( upt @ zero_zero_nat @ M ) ) ) ) @ ( multis1436808229551206221_ext_o @ NS @ S2 ) ) ) ) ) ) ).
% ms_encoder.encoding_sound(1)
thf(fact_895_ms__encoder_Oencoding__sound_I1_J,axiom,
! [Enc_False: nat,Enc_True: nat,Enc_pos: multis3193088007478089820ropVar > nat,Enc_neg: multis3193088007478089820ropVar > nat,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_impl: multis3193088007478089820ropVar > nat > nat,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > nat,Enc_not_all: list_M6740372356978808802ropVar > nat,Enc_conj: list_nat > nat,Eval: ( multis3193088007478089820ropVar > $o ) > nat > $o,Cs: nat > nat > $o,S: nat > a,T: nat > a,S2: set_Product_prod_a_a,Cns: nat > nat > $o,NS: set_Product_prod_a_a,N: nat,M: nat,V: multis3193088007478089820ropVar > $o] :
( ( multis4476563104974320119er_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ ( multis902447301359355274115_nat @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M ) ) )
=> ( Eval @ V @ X4 ) )
=> ( member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( mset_a @ ( map_nat_a @ S @ ( upt @ zero_zero_nat @ N ) ) ) @ ( mset_a @ ( map_nat_a @ T @ ( upt @ zero_zero_nat @ M ) ) ) ) @ ( multis4023584895248362547_ext_a @ NS @ S2 ) ) ) ) ) ) ).
% ms_encoder.encoding_sound(1)
thf(fact_896_ms__encoder_Oencoding__sound_I1_J,axiom,
! [Enc_False: a,Enc_True: a,Enc_pos: multis3193088007478089820ropVar > a,Enc_neg: multis3193088007478089820ropVar > a,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_impl: multis3193088007478089820ropVar > a > a,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > a,Enc_not_all: list_M6740372356978808802ropVar > a,Enc_conj: list_a > a,Eval: ( multis3193088007478089820ropVar > $o ) > a > $o,Cs: nat > nat > $o,S: nat > a,T: nat > a,S2: set_Product_prod_a_a,Cns: nat > nat > $o,NS: set_Product_prod_a_a,N: nat,M: nat,V: multis3193088007478089820ropVar > $o] :
( ( multis7215977293502021783oder_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ! [X4: a] :
( ( member_a @ X4 @ ( set_a2 @ ( multis7684816351888833193la15_a @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M ) ) )
=> ( Eval @ V @ X4 ) )
=> ( member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( mset_a @ ( map_nat_a @ S @ ( upt @ zero_zero_nat @ N ) ) ) @ ( mset_a @ ( map_nat_a @ T @ ( upt @ zero_zero_nat @ M ) ) ) ) @ ( multis4023584895248362547_ext_a @ NS @ S2 ) ) ) ) ) ) ).
% ms_encoder.encoding_sound(1)
thf(fact_897_ms__encoder_Oencoding__sound_I1_J,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,S: nat > multis3193088007478089820ropVar,T: nat > multis3193088007478089820ropVar,S2: set_Pr7799659934693882759ropVar,Cns: nat > nat > $o,NS: set_Pr7799659934693882759ropVar,N: nat,M: nat,V: multis3193088007478089820ropVar > $o] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member2619728555115997648ropVar @ ( produc6936306168532358295ropVar @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member2619728555115997648ropVar @ ( produc6936306168532358295ropVar @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ! [X4: f] :
( ( member_f @ X4 @ ( set_f2 @ ( multis7684816351888833198la15_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M ) ) )
=> ( Eval @ V @ X4 ) )
=> ( member5226782437669593040ropVar @ ( produc8064044144368941463ropVar @ ( mset_M6581516532424202993ropVar @ ( map_na2466558649495876678ropVar @ S @ ( upt @ zero_zero_nat @ N ) ) ) @ ( mset_M6581516532424202993ropVar @ ( map_na2466558649495876678ropVar @ T @ ( upt @ zero_zero_nat @ M ) ) ) ) @ ( multis738276037714153361ropVar @ NS @ S2 ) ) ) ) ) ) ).
% ms_encoder.encoding_sound(1)
thf(fact_898_ms__encoder_Oencoding__sound_I1_J,axiom,
! [Enc_False: f,Enc_True: f,Enc_pos: multis3193088007478089820ropVar > f,Enc_neg: multis3193088007478089820ropVar > f,Enc_different: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_and_not: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_equiv_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_ite: multis3193088007478089820ropVar > multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_impl: multis3193088007478089820ropVar > f > f,Enc_var_impl: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_and: multis3193088007478089820ropVar > multis3193088007478089820ropVar > f,Enc_not_all: list_M6740372356978808802ropVar > f,Enc_conj: list_f > f,Eval: ( multis3193088007478089820ropVar > $o ) > f > $o,Cs: nat > nat > $o,S: nat > nat,T: nat > nat,S2: set_Pr1261947904930325089at_nat,Cns: nat > nat > $o,NS: set_Pr1261947904930325089at_nat,N: nat,M: nat,V: multis3193088007478089820ropVar > $o] :
( ( multis7215977293502021788oder_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Enc_not_all @ Enc_conj @ Eval )
=> ( ! [I3: nat,J3: nat] :
( ( Cs @ I3 @ J3 )
= ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( S @ I3 ) @ ( T @ J3 ) ) @ S2 ) )
=> ( ! [I3: nat,J3: nat] :
( ( Cns @ I3 @ J3 )
= ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( S @ I3 ) @ ( T @ J3 ) ) @ NS ) )
=> ( ! [X4: f] :
( ( member_f @ X4 @ ( set_f2 @ ( multis7684816351888833198la15_f @ Enc_False @ Enc_True @ Enc_pos @ Enc_neg @ Enc_different @ Enc_equiv_and_not @ Enc_equiv_ite @ Enc_ite @ Enc_impl @ Enc_var_impl @ Enc_not_and @ Cs @ Cns @ N @ M ) ) )
=> ( Eval @ V @ X4 ) )
=> ( member2326506860204807626et_nat @ ( produc2735455520514455641et_nat @ ( mset_nat @ ( map_nat_nat @ S @ ( upt @ zero_zero_nat @ N ) ) ) @ ( mset_nat @ ( map_nat_nat @ T @ ( upt @ zero_zero_nat @ M ) ) ) ) @ ( multis8831328596575508315xt_nat @ NS @ S2 ) ) ) ) ) ) ).
% ms_encoder.encoding_sound(1)
thf(fact_899_list_Osize_I3_J,axiom,
( ( size_size_list_f @ nil_f )
= zero_zero_nat ) ).
% list.size(3)
thf(fact_900_list_Osize_I3_J,axiom,
( ( size_size_list_a @ nil_a )
= zero_zero_nat ) ).
% list.size(3)
thf(fact_901_list_Osize_I3_J,axiom,
( ( size_size_list_nat @ nil_nat )
= zero_zero_nat ) ).
% list.size(3)
thf(fact_902_list_Osize_I3_J,axiom,
( ( size_s6752116297430514276ropVar @ nil_Pr6119456312066593144ropVar )
= zero_zero_nat ) ).
% list.size(3)
thf(fact_903_list__induct4,axiom,
! [Xs3: list_nat,Ys: list_a,Zs: list_f,Ws: list_a,P: list_nat > list_a > list_f > list_a > $o] :
( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) )
=> ( ( ( size_size_list_a @ Ys )
= ( size_size_list_f @ Zs ) )
=> ( ( ( size_size_list_f @ Zs )
= ( size_size_list_a @ Ws ) )
=> ( ( P @ nil_nat @ nil_a @ nil_f @ nil_a )
=> ( ! [X4: nat,Xs2: list_nat,Y3: a,Ys3: list_a,Z3: f,Zs3: list_f,W: a,Ws2: list_a] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_a @ Ys3 ) )
=> ( ( ( size_size_list_a @ Ys3 )
= ( size_size_list_f @ Zs3 ) )
=> ( ( ( size_size_list_f @ Zs3 )
= ( size_size_list_a @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_f @ Z3 @ Zs3 ) @ ( cons_a @ W @ Ws2 ) ) ) ) ) )
=> ( P @ Xs3 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_904_list__induct4,axiom,
! [Xs3: list_nat,Ys: list_a,Zs: list_f,Ws: list_nat,P: list_nat > list_a > list_f > list_nat > $o] :
( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) )
=> ( ( ( size_size_list_a @ Ys )
= ( size_size_list_f @ Zs ) )
=> ( ( ( size_size_list_f @ Zs )
= ( size_size_list_nat @ Ws ) )
=> ( ( P @ nil_nat @ nil_a @ nil_f @ nil_nat )
=> ( ! [X4: nat,Xs2: list_nat,Y3: a,Ys3: list_a,Z3: f,Zs3: list_f,W: nat,Ws2: list_nat] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_a @ Ys3 ) )
=> ( ( ( size_size_list_a @ Ys3 )
= ( size_size_list_f @ Zs3 ) )
=> ( ( ( size_size_list_f @ Zs3 )
= ( size_size_list_nat @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_f @ Z3 @ Zs3 ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
=> ( P @ Xs3 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_905_list__induct4,axiom,
! [Xs3: list_nat,Ys: list_a,Zs: list_a,Ws: list_f,P: list_nat > list_a > list_a > list_f > $o] :
( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) )
=> ( ( ( size_size_list_a @ Ys )
= ( size_size_list_a @ Zs ) )
=> ( ( ( size_size_list_a @ Zs )
= ( size_size_list_f @ Ws ) )
=> ( ( P @ nil_nat @ nil_a @ nil_a @ nil_f )
=> ( ! [X4: nat,Xs2: list_nat,Y3: a,Ys3: list_a,Z3: a,Zs3: list_a,W: f,Ws2: list_f] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_a @ Ys3 ) )
=> ( ( ( size_size_list_a @ Ys3 )
= ( size_size_list_a @ Zs3 ) )
=> ( ( ( size_size_list_a @ Zs3 )
= ( size_size_list_f @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_a @ Z3 @ Zs3 ) @ ( cons_f @ W @ Ws2 ) ) ) ) ) )
=> ( P @ Xs3 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_906_list__induct4,axiom,
! [Xs3: list_nat,Ys: list_a,Zs: list_a,Ws: list_a,P: list_nat > list_a > list_a > list_a > $o] :
( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) )
=> ( ( ( size_size_list_a @ Ys )
= ( size_size_list_a @ Zs ) )
=> ( ( ( size_size_list_a @ Zs )
= ( size_size_list_a @ Ws ) )
=> ( ( P @ nil_nat @ nil_a @ nil_a @ nil_a )
=> ( ! [X4: nat,Xs2: list_nat,Y3: a,Ys3: list_a,Z3: a,Zs3: list_a,W: a,Ws2: list_a] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_a @ Ys3 ) )
=> ( ( ( size_size_list_a @ Ys3 )
= ( size_size_list_a @ Zs3 ) )
=> ( ( ( size_size_list_a @ Zs3 )
= ( size_size_list_a @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_a @ Z3 @ Zs3 ) @ ( cons_a @ W @ Ws2 ) ) ) ) ) )
=> ( P @ Xs3 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_907_list__induct4,axiom,
! [Xs3: list_nat,Ys: list_a,Zs: list_a,Ws: list_nat,P: list_nat > list_a > list_a > list_nat > $o] :
( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) )
=> ( ( ( size_size_list_a @ Ys )
= ( size_size_list_a @ Zs ) )
=> ( ( ( size_size_list_a @ Zs )
= ( size_size_list_nat @ Ws ) )
=> ( ( P @ nil_nat @ nil_a @ nil_a @ nil_nat )
=> ( ! [X4: nat,Xs2: list_nat,Y3: a,Ys3: list_a,Z3: a,Zs3: list_a,W: nat,Ws2: list_nat] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_a @ Ys3 ) )
=> ( ( ( size_size_list_a @ Ys3 )
= ( size_size_list_a @ Zs3 ) )
=> ( ( ( size_size_list_a @ Zs3 )
= ( size_size_list_nat @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_a @ Z3 @ Zs3 ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
=> ( P @ Xs3 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_908_list__induct4,axiom,
! [Xs3: list_nat,Ys: list_a,Zs: list_nat,Ws: list_f,P: list_nat > list_a > list_nat > list_f > $o] :
( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) )
=> ( ( ( size_size_list_a @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( ( size_size_list_nat @ Zs )
= ( size_size_list_f @ Ws ) )
=> ( ( P @ nil_nat @ nil_a @ nil_nat @ nil_f )
=> ( ! [X4: nat,Xs2: list_nat,Y3: a,Ys3: list_a,Z3: nat,Zs3: list_nat,W: f,Ws2: list_f] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_a @ Ys3 ) )
=> ( ( ( size_size_list_a @ Ys3 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( ( size_size_list_nat @ Zs3 )
= ( size_size_list_f @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_nat @ Z3 @ Zs3 ) @ ( cons_f @ W @ Ws2 ) ) ) ) ) )
=> ( P @ Xs3 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_909_list__induct4,axiom,
! [Xs3: list_nat,Ys: list_a,Zs: list_nat,Ws: list_a,P: list_nat > list_a > list_nat > list_a > $o] :
( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) )
=> ( ( ( size_size_list_a @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( ( size_size_list_nat @ Zs )
= ( size_size_list_a @ Ws ) )
=> ( ( P @ nil_nat @ nil_a @ nil_nat @ nil_a )
=> ( ! [X4: nat,Xs2: list_nat,Y3: a,Ys3: list_a,Z3: nat,Zs3: list_nat,W: a,Ws2: list_a] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_a @ Ys3 ) )
=> ( ( ( size_size_list_a @ Ys3 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( ( size_size_list_nat @ Zs3 )
= ( size_size_list_a @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_nat @ Z3 @ Zs3 ) @ ( cons_a @ W @ Ws2 ) ) ) ) ) )
=> ( P @ Xs3 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_910_list__induct4,axiom,
! [Xs3: list_nat,Ys: list_a,Zs: list_nat,Ws: list_nat,P: list_nat > list_a > list_nat > list_nat > $o] :
( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_a @ Ys ) )
=> ( ( ( size_size_list_a @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( ( size_size_list_nat @ Zs )
= ( size_size_list_nat @ Ws ) )
=> ( ( P @ nil_nat @ nil_a @ nil_nat @ nil_nat )
=> ( ! [X4: nat,Xs2: list_nat,Y3: a,Ys3: list_a,Z3: nat,Zs3: list_nat,W: nat,Ws2: list_nat] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_a @ Ys3 ) )
=> ( ( ( size_size_list_a @ Ys3 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( ( size_size_list_nat @ Zs3 )
= ( size_size_list_nat @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_nat @ Z3 @ Zs3 ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
=> ( P @ Xs3 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_911_list__induct4,axiom,
! [Xs3: list_nat,Ys: list_nat,Zs: list_f,Ws: list_f,P: list_nat > list_nat > list_f > list_f > $o] :
( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_nat @ Ys ) )
=> ( ( ( size_size_list_nat @ Ys )
= ( size_size_list_f @ Zs ) )
=> ( ( ( size_size_list_f @ Zs )
= ( size_size_list_f @ Ws ) )
=> ( ( P @ nil_nat @ nil_nat @ nil_f @ nil_f )
=> ( ! [X4: nat,Xs2: list_nat,Y3: nat,Ys3: list_nat,Z3: f,Zs3: list_f,W: f,Ws2: list_f] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_nat @ Ys3 ) )
=> ( ( ( size_size_list_nat @ Ys3 )
= ( size_size_list_f @ Zs3 ) )
=> ( ( ( size_size_list_f @ Zs3 )
= ( size_size_list_f @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) @ ( cons_f @ Z3 @ Zs3 ) @ ( cons_f @ W @ Ws2 ) ) ) ) ) )
=> ( P @ Xs3 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_912_list__induct4,axiom,
! [Xs3: list_nat,Ys: list_nat,Zs: list_f,Ws: list_a,P: list_nat > list_nat > list_f > list_a > $o] :
( ( ( size_size_list_nat @ Xs3 )
= ( size_size_list_nat @ Ys ) )
=> ( ( ( size_size_list_nat @ Ys )
= ( size_size_list_f @ Zs ) )
=> ( ( ( size_size_list_f @ Zs )
= ( size_size_list_a @ Ws ) )
=> ( ( P @ nil_nat @ nil_nat @ nil_f @ nil_a )
=> ( ! [X4: nat,Xs2: list_nat,Y3: nat,Ys3: list_nat,Z3: f,Zs3: list_f,W: a,Ws2: list_a] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_nat @ Ys3 ) )
=> ( ( ( size_size_list_nat @ Ys3 )
= ( size_size_list_f @ Zs3 ) )
=> ( ( ( size_size_list_f @ Zs3 )
= ( size_size_list_a @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X4 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) @ ( cons_f @ Z3 @ Zs3 ) @ ( cons_a @ W @ Ws2 ) ) ) ) ) )
=> ( P @ Xs3 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_913_Ex__less__Suc2,axiom,
! [N: nat,P: nat > $o] :
( ( ? [I2: nat] :
( ( ord_less_nat @ I2 @ ( suc @ N ) )
& ( P @ I2 ) ) )
= ( ( P @ zero_zero_nat )
| ? [I2: nat] :
( ( ord_less_nat @ I2 @ N )
& ( P @ ( suc @ I2 ) ) ) ) ) ).
% Ex_less_Suc2
thf(fact_914_gr0__conv__Suc,axiom,
! [N: nat] :
( ( ord_less_nat @ zero_zero_nat @ N )
= ( ? [M3: nat] :
( N
= ( suc @ M3 ) ) ) ) ).
% gr0_conv_Suc
thf(fact_915_All__less__Suc2,axiom,
! [N: nat,P: nat > $o] :
( ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( suc @ N ) )
=> ( P @ I2 ) ) )
= ( ( P @ zero_zero_nat )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ N )
=> ( P @ ( suc @ I2 ) ) ) ) ) ).
% All_less_Suc2
thf(fact_916_gr0__implies__Suc,axiom,
! [N: nat] :
( ( ord_less_nat @ zero_zero_nat @ N )
=> ? [M4: nat] :
( N
= ( suc @ M4 ) ) ) ).
% gr0_implies_Suc
thf(fact_917_less__Suc__eq__0__disj,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ ( suc @ N ) )
= ( ( M = zero_zero_nat )
| ? [J2: nat] :
( ( M
= ( suc @ J2 ) )
& ( ord_less_nat @ J2 @ N ) ) ) ) ).
% less_Suc_eq_0_disj
thf(fact_918_upt__conv__Cons,axiom,
! [I: nat,J: nat] :
( ( ord_less_nat @ I @ J )
=> ( ( upt @ I @ J )
= ( cons_nat @ I @ ( upt @ ( suc @ I ) @ J ) ) ) ) ).
% upt_conv_Cons
thf(fact_919_upt__rec,axiom,
( upt
= ( ^ [I2: nat,J2: nat] : ( if_list_nat @ ( ord_less_nat @ I2 @ J2 ) @ ( cons_nat @ I2 @ ( upt @ ( suc @ I2 ) @ J2 ) ) @ nil_nat ) ) ) ).
% upt_rec
thf(fact_920_cns,axiom,
! [I: nat,J: nat] :
( ( cns @ I @ J )
= ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( s2 @ I ) @ ( t @ J ) ) @ ns ) ) ).
% cns
thf(fact_921_cs,axiom,
! [I: nat,J: nat] :
( ( cs @ I @ J )
= ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( s2 @ I ) @ ( t @ J ) ) @ s ) ) ).
% cs
thf(fact_922_xs2,axiom,
( xs2
= ( map_nat_a @ s2 @ xs22 ) ) ).
% xs2
thf(fact_923_PropVar_Osize_I7_J,axiom,
! [X11: nat,X12: nat] :
( ( size_s6253272723116879048ropVar @ ( multis387687052011358179_Gamma @ X11 @ X12 ) )
= zero_zero_nat ) ).
% PropVar.size(7)
thf(fact_924_PropVar_Osize_I8_J,axiom,
! [X23: nat] :
( ( size_s6253272723116879048ropVar @ ( multis2544335231667181926psilon @ X23 ) )
= zero_zero_nat ) ).
% PropVar.size(8)
thf(fact_925_S,axiom,
! [Y: a] :
( ( member_a @ Y @ ( set_a2 @ ys2 ) )
=> ? [X4: a] :
( ( member_a @ X4 @ ( set_a2 @ xs2 ) )
& ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ X4 @ Y ) @ s ) ) ) ).
% S
thf(fact_926__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062Xs1_AXs2_AYs1_AYs2_O_A_092_060lbrakk_062mset_A_Imap_As_A_0910_O_O_060n_093_J_A_061_Amset_AXs1_A_L_Amset_AXs2_059_Amset_A_Imap_At_A_0910_O_O_060m_093_J_A_061_Amset_AYs1_A_L_Amset_AYs2_059_Alength_AXs1_A_061_Alength_AYs1_059_A_Imset_A_Imap_As_A_0910_O_O_060n_093_J_M_Amset_A_Imap_At_A_0910_O_O_060m_093_J_J_A_092_060in_062_As__mul__ext_ANS_AS_A_092_060Longrightarrow_062_AXs2_A_092_060noteq_062_A_091_093_059_A_092_060And_062i_O_Ai_A_060_Alength_AYs1_A_092_060Longrightarrow_062_A_IXs1_A_B_Ai_M_AYs1_A_B_Ai_J_A_092_060in_062_ANS_059_A_092_060And_062y_O_Ay_A_092_060in_062_Aset_AYs2_A_092_060Longrightarrow_062_A_092_060exists_062x_092_060in_062set_AXs2_O_A_Ix_M_Ay_J_A_092_060in_062_AS_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062,axiom,
~ ! [Xs12: list_a,Xs22: list_a] :
( ( ( mset_a @ ( map_nat_a @ s2 @ ( upt @ zero_zero_nat @ n ) ) )
= ( plus_plus_multiset_a @ ( mset_a @ Xs12 ) @ ( mset_a @ Xs22 ) ) )
=> ! [Ys1: list_a,Ys22: list_a] :
( ( ( mset_a @ ( map_nat_a @ t @ ( upt @ zero_zero_nat @ m ) ) )
= ( plus_plus_multiset_a @ ( mset_a @ Ys1 ) @ ( mset_a @ Ys22 ) ) )
=> ( ( ( size_size_list_a @ Xs12 )
= ( size_size_list_a @ Ys1 ) )
=> ( ( ( member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( mset_a @ ( map_nat_a @ s2 @ ( upt @ zero_zero_nat @ n ) ) ) @ ( mset_a @ ( map_nat_a @ t @ ( upt @ zero_zero_nat @ m ) ) ) ) @ ( multiset_s_mul_ext_a @ ns @ s ) )
=> ( Xs22 != nil_a ) )
=> ( ! [I4: nat] :
( ( ord_less_nat @ I4 @ ( size_size_list_a @ Ys1 ) )
=> ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( nth_a @ Xs12 @ I4 ) @ ( nth_a @ Ys1 @ I4 ) ) @ ns ) )
=> ~ ! [Y6: a] :
( ( member_a @ Y6 @ ( set_a2 @ Ys22 ) )
=> ? [X4: a] :
( ( member_a @ X4 @ ( set_a2 @ Xs22 ) )
& ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ X4 @ Y6 ) @ s ) ) ) ) ) ) ) ) ).
% \<open>\<And>thesis. (\<And>Xs1 Xs2 Ys1 Ys2. \<lbrakk>mset (map s [0..<n]) = mset Xs1 + mset Xs2; mset (map t [0..<m]) = mset Ys1 + mset Ys2; length Xs1 = length Ys1; (mset (map s [0..<n]), mset (map t [0..<m])) \<in> s_mul_ext NS S \<Longrightarrow> Xs2 \<noteq> []; \<And>i. i < length Ys1 \<Longrightarrow> (Xs1 ! i, Ys1 ! i) \<in> NS; \<And>y. y \<in> set Ys2 \<Longrightarrow> \<exists>x\<in>set Xs2. (x, y) \<in> S\<rbrakk> \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_927__092_060open_062_Imset_A_Imap_As_A_0910_O_O_060n_093_J_M_Amset_A_Imap_At_A_0910_O_O_060m_093_J_J_A_092_060in_062_As__mul__ext_ANS_AS_A_092_060Longrightarrow_062_A_092_060exists_062xs1_Axs2_Ays1_Ays2_O_Amset_A_Imap_As_A_0910_O_O_060n_093_J_A_061_Amset_Axs1_A_L_Amset_Axs2_A_092_060and_062_Amset_A_Imap_At_A_0910_O_O_060m_093_J_A_061_Amset_Ays1_A_L_Amset_Ays2_A_092_060and_062_Alength_Axs1_A_061_Alength_Ays1_A_092_060and_062_Axs2_A_092_060noteq_062_A_091_093_A_092_060and_062_A_I_092_060forall_062i_060length_Ays1_O_A_Ixs1_A_B_Ai_M_Ays1_A_B_Ai_J_A_092_060in_062_ANS_J_A_092_060and_062_A_I_092_060forall_062y_092_060in_062set_Ays2_O_A_092_060exists_062x_092_060in_062set_Axs2_O_A_Ix_M_Ay_J_A_092_060in_062_AS_J_092_060close_062,axiom,
( ( member5199237121806060112iset_a @ ( produc654756711066625303iset_a @ ( mset_a @ ( map_nat_a @ s2 @ ( upt @ zero_zero_nat @ n ) ) ) @ ( mset_a @ ( map_nat_a @ t @ ( upt @ zero_zero_nat @ m ) ) ) ) @ ( multiset_s_mul_ext_a @ ns @ s ) )
=> ? [Xs13: list_a,Xs23: list_a] :
( ( ( mset_a @ ( map_nat_a @ s2 @ ( upt @ zero_zero_nat @ n ) ) )
= ( plus_plus_multiset_a @ ( mset_a @ Xs13 ) @ ( mset_a @ Xs23 ) ) )
& ? [Ys12: list_a,Ys23: list_a] :
( ( ( mset_a @ ( map_nat_a @ t @ ( upt @ zero_zero_nat @ m ) ) )
= ( plus_plus_multiset_a @ ( mset_a @ Ys12 ) @ ( mset_a @ Ys23 ) ) )
& ( ( size_size_list_a @ Xs13 )
= ( size_size_list_a @ Ys12 ) )
& ( Xs23 != nil_a )
& ! [I4: nat] :
( ( ord_less_nat @ I4 @ ( size_size_list_a @ Ys12 ) )
=> ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( nth_a @ Xs13 @ I4 ) @ ( nth_a @ Ys12 @ I4 ) ) @ ns ) )
& ! [X2: a] :
( ( member_a @ X2 @ ( set_a2 @ Ys23 ) )
=> ? [Xa3: a] :
( ( member_a @ Xa3 @ ( set_a2 @ Xs23 ) )
& ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ Xa3 @ X2 ) @ s ) ) ) ) ) ) ).
% \<open>(mset (map s [0..<n]), mset (map t [0..<m])) \<in> s_mul_ext NS S \<Longrightarrow> \<exists>xs1 xs2 ys1 ys2. mset (map s [0..<n]) = mset xs1 + mset xs2 \<and> mset (map t [0..<m]) = mset ys1 + mset ys2 \<and> length xs1 = length ys1 \<and> xs2 \<noteq> [] \<and> (\<forall>i<length ys1. (xs1 ! i, ys1 ! i) \<in> NS) \<and> (\<forall>y\<in>set ys2. \<exists>x\<in>set xs2. (x, y) \<in> S)\<close>
thf(fact_928_encode__sum__0__1__main_Osimps_I1_J,axiom,
! [X: multis3193088007478089820ropVar,Zero2: multis3193088007478089820ropVar,One2: multis3193088007478089820ropVar] :
( ( multis7428212316306422970pVar_f @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ ( cons_P1504208554336013608ropVar @ ( produc6194868611276206818ropVar @ X @ ( produc6936306168532358295ropVar @ Zero2 @ One2 ) ) @ nil_Pr6119456312066593144ropVar ) )
= ( produc5732303558254465141ropVar @ ( cons_f @ ( enc_different @ Zero2 @ X ) @ nil_f ) @ ( produc6936306168532358295ropVar @ Zero2 @ X ) ) ) ).
% encode_sum_0_1_main.simps(1)
thf(fact_929__092_060open_062_092_060exists_062xs1_Axs2_Ays1_Ays2_O_Amset_A_Imap_As_A_0910_O_O_060n_093_J_A_061_Amset_Axs1_A_L_Amset_Axs2_A_092_060and_062_Amset_A_Imap_At_A_0910_O_O_060m_093_J_A_061_Amset_Ays1_A_L_Amset_Ays2_A_092_060and_062_Alength_Axs1_A_061_Alength_Ays1_A_092_060and_062_A_I_092_060forall_062i_060length_Ays1_O_A_Ixs1_A_B_Ai_M_Ays1_A_B_Ai_J_A_092_060in_062_ANS_J_A_092_060and_062_A_I_092_060forall_062y_092_060in_062set_Ays2_O_A_092_060exists_062x_092_060in_062set_Axs2_O_A_Ix_M_Ay_J_A_092_060in_062_AS_J_092_060close_062,axiom,
? [Xs13: list_a,Xs23: list_a] :
( ( ( mset_a @ ( map_nat_a @ s2 @ ( upt @ zero_zero_nat @ n ) ) )
= ( plus_plus_multiset_a @ ( mset_a @ Xs13 ) @ ( mset_a @ Xs23 ) ) )
& ? [Ys12: list_a,Ys23: list_a] :
( ( ( mset_a @ ( map_nat_a @ t @ ( upt @ zero_zero_nat @ m ) ) )
= ( plus_plus_multiset_a @ ( mset_a @ Ys12 ) @ ( mset_a @ Ys23 ) ) )
& ( ( size_size_list_a @ Xs13 )
= ( size_size_list_a @ Ys12 ) )
& ! [I4: nat] :
( ( ord_less_nat @ I4 @ ( size_size_list_a @ Ys12 ) )
=> ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( nth_a @ Xs13 @ I4 ) @ ( nth_a @ Ys12 @ I4 ) ) @ ns ) )
& ! [X2: a] :
( ( member_a @ X2 @ ( set_a2 @ Ys23 ) )
=> ? [Xa3: a] :
( ( member_a @ Xa3 @ ( set_a2 @ Xs23 ) )
& ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ Xa3 @ X2 ) @ s ) ) ) ) ) ).
% \<open>\<exists>xs1 xs2 ys1 ys2. mset (map s [0..<n]) = mset xs1 + mset xs2 \<and> mset (map t [0..<m]) = mset ys1 + mset ys2 \<and> length xs1 = length ys1 \<and> (\<forall>i<length ys1. (xs1 ! i, ys1 ! i) \<in> NS) \<and> (\<forall>y\<in>set ys2. \<exists>x\<in>set xs2. (x, y) \<in> S)\<close>
thf(fact_930_eq1,axiom,
( ( mset_a @ ( map_nat_a @ s2 @ ( upt @ zero_zero_nat @ n ) ) )
= ( plus_plus_multiset_a @ ( mset_a @ xs1 ) @ ( mset_a @ xs2 ) ) ) ).
% eq1
thf(fact_931_encodeGammaCond_Ocases,axiom,
! [X: produc3507939890032686909od_o_o] :
( ! [Gam2: multis3193088007478089820ropVar,Eps2: multis3193088007478089820ropVar] :
( X
!= ( produc4931073445691921453od_o_o @ Gam2 @ ( produc9033520932313852770od_o_o @ Eps2 @ ( product_Pair_o_o @ $true @ $true ) ) ) )
=> ( ! [Gam2: multis3193088007478089820ropVar,Eps2: multis3193088007478089820ropVar] :
( X
!= ( produc4931073445691921453od_o_o @ Gam2 @ ( produc9033520932313852770od_o_o @ Eps2 @ ( product_Pair_o_o @ $false @ $false ) ) ) )
=> ( ! [Gam2: multis3193088007478089820ropVar,Eps2: multis3193088007478089820ropVar] :
( X
!= ( produc4931073445691921453od_o_o @ Gam2 @ ( produc9033520932313852770od_o_o @ Eps2 @ ( product_Pair_o_o @ $false @ $true ) ) ) )
=> ~ ! [Gam2: multis3193088007478089820ropVar,Eps2: multis3193088007478089820ropVar] :
( X
!= ( produc4931073445691921453od_o_o @ Gam2 @ ( produc9033520932313852770od_o_o @ Eps2 @ ( product_Pair_o_o @ $true @ $false ) ) ) ) ) ) ) ).
% encodeGammaCond.cases
thf(fact_932_encode__sum__0__1__main_Ocases,axiom,
! [X: list_P8791008543742759928ropVar] :
( ! [X4: multis3193088007478089820ropVar,Zero: multis3193088007478089820ropVar,One: multis3193088007478089820ropVar] :
( X
!= ( cons_P1504208554336013608ropVar @ ( produc6194868611276206818ropVar @ X4 @ ( produc6936306168532358295ropVar @ Zero @ One ) ) @ nil_Pr6119456312066593144ropVar ) )
=> ( ! [X4: multis3193088007478089820ropVar,Zero: multis3193088007478089820ropVar,One: multis3193088007478089820ropVar,V2: produc2642885279816024434ropVar,Va: list_P8791008543742759928ropVar] :
( X
!= ( cons_P1504208554336013608ropVar @ ( produc6194868611276206818ropVar @ X4 @ ( produc6936306168532358295ropVar @ Zero @ One ) ) @ ( cons_P1504208554336013608ropVar @ V2 @ Va ) ) )
=> ( X = nil_Pr6119456312066593144ropVar ) ) ) ).
% encode_sum_0_1_main.cases
thf(fact_933_len,axiom,
( ( size_size_list_a @ xs1 )
= ( size_size_list_a @ ys1 ) ) ).
% len
thf(fact_934_ys2,axiom,
( ys2
= ( map_nat_a @ t @ ys22 ) ) ).
% ys2
thf(fact_935_eq2,axiom,
( ( mset_a @ ( map_nat_a @ t @ ( upt @ zero_zero_nat @ m ) ) )
= ( plus_plus_multiset_a @ ( mset_a @ ys1 ) @ ( mset_a @ ys2 ) ) ) ).
% eq2
thf(fact_936_xs1,axiom,
( xs1
= ( map_nat_a @ s2 @ xs12 ) ) ).
% xs1
thf(fact_937_NS,axiom,
! [I: nat] :
( ( ord_less_nat @ I @ ( size_size_list_a @ ys1 ) )
=> ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ ( nth_a @ xs1 @ I ) @ ( nth_a @ ys1 @ I ) ) @ ns ) ) ).
% NS
thf(fact_938_xs,axiom,
( ( mset_nat @ ( upt @ zero_zero_nat @ n ) )
= ( plus_p6334493942879108393et_nat @ ( mset_nat @ xs12 ) @ ( mset_nat @ xs22 ) ) ) ).
% xs
thf(fact_939_p__xs_I3_J,axiom,
! [X: nat] :
( ( member_nat @ X @ ( set_nat2 @ xs12 ) )
=> ? [X4: nat] :
( ( ord_less_nat @ X4 @ ( size_size_list_nat @ xs12 ) )
& ( ( nth_nat @ xs12 @ X4 )
= X )
& ! [Y6: nat] :
( ( ( ord_less_nat @ Y6 @ ( size_size_list_nat @ xs12 ) )
& ( ( nth_nat @ xs12 @ Y6 )
= X ) )
=> ( Y6 = X4 ) ) ) ) ).
% p_xs(3)
thf(fact_940_Nat_Oadd__0__right,axiom,
! [M: nat] :
( ( plus_plus_nat @ M @ zero_zero_nat )
= M ) ).
% Nat.add_0_right
thf(fact_941_add__is__0,axiom,
! [M: nat,N: nat] :
( ( ( plus_plus_nat @ M @ N )
= zero_zero_nat )
= ( ( M = zero_zero_nat )
& ( N = zero_zero_nat ) ) ) ).
% add_is_0
thf(fact_942_add__Suc__right,axiom,
! [M: nat,N: nat] :
( ( plus_plus_nat @ M @ ( suc @ N ) )
= ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).
% add_Suc_right
thf(fact_943_nat__add__left__cancel__less,axiom,
! [K: nat,M: nat,N: nat] :
( ( ord_less_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
= ( ord_less_nat @ M @ N ) ) ).
% nat_add_left_cancel_less
thf(fact_944_add__gr__0,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ M @ N ) )
= ( ( ord_less_nat @ zero_zero_nat @ M )
| ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).
% add_gr_0
thf(fact_945_nth__upt,axiom,
! [I: nat,K: nat,J: nat] :
( ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ J )
=> ( ( nth_nat @ ( upt @ I @ J ) @ K )
= ( plus_plus_nat @ I @ K ) ) ) ).
% nth_upt
thf(fact_946__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062xs1_Axs2_O_A_092_060lbrakk_062mset_A_0910_O_O_060n_093_A_061_Amset_Axs1_A_L_Amset_Axs2_059_AXs1_A_061_Amap_As_Axs1_059_AXs2_A_061_Amap_As_Axs2_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062,axiom,
~ ! [Xs13: list_nat,Xs23: list_nat] :
( ( ( mset_nat @ ( upt @ zero_zero_nat @ n ) )
= ( plus_p6334493942879108393et_nat @ ( mset_nat @ Xs13 ) @ ( mset_nat @ Xs23 ) ) )
=> ( ( xs1
= ( map_nat_a @ s2 @ Xs13 ) )
=> ( xs2
!= ( map_nat_a @ s2 @ Xs23 ) ) ) ) ).
% \<open>\<And>thesis. (\<And>xs1 xs2. \<lbrakk>mset [0..<n] = mset xs1 + mset xs2; Xs1 = map s xs1; Xs2 = map s xs2\<rbrakk> \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_947__092_060open_062_092_060exists_062zs1_Azs2_O_Amset_A_0910_O_O_060n_093_A_061_Amset_Azs1_A_L_Amset_Azs2_A_092_060and_062_AXs1_A_061_Amap_As_Azs1_A_092_060and_062_AXs2_A_061_Amap_As_Azs2_092_060close_062,axiom,
? [Zs1: list_nat,Zs22: list_nat] :
( ( ( mset_nat @ ( upt @ zero_zero_nat @ n ) )
= ( plus_p6334493942879108393et_nat @ ( mset_nat @ Zs1 ) @ ( mset_nat @ Zs22 ) ) )
& ( xs1
= ( map_nat_a @ s2 @ Zs1 ) )
& ( xs2
= ( map_nat_a @ s2 @ Zs22 ) ) ) ).
% \<open>\<exists>zs1 zs2. mset [0..<n] = mset zs1 + mset zs2 \<and> Xs1 = map s zs1 \<and> Xs2 = map s zs2\<close>
thf(fact_948__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062ys1_Ays2_O_A_092_060lbrakk_062mset_A_0910_O_O_060m_093_A_061_Amset_Ays1_A_L_Amset_Ays2_059_AYs1_A_061_Amap_At_Ays1_059_AYs2_A_061_Amap_At_Ays2_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062,axiom,
~ ! [Ys12: list_nat,Ys23: list_nat] :
( ( ( mset_nat @ ( upt @ zero_zero_nat @ m ) )
= ( plus_p6334493942879108393et_nat @ ( mset_nat @ Ys12 ) @ ( mset_nat @ Ys23 ) ) )
=> ( ( ys1
= ( map_nat_a @ t @ Ys12 ) )
=> ( ys2
!= ( map_nat_a @ t @ Ys23 ) ) ) ) ).
% \<open>\<And>thesis. (\<And>ys1 ys2. \<lbrakk>mset [0..<m] = mset ys1 + mset ys2; Ys1 = map t ys1; Ys2 = map t ys2\<rbrakk> \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_949__092_060open_062_092_060exists_062zs1_Azs2_O_Amset_A_0910_O_O_060m_093_A_061_Amset_Azs1_A_L_Amset_Azs2_A_092_060and_062_AYs1_A_061_Amap_At_Azs1_A_092_060and_062_AYs2_A_061_Amap_At_Azs2_092_060close_062,axiom,
? [Zs1: list_nat,Zs22: list_nat] :
( ( ( mset_nat @ ( upt @ zero_zero_nat @ m ) )
= ( plus_p6334493942879108393et_nat @ ( mset_nat @ Zs1 ) @ ( mset_nat @ Zs22 ) ) )
& ( ys1
= ( map_nat_a @ t @ Zs1 ) )
& ( ys2
= ( map_nat_a @ t @ Zs22 ) ) ) ).
% \<open>\<exists>zs1 zs2. mset [0..<m] = mset zs1 + mset zs2 \<and> Ys1 = map t zs1 \<and> Ys2 = map t zs2\<close>
thf(fact_950_ys1,axiom,
( ys1
= ( map_nat_a @ t @ ys12 ) ) ).
% ys1
thf(fact_951_ys,axiom,
( ( mset_nat @ ( upt @ zero_zero_nat @ m ) )
= ( plus_p6334493942879108393et_nat @ ( mset_nat @ ys12 ) @ ( mset_nat @ ys22 ) ) ) ).
% ys
thf(fact_952_add__eq__self__zero,axiom,
! [M: nat,N: nat] :
( ( ( plus_plus_nat @ M @ N )
= M )
=> ( N = zero_zero_nat ) ) ).
% add_eq_self_zero
thf(fact_953_plus__nat_Oadd__0,axiom,
! [N: nat] :
( ( plus_plus_nat @ zero_zero_nat @ N )
= N ) ).
% plus_nat.add_0
thf(fact_954_nat__arith_Osuc1,axiom,
! [A2: nat,K: nat,A: nat] :
( ( A2
= ( plus_plus_nat @ K @ A ) )
=> ( ( suc @ A2 )
= ( plus_plus_nat @ K @ ( suc @ A ) ) ) ) ).
% nat_arith.suc1
thf(fact_955_add__Suc,axiom,
! [M: nat,N: nat] :
( ( plus_plus_nat @ ( suc @ M ) @ N )
= ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).
% add_Suc
thf(fact_956_add__Suc__shift,axiom,
! [M: nat,N: nat] :
( ( plus_plus_nat @ ( suc @ M ) @ N )
= ( plus_plus_nat @ M @ ( suc @ N ) ) ) ).
% add_Suc_shift
thf(fact_957_less__add__eq__less,axiom,
! [K: nat,L: nat,M: nat,N: nat] :
( ( ord_less_nat @ K @ L )
=> ( ( ( plus_plus_nat @ M @ L )
= ( plus_plus_nat @ K @ N ) )
=> ( ord_less_nat @ M @ N ) ) ) ).
% less_add_eq_less
thf(fact_958_trans__less__add2,axiom,
! [I: nat,J: nat,M: nat] :
( ( ord_less_nat @ I @ J )
=> ( ord_less_nat @ I @ ( plus_plus_nat @ M @ J ) ) ) ).
% trans_less_add2
thf(fact_959_trans__less__add1,axiom,
! [I: nat,J: nat,M: nat] :
( ( ord_less_nat @ I @ J )
=> ( ord_less_nat @ I @ ( plus_plus_nat @ J @ M ) ) ) ).
% trans_less_add1
thf(fact_960_add__less__mono1,axiom,
! [I: nat,J: nat,K: nat] :
( ( ord_less_nat @ I @ J )
=> ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).
% add_less_mono1
thf(fact_961_not__add__less2,axiom,
! [J: nat,I: nat] :
~ ( ord_less_nat @ ( plus_plus_nat @ J @ I ) @ I ) ).
% not_add_less2
thf(fact_962_not__add__less1,axiom,
! [I: nat,J: nat] :
~ ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ I ) ).
% not_add_less1
thf(fact_963_add__less__mono,axiom,
! [I: nat,J: nat,K: nat,L: nat] :
( ( ord_less_nat @ I @ J )
=> ( ( ord_less_nat @ K @ L )
=> ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).
% add_less_mono
thf(fact_964_add__lessD1,axiom,
! [I: nat,J: nat,K: nat] :
( ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ K )
=> ( ord_less_nat @ I @ K ) ) ).
% add_lessD1
thf(fact_965_one__is__add,axiom,
! [M: nat,N: nat] :
( ( ( suc @ zero_zero_nat )
= ( plus_plus_nat @ M @ N ) )
= ( ( ( M
= ( suc @ zero_zero_nat ) )
& ( N = zero_zero_nat ) )
| ( ( M = zero_zero_nat )
& ( N
= ( suc @ zero_zero_nat ) ) ) ) ) ).
% one_is_add
thf(fact_966_add__is__1,axiom,
! [M: nat,N: nat] :
( ( ( plus_plus_nat @ M @ N )
= ( suc @ zero_zero_nat ) )
= ( ( ( M
= ( suc @ zero_zero_nat ) )
& ( N = zero_zero_nat ) )
| ( ( M = zero_zero_nat )
& ( N
= ( suc @ zero_zero_nat ) ) ) ) ) ).
% add_is_1
thf(fact_967_less__imp__add__positive,axiom,
! [I: nat,J: nat] :
( ( ord_less_nat @ I @ J )
=> ? [K2: nat] :
( ( ord_less_nat @ zero_zero_nat @ K2 )
& ( ( plus_plus_nat @ I @ K2 )
= J ) ) ) ).
% less_imp_add_positive
thf(fact_968_less__imp__Suc__add,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ? [K2: nat] :
( N
= ( suc @ ( plus_plus_nat @ M @ K2 ) ) ) ) ).
% less_imp_Suc_add
thf(fact_969_less__iff__Suc__add,axiom,
( ord_less_nat
= ( ^ [M3: nat,N3: nat] :
? [K3: nat] :
( N3
= ( suc @ ( plus_plus_nat @ M3 @ K3 ) ) ) ) ) ).
% less_iff_Suc_add
thf(fact_970_less__add__Suc2,axiom,
! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ M @ I ) ) ) ).
% less_add_Suc2
thf(fact_971_less__add__Suc1,axiom,
! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ I @ M ) ) ) ).
% less_add_Suc1
thf(fact_972_less__natE,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ~ ! [Q3: nat] :
( N
!= ( suc @ ( plus_plus_nat @ M @ Q3 ) ) ) ) ).
% less_natE
thf(fact_973_map__add__upt,axiom,
! [N: nat,M: nat] :
( ( map_nat_nat
@ ^ [I2: nat] : ( plus_plus_nat @ I2 @ N )
@ ( upt @ zero_zero_nat @ M ) )
= ( upt @ N @ ( plus_plus_nat @ M @ N ) ) ) ).
% map_add_upt
thf(fact_974_j__ys2_I3_J,axiom,
! [J: nat] :
( ( member_nat @ J @ ( set_nat2 @ ys22 ) )
=> ( v2 @ ( multis387687052011358179_Gamma @ ( i_of_j2 @ J ) @ J ) ) ) ).
% j_ys2(3)
thf(fact_975_j__ys2_I2_J,axiom,
! [J: nat] :
( ( member_nat @ J @ ( set_nat2 @ ys22 ) )
=> ( cs @ ( i_of_j2 @ J ) @ J ) ) ).
% j_ys2(2)
thf(fact_976_j__ys2_I1_J,axiom,
! [J: nat] :
( ( member_nat @ J @ ( set_nat2 @ ys22 ) )
=> ( member_nat @ ( i_of_j2 @ J ) @ ( set_nat2 @ xs22 ) ) ) ).
% j_ys2(1)
thf(fact_977_p__ys_I3_J,axiom,
! [X: nat] :
( ( member_nat @ X @ ( set_nat2 @ ys12 ) )
=> ? [X4: nat] :
( ( ord_less_nat @ X4 @ ( size_size_list_nat @ ys12 ) )
& ( ( nth_nat @ ys12 @ X4 )
= X )
& ! [Y6: nat] :
( ( ( ord_less_nat @ Y6 @ ( size_size_list_nat @ ys12 ) )
& ( ( nth_nat @ ys12 @ Y6 )
= X ) )
=> ( Y6 = X4 ) ) ) ) ).
% p_ys(3)
thf(fact_978__092_060open_062i__of__j2_A_092_060equiv_062_A_092_060lambda_062j_O_ASOME_Ai_O_Ai_A_092_060in_062_Aset_Axs2_A_092_060and_062_Acs_Ai_Aj_092_060close_062,axiom,
( i_of_j2
= ( ^ [J2: nat] :
( fChoice_nat
@ ^ [I2: nat] :
( ( member_nat @ I2 @ ( set_nat2 @ xs22 ) )
& ( cs @ I2 @ J2 ) ) ) ) ) ).
% \<open>i_of_j2 \<equiv> \<lambda>j. SOME i. i \<in> set xs2 \<and> cs i j\<close>
thf(fact_979_j__ys1_I3_J,axiom,
! [J: nat] :
( ( member_nat @ J @ ( set_nat2 @ ys12 ) )
=> ( v2 @ ( multis387687052011358179_Gamma @ ( nth_nat @ xs12 @ ( pos_of @ ys12 @ J ) ) @ J ) ) ) ).
% j_ys1(3)
thf(fact_980_j__ys1_I2_J,axiom,
! [J: nat] :
( ( member_nat @ J @ ( set_nat2 @ ys12 ) )
=> ( cns @ ( nth_nat @ xs12 @ ( pos_of @ ys12 @ J ) ) @ J ) ) ).
% j_ys1(2)
thf(fact_981_i__of__j2__def,axiom,
! [J: nat] :
( ( i_of_j2 @ J )
= ( fChoice_nat
@ ^ [I2: nat] :
( ( member_nat @ I2 @ ( set_nat2 @ xs22 ) )
& ( cs @ I2 @ J ) ) ) ) ).
% i_of_j2_def
thf(fact_982_j__ys1_I1_J,axiom,
! [J: nat] :
( ( member_nat @ J @ ( set_nat2 @ ys12 ) )
=> ( member_nat @ ( nth_nat @ xs12 @ ( pos_of @ ys12 @ J ) ) @ ( set_nat2 @ xs12 ) ) ) ).
% j_ys1(1)
thf(fact_983_p__xs_I2_J,axiom,
! [X: nat] :
( ( member_nat @ X @ ( set_nat2 @ xs12 ) )
=> ( ( nth_nat @ xs12 @ ( pos_of @ xs12 @ X ) )
= X ) ) ).
% p_xs(2)
thf(fact_984_p__ys_I2_J,axiom,
! [X: nat] :
( ( member_nat @ X @ ( set_nat2 @ ys12 ) )
=> ( ( nth_nat @ ys12 @ ( pos_of @ ys12 @ X ) )
= X ) ) ).
% p_ys(2)
thf(fact_985_p__xs_I1_J,axiom,
! [X: nat] :
( ( member_nat @ X @ ( set_nat2 @ xs12 ) )
=> ( ord_less_nat @ ( pos_of @ xs12 @ X ) @ ( size_size_list_nat @ xs12 ) ) ) ).
% p_xs(1)
thf(fact_986_p__ys_I1_J,axiom,
! [X: nat] :
( ( member_nat @ X @ ( set_nat2 @ ys12 ) )
=> ( ord_less_nat @ ( pos_of @ ys12 @ X ) @ ( size_size_list_nat @ ys12 ) ) ) ).
% p_ys(1)
thf(fact_987__092_060open_062pos__of_A_092_060equiv_062_A_092_060lambda_062xs_Ai_O_ATHE_Ap_O_Ap_A_060_Alength_Axs_A_092_060and_062_Axs_A_B_Ap_A_061_Ai_092_060close_062,axiom,
( pos_of
= ( ^ [Xs: list_nat,I2: nat] :
( the_nat
@ ^ [P2: nat] :
( ( ord_less_nat @ P2 @ ( size_size_list_nat @ Xs ) )
& ( ( nth_nat @ Xs @ P2 )
= I2 ) ) ) ) ) ).
% \<open>pos_of \<equiv> \<lambda>xs i. THE p. p < length xs \<and> xs ! p = i\<close>
thf(fact_988_pos__of__def,axiom,
! [Xs3: list_nat,I: nat] :
( ( pos_of @ Xs3 @ I )
= ( the_nat
@ ^ [P2: nat] :
( ( ord_less_nat @ P2 @ ( size_size_list_nat @ Xs3 ) )
& ( ( nth_nat @ Xs3 @ P2 )
= I ) ) ) ) ).
% pos_of_def
thf(fact_989_encodeGammaCond_Opelims,axiom,
! [X: multis3193088007478089820ropVar,Xa: multis3193088007478089820ropVar,Xb: $o,Xc: $o,Y: f] :
( ( ( multis1454621290665623088ropVar @ enc_True @ enc_neg @ enc_var_impl @ enc_not_and @ X @ Xa @ Xb @ Xc )
= Y )
=> ( ( accp_P8208393750683106630od_o_o @ multis3344368520953930393ropVar @ ( produc4931073445691921453od_o_o @ X @ ( produc9033520932313852770od_o_o @ Xa @ ( product_Pair_o_o @ Xb @ Xc ) ) ) )
=> ( ( Xb
=> ( Xc
=> ( ( Y = enc_True )
=> ~ ( accp_P8208393750683106630od_o_o @ multis3344368520953930393ropVar @ ( produc4931073445691921453od_o_o @ X @ ( produc9033520932313852770od_o_o @ Xa @ ( product_Pair_o_o @ $true @ $true ) ) ) ) ) ) )
=> ( ( ~ Xb
=> ( ~ Xc
=> ( ( Y
= ( enc_neg @ X ) )
=> ~ ( accp_P8208393750683106630od_o_o @ multis3344368520953930393ropVar @ ( produc4931073445691921453od_o_o @ X @ ( produc9033520932313852770od_o_o @ Xa @ ( product_Pair_o_o @ $false @ $false ) ) ) ) ) ) )
=> ( ( ~ Xb
=> ( Xc
=> ( ( Y
= ( enc_var_impl @ X @ Xa ) )
=> ~ ( accp_P8208393750683106630od_o_o @ multis3344368520953930393ropVar @ ( produc4931073445691921453od_o_o @ X @ ( produc9033520932313852770od_o_o @ Xa @ ( product_Pair_o_o @ $false @ $true ) ) ) ) ) ) )
=> ~ ( Xb
=> ( ~ Xc
=> ( ( Y
= ( enc_not_and @ X @ Xa ) )
=> ~ ( accp_P8208393750683106630od_o_o @ multis3344368520953930393ropVar @ ( produc4931073445691921453od_o_o @ X @ ( produc9033520932313852770od_o_o @ Xa @ ( product_Pair_o_o @ $true @ $false ) ) ) ) ) ) ) ) ) ) ) ) ).
% encodeGammaCond.pelims
thf(fact_990_pos_I1_J,axiom,
! [Xs3: list_nat,X: nat] :
( ( distinct_nat @ Xs3 )
=> ( ( member_nat @ X @ ( set_nat2 @ Xs3 ) )
=> ( ord_less_nat @ ( pos_of @ Xs3 @ X ) @ ( size_size_list_nat @ Xs3 ) ) ) ) ).
% pos(1)
thf(fact_991_pos_I3_J,axiom,
! [Xs3: list_nat,X: nat] :
( ( distinct_nat @ Xs3 )
=> ( ( member_nat @ X @ ( set_nat2 @ Xs3 ) )
=> ? [X4: nat] :
( ( ord_less_nat @ X4 @ ( size_size_list_nat @ Xs3 ) )
& ( ( nth_nat @ Xs3 @ X4 )
= X )
& ! [Y6: nat] :
( ( ( ord_less_nat @ Y6 @ ( size_size_list_nat @ Xs3 ) )
& ( ( nth_nat @ Xs3 @ Y6 )
= X ) )
=> ( Y6 = X4 ) ) ) ) ) ).
% pos(3)
thf(fact_992__092_060open_062distinct_Ays1_092_060close_062,axiom,
distinct_nat @ ys12 ).
% \<open>distinct ys1\<close>
thf(fact_993__092_060open_062distinct_Axs1_092_060close_062,axiom,
distinct_nat @ xs12 ).
% \<open>distinct xs1\<close>
thf(fact_994_dist__ys,axiom,
distinct_nat @ ( append_nat @ ys12 @ ys22 ) ).
% dist_ys
thf(fact_995_dist__xs,axiom,
distinct_nat @ ( append_nat @ xs12 @ xs22 ) ).
% dist_xs
thf(fact_996_pos_I2_J,axiom,
! [Xs3: list_nat,X: nat] :
( ( distinct_nat @ Xs3 )
=> ( ( member_nat @ X @ ( set_nat2 @ Xs3 ) )
=> ( ( nth_nat @ Xs3 @ ( pos_of @ Xs3 @ X ) )
= X ) ) ) ).
% pos(2)
thf(fact_997_distinct__upt,axiom,
! [I: nat,J: nat] : ( distinct_nat @ ( upt @ I @ J ) ) ).
% distinct_upt
thf(fact_998__092_060open_062v_H_A_092_060equiv_062_A_092_060lambda_062x_O_Acase_Ax_Aof_AGamma_Ai_Aj_A_092_060Rightarrow_062_Ai_A_092_060in_062_Aset_Axs1_A_092_060and_062_Aj_A_092_060in_062_Aset_Ays1_A_092_060and_062_Ai_A_061_Axs1_A_B_Apos__of_Ays1_Aj_A_092_060or_062_Ai_A_092_060in_062_Aset_Axs2_A_092_060and_062_Aj_A_092_060in_062_Aset_Ays2_A_092_060and_062_Ai_A_061_Ai__of__j2_Aj_A_124_AEpsilon_Ai_A_092_060Rightarrow_062_Ai_A_092_060in_062_Aset_Axs1_092_060close_062,axiom,
( v
= ( multis8641292176345589959pVar_o
@ ^ [I2: nat,J2: nat] :
( ( ( member_nat @ I2 @ ( set_nat2 @ xs12 ) )
& ( member_nat @ J2 @ ( set_nat2 @ ys12 ) )
& ( I2
= ( nth_nat @ xs12 @ ( pos_of @ ys12 @ J2 ) ) ) )
| ( ( member_nat @ I2 @ ( set_nat2 @ xs22 ) )
& ( member_nat @ J2 @ ( set_nat2 @ ys22 ) )
& ( I2
= ( i_of_j2 @ J2 ) ) ) )
@ ^ [I2: nat] : ( member_nat @ I2 @ ( set_nat2 @ xs12 ) )
@ ^ [A3: nat,B2: nat] : undefined_o
@ ^ [A3: nat,B2: nat] : undefined_o
@ ^ [A3: nat,B2: nat] : undefined_o
@ ^ [A3: nat,B2: nat] : undefined_o ) ) ).
% \<open>v' \<equiv> \<lambda>x. case x of Gamma i j \<Rightarrow> i \<in> set xs1 \<and> j \<in> set ys1 \<and> i = xs1 ! pos_of ys1 j \<or> i \<in> set xs2 \<and> j \<in> set ys2 \<and> i = i_of_j2 j | Epsilon i \<Rightarrow> i \<in> set xs1\<close>
thf(fact_999_v_H__def,axiom,
! [X: multis3193088007478089820ropVar] :
( ( v @ X )
= ( multis8641292176345589959pVar_o
@ ^ [I2: nat,J2: nat] :
( ( ( member_nat @ I2 @ ( set_nat2 @ xs12 ) )
& ( member_nat @ J2 @ ( set_nat2 @ ys12 ) )
& ( I2
= ( nth_nat @ xs12 @ ( pos_of @ ys12 @ J2 ) ) ) )
| ( ( member_nat @ I2 @ ( set_nat2 @ xs22 ) )
& ( member_nat @ J2 @ ( set_nat2 @ ys22 ) )
& ( I2
= ( i_of_j2 @ J2 ) ) ) )
@ ^ [I2: nat] : ( member_nat @ I2 @ ( set_nat2 @ xs12 ) )
@ ^ [A3: nat,B2: nat] : undefined_o
@ ^ [A3: nat,B2: nat] : undefined_o
@ ^ [A3: nat,B2: nat] : undefined_o
@ ^ [A3: nat,B2: nat] : undefined_o
@ X ) ) ).
% v'_def
thf(fact_1000_encode__exactly__one__sound,axiom,
! [Vars: list_P8791008543742759928ropVar,One2: f,Conds: list_f,Alpha: multis3193088007478089820ropVar > $o] :
( ( ( multis2195156209094129637ropVar @ enc_False @ enc_pos @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ Vars )
= ( produc4886901243613182557list_f @ One2 @ Conds ) )
=> ( ( distin2675581014522817237ropVar @ ( map_Pr3335389669906741166ropVar @ produc6918815732823278798ropVar @ Vars ) )
=> ( ( eval @ Alpha @ One2 )
=> ( ! [X4: f] :
( ( member_f @ X4 @ ( set_f2 @ Conds ) )
=> ( eval @ Alpha @ X4 ) )
=> ? [X4: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X4 @ ( image_4513341045867859311ropVar @ produc6918815732823278798ropVar @ ( set_Pr3946994337432900359ropVar @ Vars ) ) )
& ( Alpha @ X4 )
& ! [Y6: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Y6 @ ( image_4513341045867859311ropVar @ produc6918815732823278798ropVar @ ( set_Pr3946994337432900359ropVar @ Vars ) ) )
& ( Alpha @ Y6 ) )
=> ( Y6 = X4 ) ) ) ) ) ) ) ).
% encode_exactly_one_sound
thf(fact_1001_encode__exactly__one__complete,axiom,
! [Vars: list_P8791008543742759928ropVar,One2: f,Conds: list_f,Alpha: multis3193088007478089820ropVar > $o] :
( ( ( multis2195156209094129637ropVar @ enc_False @ enc_pos @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ Vars )
= ( produc4886901243613182557list_f @ One2 @ Conds ) )
=> ( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_s6752116297430514276ropVar @ Vars ) )
=> ! [X4: multis3193088007478089820ropVar,Ze: multis3193088007478089820ropVar,On: multis3193088007478089820ropVar] :
( ( ( nth_Pr227365692153740281ropVar @ Vars @ I3 )
= ( produc6194868611276206818ropVar @ X4 @ ( produc6936306168532358295ropVar @ Ze @ On ) ) )
=> ( ( ( Alpha @ Ze )
= ( ~ ? [Y2: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ Y2 @ ( image_4513341045867859311ropVar @ produc6918815732823278798ropVar @ ( set_Pr3946994337432900359ropVar @ ( drop_P4829783966340880056ropVar @ I3 @ Vars ) ) ) )
& ( Alpha @ Y2 ) ) ) )
& ( ( Alpha @ On )
= ( ? [Y2: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ Y2 @ ( image_4513341045867859311ropVar @ produc6918815732823278798ropVar @ ( set_Pr3946994337432900359ropVar @ ( drop_P4829783966340880056ropVar @ I3 @ Vars ) ) ) )
& ( Alpha @ Y2 )
& ! [Z2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Z2 @ ( image_4513341045867859311ropVar @ produc6918815732823278798ropVar @ ( set_Pr3946994337432900359ropVar @ ( drop_P4829783966340880056ropVar @ I3 @ Vars ) ) ) )
& ( Alpha @ Z2 ) )
=> ( Z2 = Y2 ) ) ) ) ) ) ) )
=> ( ( distin2675581014522817237ropVar @ ( map_Pr3335389669906741166ropVar @ produc6918815732823278798ropVar @ Vars ) )
=> ( ! [X2: f] :
( ( member_f @ X2 @ ( set_f2 @ Conds ) )
=> ( eval @ Alpha @ X2 ) )
& ( ( eval @ Alpha @ One2 )
= ( ? [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ ( image_4513341045867859311ropVar @ produc6918815732823278798ropVar @ ( set_Pr3946994337432900359ropVar @ Vars ) ) )
& ( Alpha @ X3 )
& ! [Y2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Y2 @ ( image_4513341045867859311ropVar @ produc6918815732823278798ropVar @ ( set_Pr3946994337432900359ropVar @ Vars ) ) )
& ( Alpha @ Y2 ) )
=> ( Y2 = X3 ) ) ) ) ) ) ) ) ) ).
% encode_exactly_one_complete
thf(fact_1002_encode__sum__0__1__main,axiom,
! [Vars: list_P8791008543742759928ropVar,Conds: list_f,Zero2: multis3193088007478089820ropVar,One2: multis3193088007478089820ropVar,Prop: $o,Alpha: multis3193088007478089820ropVar > $o] :
( ( ( multis7428212316306422970pVar_f @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ Vars )
= ( produc5732303558254465141ropVar @ Conds @ ( produc6936306168532358295ropVar @ Zero2 @ One2 ) ) )
=> ( ( Prop
=> ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_s6752116297430514276ropVar @ Vars ) )
=> ! [X4: multis3193088007478089820ropVar,Ze: multis3193088007478089820ropVar,On: multis3193088007478089820ropVar,Re: list_P8791008543742759928ropVar] :
( ( ( drop_P4829783966340880056ropVar @ I3 @ Vars )
= ( cons_P1504208554336013608ropVar @ ( produc6194868611276206818ropVar @ X4 @ ( produc6936306168532358295ropVar @ Ze @ On ) ) @ Re ) )
=> ( ( ( Alpha @ Ze )
= ( ~ ? [Y2: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ Y2 @ ( insert1868789817947358764ropVar @ X4 @ ( image_4513341045867859311ropVar @ produc6918815732823278798ropVar @ ( set_Pr3946994337432900359ropVar @ Re ) ) ) )
& ( Alpha @ Y2 ) ) ) )
& ( ( Alpha @ On )
= ( ? [Y2: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ Y2 @ ( insert1868789817947358764ropVar @ X4 @ ( image_4513341045867859311ropVar @ produc6918815732823278798ropVar @ ( set_Pr3946994337432900359ropVar @ Re ) ) ) )
& ( Alpha @ Y2 )
& ! [Z2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Z2 @ ( insert1868789817947358764ropVar @ X4 @ ( image_4513341045867859311ropVar @ produc6918815732823278798ropVar @ ( set_Pr3946994337432900359ropVar @ Re ) ) ) )
& ( Alpha @ Z2 ) )
=> ( Z2 = Y2 ) ) ) ) ) ) ) ) )
=> ( ( ~ Prop
=> ! [X4: f] :
( ( member_f @ X4 @ ( set_f2 @ Conds ) )
=> ( eval @ Alpha @ X4 ) ) )
=> ( ( distin2675581014522817237ropVar @ ( map_Pr3335389669906741166ropVar @ produc6918815732823278798ropVar @ Vars ) )
=> ( ( Vars != nil_Pr6119456312066593144ropVar )
=> ( ! [X2: f] :
( ( member_f @ X2 @ ( set_f2 @ Conds ) )
=> ( eval @ Alpha @ X2 ) )
& ( ( Alpha @ Zero2 )
= ( ~ ? [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ ( image_4513341045867859311ropVar @ produc6918815732823278798ropVar @ ( set_Pr3946994337432900359ropVar @ Vars ) ) )
& ( Alpha @ X3 ) ) ) )
& ( ( Alpha @ One2 )
= ( ? [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ ( image_4513341045867859311ropVar @ produc6918815732823278798ropVar @ ( set_Pr3946994337432900359ropVar @ Vars ) ) )
& ( Alpha @ X3 )
& ! [Y2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Y2 @ ( image_4513341045867859311ropVar @ produc6918815732823278798ropVar @ ( set_Pr3946994337432900359ropVar @ Vars ) ) )
& ( Alpha @ Y2 ) )
=> ( Y2 = X3 ) ) ) ) ) ) ) ) ) ) ) ).
% encode_sum_0_1_main
thf(fact_1003_image__Suc__atLeastLessThan,axiom,
! [I: nat,J: nat] :
( ( image_nat_nat @ suc @ ( set_or4665077453230672383an_nat @ I @ J ) )
= ( set_or4665077453230672383an_nat @ ( suc @ I ) @ ( suc @ J ) ) ) ).
% image_Suc_atLeastLessThan
thf(fact_1004_zero__notin__Suc__image,axiom,
! [A2: set_nat] :
~ ( member_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ A2 ) ) ).
% zero_notin_Suc_image
thf(fact_1005_formula14__def,axiom,
! [N: nat,M: nat] :
( ( multis1248899897006733423la14_f @ enc_False @ enc_pos @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ N @ M )
= ( append_f
@ ( maps_nat_f
@ ^ [J2: nat] :
( produc150797823399499287list_f @ cons_f
@ ( multis2195156209094129637ropVar @ enc_False @ enc_pos @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite
@ ( map_na2145702811007361372ropVar
@ ^ [I2: nat] : ( produc6194868611276206818ropVar @ ( multis387687052011358179_Gamma @ I2 @ J2 ) @ ( produc6936306168532358295ropVar @ ( multis2983220944385521703ZeroJI @ I2 @ J2 ) @ ( multis6646701651571564453xOneJI @ I2 @ J2 ) ) )
@ ( upt @ zero_zero_nat @ N ) ) ) )
@ ( upt @ zero_zero_nat @ M ) )
@ ( maps_nat_f
@ ^ [I2: nat] :
( produc150797823399499287list_f
@ ^ [One3: f] : ( cons_f @ ( enc_impl @ ( multis2544335231667181926psilon @ I2 ) @ One3 ) )
@ ( multis2195156209094129637ropVar @ enc_False @ enc_pos @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite
@ ( map_na2145702811007361372ropVar
@ ^ [J2: nat] : ( produc6194868611276206818ropVar @ ( multis387687052011358179_Gamma @ I2 @ J2 ) @ ( produc6936306168532358295ropVar @ ( multis2983220944385456105ZeroIJ @ I2 @ J2 ) @ ( multis6646701651571498855xOneIJ @ I2 @ J2 ) ) )
@ ( upt @ zero_zero_nat @ M ) ) ) )
@ ( upt @ zero_zero_nat @ N ) ) ) ) ).
% formula14_def
thf(fact_1006_PropVar_Oinject_I6_J,axiom,
! [X61: nat,X62: nat,Y61: nat,Y62: nat] :
( ( ( multis6646701651571498855xOneIJ @ X61 @ X62 )
= ( multis6646701651571498855xOneIJ @ Y61 @ Y62 ) )
= ( ( X61 = Y61 )
& ( X62 = Y62 ) ) ) ).
% PropVar.inject(6)
thf(fact_1007_PropVar_Oinject_I5_J,axiom,
! [X51: nat,X52: nat,Y51: nat,Y52: nat] :
( ( ( multis2983220944385456105ZeroIJ @ X51 @ X52 )
= ( multis2983220944385456105ZeroIJ @ Y51 @ Y52 ) )
= ( ( X51 = Y51 )
& ( X52 = Y52 ) ) ) ).
% PropVar.inject(5)
thf(fact_1008_PropVar_Oinject_I4_J,axiom,
! [X41: nat,X42: nat,Y41: nat,Y42: nat] :
( ( ( multis6646701651571564453xOneJI @ X41 @ X42 )
= ( multis6646701651571564453xOneJI @ Y41 @ Y42 ) )
= ( ( X41 = Y41 )
& ( X42 = Y42 ) ) ) ).
% PropVar.inject(4)
thf(fact_1009_PropVar_Oinject_I3_J,axiom,
! [X31: nat,X32: nat,Y31: nat,Y32: nat] :
( ( ( multis2983220944385521703ZeroJI @ X31 @ X32 )
= ( multis2983220944385521703ZeroJI @ Y31 @ Y32 ) )
= ( ( X31 = Y31 )
& ( X32 = Y32 ) ) ) ).
% PropVar.inject(3)
thf(fact_1010_drop__upt,axiom,
! [M: nat,I: nat,J: nat] :
( ( drop_nat @ M @ ( upt @ I @ J ) )
= ( upt @ ( plus_plus_nat @ I @ M ) @ J ) ) ).
% drop_upt
thf(fact_1011_PropVar_Oexhaust,axiom,
! [Y: multis3193088007478089820ropVar] :
( ! [X112: nat,X122: nat] :
( Y
!= ( multis387687052011358179_Gamma @ X112 @ X122 ) )
=> ( ! [X25: nat] :
( Y
!= ( multis2544335231667181926psilon @ X25 ) )
=> ( ! [X312: nat,X322: nat] :
( Y
!= ( multis2983220944385521703ZeroJI @ X312 @ X322 ) )
=> ( ! [X412: nat,X422: nat] :
( Y
!= ( multis6646701651571564453xOneJI @ X412 @ X422 ) )
=> ( ! [X512: nat,X522: nat] :
( Y
!= ( multis2983220944385456105ZeroIJ @ X512 @ X522 ) )
=> ~ ! [X612: nat,X622: nat] :
( Y
!= ( multis6646701651571498855xOneIJ @ X612 @ X622 ) ) ) ) ) ) ) ).
% PropVar.exhaust
thf(fact_1012_PropVar_Odistinct_I29_J,axiom,
! [X51: nat,X52: nat,X61: nat,X62: nat] :
( ( multis2983220944385456105ZeroIJ @ X51 @ X52 )
!= ( multis6646701651571498855xOneIJ @ X61 @ X62 ) ) ).
% PropVar.distinct(29)
thf(fact_1013_PropVar_Odistinct_I27_J,axiom,
! [X41: nat,X42: nat,X61: nat,X62: nat] :
( ( multis6646701651571564453xOneJI @ X41 @ X42 )
!= ( multis6646701651571498855xOneIJ @ X61 @ X62 ) ) ).
% PropVar.distinct(27)
thf(fact_1014_PropVar_Odistinct_I25_J,axiom,
! [X41: nat,X42: nat,X51: nat,X52: nat] :
( ( multis6646701651571564453xOneJI @ X41 @ X42 )
!= ( multis2983220944385456105ZeroIJ @ X51 @ X52 ) ) ).
% PropVar.distinct(25)
thf(fact_1015_PropVar_Odistinct_I23_J,axiom,
! [X31: nat,X32: nat,X61: nat,X62: nat] :
( ( multis2983220944385521703ZeroJI @ X31 @ X32 )
!= ( multis6646701651571498855xOneIJ @ X61 @ X62 ) ) ).
% PropVar.distinct(23)
thf(fact_1016_PropVar_Odistinct_I21_J,axiom,
! [X31: nat,X32: nat,X51: nat,X52: nat] :
( ( multis2983220944385521703ZeroJI @ X31 @ X32 )
!= ( multis2983220944385456105ZeroIJ @ X51 @ X52 ) ) ).
% PropVar.distinct(21)
thf(fact_1017_PropVar_Odistinct_I19_J,axiom,
! [X31: nat,X32: nat,X41: nat,X42: nat] :
( ( multis2983220944385521703ZeroJI @ X31 @ X32 )
!= ( multis6646701651571564453xOneJI @ X41 @ X42 ) ) ).
% PropVar.distinct(19)
thf(fact_1018_PropVar_Odistinct_I9_J,axiom,
! [X11: nat,X12: nat,X61: nat,X62: nat] :
( ( multis387687052011358179_Gamma @ X11 @ X12 )
!= ( multis6646701651571498855xOneIJ @ X61 @ X62 ) ) ).
% PropVar.distinct(9)
thf(fact_1019_PropVar_Odistinct_I7_J,axiom,
! [X11: nat,X12: nat,X51: nat,X52: nat] :
( ( multis387687052011358179_Gamma @ X11 @ X12 )
!= ( multis2983220944385456105ZeroIJ @ X51 @ X52 ) ) ).
% PropVar.distinct(7)
thf(fact_1020_PropVar_Odistinct_I5_J,axiom,
! [X11: nat,X12: nat,X41: nat,X42: nat] :
( ( multis387687052011358179_Gamma @ X11 @ X12 )
!= ( multis6646701651571564453xOneJI @ X41 @ X42 ) ) ).
% PropVar.distinct(5)
thf(fact_1021_PropVar_Odistinct_I3_J,axiom,
! [X11: nat,X12: nat,X31: nat,X32: nat] :
( ( multis387687052011358179_Gamma @ X11 @ X12 )
!= ( multis2983220944385521703ZeroJI @ X31 @ X32 ) ) ).
% PropVar.distinct(3)
thf(fact_1022_PropVar_Odistinct_I17_J,axiom,
! [X23: nat,X61: nat,X62: nat] :
( ( multis2544335231667181926psilon @ X23 )
!= ( multis6646701651571498855xOneIJ @ X61 @ X62 ) ) ).
% PropVar.distinct(17)
thf(fact_1023_PropVar_Odistinct_I15_J,axiom,
! [X23: nat,X51: nat,X52: nat] :
( ( multis2544335231667181926psilon @ X23 )
!= ( multis2983220944385456105ZeroIJ @ X51 @ X52 ) ) ).
% PropVar.distinct(15)
thf(fact_1024_PropVar_Odistinct_I13_J,axiom,
! [X23: nat,X41: nat,X42: nat] :
( ( multis2544335231667181926psilon @ X23 )
!= ( multis6646701651571564453xOneJI @ X41 @ X42 ) ) ).
% PropVar.distinct(13)
thf(fact_1025_PropVar_Odistinct_I11_J,axiom,
! [X23: nat,X31: nat,X32: nat] :
( ( multis2544335231667181926psilon @ X23 )
!= ( multis2983220944385521703ZeroJI @ X31 @ X32 ) ) ).
% PropVar.distinct(11)
thf(fact_1026_atLeast0__lessThan__Suc,axiom,
! [N: nat] :
( ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) )
= ( insert_nat @ N @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ).
% atLeast0_lessThan_Suc
thf(fact_1027_atLeast0__lessThan__Suc__eq__insert__0,axiom,
! [N: nat] :
( ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) )
= ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ) ).
% atLeast0_lessThan_Suc_eq_insert_0
thf(fact_1028_PropVar_Osize_I12_J,axiom,
! [X61: nat,X62: nat] :
( ( size_s6253272723116879048ropVar @ ( multis6646701651571498855xOneIJ @ X61 @ X62 ) )
= zero_zero_nat ) ).
% PropVar.size(12)
thf(fact_1029_PropVar_Osize_I11_J,axiom,
! [X51: nat,X52: nat] :
( ( size_s6253272723116879048ropVar @ ( multis2983220944385456105ZeroIJ @ X51 @ X52 ) )
= zero_zero_nat ) ).
% PropVar.size(11)
thf(fact_1030_PropVar_Osize_I10_J,axiom,
! [X41: nat,X42: nat] :
( ( size_s6253272723116879048ropVar @ ( multis6646701651571564453xOneJI @ X41 @ X42 ) )
= zero_zero_nat ) ).
% PropVar.size(10)
thf(fact_1031_PropVar_Osize_I9_J,axiom,
! [X31: nat,X32: nat] :
( ( size_s6253272723116879048ropVar @ ( multis2983220944385521703ZeroJI @ X31 @ X32 ) )
= zero_zero_nat ) ).
% PropVar.size(9)
thf(fact_1032__092_060open_062v_A_092_060equiv_062_A_092_060lambda_062x_O_Acase_Ax_Aof_AAuxZeroJI_Ai_Aj_A_092_060Rightarrow_062_A_092_060not_062_ABex_A_Iset_A_Idrop_Ai_A_Imap_A_I_092_060lambda_062i_O_AGamma_Ai_Aj_J_A_0910_O_O_060n_093_J_J_J_Av_H_A_124_AAuxOneJI_Ai_Aj_A_092_060Rightarrow_062_A_092_060exists_062_By_O_Ay_A_092_060in_062_Aset_A_Idrop_Ai_A_Imap_A_I_092_060lambda_062i_O_AGamma_Ai_Aj_J_A_0910_O_O_060n_093_J_J_A_092_060and_062_Av_H_Ay_A_124_AAuxZeroIJ_Ai_Aj_A_092_060Rightarrow_062_A_092_060not_062_ABex_A_Iset_A_Idrop_Aj_A_Imap_A_IGamma_Ai_J_A_0910_O_O_060m_093_J_J_J_Av_H_A_124_AAuxOneIJ_Ai_Aj_A_092_060Rightarrow_062_A_092_060exists_062_By_O_Ay_A_092_060in_062_Aset_A_Idrop_Aj_A_Imap_A_IGamma_Ai_J_A_0910_O_O_060m_093_J_J_A_092_060and_062_Av_H_Ay_A_124_A___A_092_060Rightarrow_062_Av_H_Ax_092_060close_062,axiom,
( v2
= ( ^ [X3: multis3193088007478089820ropVar] :
( multis8641292176345589959pVar_o
@ ^ [Nat1: nat,Nat22: nat] : ( v @ X3 )
@ ^ [Nat4: nat] : ( v @ X3 )
@ ^ [I2: nat,J2: nat] :
~ ? [Y2: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ Y2
@ ( set_Mu146256361055586289ropVar
@ ( drop_M2293212096379261346ropVar @ I2
@ ( map_na2466558649495876678ropVar
@ ^ [K3: nat] : ( multis387687052011358179_Gamma @ K3 @ J2 )
@ ( upt @ zero_zero_nat @ n ) ) ) ) )
& ( v @ Y2 ) )
@ ^ [I2: nat,J2: nat] :
? [Y2: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ Y2
@ ( set_Mu146256361055586289ropVar
@ ( drop_M2293212096379261346ropVar @ I2
@ ( map_na2466558649495876678ropVar
@ ^ [K3: nat] : ( multis387687052011358179_Gamma @ K3 @ J2 )
@ ( upt @ zero_zero_nat @ n ) ) ) ) )
& ( v @ Y2 )
& ! [Z2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Z2
@ ( set_Mu146256361055586289ropVar
@ ( drop_M2293212096379261346ropVar @ I2
@ ( map_na2466558649495876678ropVar
@ ^ [K3: nat] : ( multis387687052011358179_Gamma @ K3 @ J2 )
@ ( upt @ zero_zero_nat @ n ) ) ) ) )
& ( v @ Z2 ) )
=> ( Z2 = Y2 ) ) )
@ ^ [I2: nat,J2: nat] :
~ ? [Y2: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ Y2 @ ( set_Mu146256361055586289ropVar @ ( drop_M2293212096379261346ropVar @ J2 @ ( map_na2466558649495876678ropVar @ ( multis387687052011358179_Gamma @ I2 ) @ ( upt @ zero_zero_nat @ m ) ) ) ) )
& ( v @ Y2 ) )
@ ^ [I2: nat,J2: nat] :
? [Y2: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ Y2 @ ( set_Mu146256361055586289ropVar @ ( drop_M2293212096379261346ropVar @ J2 @ ( map_na2466558649495876678ropVar @ ( multis387687052011358179_Gamma @ I2 ) @ ( upt @ zero_zero_nat @ m ) ) ) ) )
& ( v @ Y2 )
& ! [Z2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Z2 @ ( set_Mu146256361055586289ropVar @ ( drop_M2293212096379261346ropVar @ J2 @ ( map_na2466558649495876678ropVar @ ( multis387687052011358179_Gamma @ I2 ) @ ( upt @ zero_zero_nat @ m ) ) ) ) )
& ( v @ Z2 ) )
=> ( Z2 = Y2 ) ) )
@ X3 ) ) ) ).
% \<open>v \<equiv> \<lambda>x. case x of AuxZeroJI i j \<Rightarrow> \<not> Bex (set (drop i (map (\<lambda>i. Gamma i j) [0..<n]))) v' | AuxOneJI i j \<Rightarrow> \<exists>!y. y \<in> set (drop i (map (\<lambda>i. Gamma i j) [0..<n])) \<and> v' y | AuxZeroIJ i j \<Rightarrow> \<not> Bex (set (drop j (map (Gamma i) [0..<m]))) v' | AuxOneIJ i j \<Rightarrow> \<exists>!y. y \<in> set (drop j (map (Gamma i) [0..<m])) \<and> v' y | _ \<Rightarrow> v' x\<close>
thf(fact_1033_v__def,axiom,
! [X: multis3193088007478089820ropVar] :
( ( v2 @ X )
= ( multis8641292176345589959pVar_o
@ ^ [Nat1: nat,Nat22: nat] : ( v @ X )
@ ^ [Nat4: nat] : ( v @ X )
@ ^ [I2: nat,J2: nat] :
~ ? [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3
@ ( set_Mu146256361055586289ropVar
@ ( drop_M2293212096379261346ropVar @ I2
@ ( map_na2466558649495876678ropVar
@ ^ [K3: nat] : ( multis387687052011358179_Gamma @ K3 @ J2 )
@ ( upt @ zero_zero_nat @ n ) ) ) ) )
& ( v @ X3 ) )
@ ^ [I2: nat,J2: nat] :
? [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3
@ ( set_Mu146256361055586289ropVar
@ ( drop_M2293212096379261346ropVar @ I2
@ ( map_na2466558649495876678ropVar
@ ^ [K3: nat] : ( multis387687052011358179_Gamma @ K3 @ J2 )
@ ( upt @ zero_zero_nat @ n ) ) ) ) )
& ( v @ X3 )
& ! [Y2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Y2
@ ( set_Mu146256361055586289ropVar
@ ( drop_M2293212096379261346ropVar @ I2
@ ( map_na2466558649495876678ropVar
@ ^ [K3: nat] : ( multis387687052011358179_Gamma @ K3 @ J2 )
@ ( upt @ zero_zero_nat @ n ) ) ) ) )
& ( v @ Y2 ) )
=> ( Y2 = X3 ) ) )
@ ^ [I2: nat,J2: nat] :
~ ? [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ ( set_Mu146256361055586289ropVar @ ( drop_M2293212096379261346ropVar @ J2 @ ( map_na2466558649495876678ropVar @ ( multis387687052011358179_Gamma @ I2 ) @ ( upt @ zero_zero_nat @ m ) ) ) ) )
& ( v @ X3 ) )
@ ^ [I2: nat,J2: nat] :
? [X3: multis3193088007478089820ropVar] :
( ( member8421201611525043589ropVar @ X3 @ ( set_Mu146256361055586289ropVar @ ( drop_M2293212096379261346ropVar @ J2 @ ( map_na2466558649495876678ropVar @ ( multis387687052011358179_Gamma @ I2 ) @ ( upt @ zero_zero_nat @ m ) ) ) ) )
& ( v @ X3 )
& ! [Y2: multis3193088007478089820ropVar] :
( ( ( member8421201611525043589ropVar @ Y2 @ ( set_Mu146256361055586289ropVar @ ( drop_M2293212096379261346ropVar @ J2 @ ( map_na2466558649495876678ropVar @ ( multis387687052011358179_Gamma @ I2 ) @ ( upt @ zero_zero_nat @ m ) ) ) ) )
& ( v @ Y2 ) )
=> ( Y2 = X3 ) ) )
@ X ) ) ).
% v_def
thf(fact_1034_encode__sum__0__1__main_Osimps_I2_J,axiom,
! [X: multis3193088007478089820ropVar,Zero2: multis3193088007478089820ropVar,One2: multis3193088007478089820ropVar,V: produc2642885279816024434ropVar,Va2: list_P8791008543742759928ropVar] :
( ( multis7428212316306422970pVar_f @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ ( cons_P1504208554336013608ropVar @ ( produc6194868611276206818ropVar @ X @ ( produc6936306168532358295ropVar @ Zero2 @ One2 ) ) @ ( cons_P1504208554336013608ropVar @ V @ Va2 ) ) )
= ( produc5770109036932753787ropVar
@ ^ [Conds2: list_f] :
( produc5689224170127644889ropVar
@ ^ [Fzero: multis3193088007478089820ropVar,Fone: multis3193088007478089820ropVar] : ( produc5732303558254465141ropVar @ ( cons_f @ ( enc_equiv_and_not @ Zero2 @ Fzero @ X ) @ ( cons_f @ ( enc_equiv_ite @ One2 @ X @ Fzero @ Fone ) @ Conds2 ) ) @ ( produc6936306168532358295ropVar @ Zero2 @ One2 ) ) )
@ ( multis7428212316306422970pVar_f @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ ( cons_P1504208554336013608ropVar @ V @ Va2 ) ) ) ) ).
% encode_sum_0_1_main.simps(2)
thf(fact_1035_encode__exactly__one__def,axiom,
! [Vars: list_P8791008543742759928ropVar] :
( ( multis2195156209094129637ropVar @ enc_False @ enc_pos @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ Vars )
= ( case_l5231247004599698859ropVar @ ( produc4886901243613182557list_f @ enc_False @ nil_f )
@ ^ [A3: produc2642885279816024434ropVar,Vars2: list_P8791008543742759928ropVar] :
( produc1364905799853895606list_f
@ ^ [X3: multis3193088007478089820ropVar] :
( produc5811297888731727041list_f
@ ^ [Xa4: multis3193088007478089820ropVar,Xb2: multis3193088007478089820ropVar] :
( case_l5231247004599698859ropVar @ ( produc4886901243613182557list_f @ ( enc_pos @ X3 ) @ nil_f )
@ ^ [Aa: produc2642885279816024434ropVar,List2: list_P8791008543742759928ropVar] :
( produc9062381539647762275list_f
@ ^ [Conds2: list_f] :
( produc5811297888731727041list_f
@ ^ [Zero3: multis3193088007478089820ropVar,One3: multis3193088007478089820ropVar] : ( produc4886901243613182557list_f @ ( enc_ite @ X3 @ Zero3 @ One3 ) @ Conds2 ) )
@ ( multis7428212316306422970pVar_f @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ ( cons_P1504208554336013608ropVar @ Aa @ List2 ) ) )
@ Vars2 ) )
@ A3 )
@ Vars ) ) ).
% encode_exactly_one_def
thf(fact_1036_encode__sum__0__1__main_Oelims,axiom,
! [X: list_P8791008543742759928ropVar,Y: produc7903949528580895877ropVar] :
( ( ( multis7428212316306422970pVar_f @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ X )
= Y )
=> ( ! [X4: multis3193088007478089820ropVar,Zero: multis3193088007478089820ropVar] :
( ? [One: multis3193088007478089820ropVar] :
( X
= ( cons_P1504208554336013608ropVar @ ( produc6194868611276206818ropVar @ X4 @ ( produc6936306168532358295ropVar @ Zero @ One ) ) @ nil_Pr6119456312066593144ropVar ) )
=> ( Y
!= ( produc5732303558254465141ropVar @ ( cons_f @ ( enc_different @ Zero @ X4 ) @ nil_f ) @ ( produc6936306168532358295ropVar @ Zero @ X4 ) ) ) )
=> ( ! [X4: multis3193088007478089820ropVar,Zero: multis3193088007478089820ropVar,One: multis3193088007478089820ropVar,V2: produc2642885279816024434ropVar,Va: list_P8791008543742759928ropVar] :
( ( X
= ( cons_P1504208554336013608ropVar @ ( produc6194868611276206818ropVar @ X4 @ ( produc6936306168532358295ropVar @ Zero @ One ) ) @ ( cons_P1504208554336013608ropVar @ V2 @ Va ) ) )
=> ( Y
!= ( produc5770109036932753787ropVar
@ ^ [Conds2: list_f] :
( produc5689224170127644889ropVar
@ ^ [Fzero: multis3193088007478089820ropVar,Fone: multis3193088007478089820ropVar] : ( produc5732303558254465141ropVar @ ( cons_f @ ( enc_equiv_and_not @ Zero @ Fzero @ X4 ) @ ( cons_f @ ( enc_equiv_ite @ One @ X4 @ Fzero @ Fone ) @ Conds2 ) ) @ ( produc6936306168532358295ropVar @ Zero @ One ) ) )
@ ( multis7428212316306422970pVar_f @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ ( cons_P1504208554336013608ropVar @ V2 @ Va ) ) ) ) )
=> ~ ( ( X = nil_Pr6119456312066593144ropVar )
=> ( Y != undefi316149074942268141ropVar ) ) ) ) ) ).
% encode_sum_0_1_main.elims
thf(fact_1037_encode__sum__0__1__main_Opelims,axiom,
! [X: list_P8791008543742759928ropVar,Y: produc7903949528580895877ropVar] :
( ( ( multis7428212316306422970pVar_f @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ X )
= Y )
=> ( ( accp_l8790861725341200257ropVar @ multis162751971668797333ropVar @ X )
=> ( ! [X4: multis3193088007478089820ropVar,Zero: multis3193088007478089820ropVar,One: multis3193088007478089820ropVar] :
( ( X
= ( cons_P1504208554336013608ropVar @ ( produc6194868611276206818ropVar @ X4 @ ( produc6936306168532358295ropVar @ Zero @ One ) ) @ nil_Pr6119456312066593144ropVar ) )
=> ( ( Y
= ( produc5732303558254465141ropVar @ ( cons_f @ ( enc_different @ Zero @ X4 ) @ nil_f ) @ ( produc6936306168532358295ropVar @ Zero @ X4 ) ) )
=> ~ ( accp_l8790861725341200257ropVar @ multis162751971668797333ropVar @ ( cons_P1504208554336013608ropVar @ ( produc6194868611276206818ropVar @ X4 @ ( produc6936306168532358295ropVar @ Zero @ One ) ) @ nil_Pr6119456312066593144ropVar ) ) ) )
=> ( ! [X4: multis3193088007478089820ropVar,Zero: multis3193088007478089820ropVar,One: multis3193088007478089820ropVar,V2: produc2642885279816024434ropVar,Va: list_P8791008543742759928ropVar] :
( ( X
= ( cons_P1504208554336013608ropVar @ ( produc6194868611276206818ropVar @ X4 @ ( produc6936306168532358295ropVar @ Zero @ One ) ) @ ( cons_P1504208554336013608ropVar @ V2 @ Va ) ) )
=> ( ( Y
= ( produc5770109036932753787ropVar
@ ^ [Conds2: list_f] :
( produc5689224170127644889ropVar
@ ^ [Fzero: multis3193088007478089820ropVar,Fone: multis3193088007478089820ropVar] : ( produc5732303558254465141ropVar @ ( cons_f @ ( enc_equiv_and_not @ Zero @ Fzero @ X4 ) @ ( cons_f @ ( enc_equiv_ite @ One @ X4 @ Fzero @ Fone ) @ Conds2 ) ) @ ( produc6936306168532358295ropVar @ Zero @ One ) ) )
@ ( multis7428212316306422970pVar_f @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ ( cons_P1504208554336013608ropVar @ V2 @ Va ) ) ) )
=> ~ ( accp_l8790861725341200257ropVar @ multis162751971668797333ropVar @ ( cons_P1504208554336013608ropVar @ ( produc6194868611276206818ropVar @ X4 @ ( produc6936306168532358295ropVar @ Zero @ One ) ) @ ( cons_P1504208554336013608ropVar @ V2 @ Va ) ) ) ) )
=> ~ ( ( X = nil_Pr6119456312066593144ropVar )
=> ( ( Y = undefi316149074942268141ropVar )
=> ~ ( accp_l8790861725341200257ropVar @ multis162751971668797333ropVar @ nil_Pr6119456312066593144ropVar ) ) ) ) ) ) ) ).
% encode_sum_0_1_main.pelims
thf(fact_1038_size__char__eq__0,axiom,
( size_size_char
= ( ^ [C2: char] : zero_zero_nat ) ) ).
% size_char_eq_0
thf(fact_1039_size_H__char__eq__0,axiom,
( size_char
= ( ^ [C2: char] : zero_zero_nat ) ) ).
% size'_char_eq_0
thf(fact_1040_tl__upt,axiom,
! [M: nat,N: nat] :
( ( tl_nat @ ( upt @ M @ N ) )
= ( upt @ ( suc @ M ) @ N ) ) ).
% tl_upt
thf(fact_1041_hd__upt,axiom,
! [I: nat,J: nat] :
( ( ord_less_nat @ I @ J )
=> ( ( hd_nat @ ( upt @ I @ J ) )
= I ) ) ).
% hd_upt
thf(fact_1042_bot__nat__0_Oextremum,axiom,
! [A: nat] : ( ord_less_eq_nat @ zero_zero_nat @ A ) ).
% bot_nat_0.extremum
thf(fact_1043_le0,axiom,
! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).
% le0
thf(fact_1044_Suc__le__mono,axiom,
! [N: nat,M: nat] :
( ( ord_less_eq_nat @ ( suc @ N ) @ ( suc @ M ) )
= ( ord_less_eq_nat @ N @ M ) ) ).
% Suc_le_mono
thf(fact_1045_nat__add__left__cancel__le,axiom,
! [K: nat,M: nat,N: nat] :
( ( ord_less_eq_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
= ( ord_less_eq_nat @ M @ N ) ) ).
% nat_add_left_cancel_le
thf(fact_1046_take__upt,axiom,
! [I: nat,M: nat,N: nat] :
( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ M ) @ N )
=> ( ( take_nat @ M @ ( upt @ I @ N ) )
= ( upt @ I @ ( plus_plus_nat @ I @ M ) ) ) ) ).
% take_upt
thf(fact_1047_upt__conv__Nil,axiom,
! [J: nat,I: nat] :
( ( ord_less_eq_nat @ J @ I )
=> ( ( upt @ I @ J )
= nil_nat ) ) ).
% upt_conv_Nil
thf(fact_1048_upt__eq__Nil__conv,axiom,
! [I: nat,J: nat] :
( ( ( upt @ I @ J )
= nil_nat )
= ( ( J = zero_zero_nat )
| ( ord_less_eq_nat @ J @ I ) ) ) ).
% upt_eq_Nil_conv
thf(fact_1049_nat__descend__induct,axiom,
! [N: nat,P: nat > $o,M: nat] :
( ! [K2: nat] :
( ( ord_less_nat @ N @ K2 )
=> ( P @ K2 ) )
=> ( ! [K2: nat] :
( ( ord_less_eq_nat @ K2 @ N )
=> ( ! [I4: nat] :
( ( ord_less_nat @ K2 @ I4 )
=> ( P @ I4 ) )
=> ( P @ K2 ) ) )
=> ( P @ M ) ) ) ).
% nat_descend_induct
thf(fact_1050_mono__nat__linear__lb,axiom,
! [F: nat > nat,M: nat,K: nat] :
( ! [M4: nat,N2: nat] :
( ( ord_less_nat @ M4 @ N2 )
=> ( ord_less_nat @ ( F @ M4 ) @ ( F @ N2 ) ) )
=> ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M ) @ K ) @ ( F @ ( plus_plus_nat @ M @ K ) ) ) ) ).
% mono_nat_linear_lb
thf(fact_1051_nat__le__iff__add,axiom,
( ord_less_eq_nat
= ( ^ [M3: nat,N3: nat] :
? [K3: nat] :
( N3
= ( plus_plus_nat @ M3 @ K3 ) ) ) ) ).
% nat_le_iff_add
thf(fact_1052_trans__le__add2,axiom,
! [I: nat,J: nat,M: nat] :
( ( ord_less_eq_nat @ I @ J )
=> ( ord_less_eq_nat @ I @ ( plus_plus_nat @ M @ J ) ) ) ).
% trans_le_add2
thf(fact_1053_trans__le__add1,axiom,
! [I: nat,J: nat,M: nat] :
( ( ord_less_eq_nat @ I @ J )
=> ( ord_less_eq_nat @ I @ ( plus_plus_nat @ J @ M ) ) ) ).
% trans_le_add1
thf(fact_1054_add__le__mono1,axiom,
! [I: nat,J: nat,K: nat] :
( ( ord_less_eq_nat @ I @ J )
=> ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).
% add_le_mono1
thf(fact_1055_add__le__mono,axiom,
! [I: nat,J: nat,K: nat,L: nat] :
( ( ord_less_eq_nat @ I @ J )
=> ( ( ord_less_eq_nat @ K @ L )
=> ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).
% add_le_mono
thf(fact_1056_le__Suc__ex,axiom,
! [K: nat,L: nat] :
( ( ord_less_eq_nat @ K @ L )
=> ? [N2: nat] :
( L
= ( plus_plus_nat @ K @ N2 ) ) ) ).
% le_Suc_ex
thf(fact_1057_add__leD2,axiom,
! [M: nat,K: nat,N: nat] :
( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
=> ( ord_less_eq_nat @ K @ N ) ) ).
% add_leD2
thf(fact_1058_add__leD1,axiom,
! [M: nat,K: nat,N: nat] :
( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
=> ( ord_less_eq_nat @ M @ N ) ) ).
% add_leD1
thf(fact_1059_le__add2,axiom,
! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ M @ N ) ) ).
% le_add2
thf(fact_1060_le__add1,axiom,
! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ N @ M ) ) ).
% le_add1
thf(fact_1061_add__leE,axiom,
! [M: nat,K: nat,N: nat] :
( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
=> ~ ( ( ord_less_eq_nat @ M @ N )
=> ~ ( ord_less_eq_nat @ K @ N ) ) ) ).
% add_leE
thf(fact_1062_le__refl,axiom,
! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).
% le_refl
thf(fact_1063_le__trans,axiom,
! [I: nat,J: nat,K: nat] :
( ( ord_less_eq_nat @ I @ J )
=> ( ( ord_less_eq_nat @ J @ K )
=> ( ord_less_eq_nat @ I @ K ) ) ) ).
% le_trans
thf(fact_1064_eq__imp__le,axiom,
! [M: nat,N: nat] :
( ( M = N )
=> ( ord_less_eq_nat @ M @ N ) ) ).
% eq_imp_le
thf(fact_1065_le__antisym,axiom,
! [M: nat,N: nat] :
( ( ord_less_eq_nat @ M @ N )
=> ( ( ord_less_eq_nat @ N @ M )
=> ( M = N ) ) ) ).
% le_antisym
thf(fact_1066_nat__le__linear,axiom,
! [M: nat,N: nat] :
( ( ord_less_eq_nat @ M @ N )
| ( ord_less_eq_nat @ N @ M ) ) ).
% nat_le_linear
thf(fact_1067_Nat_Oex__has__greatest__nat,axiom,
! [P: nat > $o,K: nat,B: nat] :
( ( P @ K )
=> ( ! [Y3: nat] :
( ( P @ Y3 )
=> ( ord_less_eq_nat @ Y3 @ B ) )
=> ? [X4: nat] :
( ( P @ X4 )
& ! [Y6: nat] :
( ( P @ Y6 )
=> ( ord_less_eq_nat @ Y6 @ X4 ) ) ) ) ) ).
% Nat.ex_has_greatest_nat
thf(fact_1068_bounded__Max__nat,axiom,
! [P: nat > $o,X: nat,M6: nat] :
( ( P @ X )
=> ( ! [X4: nat] :
( ( P @ X4 )
=> ( ord_less_eq_nat @ X4 @ M6 ) )
=> ~ ! [M4: nat] :
( ( P @ M4 )
=> ~ ! [X2: nat] :
( ( P @ X2 )
=> ( ord_less_eq_nat @ X2 @ M4 ) ) ) ) ) ).
% bounded_Max_nat
thf(fact_1069_nat__less__le,axiom,
( ord_less_nat
= ( ^ [M3: nat,N3: nat] :
( ( ord_less_eq_nat @ M3 @ N3 )
& ( M3 != N3 ) ) ) ) ).
% nat_less_le
thf(fact_1070_less__imp__le__nat,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ( ord_less_eq_nat @ M @ N ) ) ).
% less_imp_le_nat
thf(fact_1071_le__eq__less__or__eq,axiom,
( ord_less_eq_nat
= ( ^ [M3: nat,N3: nat] :
( ( ord_less_nat @ M3 @ N3 )
| ( M3 = N3 ) ) ) ) ).
% le_eq_less_or_eq
thf(fact_1072_less__or__eq__imp__le,axiom,
! [M: nat,N: nat] :
( ( ( ord_less_nat @ M @ N )
| ( M = N ) )
=> ( ord_less_eq_nat @ M @ N ) ) ).
% less_or_eq_imp_le
thf(fact_1073_le__neq__implies__less,axiom,
! [M: nat,N: nat] :
( ( ord_less_eq_nat @ M @ N )
=> ( ( M != N )
=> ( ord_less_nat @ M @ N ) ) ) ).
% le_neq_implies_less
thf(fact_1074_less__mono__imp__le__mono,axiom,
! [F: nat > nat,I: nat,J: nat] :
( ! [I3: nat,J3: nat] :
( ( ord_less_nat @ I3 @ J3 )
=> ( ord_less_nat @ ( F @ I3 ) @ ( F @ J3 ) ) )
=> ( ( ord_less_eq_nat @ I @ J )
=> ( ord_less_eq_nat @ ( F @ I ) @ ( F @ J ) ) ) ) ).
% less_mono_imp_le_mono
thf(fact_1075_transitive__stepwise__le,axiom,
! [M: nat,N: nat,R: nat > nat > $o] :
( ( ord_less_eq_nat @ M @ N )
=> ( ! [X4: nat] : ( R @ X4 @ X4 )
=> ( ! [X4: nat,Y3: nat,Z3: nat] :
( ( R @ X4 @ Y3 )
=> ( ( R @ Y3 @ Z3 )
=> ( R @ X4 @ Z3 ) ) )
=> ( ! [N2: nat] : ( R @ N2 @ ( suc @ N2 ) )
=> ( R @ M @ N ) ) ) ) ) ).
% transitive_stepwise_le
thf(fact_1076_nat__induct__at__least,axiom,
! [M: nat,N: nat,P: nat > $o] :
( ( ord_less_eq_nat @ M @ N )
=> ( ( P @ M )
=> ( ! [N2: nat] :
( ( ord_less_eq_nat @ M @ N2 )
=> ( ( P @ N2 )
=> ( P @ ( suc @ N2 ) ) ) )
=> ( P @ N ) ) ) ) ).
% nat_induct_at_least
thf(fact_1077_full__nat__induct,axiom,
! [P: nat > $o,N: nat] :
( ! [N2: nat] :
( ! [M2: nat] :
( ( ord_less_eq_nat @ ( suc @ M2 ) @ N2 )
=> ( P @ M2 ) )
=> ( P @ N2 ) )
=> ( P @ N ) ) ).
% full_nat_induct
thf(fact_1078_not__less__eq__eq,axiom,
! [M: nat,N: nat] :
( ( ~ ( ord_less_eq_nat @ M @ N ) )
= ( ord_less_eq_nat @ ( suc @ N ) @ M ) ) ).
% not_less_eq_eq
thf(fact_1079_Suc__n__not__le__n,axiom,
! [N: nat] :
~ ( ord_less_eq_nat @ ( suc @ N ) @ N ) ).
% Suc_n_not_le_n
thf(fact_1080_le__Suc__eq,axiom,
! [M: nat,N: nat] :
( ( ord_less_eq_nat @ M @ ( suc @ N ) )
= ( ( ord_less_eq_nat @ M @ N )
| ( M
= ( suc @ N ) ) ) ) ).
% le_Suc_eq
thf(fact_1081_Suc__le__D,axiom,
! [N: nat,M7: nat] :
( ( ord_less_eq_nat @ ( suc @ N ) @ M7 )
=> ? [M4: nat] :
( M7
= ( suc @ M4 ) ) ) ).
% Suc_le_D
thf(fact_1082_le__SucI,axiom,
! [M: nat,N: nat] :
( ( ord_less_eq_nat @ M @ N )
=> ( ord_less_eq_nat @ M @ ( suc @ N ) ) ) ).
% le_SucI
thf(fact_1083_le__SucE,axiom,
! [M: nat,N: nat] :
( ( ord_less_eq_nat @ M @ ( suc @ N ) )
=> ( ~ ( ord_less_eq_nat @ M @ N )
=> ( M
= ( suc @ N ) ) ) ) ).
% le_SucE
thf(fact_1084_Suc__leD,axiom,
! [M: nat,N: nat] :
( ( ord_less_eq_nat @ ( suc @ M ) @ N )
=> ( ord_less_eq_nat @ M @ N ) ) ).
% Suc_leD
thf(fact_1085_less__eq__nat_Osimps_I1_J,axiom,
! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).
% less_eq_nat.simps(1)
thf(fact_1086_bot__nat__0_Oextremum__unique,axiom,
! [A: nat] :
( ( ord_less_eq_nat @ A @ zero_zero_nat )
= ( A = zero_zero_nat ) ) ).
% bot_nat_0.extremum_unique
thf(fact_1087_bot__nat__0_Oextremum__uniqueI,axiom,
! [A: nat] :
( ( ord_less_eq_nat @ A @ zero_zero_nat )
=> ( A = zero_zero_nat ) ) ).
% bot_nat_0.extremum_uniqueI
thf(fact_1088_le__0__eq,axiom,
! [N: nat] :
( ( ord_less_eq_nat @ N @ zero_zero_nat )
= ( N = zero_zero_nat ) ) ).
% le_0_eq
thf(fact_1089_Suc__leI,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ( ord_less_eq_nat @ ( suc @ M ) @ N ) ) ).
% Suc_leI
thf(fact_1090_Suc__le__eq,axiom,
! [M: nat,N: nat] :
( ( ord_less_eq_nat @ ( suc @ M ) @ N )
= ( ord_less_nat @ M @ N ) ) ).
% Suc_le_eq
thf(fact_1091_dec__induct,axiom,
! [I: nat,J: nat,P: nat > $o] :
( ( ord_less_eq_nat @ I @ J )
=> ( ( P @ I )
=> ( ! [N2: nat] :
( ( ord_less_eq_nat @ I @ N2 )
=> ( ( ord_less_nat @ N2 @ J )
=> ( ( P @ N2 )
=> ( P @ ( suc @ N2 ) ) ) ) )
=> ( P @ J ) ) ) ) ).
% dec_induct
thf(fact_1092_inc__induct,axiom,
! [I: nat,J: nat,P: nat > $o] :
( ( ord_less_eq_nat @ I @ J )
=> ( ( P @ J )
=> ( ! [N2: nat] :
( ( ord_less_eq_nat @ I @ N2 )
=> ( ( ord_less_nat @ N2 @ J )
=> ( ( P @ ( suc @ N2 ) )
=> ( P @ N2 ) ) ) )
=> ( P @ I ) ) ) ) ).
% inc_induct
thf(fact_1093_Suc__le__lessD,axiom,
! [M: nat,N: nat] :
( ( ord_less_eq_nat @ ( suc @ M ) @ N )
=> ( ord_less_nat @ M @ N ) ) ).
% Suc_le_lessD
thf(fact_1094_le__less__Suc__eq,axiom,
! [M: nat,N: nat] :
( ( ord_less_eq_nat @ M @ N )
=> ( ( ord_less_nat @ N @ ( suc @ M ) )
= ( N = M ) ) ) ).
% le_less_Suc_eq
thf(fact_1095_less__Suc__eq__le,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ ( suc @ N ) )
= ( ord_less_eq_nat @ M @ N ) ) ).
% less_Suc_eq_le
thf(fact_1096_less__eq__Suc__le,axiom,
( ord_less_nat
= ( ^ [N3: nat] : ( ord_less_eq_nat @ ( suc @ N3 ) ) ) ) ).
% less_eq_Suc_le
thf(fact_1097_le__imp__less__Suc,axiom,
! [M: nat,N: nat] :
( ( ord_less_eq_nat @ M @ N )
=> ( ord_less_nat @ M @ ( suc @ N ) ) ) ).
% le_imp_less_Suc
thf(fact_1098_ex__least__nat__le,axiom,
! [P: nat > $o,N: nat] :
( ( P @ N )
=> ( ~ ( P @ zero_zero_nat )
=> ? [K2: nat] :
( ( ord_less_eq_nat @ K2 @ N )
& ! [I4: nat] :
( ( ord_less_nat @ I4 @ K2 )
=> ~ ( P @ I4 ) )
& ( P @ K2 ) ) ) ) ).
% ex_least_nat_le
thf(fact_1099_ex__least__nat__less,axiom,
! [P: nat > $o,N: nat] :
( ( P @ N )
=> ( ~ ( P @ zero_zero_nat )
=> ? [K2: nat] :
( ( ord_less_nat @ K2 @ N )
& ! [I4: nat] :
( ( ord_less_eq_nat @ I4 @ K2 )
=> ~ ( P @ I4 ) )
& ( P @ ( suc @ K2 ) ) ) ) ) ).
% ex_least_nat_less
thf(fact_1100_upt__add__eq__append,axiom,
! [I: nat,J: nat,K: nat] :
( ( ord_less_eq_nat @ I @ J )
=> ( ( upt @ I @ ( plus_plus_nat @ J @ K ) )
= ( append_nat @ ( upt @ I @ J ) @ ( upt @ J @ ( plus_plus_nat @ J @ K ) ) ) ) ) ).
% upt_add_eq_append
thf(fact_1101_upt__Suc__append,axiom,
! [I: nat,J: nat] :
( ( ord_less_eq_nat @ I @ J )
=> ( ( upt @ I @ ( suc @ J ) )
= ( append_nat @ ( upt @ I @ J ) @ ( cons_nat @ J @ nil_nat ) ) ) ) ).
% upt_Suc_append
thf(fact_1102_upt__Suc,axiom,
! [I: nat,J: nat] :
( ( ( ord_less_eq_nat @ I @ J )
=> ( ( upt @ I @ ( suc @ J ) )
= ( append_nat @ ( upt @ I @ J ) @ ( cons_nat @ J @ nil_nat ) ) ) )
& ( ~ ( ord_less_eq_nat @ I @ J )
=> ( ( upt @ I @ ( suc @ J ) )
= nil_nat ) ) ) ).
% upt_Suc
thf(fact_1103_inf__concat__simple_Ocases,axiom,
! [X: produc8199716216217303280at_nat] :
( ! [F3: nat > nat] :
( X
!= ( produc72220940542539688at_nat @ F3 @ zero_zero_nat ) )
=> ~ ! [F3: nat > nat,N2: nat] :
( X
!= ( produc72220940542539688at_nat @ F3 @ ( suc @ N2 ) ) ) ) ).
% inf_concat_simple.cases
% Helper facts (10)
thf(help_fChoice_1_1_fChoice_001t__Nat__Onat_T,axiom,
! [P: nat > $o] :
( ( P @ ( fChoice_nat @ P ) )
= ( ? [X5: nat] : ( P @ X5 ) ) ) ).
thf(help_If_2_1_If_001t__List__Olist_Itf__a_J_T,axiom,
! [X: list_a,Y: list_a] :
( ( if_list_a @ $false @ X @ Y )
= Y ) ).
thf(help_If_1_1_If_001t__List__Olist_Itf__a_J_T,axiom,
! [X: list_a,Y: list_a] :
( ( if_list_a @ $true @ X @ Y )
= X ) ).
thf(help_If_2_1_If_001t__List__Olist_Itf__f_J_T,axiom,
! [X: list_f,Y: list_f] :
( ( if_list_f @ $false @ X @ Y )
= Y ) ).
thf(help_If_1_1_If_001t__List__Olist_Itf__f_J_T,axiom,
! [X: list_f,Y: list_f] :
( ( if_list_f @ $true @ X @ Y )
= X ) ).
thf(help_If_2_1_If_001t__List__Olist_It__Nat__Onat_J_T,axiom,
! [X: list_nat,Y: list_nat] :
( ( if_list_nat @ $false @ X @ Y )
= Y ) ).
thf(help_If_1_1_If_001t__List__Olist_It__Nat__Onat_J_T,axiom,
! [X: list_nat,Y: list_nat] :
( ( if_list_nat @ $true @ X @ Y )
= X ) ).
thf(help_If_3_1_If_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J_T,axiom,
! [P: $o] :
( ( P = $true )
| ( P = $false ) ) ).
thf(help_If_2_1_If_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J_T,axiom,
! [X: list_P8791008543742759928ropVar,Y: list_P8791008543742759928ropVar] :
( ( if_lis1975434623467068862ropVar @ $false @ X @ Y )
= Y ) ).
thf(help_If_1_1_If_001t__List__Olist_It__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Product____Type__Oprod_It__Multiset____Ordering____in____NP__OPropVar_Mt__Multiset____Ordering____in____NP__OPropVar_J_J_J_T,axiom,
! [X: list_P8791008543742759928ropVar,Y: list_P8791008543742759928ropVar] :
( ( if_lis1975434623467068862ropVar @ $true @ X @ Y )
= X ) ).
% Conjectures (1)
thf(conj_0,conjecture,
! [X4: f] :
( ( member_f @ X4 @ ( set_f2 @ ( multis4897360769916157165la16_f @ enc_False @ enc_True @ enc_pos @ enc_neg @ enc_different @ enc_equiv_and_not @ enc_equiv_ite @ enc_ite @ enc_impl @ enc_var_impl @ enc_not_and @ enc_not_all @ cs @ cns @ n @ m ) ) )
=> ( eval @ v2 @ X4 ) ) ).
%------------------------------------------------------------------------------