TPTP Problem File: ITP141^1.p
View Solutions
- Solve Problem
%------------------------------------------------------------------------------
% File : ITP141^1 : TPTP v9.0.0. Released v7.5.0.
% Domain : Interactive Theorem Proving
% Problem : Sledgehammer PHoareTotal problem prob_135__3259094_1
% Version : Especial.
% English :
% Refs : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
% : [Des21] Desharnais (2021), Email to Geoff Sutcliffe
% Source : [Des21]
% Names : PHoareTotal/prob_135__3259094_1 [Des21]
% Status : Theorem
% Rating : 0.38 v9.0.0, 0.50 v8.2.0, 0.62 v8.1.0, 0.55 v7.5.0
% Syntax : Number of formulae : 486 ( 197 unt; 129 typ; 0 def)
% Number of atoms : 965 ( 395 equ; 0 cnn)
% Maximal formula atoms : 21 ( 2 avg)
% Number of connectives : 2845 ( 189 ~; 21 |; 103 &;2146 @)
% ( 0 <=>; 386 =>; 0 <=; 0 <~>)
% Maximal formula depth : 22 ( 7 avg)
% Number of types : 21 ( 20 usr)
% Number of type conns : 488 ( 488 >; 0 *; 0 +; 0 <<)
% Number of symbols : 112 ( 109 usr; 17 con; 0-4 aty)
% Number of variables : 1075 ( 140 ^; 895 !; 40 ?;1075 :)
% SPC : TH0_THM_EQU_NAR
% Comments : This file was generated by Sledgehammer 2021-02-23 15:32:35.907
%------------------------------------------------------------------------------
% Could-be-implicit typings (20)
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_J_J,type,
set_Pr1702239303tate_o: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_J,type,
produc1307154919tate_o: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_J,type,
set_Pr1590995257tate_o: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_Mt__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_J_J,type,
set_Pr778812871_state: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
produc696469763tate_o: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
set_Pr1490359111at_nat: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_Mt__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_J,type,
produc1390548711_state: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
produc842455143at_nat: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
set_Pr1740974983tate_o: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J,type,
produc204914599tate_o: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_J,type,
set_Pr795498619_state: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
set_Pr1986765409at_nat: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J,type,
produc1115495963_state: $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__PLang__Ostate_J,type,
set_state: $tType ).
thf(ty_n_t__Set__Oset_It__Nat__Onat_J,type,
set_nat: $tType ).
thf(ty_n_t__PLang__Ostate,type,
state: $tType ).
thf(ty_n_t__PLang__Ocom,type,
com: $tType ).
thf(ty_n_t__Nat__Onat,type,
nat: $tType ).
thf(ty_n_tf__a,type,
a: $tType ).
% Explicit typings (109)
thf(sy_c_Nat_OSuc,type,
suc: nat > nat ).
thf(sy_c_Order__Relation_OaboveS_001t__Nat__Onat,type,
order_aboveS_nat: set_Pr1986765409at_nat > nat > set_nat ).
thf(sy_c_Order__Relation_OaboveS_001t__PLang__Ostate,type,
order_aboveS_state: set_Pr795498619_state > state > set_state ).
thf(sy_c_Order__Relation_OaboveS_001t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
order_1121016664tate_o: set_Pr1702239303tate_o > produc696469763tate_o > set_Pr1590995257tate_o ).
thf(sy_c_Order__Relation_OaboveS_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
order_665764460at_nat: set_Pr1490359111at_nat > product_prod_nat_nat > set_Pr1986765409at_nat ).
thf(sy_c_Order__Relation_OaboveS_001t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J,type,
order_2027321734_state: set_Pr778812871_state > produc1115495963_state > set_Pr795498619_state ).
thf(sy_c_Order__Relation_Olinear__order__on_001t__Nat__Onat,type,
order_130026331on_nat: set_nat > set_Pr1986765409at_nat > $o ).
thf(sy_c_Order__Relation_Olinear__order__on_001t__PLang__Ostate,type,
order_286167592_state: set_state > set_Pr795498619_state > $o ).
thf(sy_c_Order__Relation_Olinear__order__on_001t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
order_50454158tate_o: set_Pr1590995257tate_o > set_Pr1702239303tate_o > $o ).
thf(sy_c_Order__Relation_Olinear__order__on_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
order_721919926at_nat: set_Pr1986765409at_nat > set_Pr1490359111at_nat > $o ).
thf(sy_c_Order__Relation_Olinear__order__on_001t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J,type,
order_178668240_state: set_Pr795498619_state > set_Pr778812871_state > $o ).
thf(sy_c_Orderings_Obot__class_Obot_001_062_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_M_062_It__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_M_Eo_J_J,type,
bot_bo2130564770te_o_o: ( a > state > $o ) > produc204914599tate_o > $o ).
thf(sy_c_Orderings_Obot__class_Obot_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J,type,
bot_bot_nat_nat_o: nat > nat > $o ).
thf(sy_c_Orderings_Obot__class_Obot_001_062_It__PLang__Ocom_M_062_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_M_Eo_J_J,type,
bot_bo935656620te_o_o: com > ( a > state > $o ) > $o ).
thf(sy_c_Orderings_Obot__class_Obot_001_062_It__PLang__Ostate_M_062_It__PLang__Ostate_M_Eo_J_J,type,
bot_bo51534648tate_o: state > state > $o ).
thf(sy_c_Orderings_Obot__class_Obot_001_062_It__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_M_Eo_J,type,
bot_bo250281208te_o_o: produc696469763tate_o > $o ).
thf(sy_c_Orderings_Obot__class_Obot_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J,type,
bot_bo513358416_nat_o: product_prod_nat_nat > $o ).
thf(sy_c_Orderings_Obot__class_Obot_001_062_It__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_M_Eo_J,type,
bot_bo446391478tate_o: produc1115495963_state > $o ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Nat__Onat_J,type,
bot_bot_set_nat: set_nat ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__PLang__Ostate_J,type,
bot_bot_set_state: set_state ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_J,type,
bot_bo170732493tate_o: set_Pr1590995257tate_o ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
bot_bo2130386637at_nat: set_Pr1986765409at_nat ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
bot_bo1692783091tate_o: set_Pr1740974983tate_o ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_J,type,
bot_bo1625160935_state: set_Pr795498619_state ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_J_J,type,
bot_bo1714653363tate_o: set_Pr1702239303tate_o ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
bot_bo34127283at_nat: set_Pr1490359111at_nat ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_Mt__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_J_J,type,
bot_bo1331673139_state: set_Pr778812871_state ).
thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat,type,
ord_less_nat: nat > nat > $o ).
thf(sy_c_PHoareTotal__Mirabelle__ynemugpbor_Othoare_001tf__a,type,
pHoare382919414oare_a: set_Pr1590995257tate_o > ( a > state > $o ) > com > ( a > state > $o ) > $o ).
thf(sy_c_PHoare_Ohoare_001tf__a,type,
hoare_a: set_Pr1590995257tate_o > ( a > state > $o ) > com > ( a > state > $o ) > $o ).
thf(sy_c_PLang_Obody,type,
body: com ).
thf(sy_c_PLang_Ocom_OCALL,type,
call: com ).
thf(sy_c_PLang_Ocom_OSemi,type,
semi: com > com > com ).
thf(sy_c_PLang_Ocom_OWhile,type,
while: ( state > $o ) > com > com ).
thf(sy_c_PLang_Oexec,type,
exec: state > com > state > $o ).
thf(sy_c_PLang_Oexecn,type,
execn: state > com > nat > state > $o ).
thf(sy_c_PTermi_Otermi,type,
termi: com > state > $o ).
thf(sy_c_Product__Type_OPair_001_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_001t__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J,type,
produc33908149tate_o: ( a > state > $o ) > produc204914599tate_o > produc696469763tate_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__PLang__Ocom_001_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J,type,
produc1948644831tate_o: com > ( a > state > $o ) > produc204914599tate_o ).
thf(sy_c_Product__Type_OPair_001t__PLang__Ostate_001t__PLang__Ostate,type,
produc64584659_state: state > state > produc1115495963_state ).
thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_001t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
produc1684562079tate_o: produc696469763tate_o > produc696469763tate_o > produc1307154919tate_o ).
thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
produc1168807639at_nat: product_prod_nat_nat > product_prod_nat_nat > produc842455143at_nat ).
thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_001t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J,type,
produc1964772951_state: produc1115495963_state > produc1115495963_state > produc1390548711_state ).
thf(sy_c_Product__Type_Ointernal__case__prod_001t__Nat__Onat_001t__Nat__Onat_001_Eo,type,
produc385877620_nat_o: ( nat > nat > $o ) > product_prod_nat_nat > $o ).
thf(sy_c_Product__Type_Ointernal__case__prod_001t__PLang__Ostate_001t__PLang__Ostate_001_Eo,type,
produc938968666tate_o: ( state > state > $o ) > produc1115495963_state > $o ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_001t__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_001_Eo,type,
produc1271576886te_o_o: ( ( a > state > $o ) > produc204914599tate_o > $o ) > produc696469763tate_o > $o ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001_Eo,type,
produc949581770_nat_o: ( nat > nat > $o ) > product_prod_nat_nat > $o ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Set__Oset_It__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_J,type,
produc1610543495tate_o: ( nat > nat > set_Pr1590995257tate_o ) > product_prod_nat_nat > set_Pr1590995257tate_o ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
produc1915186323at_nat: ( nat > nat > set_Pr1986765409at_nat ) > product_prod_nat_nat > set_Pr1986765409at_nat ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Set__Oset_It__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_J,type,
produc1654445_state: ( nat > nat > set_Pr795498619_state ) > product_prod_nat_nat > set_Pr795498619_state ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__PLang__Ocom_001_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_001_Eo,type,
produc281270436te_o_o: ( com > ( a > state > $o ) > $o ) > produc204914599tate_o > $o ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__PLang__Ostate_001t__PLang__Ostate_001_Eo,type,
produc789892016tate_o: ( state > state > $o ) > produc1115495963_state > $o ).
thf(sy_c_Relation_Oirrefl_001t__Nat__Onat,type,
irrefl_nat: set_Pr1986765409at_nat > $o ).
thf(sy_c_Relation_Orefl__on_001t__Nat__Onat,type,
refl_on_nat: set_nat > set_Pr1986765409at_nat > $o ).
thf(sy_c_Relation_Orefl__on_001t__PLang__Ostate,type,
refl_on_state: set_state > set_Pr795498619_state > $o ).
thf(sy_c_Relation_Orefl__on_001t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
refl_o489021252tate_o: set_Pr1590995257tate_o > set_Pr1702239303tate_o > $o ).
thf(sy_c_Relation_Orefl__on_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
refl_o1619599232at_nat: set_Pr1986765409at_nat > set_Pr1490359111at_nat > $o ).
thf(sy_c_Relation_Orefl__on_001t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J,type,
refl_o1438232218_state: set_Pr795498619_state > set_Pr778812871_state > $o ).
thf(sy_c_Relation_Ototal__on_001t__Nat__Onat,type,
total_on_nat: set_nat > set_Pr1986765409at_nat > $o ).
thf(sy_c_Relation_Ototal__on_001t__PLang__Ostate,type,
total_on_state: set_state > set_Pr795498619_state > $o ).
thf(sy_c_Relation_Ototal__on_001t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
total_795385983tate_o: set_Pr1590995257tate_o > set_Pr1702239303tate_o > $o ).
thf(sy_c_Relation_Ototal__on_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
total_1775715973at_nat: set_Pr1986765409at_nat > set_Pr1490359111at_nat > $o ).
thf(sy_c_Relation_Ototal__on_001t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J,type,
total_1316653983_state: set_Pr795498619_state > set_Pr778812871_state > $o ).
thf(sy_c_Relation_Otrans_001t__Nat__Onat,type,
trans_nat: set_Pr1986765409at_nat > $o ).
thf(sy_c_Set_OCollect_001t__Nat__Onat,type,
collect_nat: ( nat > $o ) > set_nat ).
thf(sy_c_Set_OCollect_001t__PLang__Ostate,type,
collect_state: ( state > $o ) > set_state ).
thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
collec1499596504tate_o: ( produc696469763tate_o > $o ) > set_Pr1590995257tate_o ).
thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
collec7649004at_nat: ( product_prod_nat_nat > $o ) > set_Pr1986765409at_nat ).
thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J,type,
collec496201222_state: ( produc1115495963_state > $o ) > set_Pr795498619_state ).
thf(sy_c_Set_Oinsert_001t__Nat__Onat,type,
insert_nat: nat > set_nat > set_nat ).
thf(sy_c_Set_Oinsert_001t__PLang__Ostate,type,
insert_state: state > set_state > set_state ).
thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
insert2053719859tate_o: produc696469763tate_o > set_Pr1590995257tate_o > set_Pr1590995257tate_o ).
thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
insert271595217at_nat: product_prod_nat_nat > set_Pr1986765409at_nat > set_Pr1986765409at_nat ).
thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J,type,
insert311944171_state: produc1115495963_state > set_Pr795498619_state > set_Pr795498619_state ).
thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_J,type,
insert1597128631tate_o: produc1307154919tate_o > set_Pr1702239303tate_o > set_Pr1702239303tate_o ).
thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
insert584009271at_nat: produc842455143at_nat > set_Pr1490359111at_nat > set_Pr1490359111at_nat ).
thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_Mt__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_J,type,
insert1616594103_state: produc1390548711_state > set_Pr778812871_state > set_Pr778812871_state ).
thf(sy_c_Set_Ois__empty_001t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
is_emp807847857tate_o: set_Pr1590995257tate_o > $o ).
thf(sy_c_Set_Ois__empty_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
is_emp825011411at_nat: set_Pr1986765409at_nat > $o ).
thf(sy_c_Set_Ois__empty_001t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J,type,
is_emp1062983149_state: set_Pr795498619_state > $o ).
thf(sy_c_Set_Ois__singleton_001t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
is_sin1547905295tate_o: set_Pr1590995257tate_o > $o ).
thf(sy_c_Set_Ois__singleton_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
is_sin1352690165at_nat: set_Pr1986765409at_nat > $o ).
thf(sy_c_Set_Ois__singleton_001t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J,type,
is_sin1132515087_state: set_Pr795498619_state > $o ).
thf(sy_c_Set_Othe__elem_001t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
the_el1569055182tate_o: set_Pr1590995257tate_o > produc696469763tate_o ).
thf(sy_c_Set_Othe__elem_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
the_el1949240438at_nat: set_Pr1986765409at_nat > product_prod_nat_nat ).
thf(sy_c_Set_Othe__elem_001t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J,type,
the_el1967402896_state: set_Pr795498619_state > produc1115495963_state ).
thf(sy_c_Wellfounded_Oless__than,type,
less_than: set_Pr1986765409at_nat ).
thf(sy_c_Wellfounded_Omeasure_001t__Nat__Onat,type,
measure_nat: ( nat > nat ) > set_Pr1986765409at_nat ).
thf(sy_c_Wellfounded_Omeasure_001t__PLang__Ostate,type,
measure_state: ( state > nat ) > set_Pr795498619_state ).
thf(sy_c_Wellfounded_Opred__nat,type,
pred_nat: set_Pr1986765409at_nat ).
thf(sy_c_Wellfounded_Owf_001t__Nat__Onat,type,
wf_nat: set_Pr1986765409at_nat > $o ).
thf(sy_c_Wellfounded_Owf_001t__PLang__Ostate,type,
wf_state: set_Pr795498619_state > $o ).
thf(sy_c_Wellfounded_Owf_001t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
wf_Pro309705690tate_o: set_Pr1702239303tate_o > $o ).
thf(sy_c_Wellfounded_Owf_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
wf_Pro745352042at_nat: set_Pr1490359111at_nat > $o ).
thf(sy_c_Wellfounded_Owf_001t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J,type,
wf_Pro1783588484_state: set_Pr778812871_state > $o ).
thf(sy_c_member_001t__Nat__Onat,type,
member_nat: nat > set_nat > $o ).
thf(sy_c_member_001t__PLang__Ostate,type,
member_state: state > set_state > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J,type,
member1838112666tate_o: produc696469763tate_o > set_Pr1590995257tate_o > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
member701585322at_nat: product_prod_nat_nat > set_Pr1986765409at_nat > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J,type,
member221067728tate_o: produc204914599tate_o > set_Pr1740974983tate_o > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J,type,
member1389040324_state: produc1115495963_state > set_Pr795498619_state > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_Mt__Product____Type__Oprod_It__PLang__Ocom_M_062_Itf__a_M_062_It__PLang__Ostate_M_Eo_J_J_J_J_J,type,
member1629320336tate_o: produc1307154919tate_o > set_Pr1702239303tate_o > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
member2027625872at_nat: produc842455143at_nat > set_Pr1490359111at_nat > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_Mt__Product____Type__Oprod_It__PLang__Ostate_Mt__PLang__Ostate_J_J,type,
member768948240_state: produc1390548711_state > set_Pr778812871_state > $o ).
thf(sy_v_Pa,type,
pa: a > state > $o ).
thf(sy_v_Qa,type,
qa: a > state > $o ).
thf(sy_v_r,type,
r: set_Pr795498619_state ).
thf(sy_v_x,type,
x: state ).
% Relevant facts (354)
thf(fact_0_thoare_OAsm,axiom,
! [P: a > state > $o,Q: a > state > $o] : ( pHoare382919414oare_a @ ( insert2053719859tate_o @ ( produc33908149tate_o @ P @ ( produc1948644831tate_o @ call @ Q ) ) @ bot_bo170732493tate_o ) @ P @ call @ Q ) ).
% thoare.Asm
thf(fact_1_weaken__post,axiom,
! [C: set_Pr1590995257tate_o,P: a > state > $o,C2: com,Q: a > state > $o,Q2: a > state > $o] :
( ( pHoare382919414oare_a @ C @ P @ C2 @ Q )
=> ( ! [Z: a,S: state] :
( ( Q @ Z @ S )
=> ( Q2 @ Z @ S ) )
=> ( pHoare382919414oare_a @ C @ P @ C2 @ Q2 ) ) ) ).
% weaken_post
thf(fact_2_thoare_OConseq,axiom,
! [C: set_Pr1590995257tate_o,P2: a > state > $o,C2: com,Q2: a > state > $o,P: a > state > $o,Q: a > state > $o] :
( ( pHoare382919414oare_a @ C @ P2 @ C2 @ Q2 )
=> ( ( ! [S: state,T: state] :
( ! [Z2: a] :
( ( P2 @ Z2 @ S )
=> ( Q2 @ Z2 @ T ) )
=> ! [Z: a] :
( ( P @ Z @ S )
=> ( Q @ Z @ T ) ) )
& ! [S: state] :
( ? [Z: a] : ( P @ Z @ S )
=> ? [Z2: a] : ( P2 @ Z2 @ S ) ) )
=> ( pHoare382919414oare_a @ C @ P @ C2 @ Q ) ) ) ).
% thoare.Conseq
thf(fact_3_PHoareTotal__Mirabelle__ynemugpbor_Ostrengthen__pre,axiom,
! [P2: a > state > $o,P: a > state > $o,C: set_Pr1590995257tate_o,C2: com,Q: a > state > $o] :
( ! [Z: a,S: state] :
( ( P2 @ Z @ S )
=> ( P @ Z @ S ) )
=> ( ( pHoare382919414oare_a @ C @ P @ C2 @ Q )
=> ( pHoare382919414oare_a @ C @ P2 @ C2 @ Q ) ) ) ).
% PHoareTotal_Mirabelle_ynemugpbor.strengthen_pre
thf(fact_4_singleton__conv,axiom,
! [A: produc1115495963_state] :
( ( collec496201222_state
@ ^ [X: produc1115495963_state] : ( X = A ) )
= ( insert311944171_state @ A @ bot_bo1625160935_state ) ) ).
% singleton_conv
thf(fact_5_singleton__conv,axiom,
! [A: product_prod_nat_nat] :
( ( collec7649004at_nat
@ ^ [X: product_prod_nat_nat] : ( X = A ) )
= ( insert271595217at_nat @ A @ bot_bo2130386637at_nat ) ) ).
% singleton_conv
thf(fact_6_singleton__conv,axiom,
! [A: produc696469763tate_o] :
( ( collec1499596504tate_o
@ ^ [X: produc696469763tate_o] : ( X = A ) )
= ( insert2053719859tate_o @ A @ bot_bo170732493tate_o ) ) ).
% singleton_conv
thf(fact_7_singleton__conv2,axiom,
! [A: produc1115495963_state] :
( ( collec496201222_state
@ ( ^ [Y: produc1115495963_state,Z3: produc1115495963_state] : ( Y = Z3 )
@ A ) )
= ( insert311944171_state @ A @ bot_bo1625160935_state ) ) ).
% singleton_conv2
thf(fact_8_singleton__conv2,axiom,
! [A: product_prod_nat_nat] :
( ( collec7649004at_nat
@ ( ^ [Y: product_prod_nat_nat,Z3: product_prod_nat_nat] : ( Y = Z3 )
@ A ) )
= ( insert271595217at_nat @ A @ bot_bo2130386637at_nat ) ) ).
% singleton_conv2
thf(fact_9_singleton__conv2,axiom,
! [A: produc696469763tate_o] :
( ( collec1499596504tate_o
@ ( ^ [Y: produc696469763tate_o,Z3: produc696469763tate_o] : ( Y = Z3 )
@ A ) )
= ( insert2053719859tate_o @ A @ bot_bo170732493tate_o ) ) ).
% singleton_conv2
thf(fact_10_singletonI,axiom,
! [A: produc1115495963_state] : ( member1389040324_state @ A @ ( insert311944171_state @ A @ bot_bo1625160935_state ) ) ).
% singletonI
thf(fact_11_singletonI,axiom,
! [A: product_prod_nat_nat] : ( member701585322at_nat @ A @ ( insert271595217at_nat @ A @ bot_bo2130386637at_nat ) ) ).
% singletonI
thf(fact_12_singletonI,axiom,
! [A: produc696469763tate_o] : ( member1838112666tate_o @ A @ ( insert2053719859tate_o @ A @ bot_bo170732493tate_o ) ) ).
% singletonI
thf(fact_13_termi_Ointros_I7_J,axiom,
! [S2: state] :
( ( termi @ body @ S2 )
=> ( termi @ call @ S2 ) ) ).
% termi.intros(7)
thf(fact_14_exec_Ointros_I7_J,axiom,
! [S2: state,T2: state] :
( ( exec @ S2 @ body @ T2 )
=> ( exec @ S2 @ call @ T2 ) ) ).
% exec.intros(7)
thf(fact_15_thoare_OCall,axiom,
! [R: set_Pr795498619_state,P: a > state > $o,Q: a > state > $o] :
( ( wf_state @ R )
=> ( ! [S3: state] :
( pHoare382919414oare_a
@ ( insert2053719859tate_o
@ ( produc33908149tate_o
@ ^ [Z4: a,S4: state] :
( ( P @ Z4 @ S4 )
& ( member1389040324_state @ ( produc64584659_state @ S4 @ S3 ) @ R ) )
@ ( produc1948644831tate_o @ call @ Q ) )
@ bot_bo170732493tate_o )
@ ^ [Z4: a,S4: state] :
( ( P @ Z4 @ S4 )
& ( S4 = S3 ) )
@ body
@ Q )
=> ( pHoare382919414oare_a @ bot_bo170732493tate_o @ P @ call @ Q ) ) ) ).
% thoare.Call
thf(fact_16_insertCI,axiom,
! [A: produc1115495963_state,B: set_Pr795498619_state,B2: produc1115495963_state] :
( ( ~ ( member1389040324_state @ A @ B )
=> ( A = B2 ) )
=> ( member1389040324_state @ A @ ( insert311944171_state @ B2 @ B ) ) ) ).
% insertCI
thf(fact_17_insertCI,axiom,
! [A: product_prod_nat_nat,B: set_Pr1986765409at_nat,B2: product_prod_nat_nat] :
( ( ~ ( member701585322at_nat @ A @ B )
=> ( A = B2 ) )
=> ( member701585322at_nat @ A @ ( insert271595217at_nat @ B2 @ B ) ) ) ).
% insertCI
thf(fact_18_insertCI,axiom,
! [A: produc696469763tate_o,B: set_Pr1590995257tate_o,B2: produc696469763tate_o] :
( ( ~ ( member1838112666tate_o @ A @ B )
=> ( A = B2 ) )
=> ( member1838112666tate_o @ A @ ( insert2053719859tate_o @ B2 @ B ) ) ) ).
% insertCI
thf(fact_19_insert__iff,axiom,
! [A: produc1115495963_state,B2: produc1115495963_state,A2: set_Pr795498619_state] :
( ( member1389040324_state @ A @ ( insert311944171_state @ B2 @ A2 ) )
= ( ( A = B2 )
| ( member1389040324_state @ A @ A2 ) ) ) ).
% insert_iff
thf(fact_20_insert__iff,axiom,
! [A: product_prod_nat_nat,B2: product_prod_nat_nat,A2: set_Pr1986765409at_nat] :
( ( member701585322at_nat @ A @ ( insert271595217at_nat @ B2 @ A2 ) )
= ( ( A = B2 )
| ( member701585322at_nat @ A @ A2 ) ) ) ).
% insert_iff
thf(fact_21_insert__iff,axiom,
! [A: produc696469763tate_o,B2: produc696469763tate_o,A2: set_Pr1590995257tate_o] :
( ( member1838112666tate_o @ A @ ( insert2053719859tate_o @ B2 @ A2 ) )
= ( ( A = B2 )
| ( member1838112666tate_o @ A @ A2 ) ) ) ).
% insert_iff
thf(fact_22_insert__absorb2,axiom,
! [X2: produc696469763tate_o,A2: set_Pr1590995257tate_o] :
( ( insert2053719859tate_o @ X2 @ ( insert2053719859tate_o @ X2 @ A2 ) )
= ( insert2053719859tate_o @ X2 @ A2 ) ) ).
% insert_absorb2
thf(fact_23_insert__absorb2,axiom,
! [X2: product_prod_nat_nat,A2: set_Pr1986765409at_nat] :
( ( insert271595217at_nat @ X2 @ ( insert271595217at_nat @ X2 @ A2 ) )
= ( insert271595217at_nat @ X2 @ A2 ) ) ).
% insert_absorb2
thf(fact_24_insert__absorb2,axiom,
! [X2: produc1115495963_state,A2: set_Pr795498619_state] :
( ( insert311944171_state @ X2 @ ( insert311944171_state @ X2 @ A2 ) )
= ( insert311944171_state @ X2 @ A2 ) ) ).
% insert_absorb2
thf(fact_25_hoare_OCall,axiom,
! [P: a > state > $o,Q: a > state > $o] :
( ( hoare_a @ ( insert2053719859tate_o @ ( produc33908149tate_o @ P @ ( produc1948644831tate_o @ call @ Q ) ) @ bot_bo170732493tate_o ) @ P @ body @ Q )
=> ( hoare_a @ bot_bo170732493tate_o @ P @ call @ Q ) ) ).
% hoare.Call
thf(fact_26_empty__iff,axiom,
! [C2: produc696469763tate_o] :
~ ( member1838112666tate_o @ C2 @ bot_bo170732493tate_o ) ).
% empty_iff
thf(fact_27_empty__iff,axiom,
! [C2: product_prod_nat_nat] :
~ ( member701585322at_nat @ C2 @ bot_bo2130386637at_nat ) ).
% empty_iff
thf(fact_28_empty__iff,axiom,
! [C2: produc1115495963_state] :
~ ( member1389040324_state @ C2 @ bot_bo1625160935_state ) ).
% empty_iff
thf(fact_29_all__not__in__conv,axiom,
! [A2: set_Pr1590995257tate_o] :
( ( ! [X: produc696469763tate_o] :
~ ( member1838112666tate_o @ X @ A2 ) )
= ( A2 = bot_bo170732493tate_o ) ) ).
% all_not_in_conv
thf(fact_30_all__not__in__conv,axiom,
! [A2: set_Pr1986765409at_nat] :
( ( ! [X: product_prod_nat_nat] :
~ ( member701585322at_nat @ X @ A2 ) )
= ( A2 = bot_bo2130386637at_nat ) ) ).
% all_not_in_conv
thf(fact_31_all__not__in__conv,axiom,
! [A2: set_Pr795498619_state] :
( ( ! [X: produc1115495963_state] :
~ ( member1389040324_state @ X @ A2 ) )
= ( A2 = bot_bo1625160935_state ) ) ).
% all_not_in_conv
thf(fact_32_empty__Collect__eq,axiom,
! [P: produc696469763tate_o > $o] :
( ( bot_bo170732493tate_o
= ( collec1499596504tate_o @ P ) )
= ( ! [X: produc696469763tate_o] :
~ ( P @ X ) ) ) ).
% empty_Collect_eq
thf(fact_33_empty__Collect__eq,axiom,
! [P: product_prod_nat_nat > $o] :
( ( bot_bo2130386637at_nat
= ( collec7649004at_nat @ P ) )
= ( ! [X: product_prod_nat_nat] :
~ ( P @ X ) ) ) ).
% empty_Collect_eq
thf(fact_34_empty__Collect__eq,axiom,
! [P: produc1115495963_state > $o] :
( ( bot_bo1625160935_state
= ( collec496201222_state @ P ) )
= ( ! [X: produc1115495963_state] :
~ ( P @ X ) ) ) ).
% empty_Collect_eq
thf(fact_35_Collect__empty__eq,axiom,
! [P: produc696469763tate_o > $o] :
( ( ( collec1499596504tate_o @ P )
= bot_bo170732493tate_o )
= ( ! [X: produc696469763tate_o] :
~ ( P @ X ) ) ) ).
% Collect_empty_eq
thf(fact_36_Collect__empty__eq,axiom,
! [P: product_prod_nat_nat > $o] :
( ( ( collec7649004at_nat @ P )
= bot_bo2130386637at_nat )
= ( ! [X: product_prod_nat_nat] :
~ ( P @ X ) ) ) ).
% Collect_empty_eq
thf(fact_37_Collect__empty__eq,axiom,
! [P: produc1115495963_state > $o] :
( ( ( collec496201222_state @ P )
= bot_bo1625160935_state )
= ( ! [X: produc1115495963_state] :
~ ( P @ X ) ) ) ).
% Collect_empty_eq
thf(fact_38_ex__in__conv,axiom,
! [A2: set_Pr1590995257tate_o] :
( ( ? [X: produc696469763tate_o] : ( member1838112666tate_o @ X @ A2 ) )
= ( A2 != bot_bo170732493tate_o ) ) ).
% ex_in_conv
thf(fact_39_ex__in__conv,axiom,
! [A2: set_Pr1986765409at_nat] :
( ( ? [X: product_prod_nat_nat] : ( member701585322at_nat @ X @ A2 ) )
= ( A2 != bot_bo2130386637at_nat ) ) ).
% ex_in_conv
thf(fact_40_ex__in__conv,axiom,
! [A2: set_Pr795498619_state] :
( ( ? [X: produc1115495963_state] : ( member1389040324_state @ X @ A2 ) )
= ( A2 != bot_bo1625160935_state ) ) ).
% ex_in_conv
thf(fact_41_equals0I,axiom,
! [A2: set_Pr1590995257tate_o] :
( ! [Y2: produc696469763tate_o] :
~ ( member1838112666tate_o @ Y2 @ A2 )
=> ( A2 = bot_bo170732493tate_o ) ) ).
% equals0I
thf(fact_42_equals0I,axiom,
! [A2: set_Pr1986765409at_nat] :
( ! [Y2: product_prod_nat_nat] :
~ ( member701585322at_nat @ Y2 @ A2 )
=> ( A2 = bot_bo2130386637at_nat ) ) ).
% equals0I
thf(fact_43_equals0I,axiom,
! [A2: set_Pr795498619_state] :
( ! [Y2: produc1115495963_state] :
~ ( member1389040324_state @ Y2 @ A2 )
=> ( A2 = bot_bo1625160935_state ) ) ).
% equals0I
thf(fact_44_equals0D,axiom,
! [A2: set_Pr1590995257tate_o,A: produc696469763tate_o] :
( ( A2 = bot_bo170732493tate_o )
=> ~ ( member1838112666tate_o @ A @ A2 ) ) ).
% equals0D
thf(fact_45_equals0D,axiom,
! [A2: set_Pr1986765409at_nat,A: product_prod_nat_nat] :
( ( A2 = bot_bo2130386637at_nat )
=> ~ ( member701585322at_nat @ A @ A2 ) ) ).
% equals0D
thf(fact_46_equals0D,axiom,
! [A2: set_Pr795498619_state,A: produc1115495963_state] :
( ( A2 = bot_bo1625160935_state )
=> ~ ( member1389040324_state @ A @ A2 ) ) ).
% equals0D
thf(fact_47_emptyE,axiom,
! [A: produc696469763tate_o] :
~ ( member1838112666tate_o @ A @ bot_bo170732493tate_o ) ).
% emptyE
thf(fact_48_emptyE,axiom,
! [A: product_prod_nat_nat] :
~ ( member701585322at_nat @ A @ bot_bo2130386637at_nat ) ).
% emptyE
thf(fact_49_emptyE,axiom,
! [A: produc1115495963_state] :
~ ( member1389040324_state @ A @ bot_bo1625160935_state ) ).
% emptyE
thf(fact_50_mk__disjoint__insert,axiom,
! [A: produc1115495963_state,A2: set_Pr795498619_state] :
( ( member1389040324_state @ A @ A2 )
=> ? [B3: set_Pr795498619_state] :
( ( A2
= ( insert311944171_state @ A @ B3 ) )
& ~ ( member1389040324_state @ A @ B3 ) ) ) ).
% mk_disjoint_insert
thf(fact_51_mk__disjoint__insert,axiom,
! [A: product_prod_nat_nat,A2: set_Pr1986765409at_nat] :
( ( member701585322at_nat @ A @ A2 )
=> ? [B3: set_Pr1986765409at_nat] :
( ( A2
= ( insert271595217at_nat @ A @ B3 ) )
& ~ ( member701585322at_nat @ A @ B3 ) ) ) ).
% mk_disjoint_insert
thf(fact_52_mk__disjoint__insert,axiom,
! [A: produc696469763tate_o,A2: set_Pr1590995257tate_o] :
( ( member1838112666tate_o @ A @ A2 )
=> ? [B3: set_Pr1590995257tate_o] :
( ( A2
= ( insert2053719859tate_o @ A @ B3 ) )
& ~ ( member1838112666tate_o @ A @ B3 ) ) ) ).
% mk_disjoint_insert
thf(fact_53_insert__commute,axiom,
! [X2: produc696469763tate_o,Y3: produc696469763tate_o,A2: set_Pr1590995257tate_o] :
( ( insert2053719859tate_o @ X2 @ ( insert2053719859tate_o @ Y3 @ A2 ) )
= ( insert2053719859tate_o @ Y3 @ ( insert2053719859tate_o @ X2 @ A2 ) ) ) ).
% insert_commute
thf(fact_54_insert__commute,axiom,
! [X2: product_prod_nat_nat,Y3: product_prod_nat_nat,A2: set_Pr1986765409at_nat] :
( ( insert271595217at_nat @ X2 @ ( insert271595217at_nat @ Y3 @ A2 ) )
= ( insert271595217at_nat @ Y3 @ ( insert271595217at_nat @ X2 @ A2 ) ) ) ).
% insert_commute
thf(fact_55_insert__commute,axiom,
! [X2: produc1115495963_state,Y3: produc1115495963_state,A2: set_Pr795498619_state] :
( ( insert311944171_state @ X2 @ ( insert311944171_state @ Y3 @ A2 ) )
= ( insert311944171_state @ Y3 @ ( insert311944171_state @ X2 @ A2 ) ) ) ).
% insert_commute
thf(fact_56_insert__eq__iff,axiom,
! [A: produc1115495963_state,A2: set_Pr795498619_state,B2: produc1115495963_state,B: set_Pr795498619_state] :
( ~ ( member1389040324_state @ A @ A2 )
=> ( ~ ( member1389040324_state @ B2 @ B )
=> ( ( ( insert311944171_state @ A @ A2 )
= ( insert311944171_state @ B2 @ B ) )
= ( ( ( A = B2 )
=> ( A2 = B ) )
& ( ( A != B2 )
=> ? [C3: set_Pr795498619_state] :
( ( A2
= ( insert311944171_state @ B2 @ C3 ) )
& ~ ( member1389040324_state @ B2 @ C3 )
& ( B
= ( insert311944171_state @ A @ C3 ) )
& ~ ( member1389040324_state @ A @ C3 ) ) ) ) ) ) ) ).
% insert_eq_iff
thf(fact_57_insert__eq__iff,axiom,
! [A: product_prod_nat_nat,A2: set_Pr1986765409at_nat,B2: product_prod_nat_nat,B: set_Pr1986765409at_nat] :
( ~ ( member701585322at_nat @ A @ A2 )
=> ( ~ ( member701585322at_nat @ B2 @ B )
=> ( ( ( insert271595217at_nat @ A @ A2 )
= ( insert271595217at_nat @ B2 @ B ) )
= ( ( ( A = B2 )
=> ( A2 = B ) )
& ( ( A != B2 )
=> ? [C3: set_Pr1986765409at_nat] :
( ( A2
= ( insert271595217at_nat @ B2 @ C3 ) )
& ~ ( member701585322at_nat @ B2 @ C3 )
& ( B
= ( insert271595217at_nat @ A @ C3 ) )
& ~ ( member701585322at_nat @ A @ C3 ) ) ) ) ) ) ) ).
% insert_eq_iff
thf(fact_58_insert__eq__iff,axiom,
! [A: produc696469763tate_o,A2: set_Pr1590995257tate_o,B2: produc696469763tate_o,B: set_Pr1590995257tate_o] :
( ~ ( member1838112666tate_o @ A @ A2 )
=> ( ~ ( member1838112666tate_o @ B2 @ B )
=> ( ( ( insert2053719859tate_o @ A @ A2 )
= ( insert2053719859tate_o @ B2 @ B ) )
= ( ( ( A = B2 )
=> ( A2 = B ) )
& ( ( A != B2 )
=> ? [C3: set_Pr1590995257tate_o] :
( ( A2
= ( insert2053719859tate_o @ B2 @ C3 ) )
& ~ ( member1838112666tate_o @ B2 @ C3 )
& ( B
= ( insert2053719859tate_o @ A @ C3 ) )
& ~ ( member1838112666tate_o @ A @ C3 ) ) ) ) ) ) ) ).
% insert_eq_iff
thf(fact_59_insert__absorb,axiom,
! [A: produc1115495963_state,A2: set_Pr795498619_state] :
( ( member1389040324_state @ A @ A2 )
=> ( ( insert311944171_state @ A @ A2 )
= A2 ) ) ).
% insert_absorb
thf(fact_60_insert__absorb,axiom,
! [A: product_prod_nat_nat,A2: set_Pr1986765409at_nat] :
( ( member701585322at_nat @ A @ A2 )
=> ( ( insert271595217at_nat @ A @ A2 )
= A2 ) ) ).
% insert_absorb
thf(fact_61_insert__absorb,axiom,
! [A: produc696469763tate_o,A2: set_Pr1590995257tate_o] :
( ( member1838112666tate_o @ A @ A2 )
=> ( ( insert2053719859tate_o @ A @ A2 )
= A2 ) ) ).
% insert_absorb
thf(fact_62_insert__ident,axiom,
! [X2: produc1115495963_state,A2: set_Pr795498619_state,B: set_Pr795498619_state] :
( ~ ( member1389040324_state @ X2 @ A2 )
=> ( ~ ( member1389040324_state @ X2 @ B )
=> ( ( ( insert311944171_state @ X2 @ A2 )
= ( insert311944171_state @ X2 @ B ) )
= ( A2 = B ) ) ) ) ).
% insert_ident
thf(fact_63_insert__ident,axiom,
! [X2: product_prod_nat_nat,A2: set_Pr1986765409at_nat,B: set_Pr1986765409at_nat] :
( ~ ( member701585322at_nat @ X2 @ A2 )
=> ( ~ ( member701585322at_nat @ X2 @ B )
=> ( ( ( insert271595217at_nat @ X2 @ A2 )
= ( insert271595217at_nat @ X2 @ B ) )
= ( A2 = B ) ) ) ) ).
% insert_ident
thf(fact_64_insert__ident,axiom,
! [X2: produc696469763tate_o,A2: set_Pr1590995257tate_o,B: set_Pr1590995257tate_o] :
( ~ ( member1838112666tate_o @ X2 @ A2 )
=> ( ~ ( member1838112666tate_o @ X2 @ B )
=> ( ( ( insert2053719859tate_o @ X2 @ A2 )
= ( insert2053719859tate_o @ X2 @ B ) )
= ( A2 = B ) ) ) ) ).
% insert_ident
thf(fact_65_Set_Oset__insert,axiom,
! [X2: produc1115495963_state,A2: set_Pr795498619_state] :
( ( member1389040324_state @ X2 @ A2 )
=> ~ ! [B3: set_Pr795498619_state] :
( ( A2
= ( insert311944171_state @ X2 @ B3 ) )
=> ( member1389040324_state @ X2 @ B3 ) ) ) ).
% Set.set_insert
thf(fact_66_Set_Oset__insert,axiom,
! [X2: product_prod_nat_nat,A2: set_Pr1986765409at_nat] :
( ( member701585322at_nat @ X2 @ A2 )
=> ~ ! [B3: set_Pr1986765409at_nat] :
( ( A2
= ( insert271595217at_nat @ X2 @ B3 ) )
=> ( member701585322at_nat @ X2 @ B3 ) ) ) ).
% Set.set_insert
thf(fact_67_Set_Oset__insert,axiom,
! [X2: produc696469763tate_o,A2: set_Pr1590995257tate_o] :
( ( member1838112666tate_o @ X2 @ A2 )
=> ~ ! [B3: set_Pr1590995257tate_o] :
( ( A2
= ( insert2053719859tate_o @ X2 @ B3 ) )
=> ( member1838112666tate_o @ X2 @ B3 ) ) ) ).
% Set.set_insert
thf(fact_68_insertI2,axiom,
! [A: produc1115495963_state,B: set_Pr795498619_state,B2: produc1115495963_state] :
( ( member1389040324_state @ A @ B )
=> ( member1389040324_state @ A @ ( insert311944171_state @ B2 @ B ) ) ) ).
% insertI2
thf(fact_69_insertI2,axiom,
! [A: product_prod_nat_nat,B: set_Pr1986765409at_nat,B2: product_prod_nat_nat] :
( ( member701585322at_nat @ A @ B )
=> ( member701585322at_nat @ A @ ( insert271595217at_nat @ B2 @ B ) ) ) ).
% insertI2
thf(fact_70_insertI2,axiom,
! [A: produc696469763tate_o,B: set_Pr1590995257tate_o,B2: produc696469763tate_o] :
( ( member1838112666tate_o @ A @ B )
=> ( member1838112666tate_o @ A @ ( insert2053719859tate_o @ B2 @ B ) ) ) ).
% insertI2
thf(fact_71_insertI1,axiom,
! [A: produc1115495963_state,B: set_Pr795498619_state] : ( member1389040324_state @ A @ ( insert311944171_state @ A @ B ) ) ).
% insertI1
thf(fact_72_insertI1,axiom,
! [A: product_prod_nat_nat,B: set_Pr1986765409at_nat] : ( member701585322at_nat @ A @ ( insert271595217at_nat @ A @ B ) ) ).
% insertI1
thf(fact_73_insertI1,axiom,
! [A: produc696469763tate_o,B: set_Pr1590995257tate_o] : ( member1838112666tate_o @ A @ ( insert2053719859tate_o @ A @ B ) ) ).
% insertI1
thf(fact_74_insertE,axiom,
! [A: produc1115495963_state,B2: produc1115495963_state,A2: set_Pr795498619_state] :
( ( member1389040324_state @ A @ ( insert311944171_state @ B2 @ A2 ) )
=> ( ( A != B2 )
=> ( member1389040324_state @ A @ A2 ) ) ) ).
% insertE
thf(fact_75_insertE,axiom,
! [A: product_prod_nat_nat,B2: product_prod_nat_nat,A2: set_Pr1986765409at_nat] :
( ( member701585322at_nat @ A @ ( insert271595217at_nat @ B2 @ A2 ) )
=> ( ( A != B2 )
=> ( member701585322at_nat @ A @ A2 ) ) ) ).
% insertE
thf(fact_76_insertE,axiom,
! [A: produc696469763tate_o,B2: produc696469763tate_o,A2: set_Pr1590995257tate_o] :
( ( member1838112666tate_o @ A @ ( insert2053719859tate_o @ B2 @ A2 ) )
=> ( ( A != B2 )
=> ( member1838112666tate_o @ A @ A2 ) ) ) ).
% insertE
thf(fact_77_empty__def,axiom,
( bot_bo170732493tate_o
= ( collec1499596504tate_o
@ ^ [X: produc696469763tate_o] : $false ) ) ).
% empty_def
thf(fact_78_empty__def,axiom,
( bot_bo2130386637at_nat
= ( collec7649004at_nat
@ ^ [X: product_prod_nat_nat] : $false ) ) ).
% empty_def
thf(fact_79_empty__def,axiom,
( bot_bo1625160935_state
= ( collec496201222_state
@ ^ [X: produc1115495963_state] : $false ) ) ).
% empty_def
thf(fact_80_insert__Collect,axiom,
! [A: produc1115495963_state,P: produc1115495963_state > $o] :
( ( insert311944171_state @ A @ ( collec496201222_state @ P ) )
= ( collec496201222_state
@ ^ [U: produc1115495963_state] :
( ( U != A )
=> ( P @ U ) ) ) ) ).
% insert_Collect
thf(fact_81_insert__Collect,axiom,
! [A: product_prod_nat_nat,P: product_prod_nat_nat > $o] :
( ( insert271595217at_nat @ A @ ( collec7649004at_nat @ P ) )
= ( collec7649004at_nat
@ ^ [U: product_prod_nat_nat] :
( ( U != A )
=> ( P @ U ) ) ) ) ).
% insert_Collect
thf(fact_82_insert__Collect,axiom,
! [A: produc696469763tate_o,P: produc696469763tate_o > $o] :
( ( insert2053719859tate_o @ A @ ( collec1499596504tate_o @ P ) )
= ( collec1499596504tate_o
@ ^ [U: produc696469763tate_o] :
( ( U != A )
=> ( P @ U ) ) ) ) ).
% insert_Collect
thf(fact_83_insert__compr,axiom,
( insert311944171_state
= ( ^ [A3: produc1115495963_state,B4: set_Pr795498619_state] :
( collec496201222_state
@ ^ [X: produc1115495963_state] :
( ( X = A3 )
| ( member1389040324_state @ X @ B4 ) ) ) ) ) ).
% insert_compr
thf(fact_84_insert__compr,axiom,
( insert271595217at_nat
= ( ^ [A3: product_prod_nat_nat,B4: set_Pr1986765409at_nat] :
( collec7649004at_nat
@ ^ [X: product_prod_nat_nat] :
( ( X = A3 )
| ( member701585322at_nat @ X @ B4 ) ) ) ) ) ).
% insert_compr
thf(fact_85_insert__compr,axiom,
( insert2053719859tate_o
= ( ^ [A3: produc696469763tate_o,B4: set_Pr1590995257tate_o] :
( collec1499596504tate_o
@ ^ [X: produc696469763tate_o] :
( ( X = A3 )
| ( member1838112666tate_o @ X @ B4 ) ) ) ) ) ).
% insert_compr
thf(fact_86_singleton__inject,axiom,
! [A: produc696469763tate_o,B2: produc696469763tate_o] :
( ( ( insert2053719859tate_o @ A @ bot_bo170732493tate_o )
= ( insert2053719859tate_o @ B2 @ bot_bo170732493tate_o ) )
=> ( A = B2 ) ) ).
% singleton_inject
thf(fact_87_singleton__inject,axiom,
! [A: product_prod_nat_nat,B2: product_prod_nat_nat] :
( ( ( insert271595217at_nat @ A @ bot_bo2130386637at_nat )
= ( insert271595217at_nat @ B2 @ bot_bo2130386637at_nat ) )
=> ( A = B2 ) ) ).
% singleton_inject
thf(fact_88_singleton__inject,axiom,
! [A: produc1115495963_state,B2: produc1115495963_state] :
( ( ( insert311944171_state @ A @ bot_bo1625160935_state )
= ( insert311944171_state @ B2 @ bot_bo1625160935_state ) )
=> ( A = B2 ) ) ).
% singleton_inject
thf(fact_89_insert__not__empty,axiom,
! [A: produc696469763tate_o,A2: set_Pr1590995257tate_o] :
( ( insert2053719859tate_o @ A @ A2 )
!= bot_bo170732493tate_o ) ).
% insert_not_empty
thf(fact_90_insert__not__empty,axiom,
! [A: product_prod_nat_nat,A2: set_Pr1986765409at_nat] :
( ( insert271595217at_nat @ A @ A2 )
!= bot_bo2130386637at_nat ) ).
% insert_not_empty
thf(fact_91_insert__not__empty,axiom,
! [A: produc1115495963_state,A2: set_Pr795498619_state] :
( ( insert311944171_state @ A @ A2 )
!= bot_bo1625160935_state ) ).
% insert_not_empty
thf(fact_92_doubleton__eq__iff,axiom,
! [A: produc696469763tate_o,B2: produc696469763tate_o,C2: produc696469763tate_o,D: produc696469763tate_o] :
( ( ( insert2053719859tate_o @ A @ ( insert2053719859tate_o @ B2 @ bot_bo170732493tate_o ) )
= ( insert2053719859tate_o @ C2 @ ( insert2053719859tate_o @ D @ bot_bo170732493tate_o ) ) )
= ( ( ( A = C2 )
& ( B2 = D ) )
| ( ( A = D )
& ( B2 = C2 ) ) ) ) ).
% doubleton_eq_iff
thf(fact_93_doubleton__eq__iff,axiom,
! [A: product_prod_nat_nat,B2: product_prod_nat_nat,C2: product_prod_nat_nat,D: product_prod_nat_nat] :
( ( ( insert271595217at_nat @ A @ ( insert271595217at_nat @ B2 @ bot_bo2130386637at_nat ) )
= ( insert271595217at_nat @ C2 @ ( insert271595217at_nat @ D @ bot_bo2130386637at_nat ) ) )
= ( ( ( A = C2 )
& ( B2 = D ) )
| ( ( A = D )
& ( B2 = C2 ) ) ) ) ).
% doubleton_eq_iff
thf(fact_94_doubleton__eq__iff,axiom,
! [A: produc1115495963_state,B2: produc1115495963_state,C2: produc1115495963_state,D: produc1115495963_state] :
( ( ( insert311944171_state @ A @ ( insert311944171_state @ B2 @ bot_bo1625160935_state ) )
= ( insert311944171_state @ C2 @ ( insert311944171_state @ D @ bot_bo1625160935_state ) ) )
= ( ( ( A = C2 )
& ( B2 = D ) )
| ( ( A = D )
& ( B2 = C2 ) ) ) ) ).
% doubleton_eq_iff
thf(fact_95_singleton__iff,axiom,
! [B2: produc696469763tate_o,A: produc696469763tate_o] :
( ( member1838112666tate_o @ B2 @ ( insert2053719859tate_o @ A @ bot_bo170732493tate_o ) )
= ( B2 = A ) ) ).
% singleton_iff
thf(fact_96_singleton__iff,axiom,
! [B2: product_prod_nat_nat,A: product_prod_nat_nat] :
( ( member701585322at_nat @ B2 @ ( insert271595217at_nat @ A @ bot_bo2130386637at_nat ) )
= ( B2 = A ) ) ).
% singleton_iff
thf(fact_97_singleton__iff,axiom,
! [B2: produc1115495963_state,A: produc1115495963_state] :
( ( member1389040324_state @ B2 @ ( insert311944171_state @ A @ bot_bo1625160935_state ) )
= ( B2 = A ) ) ).
% singleton_iff
thf(fact_98_singletonD,axiom,
! [B2: produc696469763tate_o,A: produc696469763tate_o] :
( ( member1838112666tate_o @ B2 @ ( insert2053719859tate_o @ A @ bot_bo170732493tate_o ) )
=> ( B2 = A ) ) ).
% singletonD
thf(fact_99_singletonD,axiom,
! [B2: product_prod_nat_nat,A: product_prod_nat_nat] :
( ( member701585322at_nat @ B2 @ ( insert271595217at_nat @ A @ bot_bo2130386637at_nat ) )
=> ( B2 = A ) ) ).
% singletonD
thf(fact_100_singletonD,axiom,
! [B2: produc1115495963_state,A: produc1115495963_state] :
( ( member1389040324_state @ B2 @ ( insert311944171_state @ A @ bot_bo1625160935_state ) )
=> ( B2 = A ) ) ).
% singletonD
thf(fact_101_hoare_OAsm,axiom,
! [P: a > state > $o,Q: a > state > $o] : ( hoare_a @ ( insert2053719859tate_o @ ( produc33908149tate_o @ P @ ( produc1948644831tate_o @ call @ Q ) ) @ bot_bo170732493tate_o ) @ P @ call @ Q ) ).
% hoare.Asm
thf(fact_102_Collect__conv__if2,axiom,
! [P: produc696469763tate_o > $o,A: produc696469763tate_o] :
( ( ( P @ A )
=> ( ( collec1499596504tate_o
@ ^ [X: produc696469763tate_o] :
( ( A = X )
& ( P @ X ) ) )
= ( insert2053719859tate_o @ A @ bot_bo170732493tate_o ) ) )
& ( ~ ( P @ A )
=> ( ( collec1499596504tate_o
@ ^ [X: produc696469763tate_o] :
( ( A = X )
& ( P @ X ) ) )
= bot_bo170732493tate_o ) ) ) ).
% Collect_conv_if2
thf(fact_103_Collect__conv__if2,axiom,
! [P: product_prod_nat_nat > $o,A: product_prod_nat_nat] :
( ( ( P @ A )
=> ( ( collec7649004at_nat
@ ^ [X: product_prod_nat_nat] :
( ( A = X )
& ( P @ X ) ) )
= ( insert271595217at_nat @ A @ bot_bo2130386637at_nat ) ) )
& ( ~ ( P @ A )
=> ( ( collec7649004at_nat
@ ^ [X: product_prod_nat_nat] :
( ( A = X )
& ( P @ X ) ) )
= bot_bo2130386637at_nat ) ) ) ).
% Collect_conv_if2
thf(fact_104_Collect__conv__if2,axiom,
! [P: produc1115495963_state > $o,A: produc1115495963_state] :
( ( ( P @ A )
=> ( ( collec496201222_state
@ ^ [X: produc1115495963_state] :
( ( A = X )
& ( P @ X ) ) )
= ( insert311944171_state @ A @ bot_bo1625160935_state ) ) )
& ( ~ ( P @ A )
=> ( ( collec496201222_state
@ ^ [X: produc1115495963_state] :
( ( A = X )
& ( P @ X ) ) )
= bot_bo1625160935_state ) ) ) ).
% Collect_conv_if2
thf(fact_105_Collect__conv__if,axiom,
! [P: produc696469763tate_o > $o,A: produc696469763tate_o] :
( ( ( P @ A )
=> ( ( collec1499596504tate_o
@ ^ [X: produc696469763tate_o] :
( ( X = A )
& ( P @ X ) ) )
= ( insert2053719859tate_o @ A @ bot_bo170732493tate_o ) ) )
& ( ~ ( P @ A )
=> ( ( collec1499596504tate_o
@ ^ [X: produc696469763tate_o] :
( ( X = A )
& ( P @ X ) ) )
= bot_bo170732493tate_o ) ) ) ).
% Collect_conv_if
thf(fact_106_Collect__conv__if,axiom,
! [P: product_prod_nat_nat > $o,A: product_prod_nat_nat] :
( ( ( P @ A )
=> ( ( collec7649004at_nat
@ ^ [X: product_prod_nat_nat] :
( ( X = A )
& ( P @ X ) ) )
= ( insert271595217at_nat @ A @ bot_bo2130386637at_nat ) ) )
& ( ~ ( P @ A )
=> ( ( collec7649004at_nat
@ ^ [X: product_prod_nat_nat] :
( ( X = A )
& ( P @ X ) ) )
= bot_bo2130386637at_nat ) ) ) ).
% Collect_conv_if
thf(fact_107_Collect__conv__if,axiom,
! [P: produc1115495963_state > $o,A: produc1115495963_state] :
( ( ( P @ A )
=> ( ( collec496201222_state
@ ^ [X: produc1115495963_state] :
( ( X = A )
& ( P @ X ) ) )
= ( insert311944171_state @ A @ bot_bo1625160935_state ) ) )
& ( ~ ( P @ A )
=> ( ( collec496201222_state
@ ^ [X: produc1115495963_state] :
( ( X = A )
& ( P @ X ) ) )
= bot_bo1625160935_state ) ) ) ).
% Collect_conv_if
thf(fact_108_wf__empty,axiom,
wf_nat @ bot_bo2130386637at_nat ).
% wf_empty
thf(fact_109_wf__empty,axiom,
wf_state @ bot_bo1625160935_state ).
% wf_empty
thf(fact_110_mem__Collect__eq,axiom,
! [A: produc1115495963_state,P: produc1115495963_state > $o] :
( ( member1389040324_state @ A @ ( collec496201222_state @ P ) )
= ( P @ A ) ) ).
% mem_Collect_eq
thf(fact_111_mem__Collect__eq,axiom,
! [A: product_prod_nat_nat,P: product_prod_nat_nat > $o] :
( ( member701585322at_nat @ A @ ( collec7649004at_nat @ P ) )
= ( P @ A ) ) ).
% mem_Collect_eq
thf(fact_112_mem__Collect__eq,axiom,
! [A: produc696469763tate_o,P: produc696469763tate_o > $o] :
( ( member1838112666tate_o @ A @ ( collec1499596504tate_o @ P ) )
= ( P @ A ) ) ).
% mem_Collect_eq
thf(fact_113_Collect__mem__eq,axiom,
! [A2: set_Pr795498619_state] :
( ( collec496201222_state
@ ^ [X: produc1115495963_state] : ( member1389040324_state @ X @ A2 ) )
= A2 ) ).
% Collect_mem_eq
thf(fact_114_Collect__mem__eq,axiom,
! [A2: set_Pr1986765409at_nat] :
( ( collec7649004at_nat
@ ^ [X: product_prod_nat_nat] : ( member701585322at_nat @ X @ A2 ) )
= A2 ) ).
% Collect_mem_eq
thf(fact_115_Collect__mem__eq,axiom,
! [A2: set_Pr1590995257tate_o] :
( ( collec1499596504tate_o
@ ^ [X: produc696469763tate_o] : ( member1838112666tate_o @ X @ A2 ) )
= A2 ) ).
% Collect_mem_eq
thf(fact_116_Collect__cong,axiom,
! [P: produc1115495963_state > $o,Q: produc1115495963_state > $o] :
( ! [X3: produc1115495963_state] :
( ( P @ X3 )
= ( Q @ X3 ) )
=> ( ( collec496201222_state @ P )
= ( collec496201222_state @ Q ) ) ) ).
% Collect_cong
thf(fact_117_Collect__cong,axiom,
! [P: product_prod_nat_nat > $o,Q: product_prod_nat_nat > $o] :
( ! [X3: product_prod_nat_nat] :
( ( P @ X3 )
= ( Q @ X3 ) )
=> ( ( collec7649004at_nat @ P )
= ( collec7649004at_nat @ Q ) ) ) ).
% Collect_cong
thf(fact_118_Collect__cong,axiom,
! [P: produc696469763tate_o > $o,Q: produc696469763tate_o > $o] :
( ! [X3: produc696469763tate_o] :
( ( P @ X3 )
= ( Q @ X3 ) )
=> ( ( collec1499596504tate_o @ P )
= ( collec1499596504tate_o @ Q ) ) ) ).
% Collect_cong
thf(fact_119_wfE__min_H,axiom,
! [R2: set_Pr795498619_state,Q: set_state] :
( ( wf_state @ R2 )
=> ( ( Q != bot_bot_set_state )
=> ~ ! [Z: state] :
( ( member_state @ Z @ Q )
=> ~ ! [Y4: state] :
( ( member1389040324_state @ ( produc64584659_state @ Y4 @ Z ) @ R2 )
=> ~ ( member_state @ Y4 @ Q ) ) ) ) ) ).
% wfE_min'
thf(fact_120_wfE__min_H,axiom,
! [R2: set_Pr1986765409at_nat,Q: set_nat] :
( ( wf_nat @ R2 )
=> ( ( Q != bot_bot_set_nat )
=> ~ ! [Z: nat] :
( ( member_nat @ Z @ Q )
=> ~ ! [Y4: nat] :
( ( member701585322at_nat @ ( product_Pair_nat_nat @ Y4 @ Z ) @ R2 )
=> ~ ( member_nat @ Y4 @ Q ) ) ) ) ) ).
% wfE_min'
thf(fact_121_wfE__min_H,axiom,
! [R2: set_Pr1702239303tate_o,Q: set_Pr1590995257tate_o] :
( ( wf_Pro309705690tate_o @ R2 )
=> ( ( Q != bot_bo170732493tate_o )
=> ~ ! [Z: produc696469763tate_o] :
( ( member1838112666tate_o @ Z @ Q )
=> ~ ! [Y4: produc696469763tate_o] :
( ( member1629320336tate_o @ ( produc1684562079tate_o @ Y4 @ Z ) @ R2 )
=> ~ ( member1838112666tate_o @ Y4 @ Q ) ) ) ) ) ).
% wfE_min'
thf(fact_122_wfE__min_H,axiom,
! [R2: set_Pr1490359111at_nat,Q: set_Pr1986765409at_nat] :
( ( wf_Pro745352042at_nat @ R2 )
=> ( ( Q != bot_bo2130386637at_nat )
=> ~ ! [Z: product_prod_nat_nat] :
( ( member701585322at_nat @ Z @ Q )
=> ~ ! [Y4: product_prod_nat_nat] :
( ( member2027625872at_nat @ ( produc1168807639at_nat @ Y4 @ Z ) @ R2 )
=> ~ ( member701585322at_nat @ Y4 @ Q ) ) ) ) ) ).
% wfE_min'
thf(fact_123_wfE__min_H,axiom,
! [R2: set_Pr778812871_state,Q: set_Pr795498619_state] :
( ( wf_Pro1783588484_state @ R2 )
=> ( ( Q != bot_bo1625160935_state )
=> ~ ! [Z: produc1115495963_state] :
( ( member1389040324_state @ Z @ Q )
=> ~ ! [Y4: produc1115495963_state] :
( ( member768948240_state @ ( produc1964772951_state @ Y4 @ Z ) @ R2 )
=> ~ ( member1389040324_state @ Y4 @ Q ) ) ) ) ) ).
% wfE_min'
thf(fact_124_the__elem__eq,axiom,
! [X2: produc696469763tate_o] :
( ( the_el1569055182tate_o @ ( insert2053719859tate_o @ X2 @ bot_bo170732493tate_o ) )
= X2 ) ).
% the_elem_eq
thf(fact_125_the__elem__eq,axiom,
! [X2: product_prod_nat_nat] :
( ( the_el1949240438at_nat @ ( insert271595217at_nat @ X2 @ bot_bo2130386637at_nat ) )
= X2 ) ).
% the_elem_eq
thf(fact_126_the__elem__eq,axiom,
! [X2: produc1115495963_state] :
( ( the_el1967402896_state @ ( insert311944171_state @ X2 @ bot_bo1625160935_state ) )
= X2 ) ).
% the_elem_eq
thf(fact_127_old_Oprod_Oinject,axiom,
! [A: a > state > $o,B2: produc204914599tate_o,A4: a > state > $o,B5: produc204914599tate_o] :
( ( ( produc33908149tate_o @ A @ B2 )
= ( produc33908149tate_o @ A4 @ B5 ) )
= ( ( A = A4 )
& ( B2 = B5 ) ) ) ).
% old.prod.inject
thf(fact_128_old_Oprod_Oinject,axiom,
! [A: state,B2: state,A4: state,B5: state] :
( ( ( produc64584659_state @ A @ B2 )
= ( produc64584659_state @ A4 @ B5 ) )
= ( ( A = A4 )
& ( B2 = B5 ) ) ) ).
% old.prod.inject
thf(fact_129_old_Oprod_Oinject,axiom,
! [A: com,B2: a > state > $o,A4: com,B5: a > state > $o] :
( ( ( produc1948644831tate_o @ A @ B2 )
= ( produc1948644831tate_o @ A4 @ B5 ) )
= ( ( A = A4 )
& ( B2 = B5 ) ) ) ).
% old.prod.inject
thf(fact_130_old_Oprod_Oinject,axiom,
! [A: nat,B2: nat,A4: nat,B5: nat] :
( ( ( product_Pair_nat_nat @ A @ B2 )
= ( product_Pair_nat_nat @ A4 @ B5 ) )
= ( ( A = A4 )
& ( B2 = B5 ) ) ) ).
% old.prod.inject
thf(fact_131_prod_Oinject,axiom,
! [X1: a > state > $o,X22: produc204914599tate_o,Y1: a > state > $o,Y22: produc204914599tate_o] :
( ( ( produc33908149tate_o @ X1 @ X22 )
= ( produc33908149tate_o @ Y1 @ Y22 ) )
= ( ( X1 = Y1 )
& ( X22 = Y22 ) ) ) ).
% prod.inject
thf(fact_132_prod_Oinject,axiom,
! [X1: state,X22: state,Y1: state,Y22: state] :
( ( ( produc64584659_state @ X1 @ X22 )
= ( produc64584659_state @ Y1 @ Y22 ) )
= ( ( X1 = Y1 )
& ( X22 = Y22 ) ) ) ).
% prod.inject
thf(fact_133_prod_Oinject,axiom,
! [X1: com,X22: a > state > $o,Y1: com,Y22: a > state > $o] :
( ( ( produc1948644831tate_o @ X1 @ X22 )
= ( produc1948644831tate_o @ Y1 @ Y22 ) )
= ( ( X1 = Y1 )
& ( X22 = Y22 ) ) ) ).
% prod.inject
thf(fact_134_prod_Oinject,axiom,
! [X1: nat,X22: nat,Y1: nat,Y22: nat] :
( ( ( product_Pair_nat_nat @ X1 @ X22 )
= ( product_Pair_nat_nat @ Y1 @ Y22 ) )
= ( ( X1 = Y1 )
& ( X22 = Y22 ) ) ) ).
% prod.inject
thf(fact_135_is__singletonI,axiom,
! [X2: produc696469763tate_o] : ( is_sin1547905295tate_o @ ( insert2053719859tate_o @ X2 @ bot_bo170732493tate_o ) ) ).
% is_singletonI
thf(fact_136_is__singletonI,axiom,
! [X2: product_prod_nat_nat] : ( is_sin1352690165at_nat @ ( insert271595217at_nat @ X2 @ bot_bo2130386637at_nat ) ) ).
% is_singletonI
thf(fact_137_is__singletonI,axiom,
! [X2: produc1115495963_state] : ( is_sin1132515087_state @ ( insert311944171_state @ X2 @ bot_bo1625160935_state ) ) ).
% is_singletonI
thf(fact_138_bot__set__def,axiom,
( bot_bo170732493tate_o
= ( collec1499596504tate_o @ bot_bo250281208te_o_o ) ) ).
% bot_set_def
thf(fact_139_bot__set__def,axiom,
( bot_bo2130386637at_nat
= ( collec7649004at_nat @ bot_bo513358416_nat_o ) ) ).
% bot_set_def
thf(fact_140_bot__set__def,axiom,
( bot_bo1625160935_state
= ( collec496201222_state @ bot_bo446391478tate_o ) ) ).
% bot_set_def
thf(fact_141_is__singleton__the__elem,axiom,
( is_sin1547905295tate_o
= ( ^ [A5: set_Pr1590995257tate_o] :
( A5
= ( insert2053719859tate_o @ ( the_el1569055182tate_o @ A5 ) @ bot_bo170732493tate_o ) ) ) ) ).
% is_singleton_the_elem
thf(fact_142_is__singleton__the__elem,axiom,
( is_sin1352690165at_nat
= ( ^ [A5: set_Pr1986765409at_nat] :
( A5
= ( insert271595217at_nat @ ( the_el1949240438at_nat @ A5 ) @ bot_bo2130386637at_nat ) ) ) ) ).
% is_singleton_the_elem
thf(fact_143_is__singleton__the__elem,axiom,
( is_sin1132515087_state
= ( ^ [A5: set_Pr795498619_state] :
( A5
= ( insert311944171_state @ ( the_el1967402896_state @ A5 ) @ bot_bo1625160935_state ) ) ) ) ).
% is_singleton_the_elem
thf(fact_144_is__singletonI_H,axiom,
! [A2: set_Pr1590995257tate_o] :
( ( A2 != bot_bo170732493tate_o )
=> ( ! [X3: produc696469763tate_o,Y2: produc696469763tate_o] :
( ( member1838112666tate_o @ X3 @ A2 )
=> ( ( member1838112666tate_o @ Y2 @ A2 )
=> ( X3 = Y2 ) ) )
=> ( is_sin1547905295tate_o @ A2 ) ) ) ).
% is_singletonI'
thf(fact_145_is__singletonI_H,axiom,
! [A2: set_Pr1986765409at_nat] :
( ( A2 != bot_bo2130386637at_nat )
=> ( ! [X3: product_prod_nat_nat,Y2: product_prod_nat_nat] :
( ( member701585322at_nat @ X3 @ A2 )
=> ( ( member701585322at_nat @ Y2 @ A2 )
=> ( X3 = Y2 ) ) )
=> ( is_sin1352690165at_nat @ A2 ) ) ) ).
% is_singletonI'
thf(fact_146_is__singletonI_H,axiom,
! [A2: set_Pr795498619_state] :
( ( A2 != bot_bo1625160935_state )
=> ( ! [X3: produc1115495963_state,Y2: produc1115495963_state] :
( ( member1389040324_state @ X3 @ A2 )
=> ( ( member1389040324_state @ Y2 @ A2 )
=> ( X3 = Y2 ) ) )
=> ( is_sin1132515087_state @ A2 ) ) ) ).
% is_singletonI'
thf(fact_147_surj__pair,axiom,
! [P3: produc696469763tate_o] :
? [X3: a > state > $o,Y2: produc204914599tate_o] :
( P3
= ( produc33908149tate_o @ X3 @ Y2 ) ) ).
% surj_pair
thf(fact_148_surj__pair,axiom,
! [P3: produc1115495963_state] :
? [X3: state,Y2: state] :
( P3
= ( produc64584659_state @ X3 @ Y2 ) ) ).
% surj_pair
thf(fact_149_surj__pair,axiom,
! [P3: produc204914599tate_o] :
? [X3: com,Y2: a > state > $o] :
( P3
= ( produc1948644831tate_o @ X3 @ Y2 ) ) ).
% surj_pair
thf(fact_150_surj__pair,axiom,
! [P3: product_prod_nat_nat] :
? [X3: nat,Y2: nat] :
( P3
= ( product_Pair_nat_nat @ X3 @ Y2 ) ) ).
% surj_pair
thf(fact_151_prod__cases,axiom,
! [P: produc696469763tate_o > $o,P3: produc696469763tate_o] :
( ! [A6: a > state > $o,B6: produc204914599tate_o] : ( P @ ( produc33908149tate_o @ A6 @ B6 ) )
=> ( P @ P3 ) ) ).
% prod_cases
thf(fact_152_prod__cases,axiom,
! [P: produc1115495963_state > $o,P3: produc1115495963_state] :
( ! [A6: state,B6: state] : ( P @ ( produc64584659_state @ A6 @ B6 ) )
=> ( P @ P3 ) ) ).
% prod_cases
thf(fact_153_prod__cases,axiom,
! [P: produc204914599tate_o > $o,P3: produc204914599tate_o] :
( ! [A6: com,B6: a > state > $o] : ( P @ ( produc1948644831tate_o @ A6 @ B6 ) )
=> ( P @ P3 ) ) ).
% prod_cases
thf(fact_154_prod__cases,axiom,
! [P: product_prod_nat_nat > $o,P3: product_prod_nat_nat] :
( ! [A6: nat,B6: nat] : ( P @ ( product_Pair_nat_nat @ A6 @ B6 ) )
=> ( P @ P3 ) ) ).
% prod_cases
thf(fact_155_Pair__inject,axiom,
! [A: a > state > $o,B2: produc204914599tate_o,A4: a > state > $o,B5: produc204914599tate_o] :
( ( ( produc33908149tate_o @ A @ B2 )
= ( produc33908149tate_o @ A4 @ B5 ) )
=> ~ ( ( A = A4 )
=> ( B2 != B5 ) ) ) ).
% Pair_inject
thf(fact_156_Pair__inject,axiom,
! [A: state,B2: state,A4: state,B5: state] :
( ( ( produc64584659_state @ A @ B2 )
= ( produc64584659_state @ A4 @ B5 ) )
=> ~ ( ( A = A4 )
=> ( B2 != B5 ) ) ) ).
% Pair_inject
thf(fact_157_Pair__inject,axiom,
! [A: com,B2: a > state > $o,A4: com,B5: a > state > $o] :
( ( ( produc1948644831tate_o @ A @ B2 )
= ( produc1948644831tate_o @ A4 @ B5 ) )
=> ~ ( ( A = A4 )
=> ( B2 != B5 ) ) ) ).
% Pair_inject
thf(fact_158_Pair__inject,axiom,
! [A: nat,B2: nat,A4: nat,B5: nat] :
( ( ( product_Pair_nat_nat @ A @ B2 )
= ( product_Pair_nat_nat @ A4 @ B5 ) )
=> ~ ( ( A = A4 )
=> ( B2 != B5 ) ) ) ).
% Pair_inject
thf(fact_159_old_Oprod_Oexhaust,axiom,
! [Y3: produc696469763tate_o] :
~ ! [A6: a > state > $o,B6: produc204914599tate_o] :
( Y3
!= ( produc33908149tate_o @ A6 @ B6 ) ) ).
% old.prod.exhaust
thf(fact_160_old_Oprod_Oexhaust,axiom,
! [Y3: produc1115495963_state] :
~ ! [A6: state,B6: state] :
( Y3
!= ( produc64584659_state @ A6 @ B6 ) ) ).
% old.prod.exhaust
thf(fact_161_old_Oprod_Oexhaust,axiom,
! [Y3: produc204914599tate_o] :
~ ! [A6: com,B6: a > state > $o] :
( Y3
!= ( produc1948644831tate_o @ A6 @ B6 ) ) ).
% old.prod.exhaust
thf(fact_162_old_Oprod_Oexhaust,axiom,
! [Y3: product_prod_nat_nat] :
~ ! [A6: nat,B6: nat] :
( Y3
!= ( product_Pair_nat_nat @ A6 @ B6 ) ) ).
% old.prod.exhaust
thf(fact_163_old_Oprod_Oinducts,axiom,
! [P: produc696469763tate_o > $o,Prod: produc696469763tate_o] :
( ! [A6: a > state > $o,B6: produc204914599tate_o] : ( P @ ( produc33908149tate_o @ A6 @ B6 ) )
=> ( P @ Prod ) ) ).
% old.prod.inducts
thf(fact_164_old_Oprod_Oinducts,axiom,
! [P: produc1115495963_state > $o,Prod: produc1115495963_state] :
( ! [A6: state,B6: state] : ( P @ ( produc64584659_state @ A6 @ B6 ) )
=> ( P @ Prod ) ) ).
% old.prod.inducts
thf(fact_165_old_Oprod_Oinducts,axiom,
! [P: produc204914599tate_o > $o,Prod: produc204914599tate_o] :
( ! [A6: com,B6: a > state > $o] : ( P @ ( produc1948644831tate_o @ A6 @ B6 ) )
=> ( P @ Prod ) ) ).
% old.prod.inducts
thf(fact_166_old_Oprod_Oinducts,axiom,
! [P: product_prod_nat_nat > $o,Prod: product_prod_nat_nat] :
( ! [A6: nat,B6: nat] : ( P @ ( product_Pair_nat_nat @ A6 @ B6 ) )
=> ( P @ Prod ) ) ).
% old.prod.inducts
thf(fact_167_is__singletonE,axiom,
! [A2: set_Pr1590995257tate_o] :
( ( is_sin1547905295tate_o @ A2 )
=> ~ ! [X3: produc696469763tate_o] :
( A2
!= ( insert2053719859tate_o @ X3 @ bot_bo170732493tate_o ) ) ) ).
% is_singletonE
thf(fact_168_is__singletonE,axiom,
! [A2: set_Pr1986765409at_nat] :
( ( is_sin1352690165at_nat @ A2 )
=> ~ ! [X3: product_prod_nat_nat] :
( A2
!= ( insert271595217at_nat @ X3 @ bot_bo2130386637at_nat ) ) ) ).
% is_singletonE
thf(fact_169_is__singletonE,axiom,
! [A2: set_Pr795498619_state] :
( ( is_sin1132515087_state @ A2 )
=> ~ ! [X3: produc1115495963_state] :
( A2
!= ( insert311944171_state @ X3 @ bot_bo1625160935_state ) ) ) ).
% is_singletonE
thf(fact_170_is__singleton__def,axiom,
( is_sin1547905295tate_o
= ( ^ [A5: set_Pr1590995257tate_o] :
? [X: produc696469763tate_o] :
( A5
= ( insert2053719859tate_o @ X @ bot_bo170732493tate_o ) ) ) ) ).
% is_singleton_def
thf(fact_171_is__singleton__def,axiom,
( is_sin1352690165at_nat
= ( ^ [A5: set_Pr1986765409at_nat] :
? [X: product_prod_nat_nat] :
( A5
= ( insert271595217at_nat @ X @ bot_bo2130386637at_nat ) ) ) ) ).
% is_singleton_def
thf(fact_172_is__singleton__def,axiom,
( is_sin1132515087_state
= ( ^ [A5: set_Pr795498619_state] :
? [X: produc1115495963_state] :
( A5
= ( insert311944171_state @ X @ bot_bo1625160935_state ) ) ) ) ).
% is_singleton_def
thf(fact_173_wf__def,axiom,
( wf_state
= ( ^ [R3: set_Pr795498619_state] :
! [P4: state > $o] :
( ! [X: state] :
( ! [Y5: state] :
( ( member1389040324_state @ ( produc64584659_state @ Y5 @ X ) @ R3 )
=> ( P4 @ Y5 ) )
=> ( P4 @ X ) )
=> ! [X4: state] : ( P4 @ X4 ) ) ) ) ).
% wf_def
thf(fact_174_wf__def,axiom,
( wf_nat
= ( ^ [R3: set_Pr1986765409at_nat] :
! [P4: nat > $o] :
( ! [X: nat] :
( ! [Y5: nat] :
( ( member701585322at_nat @ ( product_Pair_nat_nat @ Y5 @ X ) @ R3 )
=> ( P4 @ Y5 ) )
=> ( P4 @ X ) )
=> ! [X4: nat] : ( P4 @ X4 ) ) ) ) ).
% wf_def
thf(fact_175_wfE__min,axiom,
! [R2: set_Pr778812871_state,X2: produc1115495963_state,Q: set_Pr795498619_state] :
( ( wf_Pro1783588484_state @ R2 )
=> ( ( member1389040324_state @ X2 @ Q )
=> ~ ! [Z: produc1115495963_state] :
( ( member1389040324_state @ Z @ Q )
=> ~ ! [Y4: produc1115495963_state] :
( ( member768948240_state @ ( produc1964772951_state @ Y4 @ Z ) @ R2 )
=> ~ ( member1389040324_state @ Y4 @ Q ) ) ) ) ) ).
% wfE_min
thf(fact_176_wfE__min,axiom,
! [R2: set_Pr1490359111at_nat,X2: product_prod_nat_nat,Q: set_Pr1986765409at_nat] :
( ( wf_Pro745352042at_nat @ R2 )
=> ( ( member701585322at_nat @ X2 @ Q )
=> ~ ! [Z: product_prod_nat_nat] :
( ( member701585322at_nat @ Z @ Q )
=> ~ ! [Y4: product_prod_nat_nat] :
( ( member2027625872at_nat @ ( produc1168807639at_nat @ Y4 @ Z ) @ R2 )
=> ~ ( member701585322at_nat @ Y4 @ Q ) ) ) ) ) ).
% wfE_min
thf(fact_177_wfE__min,axiom,
! [R2: set_Pr1702239303tate_o,X2: produc696469763tate_o,Q: set_Pr1590995257tate_o] :
( ( wf_Pro309705690tate_o @ R2 )
=> ( ( member1838112666tate_o @ X2 @ Q )
=> ~ ! [Z: produc696469763tate_o] :
( ( member1838112666tate_o @ Z @ Q )
=> ~ ! [Y4: produc696469763tate_o] :
( ( member1629320336tate_o @ ( produc1684562079tate_o @ Y4 @ Z ) @ R2 )
=> ~ ( member1838112666tate_o @ Y4 @ Q ) ) ) ) ) ).
% wfE_min
thf(fact_178_wfE__min,axiom,
! [R2: set_Pr795498619_state,X2: state,Q: set_state] :
( ( wf_state @ R2 )
=> ( ( member_state @ X2 @ Q )
=> ~ ! [Z: state] :
( ( member_state @ Z @ Q )
=> ~ ! [Y4: state] :
( ( member1389040324_state @ ( produc64584659_state @ Y4 @ Z ) @ R2 )
=> ~ ( member_state @ Y4 @ Q ) ) ) ) ) ).
% wfE_min
thf(fact_179_wfE__min,axiom,
! [R2: set_Pr1986765409at_nat,X2: nat,Q: set_nat] :
( ( wf_nat @ R2 )
=> ( ( member_nat @ X2 @ Q )
=> ~ ! [Z: nat] :
( ( member_nat @ Z @ Q )
=> ~ ! [Y4: nat] :
( ( member701585322at_nat @ ( product_Pair_nat_nat @ Y4 @ Z ) @ R2 )
=> ~ ( member_nat @ Y4 @ Q ) ) ) ) ) ).
% wfE_min
thf(fact_180_wfI__min,axiom,
! [R2: set_Pr778812871_state] :
( ! [X3: produc1115495963_state,Q3: set_Pr795498619_state] :
( ( member1389040324_state @ X3 @ Q3 )
=> ? [Xa: produc1115495963_state] :
( ( member1389040324_state @ Xa @ Q3 )
& ! [Y2: produc1115495963_state] :
( ( member768948240_state @ ( produc1964772951_state @ Y2 @ Xa ) @ R2 )
=> ~ ( member1389040324_state @ Y2 @ Q3 ) ) ) )
=> ( wf_Pro1783588484_state @ R2 ) ) ).
% wfI_min
thf(fact_181_wfI__min,axiom,
! [R2: set_Pr1490359111at_nat] :
( ! [X3: product_prod_nat_nat,Q3: set_Pr1986765409at_nat] :
( ( member701585322at_nat @ X3 @ Q3 )
=> ? [Xa: product_prod_nat_nat] :
( ( member701585322at_nat @ Xa @ Q3 )
& ! [Y2: product_prod_nat_nat] :
( ( member2027625872at_nat @ ( produc1168807639at_nat @ Y2 @ Xa ) @ R2 )
=> ~ ( member701585322at_nat @ Y2 @ Q3 ) ) ) )
=> ( wf_Pro745352042at_nat @ R2 ) ) ).
% wfI_min
thf(fact_182_wfI__min,axiom,
! [R2: set_Pr1702239303tate_o] :
( ! [X3: produc696469763tate_o,Q3: set_Pr1590995257tate_o] :
( ( member1838112666tate_o @ X3 @ Q3 )
=> ? [Xa: produc696469763tate_o] :
( ( member1838112666tate_o @ Xa @ Q3 )
& ! [Y2: produc696469763tate_o] :
( ( member1629320336tate_o @ ( produc1684562079tate_o @ Y2 @ Xa ) @ R2 )
=> ~ ( member1838112666tate_o @ Y2 @ Q3 ) ) ) )
=> ( wf_Pro309705690tate_o @ R2 ) ) ).
% wfI_min
thf(fact_183_wfI__min,axiom,
! [R2: set_Pr795498619_state] :
( ! [X3: state,Q3: set_state] :
( ( member_state @ X3 @ Q3 )
=> ? [Xa: state] :
( ( member_state @ Xa @ Q3 )
& ! [Y2: state] :
( ( member1389040324_state @ ( produc64584659_state @ Y2 @ Xa ) @ R2 )
=> ~ ( member_state @ Y2 @ Q3 ) ) ) )
=> ( wf_state @ R2 ) ) ).
% wfI_min
thf(fact_184_wfI__min,axiom,
! [R2: set_Pr1986765409at_nat] :
( ! [X3: nat,Q3: set_nat] :
( ( member_nat @ X3 @ Q3 )
=> ? [Xa: nat] :
( ( member_nat @ Xa @ Q3 )
& ! [Y2: nat] :
( ( member701585322at_nat @ ( product_Pair_nat_nat @ Y2 @ Xa ) @ R2 )
=> ~ ( member_nat @ Y2 @ Q3 ) ) ) )
=> ( wf_nat @ R2 ) ) ).
% wfI_min
thf(fact_185_wfUNIVI,axiom,
! [R: set_Pr795498619_state] :
( ! [P5: state > $o,X3: state] :
( ! [Xa: state] :
( ! [Y2: state] :
( ( member1389040324_state @ ( produc64584659_state @ Y2 @ Xa ) @ R )
=> ( P5 @ Y2 ) )
=> ( P5 @ Xa ) )
=> ( P5 @ X3 ) )
=> ( wf_state @ R ) ) ).
% wfUNIVI
thf(fact_186_wfUNIVI,axiom,
! [R: set_Pr1986765409at_nat] :
( ! [P5: nat > $o,X3: nat] :
( ! [Xa: nat] :
( ! [Y2: nat] :
( ( member701585322at_nat @ ( product_Pair_nat_nat @ Y2 @ Xa ) @ R )
=> ( P5 @ Y2 ) )
=> ( P5 @ Xa ) )
=> ( P5 @ X3 ) )
=> ( wf_nat @ R ) ) ).
% wfUNIVI
thf(fact_187_wf__asym,axiom,
! [R: set_Pr795498619_state,A: state,X2: state] :
( ( wf_state @ R )
=> ( ( member1389040324_state @ ( produc64584659_state @ A @ X2 ) @ R )
=> ~ ( member1389040324_state @ ( produc64584659_state @ X2 @ A ) @ R ) ) ) ).
% wf_asym
thf(fact_188_wf__asym,axiom,
! [R: set_Pr1986765409at_nat,A: nat,X2: nat] :
( ( wf_nat @ R )
=> ( ( member701585322at_nat @ ( product_Pair_nat_nat @ A @ X2 ) @ R )
=> ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X2 @ A ) @ R ) ) ) ).
% wf_asym
thf(fact_189_wf__induct,axiom,
! [R: set_Pr795498619_state,P: state > $o,A: state] :
( ( wf_state @ R )
=> ( ! [X3: state] :
( ! [Y4: state] :
( ( member1389040324_state @ ( produc64584659_state @ Y4 @ X3 ) @ R )
=> ( P @ Y4 ) )
=> ( P @ X3 ) )
=> ( P @ A ) ) ) ).
% wf_induct
thf(fact_190_wf__induct,axiom,
! [R: set_Pr1986765409at_nat,P: nat > $o,A: nat] :
( ( wf_nat @ R )
=> ( ! [X3: nat] :
( ! [Y4: nat] :
( ( member701585322at_nat @ ( product_Pair_nat_nat @ Y4 @ X3 ) @ R )
=> ( P @ Y4 ) )
=> ( P @ X3 ) )
=> ( P @ A ) ) ) ).
% wf_induct
thf(fact_191_wf__irrefl,axiom,
! [R: set_Pr795498619_state,A: state] :
( ( wf_state @ R )
=> ~ ( member1389040324_state @ ( produc64584659_state @ A @ A ) @ R ) ) ).
% wf_irrefl
thf(fact_192_wf__irrefl,axiom,
! [R: set_Pr1986765409at_nat,A: nat] :
( ( wf_nat @ R )
=> ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ A @ A ) @ R ) ) ).
% wf_irrefl
thf(fact_193_wf__not__sym,axiom,
! [R: set_Pr795498619_state,A: state,X2: state] :
( ( wf_state @ R )
=> ( ( member1389040324_state @ ( produc64584659_state @ A @ X2 ) @ R )
=> ~ ( member1389040324_state @ ( produc64584659_state @ X2 @ A ) @ R ) ) ) ).
% wf_not_sym
thf(fact_194_wf__not__sym,axiom,
! [R: set_Pr1986765409at_nat,A: nat,X2: nat] :
( ( wf_nat @ R )
=> ( ( member701585322at_nat @ ( product_Pair_nat_nat @ A @ X2 ) @ R )
=> ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X2 @ A ) @ R ) ) ) ).
% wf_not_sym
thf(fact_195_wf__not__refl,axiom,
! [R: set_Pr795498619_state,A: state] :
( ( wf_state @ R )
=> ~ ( member1389040324_state @ ( produc64584659_state @ A @ A ) @ R ) ) ).
% wf_not_refl
thf(fact_196_wf__not__refl,axiom,
! [R: set_Pr1986765409at_nat,A: nat] :
( ( wf_nat @ R )
=> ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ A @ A ) @ R ) ) ).
% wf_not_refl
thf(fact_197_wf__eq__minimal,axiom,
( wf_Pro1783588484_state
= ( ^ [R3: set_Pr778812871_state] :
! [Q4: set_Pr795498619_state] :
( ? [X: produc1115495963_state] : ( member1389040324_state @ X @ Q4 )
=> ? [X: produc1115495963_state] :
( ( member1389040324_state @ X @ Q4 )
& ! [Y5: produc1115495963_state] :
( ( member768948240_state @ ( produc1964772951_state @ Y5 @ X ) @ R3 )
=> ~ ( member1389040324_state @ Y5 @ Q4 ) ) ) ) ) ) ).
% wf_eq_minimal
thf(fact_198_wf__eq__minimal,axiom,
( wf_Pro745352042at_nat
= ( ^ [R3: set_Pr1490359111at_nat] :
! [Q4: set_Pr1986765409at_nat] :
( ? [X: product_prod_nat_nat] : ( member701585322at_nat @ X @ Q4 )
=> ? [X: product_prod_nat_nat] :
( ( member701585322at_nat @ X @ Q4 )
& ! [Y5: product_prod_nat_nat] :
( ( member2027625872at_nat @ ( produc1168807639at_nat @ Y5 @ X ) @ R3 )
=> ~ ( member701585322at_nat @ Y5 @ Q4 ) ) ) ) ) ) ).
% wf_eq_minimal
thf(fact_199_wf__eq__minimal,axiom,
( wf_Pro309705690tate_o
= ( ^ [R3: set_Pr1702239303tate_o] :
! [Q4: set_Pr1590995257tate_o] :
( ? [X: produc696469763tate_o] : ( member1838112666tate_o @ X @ Q4 )
=> ? [X: produc696469763tate_o] :
( ( member1838112666tate_o @ X @ Q4 )
& ! [Y5: produc696469763tate_o] :
( ( member1629320336tate_o @ ( produc1684562079tate_o @ Y5 @ X ) @ R3 )
=> ~ ( member1838112666tate_o @ Y5 @ Q4 ) ) ) ) ) ) ).
% wf_eq_minimal
thf(fact_200_wf__eq__minimal,axiom,
( wf_state
= ( ^ [R3: set_Pr795498619_state] :
! [Q4: set_state] :
( ? [X: state] : ( member_state @ X @ Q4 )
=> ? [X: state] :
( ( member_state @ X @ Q4 )
& ! [Y5: state] :
( ( member1389040324_state @ ( produc64584659_state @ Y5 @ X ) @ R3 )
=> ~ ( member_state @ Y5 @ Q4 ) ) ) ) ) ) ).
% wf_eq_minimal
thf(fact_201_wf__eq__minimal,axiom,
( wf_nat
= ( ^ [R3: set_Pr1986765409at_nat] :
! [Q4: set_nat] :
( ? [X: nat] : ( member_nat @ X @ Q4 )
=> ? [X: nat] :
( ( member_nat @ X @ Q4 )
& ! [Y5: nat] :
( ( member701585322at_nat @ ( product_Pair_nat_nat @ Y5 @ X ) @ R3 )
=> ~ ( member_nat @ Y5 @ Q4 ) ) ) ) ) ) ).
% wf_eq_minimal
thf(fact_202_wf__induct__rule,axiom,
! [R: set_Pr795498619_state,P: state > $o,A: state] :
( ( wf_state @ R )
=> ( ! [X3: state] :
( ! [Y4: state] :
( ( member1389040324_state @ ( produc64584659_state @ Y4 @ X3 ) @ R )
=> ( P @ Y4 ) )
=> ( P @ X3 ) )
=> ( P @ A ) ) ) ).
% wf_induct_rule
thf(fact_203_wf__induct__rule,axiom,
! [R: set_Pr1986765409at_nat,P: nat > $o,A: nat] :
( ( wf_nat @ R )
=> ( ! [X3: nat] :
( ! [Y4: nat] :
( ( member701585322at_nat @ ( product_Pair_nat_nat @ Y4 @ X3 ) @ R )
=> ( P @ Y4 ) )
=> ( P @ X3 ) )
=> ( P @ A ) ) ) ).
% wf_induct_rule
thf(fact_204_prod__cases3,axiom,
! [Y3: produc696469763tate_o] :
~ ! [A6: a > state > $o,B6: com,C4: a > state > $o] :
( Y3
!= ( produc33908149tate_o @ A6 @ ( produc1948644831tate_o @ B6 @ C4 ) ) ) ).
% prod_cases3
thf(fact_205_prod__induct3,axiom,
! [P: produc696469763tate_o > $o,X2: produc696469763tate_o] :
( ! [A6: a > state > $o,B6: com,C4: a > state > $o] : ( P @ ( produc33908149tate_o @ A6 @ ( produc1948644831tate_o @ B6 @ C4 ) ) )
=> ( P @ X2 ) ) ).
% prod_induct3
thf(fact_206_bot__empty__eq2,axiom,
( bot_bo935656620te_o_o
= ( ^ [X: com,Y5: a > state > $o] : ( member221067728tate_o @ ( produc1948644831tate_o @ X @ Y5 ) @ bot_bo1692783091tate_o ) ) ) ).
% bot_empty_eq2
thf(fact_207_bot__empty__eq2,axiom,
( bot_bo2130564770te_o_o
= ( ^ [X: a > state > $o,Y5: produc204914599tate_o] : ( member1838112666tate_o @ ( produc33908149tate_o @ X @ Y5 ) @ bot_bo170732493tate_o ) ) ) ).
% bot_empty_eq2
thf(fact_208_bot__empty__eq2,axiom,
( bot_bot_nat_nat_o
= ( ^ [X: nat,Y5: nat] : ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y5 ) @ bot_bo2130386637at_nat ) ) ) ).
% bot_empty_eq2
thf(fact_209_bot__empty__eq2,axiom,
( bot_bo51534648tate_o
= ( ^ [X: state,Y5: state] : ( member1389040324_state @ ( produc64584659_state @ X @ Y5 ) @ bot_bo1625160935_state ) ) ) ).
% bot_empty_eq2
thf(fact_210_wf__measure,axiom,
! [F: state > nat] : ( wf_state @ ( measure_state @ F ) ) ).
% wf_measure
thf(fact_211_wf__measure,axiom,
! [F: nat > nat] : ( wf_nat @ ( measure_nat @ F ) ) ).
% wf_measure
thf(fact_212_thoare_OWhile,axiom,
! [R: set_Pr795498619_state,C: set_Pr1590995257tate_o,P: a > state > $o,B2: state > $o,C2: com] :
( ( wf_state @ R )
=> ( ! [S3: state] :
( pHoare382919414oare_a @ C
@ ^ [Z4: a,S4: state] :
( ( P @ Z4 @ S4 )
& ( B2 @ S4 )
& ( S3 = S4 ) )
@ C2
@ ^ [Z4: a,S4: state] :
( ( P @ Z4 @ S4 )
& ( member1389040324_state @ ( produc64584659_state @ S4 @ S3 ) @ R ) ) )
=> ( pHoare382919414oare_a @ C @ P @ ( while @ B2 @ C2 )
@ ^ [Z4: a,S4: state] :
( ( P @ Z4 @ S4 )
& ~ ( B2 @ S4 ) ) ) ) ) ).
% thoare.While
thf(fact_213_Set_Ois__empty__def,axiom,
( is_emp807847857tate_o
= ( ^ [A5: set_Pr1590995257tate_o] : ( A5 = bot_bo170732493tate_o ) ) ) ).
% Set.is_empty_def
thf(fact_214_Set_Ois__empty__def,axiom,
( is_emp825011411at_nat
= ( ^ [A5: set_Pr1986765409at_nat] : ( A5 = bot_bo2130386637at_nat ) ) ) ).
% Set.is_empty_def
thf(fact_215_Set_Ois__empty__def,axiom,
( is_emp1062983149_state
= ( ^ [A5: set_Pr795498619_state] : ( A5 = bot_bo1625160935_state ) ) ) ).
% Set.is_empty_def
thf(fact_216_com_Oinject_I4_J,axiom,
! [X41: state > $o,X42: com,Y41: state > $o,Y42: com] :
( ( ( while @ X41 @ X42 )
= ( while @ Y41 @ Y42 ) )
= ( ( X41 = Y41 )
& ( X42 = Y42 ) ) ) ).
% com.inject(4)
thf(fact_217_com_Odistinct_I25_J,axiom,
! [X41: state > $o,X42: com] :
( ( while @ X41 @ X42 )
!= call ) ).
% com.distinct(25)
thf(fact_218_exec_OWhileFalse,axiom,
! [B2: state > $o,S2: state,C2: com] :
( ~ ( B2 @ S2 )
=> ( exec @ S2 @ ( while @ B2 @ C2 ) @ S2 ) ) ).
% exec.WhileFalse
thf(fact_219_exec_OWhileTrue,axiom,
! [B2: state > $o,S2: state,C2: com,T2: state,U2: state] :
( ( B2 @ S2 )
=> ( ( exec @ S2 @ C2 @ T2 )
=> ( ( exec @ T2 @ ( while @ B2 @ C2 ) @ U2 )
=> ( exec @ S2 @ ( while @ B2 @ C2 ) @ U2 ) ) ) ) ).
% exec.WhileTrue
thf(fact_220_termi_OWhileFalse,axiom,
! [B2: state > $o,S2: state,C2: com] :
( ~ ( B2 @ S2 )
=> ( termi @ ( while @ B2 @ C2 ) @ S2 ) ) ).
% termi.WhileFalse
thf(fact_221_termi_OWhileTrue,axiom,
! [B2: state > $o,S2: state,C2: com] :
( ( B2 @ S2 )
=> ( ( termi @ C2 @ S2 )
=> ( ! [T: state] :
( ( exec @ S2 @ C2 @ T )
=> ( termi @ ( while @ B2 @ C2 ) @ T ) )
=> ( termi @ ( while @ B2 @ C2 ) @ S2 ) ) ) ) ).
% termi.WhileTrue
thf(fact_222_bot__empty__eq,axiom,
( bot_bo250281208te_o_o
= ( ^ [X: produc696469763tate_o] : ( member1838112666tate_o @ X @ bot_bo170732493tate_o ) ) ) ).
% bot_empty_eq
thf(fact_223_bot__empty__eq,axiom,
( bot_bo513358416_nat_o
= ( ^ [X: product_prod_nat_nat] : ( member701585322at_nat @ X @ bot_bo2130386637at_nat ) ) ) ).
% bot_empty_eq
thf(fact_224_bot__empty__eq,axiom,
( bot_bo446391478tate_o
= ( ^ [X: produc1115495963_state] : ( member1389040324_state @ X @ bot_bo1625160935_state ) ) ) ).
% bot_empty_eq
thf(fact_225_pred__equals__eq2,axiom,
! [R2: set_Pr1590995257tate_o,S5: set_Pr1590995257tate_o] :
( ( ( ^ [X: a > state > $o,Y5: produc204914599tate_o] : ( member1838112666tate_o @ ( produc33908149tate_o @ X @ Y5 ) @ R2 ) )
= ( ^ [X: a > state > $o,Y5: produc204914599tate_o] : ( member1838112666tate_o @ ( produc33908149tate_o @ X @ Y5 ) @ S5 ) ) )
= ( R2 = S5 ) ) ).
% pred_equals_eq2
thf(fact_226_pred__equals__eq2,axiom,
! [R2: set_Pr795498619_state,S5: set_Pr795498619_state] :
( ( ( ^ [X: state,Y5: state] : ( member1389040324_state @ ( produc64584659_state @ X @ Y5 ) @ R2 ) )
= ( ^ [X: state,Y5: state] : ( member1389040324_state @ ( produc64584659_state @ X @ Y5 ) @ S5 ) ) )
= ( R2 = S5 ) ) ).
% pred_equals_eq2
thf(fact_227_pred__equals__eq2,axiom,
! [R2: set_Pr1740974983tate_o,S5: set_Pr1740974983tate_o] :
( ( ( ^ [X: com,Y5: a > state > $o] : ( member221067728tate_o @ ( produc1948644831tate_o @ X @ Y5 ) @ R2 ) )
= ( ^ [X: com,Y5: a > state > $o] : ( member221067728tate_o @ ( produc1948644831tate_o @ X @ Y5 ) @ S5 ) ) )
= ( R2 = S5 ) ) ).
% pred_equals_eq2
thf(fact_228_pred__equals__eq2,axiom,
! [R2: set_Pr1986765409at_nat,S5: set_Pr1986765409at_nat] :
( ( ( ^ [X: nat,Y5: nat] : ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y5 ) @ R2 ) )
= ( ^ [X: nat,Y5: nat] : ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y5 ) @ S5 ) ) )
= ( R2 = S5 ) ) ).
% pred_equals_eq2
thf(fact_229_Collect__empty__eq__bot,axiom,
! [P: produc696469763tate_o > $o] :
( ( ( collec1499596504tate_o @ P )
= bot_bo170732493tate_o )
= ( P = bot_bo250281208te_o_o ) ) ).
% Collect_empty_eq_bot
thf(fact_230_Collect__empty__eq__bot,axiom,
! [P: product_prod_nat_nat > $o] :
( ( ( collec7649004at_nat @ P )
= bot_bo2130386637at_nat )
= ( P = bot_bo513358416_nat_o ) ) ).
% Collect_empty_eq_bot
thf(fact_231_Collect__empty__eq__bot,axiom,
! [P: produc1115495963_state > $o] :
( ( ( collec496201222_state @ P )
= bot_bo1625160935_state )
= ( P = bot_bo446391478tate_o ) ) ).
% Collect_empty_eq_bot
thf(fact_232_total__on__singleton,axiom,
! [X2: nat] : ( total_on_nat @ ( insert_nat @ X2 @ bot_bot_set_nat ) @ ( insert271595217at_nat @ ( product_Pair_nat_nat @ X2 @ X2 ) @ bot_bo2130386637at_nat ) ) ).
% total_on_singleton
thf(fact_233_total__on__singleton,axiom,
! [X2: state] : ( total_on_state @ ( insert_state @ X2 @ bot_bot_set_state ) @ ( insert311944171_state @ ( produc64584659_state @ X2 @ X2 ) @ bot_bo1625160935_state ) ) ).
% total_on_singleton
thf(fact_234_total__on__singleton,axiom,
! [X2: produc696469763tate_o] : ( total_795385983tate_o @ ( insert2053719859tate_o @ X2 @ bot_bo170732493tate_o ) @ ( insert1597128631tate_o @ ( produc1684562079tate_o @ X2 @ X2 ) @ bot_bo1714653363tate_o ) ) ).
% total_on_singleton
thf(fact_235_total__on__singleton,axiom,
! [X2: product_prod_nat_nat] : ( total_1775715973at_nat @ ( insert271595217at_nat @ X2 @ bot_bo2130386637at_nat ) @ ( insert584009271at_nat @ ( produc1168807639at_nat @ X2 @ X2 ) @ bot_bo34127283at_nat ) ) ).
% total_on_singleton
thf(fact_236_total__on__singleton,axiom,
! [X2: produc1115495963_state] : ( total_1316653983_state @ ( insert311944171_state @ X2 @ bot_bo1625160935_state ) @ ( insert1616594103_state @ ( produc1964772951_state @ X2 @ X2 ) @ bot_bo1331673139_state ) ) ).
% total_on_singleton
thf(fact_237_refl__on__singleton,axiom,
! [X2: nat] : ( refl_on_nat @ ( insert_nat @ X2 @ bot_bot_set_nat ) @ ( insert271595217at_nat @ ( product_Pair_nat_nat @ X2 @ X2 ) @ bot_bo2130386637at_nat ) ) ).
% refl_on_singleton
thf(fact_238_refl__on__singleton,axiom,
! [X2: state] : ( refl_on_state @ ( insert_state @ X2 @ bot_bot_set_state ) @ ( insert311944171_state @ ( produc64584659_state @ X2 @ X2 ) @ bot_bo1625160935_state ) ) ).
% refl_on_singleton
thf(fact_239_refl__on__singleton,axiom,
! [X2: produc696469763tate_o] : ( refl_o489021252tate_o @ ( insert2053719859tate_o @ X2 @ bot_bo170732493tate_o ) @ ( insert1597128631tate_o @ ( produc1684562079tate_o @ X2 @ X2 ) @ bot_bo1714653363tate_o ) ) ).
% refl_on_singleton
thf(fact_240_refl__on__singleton,axiom,
! [X2: product_prod_nat_nat] : ( refl_o1619599232at_nat @ ( insert271595217at_nat @ X2 @ bot_bo2130386637at_nat ) @ ( insert584009271at_nat @ ( produc1168807639at_nat @ X2 @ X2 ) @ bot_bo34127283at_nat ) ) ).
% refl_on_singleton
thf(fact_241_refl__on__singleton,axiom,
! [X2: produc1115495963_state] : ( refl_o1438232218_state @ ( insert311944171_state @ X2 @ bot_bo1625160935_state ) @ ( insert1616594103_state @ ( produc1964772951_state @ X2 @ X2 ) @ bot_bo1331673139_state ) ) ).
% refl_on_singleton
thf(fact_242_wf__termi,axiom,
! [B2: state > $o,C2: com] :
( wf_state
@ ( collec496201222_state
@ ( produc789892016tate_o
@ ^ [T3: state,S4: state] :
( ( termi @ ( while @ B2 @ C2 ) @ S4 )
& ( B2 @ S4 )
& ( exec @ S4 @ C2 @ T3 ) ) ) ) ) ).
% wf_termi
thf(fact_243_linear__order__on__singleton,axiom,
! [X2: nat] : ( order_130026331on_nat @ ( insert_nat @ X2 @ bot_bot_set_nat ) @ ( insert271595217at_nat @ ( product_Pair_nat_nat @ X2 @ X2 ) @ bot_bo2130386637at_nat ) ) ).
% linear_order_on_singleton
thf(fact_244_linear__order__on__singleton,axiom,
! [X2: state] : ( order_286167592_state @ ( insert_state @ X2 @ bot_bot_set_state ) @ ( insert311944171_state @ ( produc64584659_state @ X2 @ X2 ) @ bot_bo1625160935_state ) ) ).
% linear_order_on_singleton
thf(fact_245_linear__order__on__singleton,axiom,
! [X2: produc696469763tate_o] : ( order_50454158tate_o @ ( insert2053719859tate_o @ X2 @ bot_bo170732493tate_o ) @ ( insert1597128631tate_o @ ( produc1684562079tate_o @ X2 @ X2 ) @ bot_bo1714653363tate_o ) ) ).
% linear_order_on_singleton
thf(fact_246_linear__order__on__singleton,axiom,
! [X2: product_prod_nat_nat] : ( order_721919926at_nat @ ( insert271595217at_nat @ X2 @ bot_bo2130386637at_nat ) @ ( insert584009271at_nat @ ( produc1168807639at_nat @ X2 @ X2 ) @ bot_bo34127283at_nat ) ) ).
% linear_order_on_singleton
thf(fact_247_linear__order__on__singleton,axiom,
! [X2: produc1115495963_state] : ( order_178668240_state @ ( insert311944171_state @ X2 @ bot_bo1625160935_state ) @ ( insert1616594103_state @ ( produc1964772951_state @ X2 @ X2 ) @ bot_bo1331673139_state ) ) ).
% linear_order_on_singleton
thf(fact_248_split__part,axiom,
! [P: $o,Q: state > state > $o] :
( ( produc789892016tate_o
@ ^ [A3: state,B7: state] :
( P
& ( Q @ A3 @ B7 ) ) )
= ( ^ [Ab: produc1115495963_state] :
( P
& ( produc789892016tate_o @ Q @ Ab ) ) ) ) ).
% split_part
thf(fact_249_split__part,axiom,
! [P: $o,Q: nat > nat > $o] :
( ( produc949581770_nat_o
@ ^ [A3: nat,B7: nat] :
( P
& ( Q @ A3 @ B7 ) ) )
= ( ^ [Ab: product_prod_nat_nat] :
( P
& ( produc949581770_nat_o @ Q @ Ab ) ) ) ) ).
% split_part
thf(fact_250_case__prod__conv,axiom,
! [F: state > state > $o,A: state,B2: state] :
( ( produc789892016tate_o @ F @ ( produc64584659_state @ A @ B2 ) )
= ( F @ A @ B2 ) ) ).
% case_prod_conv
thf(fact_251_case__prod__conv,axiom,
! [F: nat > nat > $o,A: nat,B2: nat] :
( ( produc949581770_nat_o @ F @ ( product_Pair_nat_nat @ A @ B2 ) )
= ( F @ A @ B2 ) ) ).
% case_prod_conv
thf(fact_252_case__prodI,axiom,
! [F: ( a > state > $o ) > produc204914599tate_o > $o,A: a > state > $o,B2: produc204914599tate_o] :
( ( F @ A @ B2 )
=> ( produc1271576886te_o_o @ F @ ( produc33908149tate_o @ A @ B2 ) ) ) ).
% case_prodI
thf(fact_253_case__prodI,axiom,
! [F: com > ( a > state > $o ) > $o,A: com,B2: a > state > $o] :
( ( F @ A @ B2 )
=> ( produc281270436te_o_o @ F @ ( produc1948644831tate_o @ A @ B2 ) ) ) ).
% case_prodI
thf(fact_254_case__prodI,axiom,
! [F: state > state > $o,A: state,B2: state] :
( ( F @ A @ B2 )
=> ( produc789892016tate_o @ F @ ( produc64584659_state @ A @ B2 ) ) ) ).
% case_prodI
thf(fact_255_case__prodI,axiom,
! [F: nat > nat > $o,A: nat,B2: nat] :
( ( F @ A @ B2 )
=> ( produc949581770_nat_o @ F @ ( product_Pair_nat_nat @ A @ B2 ) ) ) ).
% case_prodI
thf(fact_256_case__prodI2,axiom,
! [P3: produc696469763tate_o,C2: ( a > state > $o ) > produc204914599tate_o > $o] :
( ! [A6: a > state > $o,B6: produc204914599tate_o] :
( ( P3
= ( produc33908149tate_o @ A6 @ B6 ) )
=> ( C2 @ A6 @ B6 ) )
=> ( produc1271576886te_o_o @ C2 @ P3 ) ) ).
% case_prodI2
thf(fact_257_case__prodI2,axiom,
! [P3: produc204914599tate_o,C2: com > ( a > state > $o ) > $o] :
( ! [A6: com,B6: a > state > $o] :
( ( P3
= ( produc1948644831tate_o @ A6 @ B6 ) )
=> ( C2 @ A6 @ B6 ) )
=> ( produc281270436te_o_o @ C2 @ P3 ) ) ).
% case_prodI2
thf(fact_258_case__prodI2,axiom,
! [P3: produc1115495963_state,C2: state > state > $o] :
( ! [A6: state,B6: state] :
( ( P3
= ( produc64584659_state @ A6 @ B6 ) )
=> ( C2 @ A6 @ B6 ) )
=> ( produc789892016tate_o @ C2 @ P3 ) ) ).
% case_prodI2
thf(fact_259_case__prodI2,axiom,
! [P3: product_prod_nat_nat,C2: nat > nat > $o] :
( ! [A6: nat,B6: nat] :
( ( P3
= ( product_Pair_nat_nat @ A6 @ B6 ) )
=> ( C2 @ A6 @ B6 ) )
=> ( produc949581770_nat_o @ C2 @ P3 ) ) ).
% case_prodI2
thf(fact_260_refl__on__domain,axiom,
! [A2: set_Pr795498619_state,R: set_Pr778812871_state,A: produc1115495963_state,B2: produc1115495963_state] :
( ( refl_o1438232218_state @ A2 @ R )
=> ( ( member768948240_state @ ( produc1964772951_state @ A @ B2 ) @ R )
=> ( ( member1389040324_state @ A @ A2 )
& ( member1389040324_state @ B2 @ A2 ) ) ) ) ).
% refl_on_domain
thf(fact_261_refl__on__domain,axiom,
! [A2: set_Pr1986765409at_nat,R: set_Pr1490359111at_nat,A: product_prod_nat_nat,B2: product_prod_nat_nat] :
( ( refl_o1619599232at_nat @ A2 @ R )
=> ( ( member2027625872at_nat @ ( produc1168807639at_nat @ A @ B2 ) @ R )
=> ( ( member701585322at_nat @ A @ A2 )
& ( member701585322at_nat @ B2 @ A2 ) ) ) ) ).
% refl_on_domain
thf(fact_262_refl__on__domain,axiom,
! [A2: set_Pr1590995257tate_o,R: set_Pr1702239303tate_o,A: produc696469763tate_o,B2: produc696469763tate_o] :
( ( refl_o489021252tate_o @ A2 @ R )
=> ( ( member1629320336tate_o @ ( produc1684562079tate_o @ A @ B2 ) @ R )
=> ( ( member1838112666tate_o @ A @ A2 )
& ( member1838112666tate_o @ B2 @ A2 ) ) ) ) ).
% refl_on_domain
thf(fact_263_refl__on__domain,axiom,
! [A2: set_state,R: set_Pr795498619_state,A: state,B2: state] :
( ( refl_on_state @ A2 @ R )
=> ( ( member1389040324_state @ ( produc64584659_state @ A @ B2 ) @ R )
=> ( ( member_state @ A @ A2 )
& ( member_state @ B2 @ A2 ) ) ) ) ).
% refl_on_domain
thf(fact_264_refl__on__domain,axiom,
! [A2: set_nat,R: set_Pr1986765409at_nat,A: nat,B2: nat] :
( ( refl_on_nat @ A2 @ R )
=> ( ( member701585322at_nat @ ( product_Pair_nat_nat @ A @ B2 ) @ R )
=> ( ( member_nat @ A @ A2 )
& ( member_nat @ B2 @ A2 ) ) ) ) ).
% refl_on_domain
thf(fact_265_prod_Ocase__distrib,axiom,
! [H: $o > $o,F: state > state > $o,Prod: produc1115495963_state] :
( ( H @ ( produc789892016tate_o @ F @ Prod ) )
= ( produc789892016tate_o
@ ^ [X12: state,X23: state] : ( H @ ( F @ X12 @ X23 ) )
@ Prod ) ) ).
% prod.case_distrib
thf(fact_266_prod_Ocase__distrib,axiom,
! [H: $o > $o,F: nat > nat > $o,Prod: product_prod_nat_nat] :
( ( H @ ( produc949581770_nat_o @ F @ Prod ) )
= ( produc949581770_nat_o
@ ^ [X12: nat,X23: nat] : ( H @ ( F @ X12 @ X23 ) )
@ Prod ) ) ).
% prod.case_distrib
thf(fact_267_prod_Odisc__eq__case,axiom,
! [Prod: produc1115495963_state] :
( produc789892016tate_o
@ ^ [Uu: state,Uv: state] : $true
@ Prod ) ).
% prod.disc_eq_case
thf(fact_268_prod_Odisc__eq__case,axiom,
! [Prod: product_prod_nat_nat] :
( produc949581770_nat_o
@ ^ [Uu: nat,Uv: nat] : $true
@ Prod ) ).
% prod.disc_eq_case
thf(fact_269_old_Oprod_Ocase,axiom,
! [F: state > state > $o,X1: state,X22: state] :
( ( produc789892016tate_o @ F @ ( produc64584659_state @ X1 @ X22 ) )
= ( F @ X1 @ X22 ) ) ).
% old.prod.case
thf(fact_270_old_Oprod_Ocase,axiom,
! [F: nat > nat > $o,X1: nat,X22: nat] :
( ( produc949581770_nat_o @ F @ ( product_Pair_nat_nat @ X1 @ X22 ) )
= ( F @ X1 @ X22 ) ) ).
% old.prod.case
thf(fact_271_refl__onD2,axiom,
! [A2: set_Pr795498619_state,R: set_Pr778812871_state,X2: produc1115495963_state,Y3: produc1115495963_state] :
( ( refl_o1438232218_state @ A2 @ R )
=> ( ( member768948240_state @ ( produc1964772951_state @ X2 @ Y3 ) @ R )
=> ( member1389040324_state @ Y3 @ A2 ) ) ) ).
% refl_onD2
thf(fact_272_refl__onD2,axiom,
! [A2: set_Pr1986765409at_nat,R: set_Pr1490359111at_nat,X2: product_prod_nat_nat,Y3: product_prod_nat_nat] :
( ( refl_o1619599232at_nat @ A2 @ R )
=> ( ( member2027625872at_nat @ ( produc1168807639at_nat @ X2 @ Y3 ) @ R )
=> ( member701585322at_nat @ Y3 @ A2 ) ) ) ).
% refl_onD2
thf(fact_273_refl__onD2,axiom,
! [A2: set_Pr1590995257tate_o,R: set_Pr1702239303tate_o,X2: produc696469763tate_o,Y3: produc696469763tate_o] :
( ( refl_o489021252tate_o @ A2 @ R )
=> ( ( member1629320336tate_o @ ( produc1684562079tate_o @ X2 @ Y3 ) @ R )
=> ( member1838112666tate_o @ Y3 @ A2 ) ) ) ).
% refl_onD2
thf(fact_274_refl__onD2,axiom,
! [A2: set_state,R: set_Pr795498619_state,X2: state,Y3: state] :
( ( refl_on_state @ A2 @ R )
=> ( ( member1389040324_state @ ( produc64584659_state @ X2 @ Y3 ) @ R )
=> ( member_state @ Y3 @ A2 ) ) ) ).
% refl_onD2
thf(fact_275_refl__onD2,axiom,
! [A2: set_nat,R: set_Pr1986765409at_nat,X2: nat,Y3: nat] :
( ( refl_on_nat @ A2 @ R )
=> ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X2 @ Y3 ) @ R )
=> ( member_nat @ Y3 @ A2 ) ) ) ).
% refl_onD2
thf(fact_276_refl__onD1,axiom,
! [A2: set_Pr795498619_state,R: set_Pr778812871_state,X2: produc1115495963_state,Y3: produc1115495963_state] :
( ( refl_o1438232218_state @ A2 @ R )
=> ( ( member768948240_state @ ( produc1964772951_state @ X2 @ Y3 ) @ R )
=> ( member1389040324_state @ X2 @ A2 ) ) ) ).
% refl_onD1
thf(fact_277_refl__onD1,axiom,
! [A2: set_Pr1986765409at_nat,R: set_Pr1490359111at_nat,X2: product_prod_nat_nat,Y3: product_prod_nat_nat] :
( ( refl_o1619599232at_nat @ A2 @ R )
=> ( ( member2027625872at_nat @ ( produc1168807639at_nat @ X2 @ Y3 ) @ R )
=> ( member701585322at_nat @ X2 @ A2 ) ) ) ).
% refl_onD1
thf(fact_278_refl__onD1,axiom,
! [A2: set_Pr1590995257tate_o,R: set_Pr1702239303tate_o,X2: produc696469763tate_o,Y3: produc696469763tate_o] :
( ( refl_o489021252tate_o @ A2 @ R )
=> ( ( member1629320336tate_o @ ( produc1684562079tate_o @ X2 @ Y3 ) @ R )
=> ( member1838112666tate_o @ X2 @ A2 ) ) ) ).
% refl_onD1
thf(fact_279_refl__onD1,axiom,
! [A2: set_state,R: set_Pr795498619_state,X2: state,Y3: state] :
( ( refl_on_state @ A2 @ R )
=> ( ( member1389040324_state @ ( produc64584659_state @ X2 @ Y3 ) @ R )
=> ( member_state @ X2 @ A2 ) ) ) ).
% refl_onD1
thf(fact_280_refl__onD1,axiom,
! [A2: set_nat,R: set_Pr1986765409at_nat,X2: nat,Y3: nat] :
( ( refl_on_nat @ A2 @ R )
=> ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X2 @ Y3 ) @ R )
=> ( member_nat @ X2 @ A2 ) ) ) ).
% refl_onD1
thf(fact_281_refl__onD,axiom,
! [A2: set_Pr795498619_state,R: set_Pr778812871_state,A: produc1115495963_state] :
( ( refl_o1438232218_state @ A2 @ R )
=> ( ( member1389040324_state @ A @ A2 )
=> ( member768948240_state @ ( produc1964772951_state @ A @ A ) @ R ) ) ) ).
% refl_onD
thf(fact_282_refl__onD,axiom,
! [A2: set_Pr1986765409at_nat,R: set_Pr1490359111at_nat,A: product_prod_nat_nat] :
( ( refl_o1619599232at_nat @ A2 @ R )
=> ( ( member701585322at_nat @ A @ A2 )
=> ( member2027625872at_nat @ ( produc1168807639at_nat @ A @ A ) @ R ) ) ) ).
% refl_onD
thf(fact_283_refl__onD,axiom,
! [A2: set_Pr1590995257tate_o,R: set_Pr1702239303tate_o,A: produc696469763tate_o] :
( ( refl_o489021252tate_o @ A2 @ R )
=> ( ( member1838112666tate_o @ A @ A2 )
=> ( member1629320336tate_o @ ( produc1684562079tate_o @ A @ A ) @ R ) ) ) ).
% refl_onD
thf(fact_284_refl__onD,axiom,
! [A2: set_state,R: set_Pr795498619_state,A: state] :
( ( refl_on_state @ A2 @ R )
=> ( ( member_state @ A @ A2 )
=> ( member1389040324_state @ ( produc64584659_state @ A @ A ) @ R ) ) ) ).
% refl_onD
thf(fact_285_refl__onD,axiom,
! [A2: set_nat,R: set_Pr1986765409at_nat,A: nat] :
( ( refl_on_nat @ A2 @ R )
=> ( ( member_nat @ A @ A2 )
=> ( member701585322at_nat @ ( product_Pair_nat_nat @ A @ A ) @ R ) ) ) ).
% refl_onD
thf(fact_286_case__prodD,axiom,
! [F: ( a > state > $o ) > produc204914599tate_o > $o,A: a > state > $o,B2: produc204914599tate_o] :
( ( produc1271576886te_o_o @ F @ ( produc33908149tate_o @ A @ B2 ) )
=> ( F @ A @ B2 ) ) ).
% case_prodD
thf(fact_287_case__prodD,axiom,
! [F: com > ( a > state > $o ) > $o,A: com,B2: a > state > $o] :
( ( produc281270436te_o_o @ F @ ( produc1948644831tate_o @ A @ B2 ) )
=> ( F @ A @ B2 ) ) ).
% case_prodD
thf(fact_288_case__prodD,axiom,
! [F: state > state > $o,A: state,B2: state] :
( ( produc789892016tate_o @ F @ ( produc64584659_state @ A @ B2 ) )
=> ( F @ A @ B2 ) ) ).
% case_prodD
thf(fact_289_case__prodD,axiom,
! [F: nat > nat > $o,A: nat,B2: nat] :
( ( produc949581770_nat_o @ F @ ( product_Pair_nat_nat @ A @ B2 ) )
=> ( F @ A @ B2 ) ) ).
% case_prodD
thf(fact_290_case__prodE,axiom,
! [C2: ( a > state > $o ) > produc204914599tate_o > $o,P3: produc696469763tate_o] :
( ( produc1271576886te_o_o @ C2 @ P3 )
=> ~ ! [X3: a > state > $o,Y2: produc204914599tate_o] :
( ( P3
= ( produc33908149tate_o @ X3 @ Y2 ) )
=> ~ ( C2 @ X3 @ Y2 ) ) ) ).
% case_prodE
thf(fact_291_case__prodE,axiom,
! [C2: com > ( a > state > $o ) > $o,P3: produc204914599tate_o] :
( ( produc281270436te_o_o @ C2 @ P3 )
=> ~ ! [X3: com,Y2: a > state > $o] :
( ( P3
= ( produc1948644831tate_o @ X3 @ Y2 ) )
=> ~ ( C2 @ X3 @ Y2 ) ) ) ).
% case_prodE
thf(fact_292_case__prodE,axiom,
! [C2: state > state > $o,P3: produc1115495963_state] :
( ( produc789892016tate_o @ C2 @ P3 )
=> ~ ! [X3: state,Y2: state] :
( ( P3
= ( produc64584659_state @ X3 @ Y2 ) )
=> ~ ( C2 @ X3 @ Y2 ) ) ) ).
% case_prodE
thf(fact_293_case__prodE,axiom,
! [C2: nat > nat > $o,P3: product_prod_nat_nat] :
( ( produc949581770_nat_o @ C2 @ P3 )
=> ~ ! [X3: nat,Y2: nat] :
( ( P3
= ( product_Pair_nat_nat @ X3 @ Y2 ) )
=> ~ ( C2 @ X3 @ Y2 ) ) ) ).
% case_prodE
thf(fact_294_total__on__def,axiom,
( total_on_state
= ( ^ [A5: set_state,R3: set_Pr795498619_state] :
! [X: state] :
( ( member_state @ X @ A5 )
=> ! [Y5: state] :
( ( member_state @ Y5 @ A5 )
=> ( ( X != Y5 )
=> ( ( member1389040324_state @ ( produc64584659_state @ X @ Y5 ) @ R3 )
| ( member1389040324_state @ ( produc64584659_state @ Y5 @ X ) @ R3 ) ) ) ) ) ) ) ).
% total_on_def
thf(fact_295_total__on__def,axiom,
( total_on_nat
= ( ^ [A5: set_nat,R3: set_Pr1986765409at_nat] :
! [X: nat] :
( ( member_nat @ X @ A5 )
=> ! [Y5: nat] :
( ( member_nat @ Y5 @ A5 )
=> ( ( X != Y5 )
=> ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y5 ) @ R3 )
| ( member701585322at_nat @ ( product_Pair_nat_nat @ Y5 @ X ) @ R3 ) ) ) ) ) ) ) ).
% total_on_def
thf(fact_296_total__onI,axiom,
! [A2: set_Pr795498619_state,R: set_Pr778812871_state] :
( ! [X3: produc1115495963_state,Y2: produc1115495963_state] :
( ( member1389040324_state @ X3 @ A2 )
=> ( ( member1389040324_state @ Y2 @ A2 )
=> ( ( X3 != Y2 )
=> ( ( member768948240_state @ ( produc1964772951_state @ X3 @ Y2 ) @ R )
| ( member768948240_state @ ( produc1964772951_state @ Y2 @ X3 ) @ R ) ) ) ) )
=> ( total_1316653983_state @ A2 @ R ) ) ).
% total_onI
thf(fact_297_total__onI,axiom,
! [A2: set_Pr1986765409at_nat,R: set_Pr1490359111at_nat] :
( ! [X3: product_prod_nat_nat,Y2: product_prod_nat_nat] :
( ( member701585322at_nat @ X3 @ A2 )
=> ( ( member701585322at_nat @ Y2 @ A2 )
=> ( ( X3 != Y2 )
=> ( ( member2027625872at_nat @ ( produc1168807639at_nat @ X3 @ Y2 ) @ R )
| ( member2027625872at_nat @ ( produc1168807639at_nat @ Y2 @ X3 ) @ R ) ) ) ) )
=> ( total_1775715973at_nat @ A2 @ R ) ) ).
% total_onI
thf(fact_298_total__onI,axiom,
! [A2: set_Pr1590995257tate_o,R: set_Pr1702239303tate_o] :
( ! [X3: produc696469763tate_o,Y2: produc696469763tate_o] :
( ( member1838112666tate_o @ X3 @ A2 )
=> ( ( member1838112666tate_o @ Y2 @ A2 )
=> ( ( X3 != Y2 )
=> ( ( member1629320336tate_o @ ( produc1684562079tate_o @ X3 @ Y2 ) @ R )
| ( member1629320336tate_o @ ( produc1684562079tate_o @ Y2 @ X3 ) @ R ) ) ) ) )
=> ( total_795385983tate_o @ A2 @ R ) ) ).
% total_onI
thf(fact_299_total__onI,axiom,
! [A2: set_state,R: set_Pr795498619_state] :
( ! [X3: state,Y2: state] :
( ( member_state @ X3 @ A2 )
=> ( ( member_state @ Y2 @ A2 )
=> ( ( X3 != Y2 )
=> ( ( member1389040324_state @ ( produc64584659_state @ X3 @ Y2 ) @ R )
| ( member1389040324_state @ ( produc64584659_state @ Y2 @ X3 ) @ R ) ) ) ) )
=> ( total_on_state @ A2 @ R ) ) ).
% total_onI
thf(fact_300_total__onI,axiom,
! [A2: set_nat,R: set_Pr1986765409at_nat] :
( ! [X3: nat,Y2: nat] :
( ( member_nat @ X3 @ A2 )
=> ( ( member_nat @ Y2 @ A2 )
=> ( ( X3 != Y2 )
=> ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X3 @ Y2 ) @ R )
| ( member701585322at_nat @ ( product_Pair_nat_nat @ Y2 @ X3 ) @ R ) ) ) ) )
=> ( total_on_nat @ A2 @ R ) ) ).
% total_onI
thf(fact_301_total__on__empty,axiom,
! [R: set_Pr1986765409at_nat] : ( total_on_nat @ bot_bot_set_nat @ R ) ).
% total_on_empty
thf(fact_302_total__on__empty,axiom,
! [R: set_Pr1702239303tate_o] : ( total_795385983tate_o @ bot_bo170732493tate_o @ R ) ).
% total_on_empty
thf(fact_303_total__on__empty,axiom,
! [R: set_Pr1490359111at_nat] : ( total_1775715973at_nat @ bot_bo2130386637at_nat @ R ) ).
% total_on_empty
thf(fact_304_total__on__empty,axiom,
! [R: set_Pr778812871_state] : ( total_1316653983_state @ bot_bo1625160935_state @ R ) ).
% total_on_empty
thf(fact_305_case__prodE2,axiom,
! [Q: $o > $o,P: state > state > $o,Z5: produc1115495963_state] :
( ( Q @ ( produc789892016tate_o @ P @ Z5 ) )
=> ~ ! [X3: state,Y2: state] :
( ( Z5
= ( produc64584659_state @ X3 @ Y2 ) )
=> ~ ( Q @ ( P @ X3 @ Y2 ) ) ) ) ).
% case_prodE2
thf(fact_306_case__prodE2,axiom,
! [Q: $o > $o,P: nat > nat > $o,Z5: product_prod_nat_nat] :
( ( Q @ ( produc949581770_nat_o @ P @ Z5 ) )
=> ~ ! [X3: nat,Y2: nat] :
( ( Z5
= ( product_Pair_nat_nat @ X3 @ Y2 ) )
=> ~ ( Q @ ( P @ X3 @ Y2 ) ) ) ) ).
% case_prodE2
thf(fact_307_case__prod__eta,axiom,
! [F: produc1115495963_state > $o] :
( ( produc789892016tate_o
@ ^ [X: state,Y5: state] : ( F @ ( produc64584659_state @ X @ Y5 ) ) )
= F ) ).
% case_prod_eta
thf(fact_308_case__prod__eta,axiom,
! [F: product_prod_nat_nat > $o] :
( ( produc949581770_nat_o
@ ^ [X: nat,Y5: nat] : ( F @ ( product_Pair_nat_nat @ X @ Y5 ) ) )
= F ) ).
% case_prod_eta
thf(fact_309_cond__case__prod__eta,axiom,
! [F: state > state > $o,G: produc1115495963_state > $o] :
( ! [X3: state,Y2: state] :
( ( F @ X3 @ Y2 )
= ( G @ ( produc64584659_state @ X3 @ Y2 ) ) )
=> ( ( produc789892016tate_o @ F )
= G ) ) ).
% cond_case_prod_eta
thf(fact_310_cond__case__prod__eta,axiom,
! [F: nat > nat > $o,G: product_prod_nat_nat > $o] :
( ! [X3: nat,Y2: nat] :
( ( F @ X3 @ Y2 )
= ( G @ ( product_Pair_nat_nat @ X3 @ Y2 ) ) )
=> ( ( produc949581770_nat_o @ F )
= G ) ) ).
% cond_case_prod_eta
thf(fact_311_lnear__order__on__empty,axiom,
order_130026331on_nat @ bot_bot_set_nat @ bot_bo2130386637at_nat ).
% lnear_order_on_empty
thf(fact_312_lnear__order__on__empty,axiom,
order_286167592_state @ bot_bot_set_state @ bot_bo1625160935_state ).
% lnear_order_on_empty
thf(fact_313_lnear__order__on__empty,axiom,
order_50454158tate_o @ bot_bo170732493tate_o @ bot_bo1714653363tate_o ).
% lnear_order_on_empty
thf(fact_314_lnear__order__on__empty,axiom,
order_721919926at_nat @ bot_bo2130386637at_nat @ bot_bo34127283at_nat ).
% lnear_order_on_empty
thf(fact_315_lnear__order__on__empty,axiom,
order_178668240_state @ bot_bo1625160935_state @ bot_bo1331673139_state ).
% lnear_order_on_empty
thf(fact_316_refl__on__empty,axiom,
refl_on_nat @ bot_bot_set_nat @ bot_bo2130386637at_nat ).
% refl_on_empty
thf(fact_317_refl__on__empty,axiom,
refl_on_state @ bot_bot_set_state @ bot_bo1625160935_state ).
% refl_on_empty
thf(fact_318_refl__on__empty,axiom,
refl_o489021252tate_o @ bot_bo170732493tate_o @ bot_bo1714653363tate_o ).
% refl_on_empty
thf(fact_319_refl__on__empty,axiom,
refl_o1619599232at_nat @ bot_bo2130386637at_nat @ bot_bo34127283at_nat ).
% refl_on_empty
thf(fact_320_refl__on__empty,axiom,
refl_o1438232218_state @ bot_bo1625160935_state @ bot_bo1331673139_state ).
% refl_on_empty
thf(fact_321_split__cong,axiom,
! [Q5: produc1115495963_state,F: state > state > $o,G: state > state > $o,P3: produc1115495963_state] :
( ! [X3: state,Y2: state] :
( ( ( produc64584659_state @ X3 @ Y2 )
= Q5 )
=> ( ( F @ X3 @ Y2 )
= ( G @ X3 @ Y2 ) ) )
=> ( ( P3 = Q5 )
=> ( ( produc789892016tate_o @ F @ P3 )
= ( produc789892016tate_o @ G @ Q5 ) ) ) ) ).
% split_cong
thf(fact_322_split__cong,axiom,
! [Q5: product_prod_nat_nat,F: nat > nat > $o,G: nat > nat > $o,P3: product_prod_nat_nat] :
( ! [X3: nat,Y2: nat] :
( ( ( product_Pair_nat_nat @ X3 @ Y2 )
= Q5 )
=> ( ( F @ X3 @ Y2 )
= ( G @ X3 @ Y2 ) ) )
=> ( ( P3 = Q5 )
=> ( ( produc949581770_nat_o @ F @ P3 )
= ( produc949581770_nat_o @ G @ Q5 ) ) ) ) ).
% split_cong
thf(fact_323_aboveS__def,axiom,
( order_2027321734_state
= ( ^ [R3: set_Pr778812871_state,A3: produc1115495963_state] :
( collec496201222_state
@ ^ [B7: produc1115495963_state] :
( ( B7 != A3 )
& ( member768948240_state @ ( produc1964772951_state @ A3 @ B7 ) @ R3 ) ) ) ) ) ).
% aboveS_def
thf(fact_324_aboveS__def,axiom,
( order_665764460at_nat
= ( ^ [R3: set_Pr1490359111at_nat,A3: product_prod_nat_nat] :
( collec7649004at_nat
@ ^ [B7: product_prod_nat_nat] :
( ( B7 != A3 )
& ( member2027625872at_nat @ ( produc1168807639at_nat @ A3 @ B7 ) @ R3 ) ) ) ) ) ).
% aboveS_def
thf(fact_325_aboveS__def,axiom,
( order_1121016664tate_o
= ( ^ [R3: set_Pr1702239303tate_o,A3: produc696469763tate_o] :
( collec1499596504tate_o
@ ^ [B7: produc696469763tate_o] :
( ( B7 != A3 )
& ( member1629320336tate_o @ ( produc1684562079tate_o @ A3 @ B7 ) @ R3 ) ) ) ) ) ).
% aboveS_def
thf(fact_326_aboveS__def,axiom,
( order_aboveS_state
= ( ^ [R3: set_Pr795498619_state,A3: state] :
( collect_state
@ ^ [B7: state] :
( ( B7 != A3 )
& ( member1389040324_state @ ( produc64584659_state @ A3 @ B7 ) @ R3 ) ) ) ) ) ).
% aboveS_def
thf(fact_327_aboveS__def,axiom,
( order_aboveS_nat
= ( ^ [R3: set_Pr1986765409at_nat,A3: nat] :
( collect_nat
@ ^ [B7: nat] :
( ( B7 != A3 )
& ( member701585322at_nat @ ( product_Pair_nat_nat @ A3 @ B7 ) @ R3 ) ) ) ) ) ).
% aboveS_def
thf(fact_328_internal__case__prod__def,axiom,
produc938968666tate_o = produc789892016tate_o ).
% internal_case_prod_def
thf(fact_329_internal__case__prod__def,axiom,
produc385877620_nat_o = produc949581770_nat_o ).
% internal_case_prod_def
thf(fact_330_mem__case__prodI2,axiom,
! [P3: product_prod_nat_nat,Z5: produc1115495963_state,C2: nat > nat > set_Pr795498619_state] :
( ! [A6: nat,B6: nat] :
( ( P3
= ( product_Pair_nat_nat @ A6 @ B6 ) )
=> ( member1389040324_state @ Z5 @ ( C2 @ A6 @ B6 ) ) )
=> ( member1389040324_state @ Z5 @ ( produc1654445_state @ C2 @ P3 ) ) ) ).
% mem_case_prodI2
thf(fact_331_mem__case__prodI2,axiom,
! [P3: product_prod_nat_nat,Z5: product_prod_nat_nat,C2: nat > nat > set_Pr1986765409at_nat] :
( ! [A6: nat,B6: nat] :
( ( P3
= ( product_Pair_nat_nat @ A6 @ B6 ) )
=> ( member701585322at_nat @ Z5 @ ( C2 @ A6 @ B6 ) ) )
=> ( member701585322at_nat @ Z5 @ ( produc1915186323at_nat @ C2 @ P3 ) ) ) ).
% mem_case_prodI2
thf(fact_332_mem__case__prodI2,axiom,
! [P3: product_prod_nat_nat,Z5: produc696469763tate_o,C2: nat > nat > set_Pr1590995257tate_o] :
( ! [A6: nat,B6: nat] :
( ( P3
= ( product_Pair_nat_nat @ A6 @ B6 ) )
=> ( member1838112666tate_o @ Z5 @ ( C2 @ A6 @ B6 ) ) )
=> ( member1838112666tate_o @ Z5 @ ( produc1610543495tate_o @ C2 @ P3 ) ) ) ).
% mem_case_prodI2
thf(fact_333_termi__while,axiom,
! [B2: state > $o,C2: com,F: nat > state,K: nat] :
( ( termi @ ( while @ B2 @ C2 ) @ ( F @ K ) )
=> ( ! [I: nat] : ( exec @ ( F @ I ) @ C2 @ ( F @ ( suc @ I ) ) )
=> ? [I: nat] :
~ ( B2 @ ( F @ I ) ) ) ) ).
% termi_while
thf(fact_334_termi__while__lemma,axiom,
! [W: com,Fk: state,F: nat > state,K: nat,B2: state > $o,C2: com] :
( ( termi @ W @ Fk )
=> ( ( ( Fk
= ( F @ K ) )
& ( W
= ( while @ B2 @ C2 ) )
& ! [I: nat] : ( exec @ ( F @ I ) @ C2 @ ( F @ ( suc @ I ) ) ) )
=> ? [I: nat] :
~ ( B2 @ ( F @ I ) ) ) ) ).
% termi_while_lemma
thf(fact_335_execn_Ointros_I7_J,axiom,
! [S2: state,N: nat,T2: state] :
( ( execn @ S2 @ body @ N @ T2 )
=> ( execn @ S2 @ call @ ( suc @ N ) @ T2 ) ) ).
% execn.intros(7)
thf(fact_336_pred__nat__def,axiom,
( pred_nat
= ( collec7649004at_nat
@ ( produc949581770_nat_o
@ ^ [M: nat,N2: nat] :
( N2
= ( suc @ M ) ) ) ) ) ).
% pred_nat_def
thf(fact_337_while__rule,axiom,
! [S2: state,B2: state > $o,C2: com,N: nat,T2: state,P: state > $o] :
( ( execn @ S2 @ ( while @ B2 @ C2 ) @ N @ T2 )
=> ( ( P @ S2 )
=> ( ! [S: state,S3: state] :
( ( P @ S )
=> ( ( B2 @ S )
=> ( ( execn @ S @ C2 @ N @ S3 )
=> ( P @ S3 ) ) ) )
=> ( ( P @ T2 )
& ~ ( B2 @ T2 ) ) ) ) ) ).
% while_rule
thf(fact_338_while__lemma,axiom,
! [S2: state,W: com,N: nat,T2: state,B2: state > $o,C2: com,P: state > $o] :
( ( execn @ S2 @ W @ N @ T2 )
=> ( ( ( W
= ( while @ B2 @ C2 ) )
& ( P @ S2 )
& ! [S: state,S3: state] :
( ( ( P @ S )
& ( B2 @ S )
& ( execn @ S @ C2 @ N @ S3 ) )
=> ( P @ S3 ) ) )
=> ( ( P @ T2 )
& ~ ( B2 @ T2 ) ) ) ) ).
% while_lemma
thf(fact_339_execn_OWhileTrue,axiom,
! [B2: state > $o,S2: state,C2: com,N: nat,T2: state,U2: state] :
( ( B2 @ S2 )
=> ( ( execn @ S2 @ C2 @ N @ T2 )
=> ( ( execn @ T2 @ ( while @ B2 @ C2 ) @ N @ U2 )
=> ( execn @ S2 @ ( while @ B2 @ C2 ) @ N @ U2 ) ) ) ) ).
% execn.WhileTrue
thf(fact_340_execn_OWhileFalse,axiom,
! [B2: state > $o,S2: state,C2: com,N: nat] :
( ~ ( B2 @ S2 )
=> ( execn @ S2 @ ( while @ B2 @ C2 ) @ N @ S2 ) ) ).
% execn.WhileFalse
thf(fact_341_exec__iff__execn,axiom,
( exec
= ( ^ [S4: state,C5: com,T3: state] :
? [N2: nat] : ( execn @ S4 @ C5 @ N2 @ T3 ) ) ) ).
% exec_iff_execn
thf(fact_342_wf__pred__nat,axiom,
wf_nat @ pred_nat ).
% wf_pred_nat
thf(fact_343_termi_OSemi,axiom,
! [C1: com,S0: state,C22: com] :
( ( termi @ C1 @ S0 )
=> ( ! [S1: state] :
( ( exec @ S0 @ C1 @ S1 )
=> ( termi @ C22 @ S1 ) )
=> ( termi @ ( semi @ C1 @ C22 ) @ S0 ) ) ) ).
% termi.Semi
thf(fact_344_com_Oinject_I2_J,axiom,
! [X21: com,X222: com,Y21: com,Y222: com] :
( ( ( semi @ X21 @ X222 )
= ( semi @ Y21 @ Y222 ) )
= ( ( X21 = Y21 )
& ( X222 = Y222 ) ) ) ).
% com.inject(2)
thf(fact_345_execn_Ointros_I2_J,axiom,
! [S0: state,C1: com,N: nat,S12: state,C22: com,S22: state] :
( ( execn @ S0 @ C1 @ N @ S12 )
=> ( ( execn @ S12 @ C22 @ N @ S22 )
=> ( execn @ S0 @ ( semi @ C1 @ C22 ) @ N @ S22 ) ) ) ).
% execn.intros(2)
thf(fact_346_com_Odistinct_I13_J,axiom,
! [X21: com,X222: com,X41: state > $o,X42: com] :
( ( semi @ X21 @ X222 )
!= ( while @ X41 @ X42 ) ) ).
% com.distinct(13)
thf(fact_347_com_Odistinct_I15_J,axiom,
! [X21: com,X222: com] :
( ( semi @ X21 @ X222 )
!= call ) ).
% com.distinct(15)
thf(fact_348_exec_OSemi,axiom,
! [S0: state,C1: com,S12: state,C22: com,S22: state] :
( ( exec @ S0 @ C1 @ S12 )
=> ( ( exec @ S12 @ C22 @ S22 )
=> ( exec @ S0 @ ( semi @ C1 @ C22 ) @ S22 ) ) ) ).
% exec.Semi
thf(fact_349_wf__less__than,axiom,
wf_nat @ less_than ).
% wf_less_than
thf(fact_350_total__on__less__than,axiom,
! [A2: set_nat] : ( total_on_nat @ A2 @ less_than ) ).
% total_on_less_than
thf(fact_351_irrefl__less__than,axiom,
irrefl_nat @ less_than ).
% irrefl_less_than
thf(fact_352_trans__less__than,axiom,
trans_nat @ less_than ).
% trans_less_than
thf(fact_353_less__than__iff,axiom,
! [X2: nat,Y3: nat] :
( ( member701585322at_nat @ ( product_Pair_nat_nat @ X2 @ Y3 ) @ less_than )
= ( ord_less_nat @ X2 @ Y3 ) ) ).
% less_than_iff
% Conjectures (3)
thf(conj_0,hypothesis,
! [S6: state] :
( ( pHoare382919414oare_a
@ ( insert2053719859tate_o
@ ( produc33908149tate_o
@ ^ [Z4: a,S4: state] :
( ( pa @ Z4 @ S4 )
& ( member1389040324_state @ ( produc64584659_state @ S4 @ S6 ) @ r ) )
@ ( produc1948644831tate_o @ call @ qa ) )
@ bot_bo170732493tate_o )
@ ^ [Z4: a,S4: state] :
( ( pa @ Z4 @ S4 )
& ( S4 = S6 ) )
@ body
@ qa )
& ( ( ! [S: state,T: state] :
( ( exec @ S @ body @ T )
=> ! [Z: a] :
( ( ( pa @ Z @ S )
& ( member1389040324_state @ ( produc64584659_state @ S @ S6 ) @ r ) )
=> ( qa @ Z @ T ) ) )
& ! [Z: a,S: state] :
( ( ( pa @ Z @ S )
& ( member1389040324_state @ ( produc64584659_state @ S @ S6 ) @ r ) )
=> ( termi @ body @ S ) ) )
=> ( ! [S7: state,T4: state] :
( ( exec @ S7 @ body @ T4 )
=> ! [Z2: a] :
( ( ( pa @ Z2 @ S7 )
& ( S7 = S6 ) )
=> ( qa @ Z2 @ T4 ) ) )
& ! [Z2: a,S7: state] :
( ( ( pa @ Z2 @ S7 )
& ( S7 = S6 ) )
=> ( termi @ body @ S7 ) ) ) ) ) ).
thf(conj_1,hypothesis,
! [Y4: state] :
( ( member1389040324_state @ ( produc64584659_state @ Y4 @ x ) @ r )
=> ( ! [S7: state,T4: state] :
( ( exec @ S7 @ body @ T4 )
=> ! [Z2: a] :
( ( ( pa @ Z2 @ S7 )
& ( S7 = Y4 ) )
=> ( qa @ Z2 @ T4 ) ) )
& ! [Z2: a,S7: state] :
( ( ( pa @ Z2 @ S7 )
& ( S7 = Y4 ) )
=> ( termi @ body @ S7 ) ) ) ) ).
thf(conj_2,conjecture,
( ! [S: state,T: state] :
( ~ ( exec @ S @ body @ T )
| ! [Z: a] :
( ~ ( pa @ Z @ S )
| ( S != x )
| ( qa @ Z @ T ) ) )
& ! [Z: a,S: state] :
( ~ ( pa @ Z @ S )
| ( S != x )
| ( termi @ body @ S ) ) ) ).
%------------------------------------------------------------------------------