TPTP Problem File: SLH0528^1.p
View Solutions
- Solve Problem
%------------------------------------------------------------------------------
% File : SLH0000^1 : TPTP v8.2.0. Released v8.2.0.
% Domain : Archive of Formal Proofs
% Problem :
% Version : Especial.
% English :
% Refs : [Des23] Desharnais (2023), Email to Geoff Sutcliffe
% Source : [Des23]
% Names : Combinable_Wands/0002_PartialHeapSA/prob_00328_011489__7298334_1 [Des23]
% Status : Theorem
% Rating : ? v8.2.0
% Syntax : Number of formulae : 1551 ( 590 unt; 515 typ; 0 def)
% Number of atoms : 2716 (1726 equ; 0 cnn)
% Maximal formula atoms : 14 ( 2 avg)
% Number of connectives : 7745 ( 437 ~; 54 |; 178 &;6163 @)
% ( 0 <=>; 913 =>; 0 <=; 0 <~>)
% Maximal formula depth : 20 ( 5 avg)
% Number of types : 55 ( 54 usr)
% Number of type conns : 2532 (2532 >; 0 *; 0 +; 0 <<)
% Number of symbols : 464 ( 461 usr; 41 con; 0-4 aty)
% Number of variables : 2799 ( 312 ^;2396 !; 91 ?;2799 :)
% SPC : TH0_THM_EQU_NAR
% Comments : This file was generated by Isabelle (most likely Sledgehammer)
% 2023-01-19 09:08:35.845
%------------------------------------------------------------------------------
% Could-be-implicit typings (54)
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_J,type,
list_P5521618065476132895on_val: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_J,type,
set_Pr4305388979797279737on_val: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
produc1317171644805857433on_val: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J_J,type,
produc5803078220529002682t_char: $tType ).
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__PartialHeapSA__Ostate_J_J,type,
list_P5536455655026101949_state: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__PartialHeapSA__Ostate_J_J,type,
set_Pr6040071838687925911_state: $tType ).
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Mask__Oval_J_J,type,
list_P7552871840895951722al_val: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Mask__Oval_J_J,type,
set_Pr5678771902342202384al_val: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__PartialHeapSA__Ostate_J,type,
produc3589956252253634615_state: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Mask__Oval_J,type,
produc4587312360482870618al_val: $tType ).
thf(ty_n_t__Set__Oset_It__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_J,type,
set_op6240181410663953058on_val: $tType ).
thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
option8887860577033306220on_val: $tType ).
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
list_P8058578141249370668on_val: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
set_Pr7649655576376376530on_val: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
produc9003781588162623004on_val: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J,type,
produc2489117125269924006t_char: $tType ).
thf(ty_n_t__Set__Oset_It__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
set_op8153969091884965280on_val: $tType ).
thf(ty_n_t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
option5747939881698552298on_val: $tType ).
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Mask__Oval_J_J,type,
list_P375024181684815772ar_val: $tType ).
thf(ty_n_t__Set__Oset_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
set_Pr1004501353197068112on_val: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Mask__Oval_J_J,type,
set_Pr7730668076155855478ar_val: $tType ).
thf(ty_n_t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_J,type,
option3572569098863364761r_prat: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
produc3933091914578511633r_prat: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_It__PartialHeapSA__Ostate_J_Mt__Option__Ooption_It__PartialHeapSA__Ostate_J_J,type,
produc3142500478612311029_state: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Mask__Oval_J,type,
produc4494260595660908054ar_val: $tType ).
thf(ty_n_t__List__Olist_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_J,type,
list_P6121108298706723033r_prat: $tType ).
thf(ty_n_t__Set__Oset_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_J,type,
set_Pr3433046674199179443r_prat: $tType ).
thf(ty_n_t__Set__Oset_It__Option__Ooption_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J_J,type,
set_op9137726805559506488t_char: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_It__Mask__Oval_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
produc5122021904355189735on_val: $tType ).
thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J,type,
option2736423997234022232t_char: $tType ).
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J,type,
list_P8003064839462976920t_char: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J,type,
set_Pr2507339680178222706t_char: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
produc1457211279475724562t_char: $tType ).
thf(ty_n_t__Set__Oset_It__Option__Ooption_It__List__Olist_It__String__Ochar_J_J_J,type,
set_option_list_char: $tType ).
thf(ty_n_t__Option__Ooption_It__Option__Ooption_It__PartialHeapSA__Ostate_J_J,type,
option_option_state: $tType ).
thf(ty_n_t__Set__Oset_It__Option__Ooption_It__PartialHeapSA__Ostate_J_J,type,
set_option_state: $tType ).
thf(ty_n_t__Option__Ooption_It__Option__Ooption_It__Mask__Oval_J_J,type,
option_option_val: $tType ).
thf(ty_n_t__Option__Ooption_It__List__Olist_It__String__Ochar_J_J,type,
option_list_char: $tType ).
thf(ty_n_t__Set__Oset_It__Option__Ooption_It__Mask__Oval_J_J,type,
set_option_val: $tType ).
thf(ty_n_t__Set__Oset_It__List__Olist_It__String__Ochar_J_J,type,
set_list_char: $tType ).
thf(ty_n_t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
option_state: $tType ).
thf(ty_n_t__List__Olist_It__PartialHeapSA__Ostate_J,type,
list_state: $tType ).
thf(ty_n_t__Set__Oset_It__PartialHeapSA__Ostate_J,type,
set_state: $tType ).
thf(ty_n_t__Option__Ooption_It__Mask__Oval_J,type,
option_val: $tType ).
thf(ty_n_t__Option__Ooption_It__Nat__Onat_J,type,
option_nat: $tType ).
thf(ty_n_t__List__Olist_It__String__Ochar_J,type,
list_char: $tType ).
thf(ty_n_t__List__Olist_It__Mask__Oval_J,type,
list_val: $tType ).
thf(ty_n_t__List__Olist_It__Nat__Onat_J,type,
list_nat: $tType ).
thf(ty_n_t__Set__Oset_It__Mask__Oval_J,type,
set_val: $tType ).
thf(ty_n_t__Set__Oset_It__Nat__Onat_J,type,
set_nat: $tType ).
thf(ty_n_t__PartialHeapSA__Ostate,type,
state: $tType ).
thf(ty_n_t__PosRat__Oprat,type,
prat: $tType ).
thf(ty_n_t__Mask__Oval,type,
val: $tType ).
thf(ty_n_t__Nat__Onat,type,
nat: $tType ).
% Explicit typings (461)
thf(sy_c_BNF__Def_OGrp_001t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_001t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
bNF_Gr7204040508389623334on_val: set_op6240181410663953058on_val > ( option8887860577033306220on_val > option5747939881698552298on_val ) > option8887860577033306220on_val > option5747939881698552298on_val > $o ).
thf(sy_c_BNF__Def_OGrp_001t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_001t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_J,type,
bNF_Gr4505501571886485853r_prat: set_op6240181410663953058on_val > ( option8887860577033306220on_val > option3572569098863364761r_prat ) > option8887860577033306220on_val > option3572569098863364761r_prat > $o ).
thf(sy_c_BNF__Def_OGrp_001t__Option__Ooption_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J_001t__Option__Ooption_It__List__Olist_It__String__Ochar_J_J,type,
bNF_Gr8228872360220102203t_char: set_op9137726805559506488t_char > ( option2736423997234022232t_char > option_list_char ) > option2736423997234022232t_char > option_list_char > $o ).
thf(sy_c_BNF__Def_OGrp_001t__Option__Ooption_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J_001t__Option__Ooption_It__Nat__Onat_J,type,
bNF_Gr8209631520120356778on_nat: set_op9137726805559506488t_char > ( option2736423997234022232t_char > option_nat ) > option2736423997234022232t_char > option_nat > $o ).
thf(sy_c_BNF__Def_Orel__fun_001t__Mask__Oval_001t__Mask__Oval_001t__Option__Ooption_It__Mask__Oval_J_001t__Option__Ooption_It__Mask__Oval_J,type,
bNF_re7986259651653764189on_val: ( val > val > $o ) > ( option_val > option_val > $o ) > ( val > option_val ) > ( val > option_val ) > $o ).
thf(sy_c_BNF__Def_Orel__fun_001t__Mask__Oval_001t__PartialHeapSA__Ostate_001t__Option__Ooption_It__Mask__Oval_J_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
bNF_re724738890469284915_state: ( val > state > $o ) > ( option_val > option_state > $o ) > ( val > option_val ) > ( state > option_state ) > $o ).
thf(sy_c_BNF__Def_Orel__fun_001t__Option__Ooption_It__Mask__Oval_J_001t__Option__Ooption_It__Mask__Oval_J_001_Eo_001_Eo,type,
bNF_re8803170646668426653al_o_o: ( option_val > option_val > $o ) > ( $o > $o > $o ) > ( option_val > $o ) > ( option_val > $o ) > $o ).
thf(sy_c_BNF__Def_Orel__fun_001t__Option__Ooption_It__Mask__Oval_J_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_001_Eo_001_Eo,type,
bNF_re9208312572002657588te_o_o: ( option_val > option_state > $o ) > ( $o > $o > $o ) > ( option_val > $o ) > ( option_state > $o ) > $o ).
thf(sy_c_BNF__Def_Orel__fun_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_001t__Option__Ooption_It__Mask__Oval_J_001_Eo_001_Eo,type,
bNF_re3324221780734229534al_o_o: ( option_state > option_val > $o ) > ( $o > $o > $o ) > ( option_state > $o ) > ( option_val > $o ) > $o ).
thf(sy_c_BNF__Def_Orel__fun_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_001_Eo_001_Eo,type,
bNF_re6905797707481504115te_o_o: ( option_state > option_state > $o ) > ( $o > $o > $o ) > ( option_state > $o ) > ( option_state > $o ) > $o ).
thf(sy_c_BNF__Def_Orel__fun_001t__PartialHeapSA__Ostate_001t__Mask__Oval_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_001t__Option__Ooption_It__Mask__Oval_J,type,
bNF_re3246193597797267091on_val: ( state > val > $o ) > ( option_state > option_val > $o ) > ( state > option_state ) > ( val > option_val ) > $o ).
thf(sy_c_BNF__Def_Orel__fun_001t__PartialHeapSA__Ostate_001t__PartialHeapSA__Ostate_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
bNF_re349789735553525609_state: ( state > state > $o ) > ( option_state > option_state > $o ) > ( state > option_state ) > ( state > option_state ) > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Mask__Oval,type,
finite_finite_val: set_val > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Option__Ooption_It__Mask__Oval_J,type,
finite4212117559080419824on_val: set_option_val > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
finite3180955649987104801_state: set_option_state > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__PartialHeapSA__Ostate,type,
finite_finite_state: set_state > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
finite8324237431073730739on_val: set_Pr7649655576376376530on_val > $o ).
thf(sy_c_Finite__Set_Ofold_001t__Mask__Oval_001t__Option__Ooption_It__Mask__Oval_J,type,
finite4564359178381958990on_val: ( val > option_val > option_val ) > option_val > set_val > option_val ).
thf(sy_c_Finite__Set_Ofold_001t__PartialHeapSA__Ostate_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
finite8091670487289438734_state: ( state > option_state > option_state ) > option_state > set_state > option_state ).
thf(sy_c_Fun_Obij__betw_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
bij_be532653817181524272on_val: ( produc9003781588162623004on_val > produc9003781588162623004on_val ) > set_Pr7649655576376376530on_val > set_Pr7649655576376376530on_val > $o ).
thf(sy_c_Fun_Ocomp_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_001t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
comp_P4400950274061688490r_prat: ( ( produc1457211279475724562t_char > option_val ) > option5747939881698552298on_val ) > ( ( produc1457211279475724562t_char > prat ) > produc1457211279475724562t_char > option_val ) > ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ).
thf(sy_c_Fun_Ocomp_001t__List__Olist_It__String__Ochar_J_001t__Option__Ooption_It__List__Olist_It__String__Ochar_J_J_001t__Nat__Onat,type,
comp_l4346807716514216519ar_nat: ( list_char > option_list_char ) > ( nat > list_char ) > nat > option_list_char ).
thf(sy_c_Fun_Ocomp_001t__Option__Ooption_It__Mask__Oval_J_001t__Mask__Oval_001t__Mask__Oval,type,
comp_o5604524432708427236al_val: ( option_val > val ) > ( val > option_val ) > val > val ).
thf(sy_c_Fun_Ocomp_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_001t__PartialHeapSA__Ostate_001t__PartialHeapSA__Ostate,type,
comp_o4916166309651032803_state: ( option_state > state ) > ( state > option_state ) > state > state ).
thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
comp_P6513993558795193993on_val: ( produc9003781588162623004on_val > option8887860577033306220on_val ) > ( produc9003781588162623004on_val > produc9003781588162623004on_val ) > produc9003781588162623004on_val > option8887860577033306220on_val ).
thf(sy_c_Fun_Ofun__upd_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
fun_up1601731230164360576on_val: ( ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ) > ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val > ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ).
thf(sy_c_Fun_Ofun__upd_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001t__PosRat__Oprat,type,
fun_up9120501182914450918t_prat: ( ( produc1457211279475724562t_char > prat ) > prat ) > ( produc1457211279475724562t_char > prat ) > prat > ( produc1457211279475724562t_char > prat ) > prat ).
thf(sy_c_Fun_Ofun__upd_001t__Mask__Oval_001t__Option__Ooption_It__List__Olist_It__String__Ochar_J_J,type,
fun_up7032939564753911157t_char: ( val > option_list_char ) > val > option_list_char > val > option_list_char ).
thf(sy_c_Fun_Ofun__upd_001t__Mask__Oval_001t__Option__Ooption_It__Mask__Oval_J,type,
fun_up735531404784515971on_val: ( val > option_val ) > val > option_val > val > option_val ).
thf(sy_c_Fun_Ofun__upd_001t__Mask__Oval_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
fun_up7100790768922270414_state: ( val > option_state ) > val > option_state > val > option_state ).
thf(sy_c_Fun_Ofun__upd_001t__Nat__Onat_001t__Option__Ooption_It__List__Olist_It__String__Ochar_J_J,type,
fun_up4009399622604172288t_char: ( nat > option_list_char ) > nat > option_list_char > nat > option_list_char ).
thf(sy_c_Fun_Ofun__upd_001t__Nat__Onat_001t__Option__Ooption_It__Mask__Oval_J,type,
fun_up810121132392276792on_val: ( nat > option_val ) > nat > option_val > nat > option_val ).
thf(sy_c_Fun_Ofun__upd_001t__Nat__Onat_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
fun_up5089051266557015257_state: ( nat > option_state ) > nat > option_state > nat > option_state ).
thf(sy_c_Fun_Ofun__upd_001t__Option__Ooption_It__Mask__Oval_J_001t__Option__Ooption_It__Mask__Oval_J,type,
fun_up8761876891205509693on_val: ( option_val > option_val ) > option_val > option_val > option_val > option_val ).
thf(sy_c_Fun_Ofun__upd_001t__Option__Ooption_It__Mask__Oval_J_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
fun_up2039547756584784788_state: ( option_val > option_state ) > option_val > option_state > option_val > option_state ).
thf(sy_c_Fun_Ofun__upd_001t__PartialHeapSA__Ostate_001t__PosRat__Oprat,type,
fun_upd_state_prat: ( state > prat ) > state > prat > state > prat ).
thf(sy_c_Fun_Ofun__upd_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Option__Ooption_It__Mask__Oval_J,type,
fun_up8559965269643824108on_val: ( produc9003781588162623004on_val > option_val ) > produc9003781588162623004on_val > option_val > produc9003781588162623004on_val > option_val ).
thf(sy_c_Fun_Ofun__upd_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
fun_up6681822530636708645_state: ( produc9003781588162623004on_val > option_state ) > produc9003781588162623004on_val > option_state > produc9003781588162623004on_val > option_state ).
thf(sy_c_Fun_Ofun__upd_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
fun_up273046073882939271on_val: ( produc9003781588162623004on_val > option8887860577033306220on_val ) > produc9003781588162623004on_val > option8887860577033306220on_val > produc9003781588162623004on_val > option8887860577033306220on_val ).
thf(sy_c_Fun_Ofun__upd_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__PosRat__Oprat,type,
fun_up322103695952382443l_prat: ( produc9003781588162623004on_val > prat ) > produc9003781588162623004on_val > prat > produc9003781588162623004on_val > prat ).
thf(sy_c_Fun_Ofun__upd_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Option__Ooption_It__Mask__Oval_J,type,
fun_up5735975307950539954on_val: ( produc1457211279475724562t_char > option_val ) > produc1457211279475724562t_char > option_val > produc1457211279475724562t_char > option_val ).
thf(sy_c_Fun_Ofun__upd_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__PosRat__Oprat,type,
fun_up829850848796697765r_prat: ( produc1457211279475724562t_char > prat ) > produc1457211279475724562t_char > prat > produc1457211279475724562t_char > prat ).
thf(sy_c_Fun_Ofun__upd_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_001t__PosRat__Oprat,type,
fun_up4040928134582614060l_prat: ( produc1317171644805857433on_val > prat ) > produc1317171644805857433on_val > prat > produc1317171644805857433on_val > prat ).
thf(sy_c_Fun_Oid_001t__Mask__Oval,type,
id_val: val > val ).
thf(sy_c_Fun_Oid_001t__PartialHeapSA__Ostate,type,
id_state: state > state ).
thf(sy_c_Fun_Oinj__on_001t__Mask__Oval_001t__Option__Ooption_It__Mask__Oval_J,type,
inj_on4074814566786472055on_val: ( val > option_val ) > set_val > $o ).
thf(sy_c_Fun_Oinj__on_001t__PartialHeapSA__Ostate_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
inj_on3577428053172332983_state: ( state > option_state ) > set_state > $o ).
thf(sy_c_Fun_Oinj__on_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
inj_on3812695684120442372r_prat: ( produc9003781588162623004on_val > produc1457211279475724562t_char > prat ) > set_Pr7649655576376376530on_val > $o ).
thf(sy_c_Fun_Oinj__on_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
inj_on7948954794846770859on_val: ( produc9003781588162623004on_val > produc9003781588162623004on_val ) > set_Pr7649655576376376530on_val > $o ).
thf(sy_c_Fun_Oinj__on_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Nat__Onat,type,
inj_on2499120878504899377ar_nat: ( produc1457211279475724562t_char > nat ) > set_Pr2507339680178222706t_char > $o ).
thf(sy_c_Fun_Oinj__on_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Option__Ooption_It__Mask__Oval_J,type,
inj_on4474484569326248358on_val: ( produc1457211279475724562t_char > option_val ) > set_Pr2507339680178222706t_char > $o ).
thf(sy_c_Fun_Othe__inv__into_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
the_in8616418995011220461on_val: set_Pr7649655576376376530on_val > ( produc9003781588162623004on_val > produc9003781588162623004on_val ) > produc9003781588162623004on_val > produc9003781588162623004on_val ).
thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
minus_9160195963678339755on_val: set_Pr7649655576376376530on_val > set_Pr7649655576376376530on_val > set_Pr7649655576376376530on_val ).
thf(sy_c_If_001t__Mask__Oval,type,
if_val: $o > val > val > val ).
thf(sy_c_If_001t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
if_opt6509584284076893604on_val: $o > option5747939881698552298on_val > option5747939881698552298on_val > option5747939881698552298on_val ).
thf(sy_c_If_001t__Option__Ooption_It__List__Olist_It__String__Ochar_J_J,type,
if_option_list_char: $o > option_list_char > option_list_char > option_list_char ).
thf(sy_c_If_001t__Option__Ooption_It__Mask__Oval_J,type,
if_option_val: $o > option_val > option_val > option_val ).
thf(sy_c_If_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
if_option_state: $o > option_state > option_state > option_state ).
thf(sy_c_If_001t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
if_opt2965748431298708774on_val: $o > option8887860577033306220on_val > option8887860577033306220on_val > option8887860577033306220on_val ).
thf(sy_c_If_001t__PosRat__Oprat,type,
if_prat: $o > prat > prat > prat ).
thf(sy_c_Lattices_Oinf__class_Oinf_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J,type,
inf_in3544766959038609504t_char: set_Pr2507339680178222706t_char > set_Pr2507339680178222706t_char > set_Pr2507339680178222706t_char ).
thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Mask__Oval_J,type,
sup_sup_set_val: set_val > set_val > set_val ).
thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
sup_su7506060154676209150on_val: set_Pr7649655576376376530on_val > set_Pr7649655576376376530on_val > set_Pr7649655576376376530on_val ).
thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J,type,
sup_su7899656352754981958t_char: set_Pr2507339680178222706t_char > set_Pr2507339680178222706t_char > set_Pr2507339680178222706t_char ).
thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Mask__Oval_J_J,type,
sup_su5754804325903363146ar_val: set_Pr7730668076155855478ar_val > set_Pr7730668076155855478ar_val > set_Pr7730668076155855478ar_val ).
thf(sy_c_Lattices__Big_Osemilattice__set_001t__Mask__Oval,type,
lattic1688671459694253327et_val: ( val > val > val ) > $o ).
thf(sy_c_Lattices__Big_Osemilattice__set_001t__PartialHeapSA__Ostate,type,
lattic1830746154417612460_state: ( state > state > state ) > $o ).
thf(sy_c_Lattices__Big_Osemilattice__set_OF_001t__Mask__Oval,type,
lattic7553830378228561755_F_val: ( val > val > val ) > set_val > val ).
thf(sy_c_Lattices__Big_Osemilattice__set_OF_001t__PartialHeapSA__Ostate,type,
lattic8707496982837646688_state: ( state > state > state ) > set_state > state ).
thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Mask__Oval_J,type,
append2405376958821693873ar_val: list_P375024181684815772ar_val > list_P375024181684815772ar_val > list_P375024181684815772ar_val ).
thf(sy_c_List_Odistinct_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
distin8840078896927665228r_prat: list_P6121108298706723033r_prat > $o ).
thf(sy_c_List_Odistinct_001t__Nat__Onat,type,
distinct_nat: list_nat > $o ).
thf(sy_c_List_Odistinct_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
distin602967888454099555on_val: list_P8058578141249370668on_val > $o ).
thf(sy_c_List_Ofind_001t__Mask__Oval,type,
find_val: ( val > $o ) > list_val > option_val ).
thf(sy_c_List_Ofind_001t__PartialHeapSA__Ostate,type,
find_state: ( state > $o ) > list_state > option_state ).
thf(sy_c_List_Ofind_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
find_P7418167508921316608on_val: ( produc9003781588162623004on_val > $o ) > list_P8058578141249370668on_val > option8887860577033306220on_val ).
thf(sy_c_List_Ofoldr_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Mask__Oval_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
foldr_426452288693369417on_val: ( produc4494260595660908054ar_val > ( produc1457211279475724562t_char > option_val ) > produc1457211279475724562t_char > option_val ) > list_P375024181684815772ar_val > ( produc1457211279475724562t_char > option_val ) > produc1457211279475724562t_char > option_val ).
thf(sy_c_List_Olist_OCons_001t__Mask__Oval,type,
cons_val: val > list_val > list_val ).
thf(sy_c_List_Olist_OCons_001t__PartialHeapSA__Ostate,type,
cons_state: state > list_state > list_state ).
thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
cons_P1300772314254706406on_val: produc9003781588162623004on_val > list_P8058578141249370668on_val > list_P8058578141249370668on_val ).
thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
cons_P6700496888814104776t_char: produc1457211279475724562t_char > list_P8003064839462976920t_char > list_P8003064839462976920t_char ).
thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
cons_P1869654434729225551on_val: produc1317171644805857433on_val > list_P5521618065476132895on_val > list_P5521618065476132895on_val ).
thf(sy_c_List_Olist_ONil_001t__Mask__Oval,type,
nil_val: list_val ).
thf(sy_c_List_Olist_ONil_001t__PartialHeapSA__Ostate,type,
nil_state: list_state ).
thf(sy_c_List_Olist_Omap_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
map_Pr6126389625903360171on_val: ( ( produc1457211279475724562t_char > prat ) > produc9003781588162623004on_val ) > list_P6121108298706723033r_prat > list_P8058578141249370668on_val ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
map_na9203830342147005692t_char: ( nat > produc1457211279475724562t_char ) > list_nat > list_P8003064839462976920t_char ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
map_Pr7735014948560838385r_prat: ( produc9003781588162623004on_val > produc1457211279475724562t_char > prat ) > list_P8058578141249370668on_val > list_P6121108298706723033r_prat ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Mask__Oval,type,
map_Pr201512126527963679al_val: ( produc9003781588162623004on_val > val ) > list_P8058578141249370668on_val > list_val ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__PartialHeapSA__Ostate,type,
map_Pr4168196228874954140_state: ( produc9003781588162623004on_val > state ) > list_P8058578141249370668on_val > list_state ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
map_Pr6762588844207200055on_val: ( produc9003781588162623004on_val > produc1317171644805857433on_val ) > list_P8058578141249370668on_val > list_P5521618065476132895on_val ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Nat__Onat,type,
map_Pr2525441637447625118ar_nat: ( produc1457211279475724562t_char > nat ) > list_P8003064839462976920t_char > list_nat ).
thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
map_Pr2662348860696421617on_val: ( produc1317171644805857433on_val > produc9003781588162623004on_val ) > list_P5521618065476132895on_val > list_P8058578141249370668on_val ).
thf(sy_c_List_Olist_Oset_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
set_Pr7516010431435912040r_prat: list_P6121108298706723033r_prat > set_Pr3433046674199179443r_prat ).
thf(sy_c_List_Olist_Oset_001t__Mask__Oval,type,
set_val2: list_val > set_val ).
thf(sy_c_List_Olist_Oset_001t__Nat__Onat,type,
set_nat2: list_nat > set_nat ).
thf(sy_c_List_Olist_Oset_001t__PartialHeapSA__Ostate,type,
set_state2: list_state > set_state ).
thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
set_Pr1015909255637879367on_val: list_P8058578141249370668on_val > set_Pr7649655576376376530on_val ).
thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
set_Pr4422032998922688679t_char: list_P8003064839462976920t_char > set_Pr2507339680178222706t_char ).
thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Mask__Oval_J,type,
set_Pr8419001214735528069al_val: list_P7552871840895951722al_val > set_Pr5678771902342202384al_val ).
thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__PartialHeapSA__Ostate_J,type,
set_Pr5697038692337814348_state: list_P5536455655026101949_state > set_Pr6040071838687925911_state ).
thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
set_Pr5935206576607725998on_val: list_P5521618065476132895on_val > set_Pr4305388979797279737on_val ).
thf(sy_c_List_Onth_001t__Mask__Oval,type,
nth_val: list_val > nat > val ).
thf(sy_c_List_Onth_001t__PartialHeapSA__Ostate,type,
nth_state: list_state > nat > state ).
thf(sy_c_List_Orev_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Mask__Oval_J,type,
rev_Pr6055279906267038332ar_val: list_P375024181684815772ar_val > list_P375024181684815772ar_val ).
thf(sy_c_List_Otake_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
take_P84704344506987694on_val: nat > list_P8058578141249370668on_val > list_P8058578141249370668on_val ).
thf(sy_c_List_Ozip_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Mask__Oval,type,
zip_Pr897381525307642348al_val: list_P8058578141249370668on_val > list_val > list_P7552871840895951722al_val ).
thf(sy_c_List_Ozip_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__PartialHeapSA__Ostate,type,
zip_Pr183230366627191183_state: list_P8058578141249370668on_val > list_state > list_P5536455655026101949_state ).
thf(sy_c_List_Ozip_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Mask__Oval,type,
zip_Pr909124973800381606ar_val: list_P8003064839462976920t_char > list_val > list_P375024181684815772ar_val ).
thf(sy_c_Map_Odom_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
dom_Pr4152820065153570843on_val: ( ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ) > set_Pr3433046674199179443r_prat ).
thf(sy_c_Map_Odom_001t__Mask__Oval_001t__List__Olist_It__String__Ochar_J,type,
dom_val_list_char: ( val > option_list_char ) > set_val ).
thf(sy_c_Map_Odom_001t__Mask__Oval_001t__Mask__Oval,type,
dom_val_val: ( val > option_val ) > set_val ).
thf(sy_c_Map_Odom_001t__Mask__Oval_001t__PartialHeapSA__Ostate,type,
dom_val_state: ( val > option_state ) > set_val ).
thf(sy_c_Map_Odom_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J,type,
dom_nat_list_char: ( nat > option_list_char ) > set_nat ).
thf(sy_c_Map_Odom_001t__Nat__Onat_001t__Mask__Oval,type,
dom_nat_val: ( nat > option_val ) > set_nat ).
thf(sy_c_Map_Odom_001t__Nat__Onat_001t__PartialHeapSA__Ostate,type,
dom_nat_state: ( nat > option_state ) > set_nat ).
thf(sy_c_Map_Odom_001t__Option__Ooption_It__Mask__Oval_J_001t__List__Olist_It__String__Ochar_J,type,
dom_op1123738440007651926t_char: ( option_val > option_list_char ) > set_option_val ).
thf(sy_c_Map_Odom_001t__Option__Ooption_It__Mask__Oval_J_001t__Mask__Oval,type,
dom_option_val_val: ( option_val > option_val ) > set_option_val ).
thf(sy_c_Map_Odom_001t__Option__Ooption_It__Mask__Oval_J_001t__PartialHeapSA__Ostate,type,
dom_option_val_state: ( option_val > option_state ) > set_option_val ).
thf(sy_c_Map_Odom_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_001t__List__Olist_It__String__Ochar_J,type,
dom_op2927896937727732287t_char: ( option_state > option_list_char ) > set_option_state ).
thf(sy_c_Map_Odom_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_001t__Mask__Oval,type,
dom_option_state_val: ( option_state > option_val ) > set_option_state ).
thf(sy_c_Map_Odom_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_001t__PartialHeapSA__Ostate,type,
dom_op8569336450220619928_state: ( option_state > option_state ) > set_option_state ).
thf(sy_c_Map_Odom_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Mask__Oval,type,
dom_Pr7381289304162206737al_val: ( produc9003781588162623004on_val > option_val ) > set_Pr7649655576376376530on_val ).
thf(sy_c_Map_Odom_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__PartialHeapSA__Ostate,type,
dom_Pr4448331044451638570_state: ( produc9003781588162623004on_val > option_state ) > set_Pr7649655576376376530on_val ).
thf(sy_c_Map_Odom_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
dom_Pr2742230247756046988on_val: ( produc9003781588162623004on_val > option8887860577033306220on_val ) > set_Pr7649655576376376530on_val ).
thf(sy_c_Map_Odom_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Mask__Oval,type,
dom_Pr8989479155164304065ar_val: ( produc1457211279475724562t_char > option_val ) > set_Pr2507339680178222706t_char ).
thf(sy_c_Map_Ograph_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
graph_1288227317702120175on_val: ( ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ) > set_Pr7649655576376376530on_val ).
thf(sy_c_Map_Ograph_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J,type,
graph_nat_list_char: ( nat > option_list_char ) > set_Pr2507339680178222706t_char ).
thf(sy_c_Map_Ograph_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
graph_6108330199704490680on_val: ( produc9003781588162623004on_val > option8887860577033306220on_val ) > set_Pr4305388979797279737on_val ).
thf(sy_c_Map_Ograph_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Mask__Oval,type,
graph_1733029056113894637ar_val: ( produc1457211279475724562t_char > option_val ) > set_Pr7730668076155855478ar_val ).
thf(sy_c_Map_Omap__add_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
map_ad2898753242718228216on_val: ( ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ) > ( ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ) > ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ).
thf(sy_c_Map_Omap__add_001t__Mask__Oval_001t__List__Olist_It__String__Ochar_J,type,
map_ad6513282191902725485t_char: ( val > option_list_char ) > ( val > option_list_char ) > val > option_list_char ).
thf(sy_c_Map_Omap__add_001t__Mask__Oval_001t__Mask__Oval,type,
map_add_val_val: ( val > option_val ) > ( val > option_val ) > val > option_val ).
thf(sy_c_Map_Omap__add_001t__Mask__Oval_001t__PartialHeapSA__Ostate,type,
map_add_val_state: ( val > option_state ) > ( val > option_state ) > val > option_state ).
thf(sy_c_Map_Omap__add_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J,type,
map_ad208561015412637672t_char: ( nat > option_list_char ) > ( nat > option_list_char ) > nat > option_list_char ).
thf(sy_c_Map_Omap__add_001t__Nat__Onat_001t__Mask__Oval,type,
map_add_nat_val: ( nat > option_val ) > ( nat > option_val ) > nat > option_val ).
thf(sy_c_Map_Omap__add_001t__Nat__Onat_001t__PartialHeapSA__Ostate,type,
map_add_nat_state: ( nat > option_state ) > ( nat > option_state ) > nat > option_state ).
thf(sy_c_Map_Omap__add_001t__Option__Ooption_It__Mask__Oval_J_001t__Mask__Oval,type,
map_ad2791809220819668783al_val: ( option_val > option_val ) > ( option_val > option_val ) > option_val > option_val ).
thf(sy_c_Map_Omap__add_001t__Option__Ooption_It__Mask__Oval_J_001t__PartialHeapSA__Ostate,type,
map_ad1596397661948740748_state: ( option_val > option_state ) > ( option_val > option_state ) > option_val > option_state ).
thf(sy_c_Map_Omap__add_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Mask__Oval,type,
map_ad5466549115852757998al_val: ( produc9003781588162623004on_val > option_val ) > ( produc9003781588162623004on_val > option_val ) > produc9003781588162623004on_val > option_val ).
thf(sy_c_Map_Omap__add_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__PartialHeapSA__Ostate,type,
map_ad2629041965313307917_state: ( produc9003781588162623004on_val > option_state ) > ( produc9003781588162623004on_val > option_state ) > produc9003781588162623004on_val > option_state ).
thf(sy_c_Map_Omap__add_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
map_ad6375351378680859759on_val: ( produc9003781588162623004on_val > option8887860577033306220on_val ) > ( produc9003781588162623004on_val > option8887860577033306220on_val ) > produc9003781588162623004on_val > option8887860577033306220on_val ).
thf(sy_c_Map_Omap__add_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Mask__Oval,type,
map_ad2908576761495157028ar_val: ( produc1457211279475724562t_char > option_val ) > ( produc1457211279475724562t_char > option_val ) > produc1457211279475724562t_char > option_val ).
thf(sy_c_Map_Omap__le_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
map_le7591542393800649736on_val: ( ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ) > ( ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ) > $o ).
thf(sy_c_Map_Omap__le_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J,type,
map_le_nat_list_char: ( nat > option_list_char ) > ( nat > option_list_char ) > $o ).
thf(sy_c_Map_Omap__le_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Mask__Oval,type,
map_le662008219874789630al_val: ( produc9003781588162623004on_val > option_val ) > ( produc9003781588162623004on_val > option_val ) > $o ).
thf(sy_c_Map_Omap__le_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__PartialHeapSA__Ostate,type,
map_le2714403320317326333_state: ( produc9003781588162623004on_val > option_state ) > ( produc9003781588162623004on_val > option_state ) > $o ).
thf(sy_c_Map_Omap__le_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
map_le1786601613863086943on_val: ( produc9003781588162623004on_val > option8887860577033306220on_val ) > ( produc9003781588162623004on_val > option8887860577033306220on_val ) > $o ).
thf(sy_c_Map_Omap__le_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Mask__Oval,type,
map_le3432596473071271956ar_val: ( produc1457211279475724562t_char > option_val ) > ( produc1457211279475724562t_char > option_val ) > $o ).
thf(sy_c_Map_Omap__of_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
map_of8940823041123231434on_val: list_P8058578141249370668on_val > ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ).
thf(sy_c_Map_Omap__of_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J,type,
map_of_nat_list_char: list_P8003064839462976920t_char > nat > option_list_char ).
thf(sy_c_Map_Omap__of_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Mask__Oval,type,
map_of5667034440649354688al_val: list_P7552871840895951722al_val > produc9003781588162623004on_val > option_val ).
thf(sy_c_Map_Omap__of_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__PartialHeapSA__Ostate,type,
map_of2328580218031654075_state: list_P5536455655026101949_state > produc9003781588162623004on_val > option_state ).
thf(sy_c_Map_Omap__of_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
map_of2499293770471829533on_val: list_P5521618065476132895on_val > produc9003781588162623004on_val > option8887860577033306220on_val ).
thf(sy_c_Map_Omap__of_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Mask__Oval,type,
map_of6844234013878170066ar_val: list_P375024181684815772ar_val > produc1457211279475724562t_char > option_val ).
thf(sy_c_Map_Omap__upds_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Mask__Oval,type,
map_up8749164644216650349al_val: ( produc9003781588162623004on_val > option_val ) > list_P8058578141249370668on_val > list_val > produc9003781588162623004on_val > option_val ).
thf(sy_c_Map_Omap__upds_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__PartialHeapSA__Ostate,type,
map_up1579866409222595534_state: ( produc9003781588162623004on_val > option_state ) > list_P8058578141249370668on_val > list_state > produc9003781588162623004on_val > option_state ).
thf(sy_c_Map_Omap__upds_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Mask__Oval,type,
map_up5062815548473444197ar_val: ( produc1457211279475724562t_char > option_val ) > list_P8003064839462976920t_char > list_val > produc1457211279475724562t_char > option_val ).
thf(sy_c_Map_Oran_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
ran_Pr878516737976613822on_val: ( ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ) > set_Pr1004501353197068112on_val ).
thf(sy_c_Map_Oran_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J,type,
ran_nat_list_char: ( nat > option_list_char ) > set_list_char ).
thf(sy_c_Map_Oran_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Mask__Oval,type,
ran_Pr786515303459910110ar_val: ( produc1457211279475724562t_char > option_val ) > set_val ).
thf(sy_c_Map_Orestrict__map_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
restri7594233908965391805on_val: ( ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ) > set_Pr3433046674199179443r_prat > ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val ).
thf(sy_c_Map_Orestrict__map_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J,type,
restri7497266720855523683t_char: ( nat > option_list_char ) > set_nat > nat > option_list_char ).
thf(sy_c_Map_Orestrict__map_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Mask__Oval,type,
restri5251746167140823987al_val: ( produc9003781588162623004on_val > option_val ) > set_Pr7649655576376376530on_val > produc9003781588162623004on_val > option_val ).
thf(sy_c_Map_Orestrict__map_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__PartialHeapSA__Ostate,type,
restri5336766904122854152_state: ( produc9003781588162623004on_val > option_state ) > set_Pr7649655576376376530on_val > produc9003781588162623004on_val > option_state ).
thf(sy_c_Map_Orestrict__map_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
restri2354629191430751338on_val: ( produc9003781588162623004on_val > option8887860577033306220on_val ) > set_Pr7649655576376376530on_val > produc9003781588162623004on_val > option8887860577033306220on_val ).
thf(sy_c_Mask_Oadd__acc_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
add_ac6043276672051819257t_char: ( produc1457211279475724562t_char > prat ) > produc1457211279475724562t_char > prat > produc1457211279475724562t_char > prat ).
thf(sy_c_Mask_Oadd__masks_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
add_ma5081279659257173972r_prat: ( ( produc1457211279475724562t_char > prat ) > prat ) > ( ( produc1457211279475724562t_char > prat ) > prat ) > ( produc1457211279475724562t_char > prat ) > prat ).
thf(sy_c_Mask_Oadd__masks_001t__PartialHeapSA__Ostate,type,
add_masks_state: ( state > prat ) > ( state > prat ) > state > prat ).
thf(sy_c_Mask_Oadd__masks_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
add_ma7175289307942684891on_val: ( produc9003781588162623004on_val > prat ) > ( produc9003781588162623004on_val > prat ) > produc9003781588162623004on_val > prat ).
thf(sy_c_Mask_Oadd__masks_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
add_ma6586698345353345811t_char: ( produc1457211279475724562t_char > prat ) > ( produc1457211279475724562t_char > prat ) > produc1457211279475724562t_char > prat ).
thf(sy_c_Mask_Oadd__masks_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
add_ma2842950146128053786on_val: ( produc1317171644805857433on_val > prat ) > ( produc1317171644805857433on_val > prat ) > produc1317171644805857433on_val > prat ).
thf(sy_c_Mask_Oadd__masks__rel_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
add_ma2412268806269088278t_char: produc5803078220529002682t_char > produc5803078220529002682t_char > $o ).
thf(sy_c_Mask_Oempty__mask_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
empty_6616431780912394577r_prat: ( produc1457211279475724562t_char > prat ) > prat ).
thf(sy_c_Mask_Oempty__mask_001t__PartialHeapSA__Ostate,type,
empty_mask_state: state > prat ).
thf(sy_c_Mask_Oempty__mask_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
empty_6102255041883331742on_val: produc9003781588162623004on_val > prat ).
thf(sy_c_Mask_Oempty__mask_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
empty_3446695950879338768t_char: produc1457211279475724562t_char > prat ).
thf(sy_c_Mask_Oempty__mask_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
empty_4129289814623480215on_val: produc1317171644805857433on_val > prat ).
thf(sy_c_Mask_Oempty__mask__rel_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
empty_3412554051312619034r_prat: ( produc1457211279475724562t_char > prat ) > ( produc1457211279475724562t_char > prat ) > $o ).
thf(sy_c_Mask_Oempty__mask__rel_001t__PartialHeapSA__Ostate,type,
empty_mask_rel_state: state > state > $o ).
thf(sy_c_Mask_Oempty__mask__rel_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
empty_5847456986941130773on_val: produc9003781588162623004on_val > produc9003781588162623004on_val > $o ).
thf(sy_c_Mask_Oempty__mask__rel_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
empty_8141283858255108185t_char: produc1457211279475724562t_char > produc1457211279475724562t_char > $o ).
thf(sy_c_Mask_Oempty__mask__rel_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
empty_1698368654852286560on_val: produc1317171644805857433on_val > produc1317171644805857433on_val > $o ).
thf(sy_c_Mask_Ofull__mask,type,
full_mask: produc1457211279475724562t_char > prat ).
thf(sy_c_Mask_Ogreater__mask_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
greate7680731506090375811t_char: ( produc1457211279475724562t_char > prat ) > ( produc1457211279475724562t_char > prat ) > $o ).
thf(sy_c_Mask_Omultiply__mask,type,
multiply_mask: prat > ( produc1457211279475724562t_char > prat ) > produc1457211279475724562t_char > prat ).
thf(sy_c_Mask_Onull_001t__Nat__Onat,type,
null_nat: nat ).
thf(sy_c_Mask_Opre__get__h_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
pre_ge1486375753531218896on_val: produc9003781588162623004on_val > produc1457211279475724562t_char > option_val ).
thf(sy_c_Mask_Opre__get__h_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
pre_ge5139353195879713175on_val: produc1317171644805857433on_val > produc9003781588162623004on_val ).
thf(sy_c_Mask_Opre__get__h__rel_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
pre_ge6140436789258014353on_val: produc9003781588162623004on_val > produc9003781588162623004on_val > $o ).
thf(sy_c_Mask_Opre__get__h__rel_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
pre_ge7436079647097740950on_val: produc1317171644805857433on_val > produc1317171644805857433on_val > $o ).
thf(sy_c_Mask_Opre__get__m_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
pre_ge8481574585653477131on_val: produc9003781588162623004on_val > produc1457211279475724562t_char > prat ).
thf(sy_c_Mask_Opre__get__m_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J,type,
pre_ge2740421702909910421t_char: produc1457211279475724562t_char > nat ).
thf(sy_c_Mask_Opre__get__m_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
pre_ge6899797224320663452on_val: produc1317171644805857433on_val > produc9003781588162623004on_val ).
thf(sy_c_Mask_Opre__get__m__rel_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
pre_ge4462515927930180886on_val: produc9003781588162623004on_val > produc9003781588162623004on_val > $o ).
thf(sy_c_Mask_Opre__get__m__rel_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J,type,
pre_ge8748858970926381898t_char: produc1457211279475724562t_char > produc1457211279475724562t_char > $o ).
thf(sy_c_Mask_Opre__get__m__rel_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
pre_ge1694281482089598673on_val: produc1317171644805857433on_val > produc1317171644805857433on_val > $o ).
thf(sy_c_Mask_Ouni__mask_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
uni_ma8757825773229499086r_prat: ( produc1457211279475724562t_char > prat ) > prat > ( produc1457211279475724562t_char > prat ) > prat ).
thf(sy_c_Mask_Ouni__mask_001t__PartialHeapSA__Ostate,type,
uni_mask_state: state > prat > state > prat ).
thf(sy_c_Mask_Ouni__mask_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
uni_ma3016027189315475553on_val: produc9003781588162623004on_val > prat > produc9003781588162623004on_val > prat ).
thf(sy_c_Mask_Ouni__mask_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
uni_ma6578582744724537101t_char: produc1457211279475724562t_char > prat > produc1457211279475724562t_char > prat ).
thf(sy_c_Mask_Ouni__mask_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
uni_ma2802115457281451284on_val: produc1317171644805857433on_val > prat > produc1317171644805857433on_val > prat ).
thf(sy_c_Mask_Ouni__mask__rel_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
uni_ma1788645471123007132t_char: produc3933091914578511633r_prat > produc3933091914578511633r_prat > $o ).
thf(sy_c_Mask_Oupdate__dm_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
update5099441844846592839t_char: ( produc1457211279475724562t_char > $o ) > ( produc1457211279475724562t_char > prat ) > ( produc1457211279475724562t_char > prat ) > produc1457211279475724562t_char > $o ).
thf(sy_c_Mask_Oupper__bounded,type,
upper_bounded: ( produc1457211279475724562t_char > prat ) > prat > $o ).
thf(sy_c_Mask_Ovalid__mask,type,
valid_mask: ( produc1457211279475724562t_char > prat ) > $o ).
thf(sy_c_Mask_Ovalid__mask__rel,type,
valid_mask_rel: ( produc1457211279475724562t_char > prat ) > ( produc1457211279475724562t_char > prat ) > $o ).
thf(sy_c_Mask_Ovalid__null,type,
valid_null: ( produc1457211279475724562t_char > prat ) > $o ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Mask__Oval_J,type,
size_size_list_val: list_val > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__PartialHeapSA__Ostate_J,type,
size_size_list_state: list_state > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
size_s4492361580139269312on_val: list_P8058578141249370668on_val > nat ).
thf(sy_c_Option_Obind_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
bind_P4424090778364213876on_val: option5747939881698552298on_val > ( ( produc1457211279475724562t_char > option_val ) > option5747939881698552298on_val ) > option5747939881698552298on_val ).
thf(sy_c_Option_Obind_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_001t__Mask__Oval,type,
bind_P5848121846087789735al_val: option5747939881698552298on_val > ( ( produc1457211279475724562t_char > option_val ) > option_val ) > option_val ).
thf(sy_c_Option_Obind_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_001t__PartialHeapSA__Ostate,type,
bind_P6102080752330912020_state: option5747939881698552298on_val > ( ( produc1457211279475724562t_char > option_val ) > option_state ) > option_state ).
thf(sy_c_Option_Obind_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J,type,
bind_l7575086113700739714t_char: option_list_char > ( list_char > option_list_char ) > option_list_char ).
thf(sy_c_Option_Obind_001t__List__Olist_It__String__Ochar_J_001t__Mask__Oval,type,
bind_list_char_val: option_list_char > ( list_char > option_val ) > option_val ).
thf(sy_c_Option_Obind_001t__List__Olist_It__String__Ochar_J_001t__PartialHeapSA__Ostate,type,
bind_list_char_state: option_list_char > ( list_char > option_state ) > option_state ).
thf(sy_c_Option_Obind_001t__Mask__Oval_001t__List__Olist_It__String__Ochar_J,type,
bind_val_list_char: option_val > ( val > option_list_char ) > option_list_char ).
thf(sy_c_Option_Obind_001t__Mask__Oval_001t__Mask__Oval,type,
bind_val_val: option_val > ( val > option_val ) > option_val ).
thf(sy_c_Option_Obind_001t__Mask__Oval_001t__PartialHeapSA__Ostate,type,
bind_val_state: option_val > ( val > option_state ) > option_state ).
thf(sy_c_Option_Obind_001t__PartialHeapSA__Ostate_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
bind_s7388421589535509396on_val: option_state > ( state > option5747939881698552298on_val ) > option5747939881698552298on_val ).
thf(sy_c_Option_Obind_001t__PartialHeapSA__Ostate_001t__List__Olist_It__String__Ochar_J,type,
bind_state_list_char: option_state > ( state > option_list_char ) > option_list_char ).
thf(sy_c_Option_Obind_001t__PartialHeapSA__Ostate_001t__Mask__Oval,type,
bind_state_val: option_state > ( state > option_val ) > option_val ).
thf(sy_c_Option_Obind_001t__PartialHeapSA__Ostate_001t__PartialHeapSA__Ostate,type,
bind_state_state: option_state > ( state > option_state ) > option_state ).
thf(sy_c_Option_Obind_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Mask__Oval,type,
bind_P8603646205577311397al_val: option8887860577033306220on_val > ( produc9003781588162623004on_val > option_val ) > option_val ).
thf(sy_c_Option_Obind_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__PartialHeapSA__Ostate,type,
bind_P2178757275261240214_state: option8887860577033306220on_val > ( produc9003781588162623004on_val > option_state ) > option_state ).
thf(sy_c_Option_Obind_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
bind_P2485767298420691192on_val: option8887860577033306220on_val > ( produc9003781588162623004on_val > option8887860577033306220on_val ) > option8887860577033306220on_val ).
thf(sy_c_Option_Ocombine__options_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
combin3271118981050854363on_val: ( ( produc1457211279475724562t_char > option_val ) > ( produc1457211279475724562t_char > option_val ) > produc1457211279475724562t_char > option_val ) > option5747939881698552298on_val > option5747939881698552298on_val > option5747939881698552298on_val ).
thf(sy_c_Option_Ocombine__options_001t__List__Olist_It__String__Ochar_J,type,
combin4118143342443788322t_char: ( list_char > list_char > list_char ) > option_list_char > option_list_char > option_list_char ).
thf(sy_c_Option_Ocombine__options_001t__Mask__Oval,type,
combine_options_val: ( val > val > val ) > option_val > option_val > option_val ).
thf(sy_c_Option_Ocombine__options_001t__PartialHeapSA__Ostate,type,
combin3633514924185701883_state: ( state > state > state ) > option_state > option_state > option_state ).
thf(sy_c_Option_Ocombine__options_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
combin6222804963853957469on_val: ( produc9003781588162623004on_val > produc9003781588162623004on_val > produc9003781588162623004on_val ) > option8887860577033306220on_val > option8887860577033306220on_val > option8887860577033306220on_val ).
thf(sy_c_Option_Ois__none_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
is_non6205214127102033982on_val: option5747939881698552298on_val > $o ).
thf(sy_c_Option_Ois__none_001t__List__Olist_It__String__Ochar_J,type,
is_none_list_char: option_list_char > $o ).
thf(sy_c_Option_Ois__none_001t__Mask__Oval,type,
is_none_val: option_val > $o ).
thf(sy_c_Option_Ois__none_001t__PartialHeapSA__Ostate,type,
is_none_state: option_state > $o ).
thf(sy_c_Option_Ois__none_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
is_non3468859156093823296on_val: option8887860577033306220on_val > $o ).
thf(sy_c_Option_Ooption_ONone_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
none_P1334921381875262201on_val: option5747939881698552298on_val ).
thf(sy_c_Option_Ooption_ONone_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
none_P6742040017396684084r_prat: option3572569098863364761r_prat ).
thf(sy_c_Option_Ooption_ONone_001t__List__Olist_It__String__Ochar_J,type,
none_list_char: option_list_char ).
thf(sy_c_Option_Ooption_ONone_001t__Mask__Oval,type,
none_val: option_val ).
thf(sy_c_Option_Ooption_ONone_001t__Nat__Onat,type,
none_nat: option_nat ).
thf(sy_c_Option_Ooption_ONone_001t__Option__Ooption_It__Mask__Oval_J,type,
none_option_val: option_option_val ).
thf(sy_c_Option_Ooption_ONone_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
none_option_state: option_option_state ).
thf(sy_c_Option_Ooption_ONone_001t__PartialHeapSA__Ostate,type,
none_state: option_state ).
thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
none_P8728355543607141243on_val: option8887860577033306220on_val ).
thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
none_P5486107665612286067t_char: option2736423997234022232t_char ).
thf(sy_c_Option_Ooption_OSome_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
some_P7669353234731512949on_val: ( produc1457211279475724562t_char > option_val ) > option5747939881698552298on_val ).
thf(sy_c_Option_Ooption_OSome_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
some_P8530153984677361336r_prat: ( produc1457211279475724562t_char > prat ) > option3572569098863364761r_prat ).
thf(sy_c_Option_Ooption_OSome_001t__List__Olist_It__String__Ochar_J,type,
some_list_char: list_char > option_list_char ).
thf(sy_c_Option_Ooption_OSome_001t__Mask__Oval,type,
some_val: val > option_val ).
thf(sy_c_Option_Ooption_OSome_001t__Nat__Onat,type,
some_nat: nat > option_nat ).
thf(sy_c_Option_Ooption_OSome_001t__Option__Ooption_It__Mask__Oval_J,type,
some_option_val: option_val > option_option_val ).
thf(sy_c_Option_Ooption_OSome_001t__PartialHeapSA__Ostate,type,
some_state: state > option_state ).
thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
some_P2581650809551911671on_val: produc9003781588162623004on_val > option8887860577033306220on_val ).
thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
some_P6851457240968045559t_char: produc1457211279475724562t_char > option2736423997234022232t_char ).
thf(sy_c_Option_Ooption_Ocase__option_001_Eo_001t__Mask__Oval,type,
case_option_o_val: $o > ( val > $o ) > option_val > $o ).
thf(sy_c_Option_Ooption_Ocase__option_001_Eo_001t__PartialHeapSA__Ostate,type,
case_option_o_state: $o > ( state > $o ) > option_state > $o ).
thf(sy_c_Option_Ooption_Ocase__option_001t__Mask__Oval_001t__Mask__Oval,type,
case_option_val_val: val > ( val > val ) > option_val > val ).
thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__Mask__Oval_J_001t__Mask__Oval,type,
case_o7794706883426356101al_val: option_val > ( val > option_val ) > option_val > option_val ).
thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_001t__PartialHeapSA__Ostate,type,
case_o8916064052540797265_state: option_state > ( state > option_state ) > option_state > option_state ).
thf(sy_c_Option_Ooption_Ocase__option_001t__PartialHeapSA__Ostate_001t__PartialHeapSA__Ostate,type,
case_o2102410670496921089_state: state > ( state > state ) > option_state > state ).
thf(sy_c_Option_Ooption_Omap__option_001t__Mask__Oval_001t__Mask__Oval,type,
map_option_val_val: ( val > val ) > option_val > option_val ).
thf(sy_c_Option_Ooption_Omap__option_001t__Mask__Oval_001t__PartialHeapSA__Ostate,type,
map_option_val_state: ( val > state ) > option_val > option_state ).
thf(sy_c_Option_Ooption_Omap__option_001t__PartialHeapSA__Ostate_001t__Mask__Oval,type,
map_option_state_val: ( state > val ) > option_state > option_val ).
thf(sy_c_Option_Ooption_Omap__option_001t__PartialHeapSA__Ostate_001t__PartialHeapSA__Ostate,type,
map_op2726735944305651201_state: ( state > state ) > option_state > option_state ).
thf(sy_c_Option_Ooption_Omap__option_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
map_op5305211447164704579on_val: ( produc9003781588162623004on_val > produc1457211279475724562t_char > option_val ) > option8887860577033306220on_val > option5747939881698552298on_val ).
thf(sy_c_Option_Ooption_Omap__option_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
map_op457311912167326058r_prat: ( produc9003781588162623004on_val > produc1457211279475724562t_char > prat ) > option8887860577033306220on_val > option3572569098863364761r_prat ).
thf(sy_c_Option_Ooption_Omap__option_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
map_op7709461780610975941on_val: ( produc9003781588162623004on_val > produc9003781588162623004on_val ) > option8887860577033306220on_val > option8887860577033306220on_val ).
thf(sy_c_Option_Ooption_Omap__option_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__List__Olist_It__String__Ochar_J,type,
map_op1953669867509794472t_char: ( produc1457211279475724562t_char > list_char ) > option2736423997234022232t_char > option_list_char ).
thf(sy_c_Option_Ooption_Omap__option_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Nat__Onat,type,
map_op2304244586335077271ar_nat: ( produc1457211279475724562t_char > nat ) > option2736423997234022232t_char > option_nat ).
thf(sy_c_Option_Ooption_Opred__option_001t__Mask__Oval,type,
pred_option_val: ( val > $o ) > option_val > $o ).
thf(sy_c_Option_Ooption_Opred__option_001t__PartialHeapSA__Ostate,type,
pred_option_state: ( state > $o ) > option_state > $o ).
thf(sy_c_Option_Ooption_Opred__option_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
pred_o6356550725404909017on_val: ( produc9003781588162623004on_val > $o ) > option8887860577033306220on_val > $o ).
thf(sy_c_Option_Ooption_Orel__option_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
rel_op7555592896143267045on_val: ( ( produc1457211279475724562t_char > prat ) > ( produc1457211279475724562t_char > option_val ) > $o ) > option3572569098863364761r_prat > option5747939881698552298on_val > $o ).
thf(sy_c_Option_Ooption_Orel__option_001t__Mask__Oval_001t__Mask__Oval,type,
rel_option_val_val: ( val > val > $o ) > option_val > option_val > $o ).
thf(sy_c_Option_Ooption_Orel__option_001t__Mask__Oval_001t__PartialHeapSA__Ostate,type,
rel_option_val_state: ( val > state > $o ) > option_val > option_state > $o ).
thf(sy_c_Option_Ooption_Orel__option_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J,type,
rel_op2494113632589343803t_char: ( nat > list_char > $o ) > option_nat > option_list_char > $o ).
thf(sy_c_Option_Ooption_Orel__option_001t__PartialHeapSA__Ostate_001t__Mask__Oval,type,
rel_option_state_val: ( state > val > $o ) > option_state > option_val > $o ).
thf(sy_c_Option_Ooption_Orel__option_001t__PartialHeapSA__Ostate_001t__PartialHeapSA__Ostate,type,
rel_op4316599310523903102_state: ( state > state > $o ) > option_state > option_state > $o ).
thf(sy_c_Option_Ooption_Orel__option_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
rel_op346525543737320258on_val: ( produc9003781588162623004on_val > produc9003781588162623004on_val > $o ) > option8887860577033306220on_val > option8887860577033306220on_val > $o ).
thf(sy_c_Option_Ooption_Oset__option_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
set_op1770538635792728844on_val: option5747939881698552298on_val > set_Pr1004501353197068112on_val ).
thf(sy_c_Option_Ooption_Oset__option_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
set_op923924987228895969r_prat: option3572569098863364761r_prat > set_Pr3433046674199179443r_prat ).
thf(sy_c_Option_Ooption_Oset__option_001t__List__Olist_It__String__Ochar_J,type,
set_option_list_char2: option_list_char > set_list_char ).
thf(sy_c_Option_Ooption_Oset__option_001t__Mask__Oval,type,
set_option_val2: option_val > set_val ).
thf(sy_c_Option_Ooption_Oset__option_001t__Nat__Onat,type,
set_option_nat: option_nat > set_nat ).
thf(sy_c_Option_Ooption_Oset__option_001t__Option__Ooption_It__Mask__Oval_J,type,
set_op911010586042427349on_val: option_option_val > set_option_val ).
thf(sy_c_Option_Ooption_Oset__option_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
set_op5162993263733338108_state: option_option_state > set_option_state ).
thf(sy_c_Option_Ooption_Oset__option_001t__PartialHeapSA__Ostate,type,
set_option_state2: option_state > set_state ).
thf(sy_c_Option_Ooption_Oset__option_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
set_op9004752959087400718on_val: option8887860577033306220on_val > set_Pr7649655576376376530on_val ).
thf(sy_c_Option_Ooption_Oset__option_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
set_op7440730737645789856t_char: option2736423997234022232t_char > set_Pr2507339680178222706t_char ).
thf(sy_c_Option_Ooption_Othe_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
the_Pr646328391962797958on_val: option5747939881698552298on_val > produc1457211279475724562t_char > option_val ).
thf(sy_c_Option_Ooption_Othe_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
the_Pr3206600365949932263r_prat: option3572569098863364761r_prat > produc1457211279475724562t_char > prat ).
thf(sy_c_Option_Ooption_Othe_001t__List__Olist_It__String__Ochar_J,type,
the_list_char: option_list_char > list_char ).
thf(sy_c_Option_Ooption_Othe_001t__Mask__Oval,type,
the_val: option_val > val ).
thf(sy_c_Option_Ooption_Othe_001t__Nat__Onat,type,
the_nat: option_nat > nat ).
thf(sy_c_Option_Ooption_Othe_001t__Option__Ooption_It__Mask__Oval_J,type,
the_option_val: option_option_val > option_val ).
thf(sy_c_Option_Ooption_Othe_001t__PartialHeapSA__Ostate,type,
the_state: option_state > state ).
thf(sy_c_Option_Ooption_Othe_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
the_Pr3639693038709580936on_val: option8887860577033306220on_val > produc9003781588162623004on_val ).
thf(sy_c_Option_Ooption_Othe_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
the_Pr4674812069856641446t_char: option2736423997234022232t_char > produc1457211279475724562t_char ).
thf(sy_c_Option_Othese_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
these_602426935119867933on_val: set_op8153969091884965280on_val > set_Pr1004501353197068112on_val ).
thf(sy_c_Option_Othese_001t__List__Olist_It__String__Ochar_J,type,
these_list_char: set_option_list_char > set_list_char ).
thf(sy_c_Option_Othese_001t__Mask__Oval,type,
these_val: set_option_val > set_val ).
thf(sy_c_Option_Othese_001t__PartialHeapSA__Ostate,type,
these_state: set_option_state > set_state ).
thf(sy_c_Option_Othese_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
these_3919539662624406175on_val: set_op6240181410663953058on_val > set_Pr7649655576376376530on_val ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
bot_bo5671083314777306084on_val: set_Pr1004501353197068112on_val ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__String__Ochar_J_J,type,
bot_bo8503570744482963627t_char: set_list_char ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Mask__Oval_J,type,
bot_bot_set_val: set_val ).
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__Option__Ooption_It__Mask__Oval_J_J,type,
bot_bo5906790151302476563on_val: set_option_val ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Option__Ooption_It__PartialHeapSA__Ostate_J_J,type,
bot_bo710180891245420500_state: set_option_state ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__PartialHeapSA__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_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
bot_bo6722054719108133734on_val: set_Pr7649655576376376530on_val ).
thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J,type,
bot_bo1414094081888755934t_char: set_Pr2507339680178222706t_char ).
thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat,type,
ord_less_nat: nat > nat > $o ).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
ord_le6900622908513426738on_val: set_Pr7649655576376376530on_val > set_Pr7649655576376376530on_val > $o ).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J,type,
ord_le6315511645215477266t_char: set_Pr2507339680178222706t_char > set_Pr2507339680178222706t_char > $o ).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_J,type,
ord_le7224449410216889241on_val: set_Pr4305388979797279737on_val > set_Pr4305388979797279737on_val > $o ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Mask__Oval_J,type,
top_top_set_val: set_val ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Option__Ooption_It__Mask__Oval_J_J,type,
top_to853123400021307383on_val: set_option_val ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Option__Ooption_It__PartialHeapSA__Ostate_J_J,type,
top_to7666338855062656496_state: set_option_state ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__PartialHeapSA__Ostate_J,type,
top_top_set_state: set_state ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
top_to1561438921946393474on_val: set_Pr7649655576376376530on_val ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J,type,
top_to1250346684925019074t_char: set_Pr2507339680178222706t_char ).
thf(sy_c_PartialHeapSA_Oadd__states,type,
add_states: produc9003781588162623004on_val > produc9003781588162623004on_val > produc9003781588162623004on_val ).
thf(sy_c_PartialHeapSA_Oadd__states__rel,type,
add_states_rel: produc1317171644805857433on_val > produc1317171644805857433on_val > $o ).
thf(sy_c_PartialHeapSA_Ocompatible,type,
compatible: produc9003781588162623004on_val > produc9003781588162623004on_val > $o ).
thf(sy_c_PartialHeapSA_Ocompatible__heaps,type,
compatible_heaps: ( produc1457211279475724562t_char > option_val ) > ( produc1457211279475724562t_char > option_val ) > $o ).
thf(sy_c_PartialHeapSA_Ocompatible__options_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
compat2032066794789061494on_val: option5747939881698552298on_val > option5747939881698552298on_val > $o ).
thf(sy_c_PartialHeapSA_Ocompatible__options_001t__List__Olist_It__String__Ochar_J,type,
compat7573737823326560701t_char: option_list_char > option_list_char > $o ).
thf(sy_c_PartialHeapSA_Ocompatible__options_001t__Mask__Oval,type,
compat7209469420100717861ns_val: option_val > option_val > $o ).
thf(sy_c_PartialHeapSA_Ocompatible__options_001t__PartialHeapSA__Ostate,type,
compat2278460363914054422_state: option_state > option_state > $o ).
thf(sy_c_PartialHeapSA_Ocompatible__options_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
compat6602494657299208312on_val: option8887860577033306220on_val > option8887860577033306220on_val > $o ).
thf(sy_c_PartialHeapSA_Ocompatible__options__rel_001t__Mask__Oval,type,
compat8294034345482142370el_val: produc5122021904355189735on_val > produc5122021904355189735on_val > $o ).
thf(sy_c_PartialHeapSA_Ocompatible__options__rel_001t__PartialHeapSA__Ostate,type,
compat1844074344818064729_state: produc3142500478612311029_state > produc3142500478612311029_state > $o ).
thf(sy_c_PartialHeapSA_Ocore,type,
core: state > state ).
thf(sy_c_PartialHeapSA_Oempty__heap_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Mask__Oval,type,
empty_7512026568161686585ar_val: produc1457211279475724562t_char > option_val ).
thf(sy_c_PartialHeapSA_Oget__h,type,
get_h: state > produc1457211279475724562t_char > option_val ).
thf(sy_c_PartialHeapSA_Oget__h__rel,type,
get_h_rel: state > state > $o ).
thf(sy_c_PartialHeapSA_Oget__m,type,
get_m: state > produc1457211279475724562t_char > prat ).
thf(sy_c_PartialHeapSA_Oget__m__rel,type,
get_m_rel: state > state > $o ).
thf(sy_c_PartialHeapSA_Olarger__heap_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Mask__Oval,type,
larger6282481774126526705al_val: ( produc9003781588162623004on_val > option_val ) > ( produc9003781588162623004on_val > option_val ) > $o ).
thf(sy_c_PartialHeapSA_Olarger__heap_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__PartialHeapSA__Ostate,type,
larger2674307862311229514_state: ( produc9003781588162623004on_val > option_state ) > ( produc9003781588162623004on_val > option_state ) > $o ).
thf(sy_c_PartialHeapSA_Olarger__heap_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Mask__Oval,type,
larger1532547405891354081ar_val: ( produc1457211279475724562t_char > option_val ) > ( produc1457211279475724562t_char > option_val ) > $o ).
thf(sy_c_PartialHeapSA_Oplus,type,
plus: state > state > option_state ).
thf(sy_c_PartialHeapSA_Ostable,type,
stable: state > $o ).
thf(sy_c_PartialHeapSA_Ostate_OAbs__state,type,
abs_state: produc9003781588162623004on_val > state ).
thf(sy_c_PartialHeapSA_Ostate_ORep__state,type,
rep_state: state > produc9003781588162623004on_val ).
thf(sy_c_PartialHeapSA_Ounit,type,
unit: state ).
thf(sy_c_PartialHeapSA_Ovalid__heap,type,
valid_heap: ( produc1457211279475724562t_char > prat ) > ( produc1457211279475724562t_char > option_val ) > $o ).
thf(sy_c_PartialHeapSA_Ovalid__state,type,
valid_state: produc9003781588162623004on_val > $o ).
thf(sy_c_PartialHeapSA_Ovalid__state__rel,type,
valid_state_rel: produc9003781588162623004on_val > produc9003781588162623004on_val > $o ).
thf(sy_c_PosRat_Ohalf,type,
half: prat ).
thf(sy_c_PosRat_Opadd,type,
padd: prat > prat > prat ).
thf(sy_c_PosRat_Opdiv,type,
pdiv: prat > prat > prat ).
thf(sy_c_PosRat_Opgt,type,
pgt: prat > prat > $o ).
thf(sy_c_PosRat_Opgte,type,
pgte: prat > prat > $o ).
thf(sy_c_PosRat_Opinv,type,
pinv: prat > prat ).
thf(sy_c_PosRat_Opmult,type,
pmult: prat > prat > prat ).
thf(sy_c_PosRat_Opnone,type,
pnone: prat ).
thf(sy_c_PosRat_Oppos,type,
ppos: prat > $o ).
thf(sy_c_PosRat_Opwrite,type,
pwrite: prat ).
thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
produc74620467203698198on_val: ( produc1457211279475724562t_char > prat ) > ( produc1457211279475724562t_char > option_val ) > produc9003781588162623004on_val ).
thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J,type,
produc2957999048406202538t_char: ( produc1457211279475724562t_char > prat ) > produc2489117125269924006t_char > produc5803078220529002682t_char ).
thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
produc2591414526589101846t_char: ( produc1457211279475724562t_char > prat ) > produc1457211279475724562t_char > produc2489117125269924006t_char ).
thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J,type,
produc120197956887798346t_char: nat > list_char > produc1457211279475724562t_char ).
thf(sy_c_Product__Type_OPair_001t__Option__Ooption_It__Mask__Oval_J_001t__Option__Ooption_It__Mask__Oval_J,type,
produc904852209897547607on_val: option_val > option_val > produc5122021904355189735on_val ).
thf(sy_c_Product__Type_OPair_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
produc9160152616361873709_state: option_state > option_state > produc3142500478612311029_state ).
thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
produc4958730763592889809on_val: produc9003781588162623004on_val > produc9003781588162623004on_val > produc1317171644805857433on_val ).
thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__PosRat__Oprat,type,
produc2920179824973321483r_prat: produc1457211279475724562t_char > prat > produc3933091914578511633r_prat ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_001_Eo,type,
produc5248837549992124053_val_o: ( ( produc1457211279475724562t_char > prat ) > ( produc1457211279475724562t_char > option_val ) > $o ) > produc9003781588162623004on_val > $o ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J_001_Eo,type,
produc8526122873445342073char_o: ( nat > list_char > $o ) > produc1457211279475724562t_char > $o ).
thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Mask__Oval_001_062_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
produc6541823961022407022on_val: ( produc1457211279475724562t_char > val > ( produc1457211279475724562t_char > option_val ) > produc1457211279475724562t_char > option_val ) > produc4494260595660908054ar_val > ( produc1457211279475724562t_char > option_val ) > produc1457211279475724562t_char > option_val ).
thf(sy_c_Product__Type_Oprod_Ofst_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
produc5239619271231976746on_val: produc9003781588162623004on_val > produc1457211279475724562t_char > prat ).
thf(sy_c_Product__Type_Oprod_Ofst_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J,type,
produc6204653154488278070t_char: produc1457211279475724562t_char > nat ).
thf(sy_c_Product__Type_Oprod_Ofst_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Mask__Oval,type,
produc4782051922924837920al_val: produc4587312360482870618al_val > produc9003781588162623004on_val ).
thf(sy_c_Product__Type_Oprod_Ofst_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__PartialHeapSA__Ostate,type,
produc6734235122797862491_state: produc3589956252253634615_state > produc9003781588162623004on_val ).
thf(sy_c_Product__Type_Oprod_Ofst_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
produc3129717363260770749on_val: produc1317171644805857433on_val > produc9003781588162623004on_val ).
thf(sy_c_Product__Type_Oprod_Osnd_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
produc2319605628138516840on_val: produc9003781588162623004on_val > produc1457211279475724562t_char > option_val ).
thf(sy_c_Product__Type_Oprod_Osnd_001t__Nat__Onat_001t__List__Olist_It__String__Ochar_J,type,
produc1900778367047502200t_char: produc1457211279475724562t_char > list_char ).
thf(sy_c_Product__Type_Oprod_Osnd_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
produc437328469718437375on_val: produc1317171644805857433on_val > produc9003781588162623004on_val ).
thf(sy_c_Relation_Oconversep_001t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_001t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_J,type,
conver7264604305941033974r_prat: ( option8887860577033306220on_val > option3572569098863364761r_prat > $o ) > option3572569098863364761r_prat > option8887860577033306220on_val > $o ).
thf(sy_c_Relation_Oconversep_001t__Option__Ooption_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J_001t__Option__Ooption_It__Nat__Onat_J,type,
conver779780868667509187on_nat: ( option2736423997234022232t_char > option_nat > $o ) > option_nat > option2736423997234022232t_char > $o ).
thf(sy_c_Relation_Orelcompp_001t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_J_001t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_001t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
relcom6540676319459279872on_val: ( option3572569098863364761r_prat > option8887860577033306220on_val > $o ) > ( option8887860577033306220on_val > option5747939881698552298on_val > $o ) > option3572569098863364761r_prat > option5747939881698552298on_val > $o ).
thf(sy_c_Relation_Orelcompp_001t__Option__Ooption_It__Nat__Onat_J_001t__Option__Ooption_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J_001t__Option__Ooption_It__List__Olist_It__String__Ochar_J_J,type,
relcom4704765297650120440t_char: ( option_nat > option2736423997234022232t_char > $o ) > ( option2736423997234022232t_char > option_list_char > $o ) > option_nat > option_list_char > $o ).
thf(sy_c_Set_OCollect_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
collec8455114619259388271on_val: ( ( produc1457211279475724562t_char > option_val ) > $o ) > set_Pr1004501353197068112on_val ).
thf(sy_c_Set_OCollect_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
collec7093475260167521854r_prat: ( ( produc1457211279475724562t_char > prat ) > $o ) > set_Pr3433046674199179443r_prat ).
thf(sy_c_Set_OCollect_001t__Mask__Oval,type,
collect_val: ( val > $o ) > set_val ).
thf(sy_c_Set_OCollect_001t__Nat__Onat,type,
collect_nat: ( nat > $o ) > set_nat ).
thf(sy_c_Set_OCollect_001t__Option__Ooption_It__Mask__Oval_J,type,
collect_option_val: ( option_val > $o ) > set_option_val ).
thf(sy_c_Set_OCollect_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
collect_option_state: ( option_state > $o ) > set_option_state ).
thf(sy_c_Set_OCollect_001t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
collec6281439769543645121on_val: ( option8887860577033306220on_val > $o ) > set_op6240181410663953058on_val ).
thf(sy_c_Set_OCollect_001t__Option__Ooption_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J,type,
collec3561702660602934339t_char: ( option2736423997234022232t_char > $o ) > set_op9137726805559506488t_char ).
thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
collec7475294502966882545on_val: ( produc9003781588162623004on_val > $o ) > set_Pr7649655576376376530on_val ).
thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
collec2458894688891239037t_char: ( produc1457211279475724562t_char > $o ) > set_Pr2507339680178222706t_char ).
thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
collec5166231387257825412on_val: ( produc1317171644805857433on_val > $o ) > set_Pr4305388979797279737on_val ).
thf(sy_c_Set_Oimage_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_001t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
image_5626594990718149899on_val: ( ( produc1457211279475724562t_char > option_val ) > option5747939881698552298on_val ) > set_Pr1004501353197068112on_val > set_op8153969091884965280on_val ).
thf(sy_c_Set_Oimage_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
image_1459058096221225002on_val: ( ( produc1457211279475724562t_char > prat ) > produc9003781588162623004on_val ) > set_Pr3433046674199179443r_prat > set_Pr7649655576376376530on_val ).
thf(sy_c_Set_Oimage_001t__List__Olist_It__String__Ochar_J_001t__Option__Ooption_It__List__Olist_It__String__Ochar_J_J,type,
image_4379178946295307545t_char: ( list_char > option_list_char ) > set_list_char > set_option_list_char ).
thf(sy_c_Set_Oimage_001t__Mask__Oval_001t__Option__Ooption_It__List__Olist_It__String__Ochar_J_J,type,
image_7372873807906076653t_char: ( val > option_list_char ) > set_val > set_option_list_char ).
thf(sy_c_Set_Oimage_001t__Mask__Oval_001t__Option__Ooption_It__Mask__Oval_J,type,
image_val_option_val: ( val > option_val ) > set_val > set_option_val ).
thf(sy_c_Set_Oimage_001t__Mask__Oval_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
image_8370355904157991238_state: ( val > option_state ) > set_val > set_option_state ).
thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Option__Ooption_It__List__Olist_It__String__Ochar_J_J,type,
image_570131288342041480t_char: ( nat > option_list_char ) > set_nat > set_option_list_char ).
thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Option__Ooption_It__Mask__Oval_J,type,
image_nat_option_val: ( nat > option_val ) > set_nat > set_option_val ).
thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
image_8240249968597053537_state: ( nat > option_state ) > set_nat > set_option_state ).
thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
image_1003422490162143483t_char: ( nat > produc1457211279475724562t_char ) > set_nat > set_Pr2507339680178222706t_char ).
thf(sy_c_Set_Oimage_001t__Option__Ooption_It__Mask__Oval_J_001t__Mask__Oval,type,
image_option_val_val: ( option_val > val ) > set_option_val > set_val ).
thf(sy_c_Set_Oimage_001t__Option__Ooption_It__Mask__Oval_J_001t__Option__Ooption_It__Mask__Oval_J,type,
image_5994708315261978053on_val: ( option_val > option_val ) > set_option_val > set_option_val ).
thf(sy_c_Set_Oimage_001t__Option__Ooption_It__Mask__Oval_J_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
image_2662813144889517580_state: ( option_val > option_state ) > set_option_val > set_option_state ).
thf(sy_c_Set_Oimage_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_001t__PartialHeapSA__Ostate,type,
image_3532137647693456075_state: ( option_state > state ) > set_option_state > set_state ).
thf(sy_c_Set_Oimage_001t__PartialHeapSA__Ostate_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
image_6076465424260689483_state: ( state > option_state ) > set_state > set_option_state ).
thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
image_2330660378567450301on_val: ( produc9003781588162623004on_val > produc1457211279475724562t_char > option_val ) > set_Pr7649655576376376530on_val > set_Pr1004501353197068112on_val ).
thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
image_3067683418878703216r_prat: ( produc9003781588162623004on_val > produc1457211279475724562t_char > prat ) > set_Pr7649655576376376530on_val > set_Pr3433046674199179443r_prat ).
thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Option__Ooption_It__Mask__Oval_J,type,
image_453284115904594532on_val: ( produc9003781588162623004on_val > option_val ) > set_Pr7649655576376376530on_val > set_option_val ).
thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
image_2102623794538073773_state: ( produc9003781588162623004on_val > option_state ) > set_Pr7649655576376376530on_val > set_option_state ).
thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
image_4416128703135814415on_val: ( produc9003781588162623004on_val > option8887860577033306220on_val ) > set_Pr7649655576376376530on_val > set_op6240181410663953058on_val ).
thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
image_4170889944715819327on_val: ( produc9003781588162623004on_val > produc9003781588162623004on_val ) > set_Pr7649655576376376530on_val > set_Pr7649655576376376530on_val ).
thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
image_4249794487667743926on_val: ( produc9003781588162623004on_val > produc1317171644805857433on_val ) > set_Pr7649655576376376530on_val > set_Pr4305388979797279737on_val ).
thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__List__Olist_It__String__Ochar_J,type,
image_3034139768025083822t_char: ( produc1457211279475724562t_char > list_char ) > set_Pr2507339680178222706t_char > set_list_char ).
thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Nat__Onat,type,
image_3548405822317538717ar_nat: ( produc1457211279475724562t_char > nat ) > set_Pr2507339680178222706t_char > set_nat ).
thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_001t__Option__Ooption_It__Mask__Oval_J,type,
image_4269386950610408506on_val: ( produc1457211279475724562t_char > option_val ) > set_Pr2507339680178222706t_char > set_option_val ).
thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Mask__Oval_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
image_8672218912373160061on_val: ( produc4587312360482870618al_val > produc9003781588162623004on_val ) > set_Pr5678771902342202384al_val > set_Pr7649655576376376530on_val ).
thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__PartialHeapSA__Ostate_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
image_3733899853514731534on_val: ( produc3589956252253634615_state > produc9003781588162623004on_val ) > set_Pr6040071838687925911_state > set_Pr7649655576376376530on_val ).
thf(sy_c_Set_Oinsert_001t__Mask__Oval,type,
insert_val: val > set_val > set_val ).
thf(sy_c_Set_Oinsert_001t__Option__Ooption_It__Mask__Oval_J,type,
insert_option_val: option_val > set_option_val > set_option_val ).
thf(sy_c_Set_Oinsert_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
insert_option_state: option_state > set_option_state > set_option_state ).
thf(sy_c_Set_Oinsert_001t__PartialHeapSA__Ostate,type,
insert_state: state > set_state > set_state ).
thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
insert3030518898131756108on_val: produc9003781588162623004on_val > set_Pr7649655576376376530on_val > set_Pr7649655576376376530on_val ).
thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
insert3372640069787401954t_char: produc1457211279475724562t_char > set_Pr2507339680178222706t_char > set_Pr2507339680178222706t_char ).
thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
insert7062705985672971881on_val: produc1317171644805857433on_val > set_Pr4305388979797279737on_val > set_Pr4305388979797279737on_val ).
thf(sy_c_Typedef_Otype__definition_001t__PartialHeapSA__Ostate_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
type_d7385716227342696708on_val: ( state > produc9003781588162623004on_val ) > ( produc9003781588162623004on_val > state ) > set_Pr7649655576376376530on_val > $o ).
thf(sy_c_Wellfounded_Oaccp_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
accp_P4765339447491148764r_prat: ( ( produc1457211279475724562t_char > prat ) > ( produc1457211279475724562t_char > prat ) > $o ) > ( produc1457211279475724562t_char > prat ) > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__PartialHeapSA__Ostate,type,
accp_state: ( state > state > $o ) > state > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
accp_P4405556307444930259on_val: ( produc9003781588162623004on_val > produc9003781588162623004on_val > $o ) > produc9003781588162623004on_val > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J_J,type,
accp_P224314924008452035t_char: ( produc5803078220529002682t_char > produc5803078220529002682t_char > $o ) > produc5803078220529002682t_char > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
accp_P8892882183480857371t_char: ( produc1457211279475724562t_char > produc1457211279475724562t_char > $o ) > produc1457211279475724562t_char > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Option__Ooption_It__Mask__Oval_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
accp_P4269981079083053040on_val: ( produc5122021904355189735on_val > produc5122021904355189735on_val > $o ) > produc5122021904355189735on_val > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Option__Ooption_It__PartialHeapSA__Ostate_J_Mt__Option__Ooption_It__PartialHeapSA__Ostate_J_J,type,
accp_P7183347322223220350_state: ( produc3142500478612311029_state > produc3142500478612311029_state > $o ) > produc3142500478612311029_state > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
accp_P6797916352740768290on_val: ( produc1317171644805857433on_val > produc1317171644805857433on_val > $o ) > produc1317171644805857433on_val > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
accp_P8956218777217113800r_prat: ( produc3933091914578511633r_prat > produc3933091914578511633r_prat > $o ) > produc3933091914578511633r_prat > $o ).
thf(sy_c_member_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J,type,
member1577473829074448177on_val: ( produc1457211279475724562t_char > option_val ) > set_Pr1004501353197068112on_val > $o ).
thf(sy_c_member_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J,type,
member2336342582916103932r_prat: ( produc1457211279475724562t_char > prat ) > set_Pr3433046674199179443r_prat > $o ).
thf(sy_c_member_001t__List__Olist_It__String__Ochar_J,type,
member_list_char: list_char > set_list_char > $o ).
thf(sy_c_member_001t__Mask__Oval,type,
member_val: val > set_val > $o ).
thf(sy_c_member_001t__Nat__Onat,type,
member_nat: nat > set_nat > $o ).
thf(sy_c_member_001t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
member7216203038034776961on_val: option5747939881698552298on_val > set_op8153969091884965280on_val > $o ).
thf(sy_c_member_001t__Option__Ooption_It__List__Olist_It__String__Ochar_J_J,type,
member873824481883127368t_char: option_list_char > set_option_list_char > $o ).
thf(sy_c_member_001t__Option__Ooption_It__Mask__Oval_J,type,
member_option_val: option_val > set_option_val > $o ).
thf(sy_c_member_001t__Option__Ooption_It__PartialHeapSA__Ostate_J,type,
member_option_state: option_state > set_option_state > $o ).
thf(sy_c_member_001t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
member4602090469187516291on_val: option8887860577033306220on_val > set_op6240181410663953058on_val > $o ).
thf(sy_c_member_001t__Option__Ooption_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_J,type,
member1900516542280067841t_char: option2736423997234022232t_char > set_op9137726805559506488t_char > $o ).
thf(sy_c_member_001t__PartialHeapSA__Ostate,type,
member_state: state > set_state > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J,type,
member2879030624002546611on_val: produc9003781588162623004on_val > set_Pr7649655576376376530on_val > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J,type,
member484235747325421115t_char: produc1457211279475724562t_char > set_Pr2507339680178222706t_char > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J,type,
member6505152944228695362on_val: produc1317171644805857433on_val > set_Pr4305388979797279737on_val > $o ).
thf(sy_v_a,type,
a: state ).
thf(sy_v_ab,type,
ab: state ).
thf(sy_v_b,type,
b: state ).
thf(sy_v_bc,type,
bc: state ).
thf(sy_v_c,type,
c: state ).
thf(sy_v_x____,type,
x: state ).
thf(sy_v_y____,type,
y: state ).
% Relevant facts (1020)
thf(fact_0__092_060open_062Some_Ay_A_061_Aa_A_092_060oplus_062_Abc_092_060close_062,axiom,
( ( some_state @ y )
= ( plus @ a @ bc ) ) ).
% \<open>Some y = a \<oplus> bc\<close>
thf(fact_1_Some,axiom,
( ( plus @ ab @ c )
= ( some_state @ x ) ) ).
% Some
thf(fact_2__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062y_O_ASome_Ay_A_061_Aa_A_092_060oplus_062_Abc_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062,axiom,
~ ! [Y: state] :
( ( some_state @ Y )
!= ( plus @ a @ bc ) ) ).
% \<open>\<And>thesis. (\<And>y. Some y = a \<oplus> bc \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_3_assms,axiom,
( ( ( plus @ a @ b )
= ( some_state @ ab ) )
& ( ( plus @ b @ c )
= ( some_state @ bc ) ) ) ).
% assms
thf(fact_4_commutative,axiom,
( plus
= ( ^ [A: state,B: state] : ( plus @ B @ A ) ) ) ).
% commutative
thf(fact_5__092_060open_062compatible__heaps_A_Iget__h_Aa_J_A_Iget__h_Ab_A_L_L_Aget__h_Ac_J_092_060close_062,axiom,
compatible_heaps @ ( get_h @ a ) @ ( map_ad2908576761495157028ar_val @ ( get_h @ b ) @ ( get_h @ c ) ) ).
% \<open>compatible_heaps (get_h a) (get_h b ++ get_h c)\<close>
thf(fact_6__092_060open_062compatible__heaps_A_Iget__h_Aa_A_L_L_Aget__h_Ab_J_A_Iget__h_Ac_J_092_060close_062,axiom,
compatible_heaps @ ( map_ad2908576761495157028ar_val @ ( get_h @ a ) @ ( get_h @ b ) ) @ ( get_h @ c ) ).
% \<open>compatible_heaps (get_h a ++ get_h b) (get_h c)\<close>
thf(fact_7__092_060open_062valid__mask_A_Iadd__masks_A_Iget__m_Aa_J_A_Iadd__masks_A_Iget__m_Ab_J_A_Iget__m_Ac_J_J_J_092_060close_062,axiom,
valid_mask @ ( add_ma6586698345353345811t_char @ ( get_m @ a ) @ ( add_ma6586698345353345811t_char @ ( get_m @ b ) @ ( get_m @ c ) ) ) ).
% \<open>valid_mask (add_masks (get_m a) (add_masks (get_m b) (get_m c)))\<close>
thf(fact_8_plus__charact_I1_J,axiom,
! [A2: state,B2: state,X: state] :
( ( ( plus @ A2 @ B2 )
= ( some_state @ X ) )
=> ( ( get_m @ X )
= ( add_ma6586698345353345811t_char @ ( get_m @ A2 ) @ ( get_m @ B2 ) ) ) ) ).
% plus_charact(1)
thf(fact_9_plus__charact_I2_J,axiom,
! [A2: state,B2: state,X: state] :
( ( ( plus @ A2 @ B2 )
= ( some_state @ X ) )
=> ( ( get_h @ X )
= ( map_ad2908576761495157028ar_val @ ( get_h @ A2 ) @ ( get_h @ B2 ) ) ) ) ).
% plus_charact(2)
thf(fact_10_larger__heap__anti,axiom,
! [A2: produc1457211279475724562t_char > option_val,B2: produc1457211279475724562t_char > option_val] :
( ( larger1532547405891354081ar_val @ A2 @ B2 )
=> ( ( larger1532547405891354081ar_val @ B2 @ A2 )
=> ( A2 = B2 ) ) ) ).
% larger_heap_anti
thf(fact_11_larger__heap__refl,axiom,
! [H: produc1457211279475724562t_char > option_val] : ( larger1532547405891354081ar_val @ H @ H ) ).
% larger_heap_refl
thf(fact_12_larger__heap__trans,axiom,
! [A2: produc1457211279475724562t_char > option_val,B2: produc1457211279475724562t_char > option_val,C: produc1457211279475724562t_char > option_val] :
( ( larger1532547405891354081ar_val @ A2 @ B2 )
=> ( ( larger1532547405891354081ar_val @ B2 @ C )
=> ( larger1532547405891354081ar_val @ A2 @ C ) ) ) ).
% larger_heap_trans
thf(fact_13_larger__heapI,axiom,
! [H: produc1457211279475724562t_char > option_val,H2: produc1457211279475724562t_char > option_val] :
( ! [Hl: produc1457211279475724562t_char,X2: val] :
( ( ( H @ Hl )
= ( some_val @ X2 ) )
=> ( ( H2 @ Hl )
= ( some_val @ X2 ) ) )
=> ( larger1532547405891354081ar_val @ H2 @ H ) ) ).
% larger_heapI
thf(fact_14_larger__heap__def,axiom,
( larger1532547405891354081ar_val
= ( ^ [H3: produc1457211279475724562t_char > option_val,H4: produc1457211279475724562t_char > option_val] :
! [Hl2: produc1457211279475724562t_char,X3: val] :
( ( ( H4 @ Hl2 )
= ( some_val @ X3 ) )
=> ( ( H3 @ Hl2 )
= ( some_val @ X3 ) ) ) ) ) ).
% larger_heap_def
thf(fact_15_larger__heap__comp,axiom,
! [A2: produc1457211279475724562t_char > option_val,B2: produc1457211279475724562t_char > option_val,C: produc1457211279475724562t_char > option_val] :
( ( larger1532547405891354081ar_val @ A2 @ B2 )
=> ( ( compatible_heaps @ A2 @ C )
=> ( compatible_heaps @ B2 @ C ) ) ) ).
% larger_heap_comp
thf(fact_16_larger__heap__plus,axiom,
! [A2: produc9003781588162623004on_val > option_val,B2: produc9003781588162623004on_val > option_val,C: produc9003781588162623004on_val > option_val] :
( ( larger6282481774126526705al_val @ A2 @ B2 )
=> ( ( larger6282481774126526705al_val @ A2 @ C )
=> ( larger6282481774126526705al_val @ A2 @ ( map_ad5466549115852757998al_val @ B2 @ C ) ) ) ) ).
% larger_heap_plus
thf(fact_17_larger__heap__plus,axiom,
! [A2: produc9003781588162623004on_val > option_state,B2: produc9003781588162623004on_val > option_state,C: produc9003781588162623004on_val > option_state] :
( ( larger2674307862311229514_state @ A2 @ B2 )
=> ( ( larger2674307862311229514_state @ A2 @ C )
=> ( larger2674307862311229514_state @ A2 @ ( map_ad2629041965313307917_state @ B2 @ C ) ) ) ) ).
% larger_heap_plus
thf(fact_18_larger__heap__plus,axiom,
! [A2: produc1457211279475724562t_char > option_val,B2: produc1457211279475724562t_char > option_val,C: produc1457211279475724562t_char > option_val] :
( ( larger1532547405891354081ar_val @ A2 @ B2 )
=> ( ( larger1532547405891354081ar_val @ A2 @ C )
=> ( larger1532547405891354081ar_val @ A2 @ ( map_ad2908576761495157028ar_val @ B2 @ C ) ) ) ) ).
% larger_heap_plus
thf(fact_19_compatible__heaps__sum,axiom,
! [A2: produc1457211279475724562t_char > option_val,B2: produc1457211279475724562t_char > option_val,C: produc1457211279475724562t_char > option_val] :
( ( compatible_heaps @ A2 @ B2 )
=> ( ( compatible_heaps @ A2 @ C )
=> ( compatible_heaps @ A2 @ ( map_ad2908576761495157028ar_val @ B2 @ C ) ) ) ) ).
% compatible_heaps_sum
thf(fact_20_compatible__heaps__comm,axiom,
! [A2: produc1457211279475724562t_char > option_val,B2: produc1457211279475724562t_char > option_val] :
( ( compatible_heaps @ A2 @ B2 )
=> ( ( map_ad2908576761495157028ar_val @ A2 @ B2 )
= ( map_ad2908576761495157028ar_val @ B2 @ A2 ) ) ) ).
% compatible_heaps_comm
thf(fact_21_larger__heaps__sum__ineq,axiom,
! [A3: produc1457211279475724562t_char > option_val,A2: produc1457211279475724562t_char > option_val,B3: produc1457211279475724562t_char > option_val,B2: produc1457211279475724562t_char > option_val] :
( ( larger1532547405891354081ar_val @ A3 @ A2 )
=> ( ( larger1532547405891354081ar_val @ B3 @ B2 )
=> ( ( compatible_heaps @ A3 @ B3 )
=> ( larger1532547405891354081ar_val @ ( map_ad2908576761495157028ar_val @ A3 @ B3 ) @ ( map_ad2908576761495157028ar_val @ A2 @ B2 ) ) ) ) ) ).
% larger_heaps_sum_ineq
thf(fact_22_larger__compatible__sum__heaps,axiom,
! [A2: produc1457211279475724562t_char > option_val,X: produc1457211279475724562t_char > option_val,B2: produc1457211279475724562t_char > option_val,Y2: produc1457211279475724562t_char > option_val] :
( ( larger1532547405891354081ar_val @ A2 @ X )
=> ( ( larger1532547405891354081ar_val @ B2 @ Y2 )
=> ( ( compatible_heaps @ A2 @ B2 )
=> ( compatible_heaps @ X @ Y2 ) ) ) ) ).
% larger_compatible_sum_heaps
thf(fact_23_map__add__find__right,axiom,
! [N: produc9003781588162623004on_val > option_state,K: produc9003781588162623004on_val,Xx: state,M: produc9003781588162623004on_val > option_state] :
( ( ( N @ K )
= ( some_state @ Xx ) )
=> ( ( map_ad2629041965313307917_state @ M @ N @ K )
= ( some_state @ Xx ) ) ) ).
% map_add_find_right
thf(fact_24_map__add__find__right,axiom,
! [N: produc9003781588162623004on_val > option_val,K: produc9003781588162623004on_val,Xx: val,M: produc9003781588162623004on_val > option_val] :
( ( ( N @ K )
= ( some_val @ Xx ) )
=> ( ( map_ad5466549115852757998al_val @ M @ N @ K )
= ( some_val @ Xx ) ) ) ).
% map_add_find_right
thf(fact_25_map__add__find__right,axiom,
! [N: produc1457211279475724562t_char > option_val,K: produc1457211279475724562t_char,Xx: val,M: produc1457211279475724562t_char > option_val] :
( ( ( N @ K )
= ( some_val @ Xx ) )
=> ( ( map_ad2908576761495157028ar_val @ M @ N @ K )
= ( some_val @ Xx ) ) ) ).
% map_add_find_right
thf(fact_26_map__add__assoc,axiom,
! [M1: produc9003781588162623004on_val > option_val,M2: produc9003781588162623004on_val > option_val,M3: produc9003781588162623004on_val > option_val] :
( ( map_ad5466549115852757998al_val @ M1 @ ( map_ad5466549115852757998al_val @ M2 @ M3 ) )
= ( map_ad5466549115852757998al_val @ ( map_ad5466549115852757998al_val @ M1 @ M2 ) @ M3 ) ) ).
% map_add_assoc
thf(fact_27_map__add__assoc,axiom,
! [M1: produc9003781588162623004on_val > option_state,M2: produc9003781588162623004on_val > option_state,M3: produc9003781588162623004on_val > option_state] :
( ( map_ad2629041965313307917_state @ M1 @ ( map_ad2629041965313307917_state @ M2 @ M3 ) )
= ( map_ad2629041965313307917_state @ ( map_ad2629041965313307917_state @ M1 @ M2 ) @ M3 ) ) ).
% map_add_assoc
thf(fact_28_map__add__assoc,axiom,
! [M1: produc1457211279475724562t_char > option_val,M2: produc1457211279475724562t_char > option_val,M3: produc1457211279475724562t_char > option_val] :
( ( map_ad2908576761495157028ar_val @ M1 @ ( map_ad2908576761495157028ar_val @ M2 @ M3 ) )
= ( map_ad2908576761495157028ar_val @ ( map_ad2908576761495157028ar_val @ M1 @ M2 ) @ M3 ) ) ).
% map_add_assoc
thf(fact_29_option_Oinject,axiom,
! [X22: produc9003781588162623004on_val,Y22: produc9003781588162623004on_val] :
( ( ( some_P2581650809551911671on_val @ X22 )
= ( some_P2581650809551911671on_val @ Y22 ) )
= ( X22 = Y22 ) ) ).
% option.inject
thf(fact_30_option_Oinject,axiom,
! [X22: list_char,Y22: list_char] :
( ( ( some_list_char @ X22 )
= ( some_list_char @ Y22 ) )
= ( X22 = Y22 ) ) ).
% option.inject
thf(fact_31_option_Oinject,axiom,
! [X22: produc1457211279475724562t_char > option_val,Y22: produc1457211279475724562t_char > option_val] :
( ( ( some_P7669353234731512949on_val @ X22 )
= ( some_P7669353234731512949on_val @ Y22 ) )
= ( X22 = Y22 ) ) ).
% option.inject
thf(fact_32_option_Oinject,axiom,
! [X22: state,Y22: state] :
( ( ( some_state @ X22 )
= ( some_state @ Y22 ) )
= ( X22 = Y22 ) ) ).
% option.inject
thf(fact_33_option_Oinject,axiom,
! [X22: val,Y22: val] :
( ( ( some_val @ X22 )
= ( some_val @ Y22 ) )
= ( X22 = Y22 ) ) ).
% option.inject
thf(fact_34_upper__valid,axiom,
! [A2: produc1457211279475724562t_char > prat,B2: produc1457211279475724562t_char > prat,C: produc1457211279475724562t_char > prat] :
( ( valid_mask @ A2 )
=> ( ( A2
= ( add_ma6586698345353345811t_char @ B2 @ C ) )
=> ( ( valid_mask @ B2 )
& ( valid_mask @ C ) ) ) ) ).
% upper_valid
thf(fact_35_upper__valid__aux,axiom,
! [A2: produc1457211279475724562t_char > prat,B2: produc1457211279475724562t_char > prat,C: produc1457211279475724562t_char > prat] :
( ( valid_mask @ A2 )
=> ( ( A2
= ( add_ma6586698345353345811t_char @ B2 @ C ) )
=> ( valid_mask @ B2 ) ) ) ).
% upper_valid_aux
thf(fact_36_plus__ab__defined,axiom,
! [Phi: state,Phi2: state] :
( ( ( plus @ Phi @ Phi2 )
!= none_state )
= ( ( compatible_heaps @ ( get_h @ Phi ) @ ( get_h @ Phi2 ) )
& ( valid_mask @ ( add_ma6586698345353345811t_char @ ( get_m @ Phi ) @ ( get_m @ Phi2 ) ) ) ) ) ).
% plus_ab_defined
thf(fact_37_add__masks__asso,axiom,
! [A2: produc1457211279475724562t_char > prat,B2: produc1457211279475724562t_char > prat,C: produc1457211279475724562t_char > prat] :
( ( add_ma6586698345353345811t_char @ ( add_ma6586698345353345811t_char @ A2 @ B2 ) @ C )
= ( add_ma6586698345353345811t_char @ A2 @ ( add_ma6586698345353345811t_char @ B2 @ C ) ) ) ).
% add_masks_asso
thf(fact_38_add__masks__comm,axiom,
( add_ma6586698345353345811t_char
= ( ^ [A: produc1457211279475724562t_char > prat,B: produc1457211279475724562t_char > prat] : ( add_ma6586698345353345811t_char @ B @ A ) ) ) ).
% add_masks_comm
thf(fact_39_add__masks__cancellative,axiom,
! [B2: produc1457211279475724562t_char > prat,C: produc1457211279475724562t_char > prat,D: produc1457211279475724562t_char > prat] :
( ( ( add_ma6586698345353345811t_char @ B2 @ C )
= ( add_ma6586698345353345811t_char @ B2 @ D ) )
=> ( C = D ) ) ).
% add_masks_cancellative
thf(fact_40_compatible__heaps__def,axiom,
( compatible_heaps
= ( ^ [H4: produc1457211279475724562t_char > option_val,H3: produc1457211279475724562t_char > option_val] :
! [Hl2: produc1457211279475724562t_char] : ( compat7209469420100717861ns_val @ ( H4 @ Hl2 ) @ ( H3 @ Hl2 ) ) ) ) ).
% compatible_heaps_def
thf(fact_41_compatible__options_Oelims_I3_J,axiom,
! [X: option8887860577033306220on_val,Xa: option8887860577033306220on_val] :
( ~ ( compat6602494657299208312on_val @ X @ Xa )
=> ~ ! [A4: produc9003781588162623004on_val] :
( ( X
= ( some_P2581650809551911671on_val @ A4 ) )
=> ! [B4: produc9003781588162623004on_val] :
( ( Xa
= ( some_P2581650809551911671on_val @ B4 ) )
=> ( A4 = B4 ) ) ) ) ).
% compatible_options.elims(3)
thf(fact_42_compatible__options_Oelims_I3_J,axiom,
! [X: option_list_char,Xa: option_list_char] :
( ~ ( compat7573737823326560701t_char @ X @ Xa )
=> ~ ! [A4: list_char] :
( ( X
= ( some_list_char @ A4 ) )
=> ! [B4: list_char] :
( ( Xa
= ( some_list_char @ B4 ) )
=> ( A4 = B4 ) ) ) ) ).
% compatible_options.elims(3)
thf(fact_43_compatible__options_Oelims_I3_J,axiom,
! [X: option5747939881698552298on_val,Xa: option5747939881698552298on_val] :
( ~ ( compat2032066794789061494on_val @ X @ Xa )
=> ~ ! [A4: produc1457211279475724562t_char > option_val] :
( ( X
= ( some_P7669353234731512949on_val @ A4 ) )
=> ! [B4: produc1457211279475724562t_char > option_val] :
( ( Xa
= ( some_P7669353234731512949on_val @ B4 ) )
=> ( A4 = B4 ) ) ) ) ).
% compatible_options.elims(3)
thf(fact_44_compatible__options_Oelims_I3_J,axiom,
! [X: option_state,Xa: option_state] :
( ~ ( compat2278460363914054422_state @ X @ Xa )
=> ~ ! [A4: state] :
( ( X
= ( some_state @ A4 ) )
=> ! [B4: state] :
( ( Xa
= ( some_state @ B4 ) )
=> ( A4 = B4 ) ) ) ) ).
% compatible_options.elims(3)
thf(fact_45_compatible__options_Oelims_I3_J,axiom,
! [X: option_val,Xa: option_val] :
( ~ ( compat7209469420100717861ns_val @ X @ Xa )
=> ~ ! [A4: val] :
( ( X
= ( some_val @ A4 ) )
=> ! [B4: val] :
( ( Xa
= ( some_val @ B4 ) )
=> ( A4 = B4 ) ) ) ) ).
% compatible_options.elims(3)
thf(fact_46_compatible__options_Osimps_I1_J,axiom,
! [A2: produc9003781588162623004on_val,B2: produc9003781588162623004on_val] :
( ( compat6602494657299208312on_val @ ( some_P2581650809551911671on_val @ A2 ) @ ( some_P2581650809551911671on_val @ B2 ) )
= ( A2 = B2 ) ) ).
% compatible_options.simps(1)
thf(fact_47_compatible__options_Osimps_I1_J,axiom,
! [A2: list_char,B2: list_char] :
( ( compat7573737823326560701t_char @ ( some_list_char @ A2 ) @ ( some_list_char @ B2 ) )
= ( A2 = B2 ) ) ).
% compatible_options.simps(1)
thf(fact_48_compatible__options_Osimps_I1_J,axiom,
! [A2: produc1457211279475724562t_char > option_val,B2: produc1457211279475724562t_char > option_val] :
( ( compat2032066794789061494on_val @ ( some_P7669353234731512949on_val @ A2 ) @ ( some_P7669353234731512949on_val @ B2 ) )
= ( A2 = B2 ) ) ).
% compatible_options.simps(1)
thf(fact_49_compatible__options_Osimps_I1_J,axiom,
! [A2: state,B2: state] :
( ( compat2278460363914054422_state @ ( some_state @ A2 ) @ ( some_state @ B2 ) )
= ( A2 = B2 ) ) ).
% compatible_options.simps(1)
thf(fact_50_compatible__options_Osimps_I1_J,axiom,
! [A2: val,B2: val] :
( ( compat7209469420100717861ns_val @ ( some_val @ A2 ) @ ( some_val @ B2 ) )
= ( A2 = B2 ) ) ).
% compatible_options.simps(1)
thf(fact_51_not__Some__eq,axiom,
! [X: option8887860577033306220on_val] :
( ( ! [Y3: produc9003781588162623004on_val] :
( X
!= ( some_P2581650809551911671on_val @ Y3 ) ) )
= ( X = none_P8728355543607141243on_val ) ) ).
% not_Some_eq
thf(fact_52_not__Some__eq,axiom,
! [X: option_list_char] :
( ( ! [Y3: list_char] :
( X
!= ( some_list_char @ Y3 ) ) )
= ( X = none_list_char ) ) ).
% not_Some_eq
thf(fact_53_not__Some__eq,axiom,
! [X: option5747939881698552298on_val] :
( ( ! [Y3: produc1457211279475724562t_char > option_val] :
( X
!= ( some_P7669353234731512949on_val @ Y3 ) ) )
= ( X = none_P1334921381875262201on_val ) ) ).
% not_Some_eq
thf(fact_54_not__Some__eq,axiom,
! [X: option_state] :
( ( ! [Y3: state] :
( X
!= ( some_state @ Y3 ) ) )
= ( X = none_state ) ) ).
% not_Some_eq
thf(fact_55_not__Some__eq,axiom,
! [X: option_val] :
( ( ! [Y3: val] :
( X
!= ( some_val @ Y3 ) ) )
= ( X = none_val ) ) ).
% not_Some_eq
thf(fact_56_not__None__eq,axiom,
! [X: option8887860577033306220on_val] :
( ( X != none_P8728355543607141243on_val )
= ( ? [Y3: produc9003781588162623004on_val] :
( X
= ( some_P2581650809551911671on_val @ Y3 ) ) ) ) ).
% not_None_eq
thf(fact_57_not__None__eq,axiom,
! [X: option_list_char] :
( ( X != none_list_char )
= ( ? [Y3: list_char] :
( X
= ( some_list_char @ Y3 ) ) ) ) ).
% not_None_eq
thf(fact_58_not__None__eq,axiom,
! [X: option5747939881698552298on_val] :
( ( X != none_P1334921381875262201on_val )
= ( ? [Y3: produc1457211279475724562t_char > option_val] :
( X
= ( some_P7669353234731512949on_val @ Y3 ) ) ) ) ).
% not_None_eq
thf(fact_59_not__None__eq,axiom,
! [X: option_state] :
( ( X != none_state )
= ( ? [Y3: state] :
( X
= ( some_state @ Y3 ) ) ) ) ).
% not_None_eq
thf(fact_60_not__None__eq,axiom,
! [X: option_val] :
( ( X != none_val )
= ( ? [Y3: val] :
( X
= ( some_val @ Y3 ) ) ) ) ).
% not_None_eq
thf(fact_61_map__add__eq__empty__iff,axiom,
! [F: produc9003781588162623004on_val > option_state,G: produc9003781588162623004on_val > option_state] :
( ( ( map_ad2629041965313307917_state @ F @ G )
= ( ^ [X3: produc9003781588162623004on_val] : none_state ) )
= ( ( F
= ( ^ [X3: produc9003781588162623004on_val] : none_state ) )
& ( G
= ( ^ [X3: produc9003781588162623004on_val] : none_state ) ) ) ) ).
% map_add_eq_empty_iff
thf(fact_62_map__add__eq__empty__iff,axiom,
! [F: produc9003781588162623004on_val > option_val,G: produc9003781588162623004on_val > option_val] :
( ( ( map_ad5466549115852757998al_val @ F @ G )
= ( ^ [X3: produc9003781588162623004on_val] : none_val ) )
= ( ( F
= ( ^ [X3: produc9003781588162623004on_val] : none_val ) )
& ( G
= ( ^ [X3: produc9003781588162623004on_val] : none_val ) ) ) ) ).
% map_add_eq_empty_iff
thf(fact_63_map__add__eq__empty__iff,axiom,
! [F: produc1457211279475724562t_char > option_val,G: produc1457211279475724562t_char > option_val] :
( ( ( map_ad2908576761495157028ar_val @ F @ G )
= ( ^ [X3: produc1457211279475724562t_char] : none_val ) )
= ( ( F
= ( ^ [X3: produc1457211279475724562t_char] : none_val ) )
& ( G
= ( ^ [X3: produc1457211279475724562t_char] : none_val ) ) ) ) ).
% map_add_eq_empty_iff
thf(fact_64_map__add__None,axiom,
! [M: produc9003781588162623004on_val > option_state,N: produc9003781588162623004on_val > option_state,K: produc9003781588162623004on_val] :
( ( ( map_ad2629041965313307917_state @ M @ N @ K )
= none_state )
= ( ( ( N @ K )
= none_state )
& ( ( M @ K )
= none_state ) ) ) ).
% map_add_None
thf(fact_65_map__add__None,axiom,
! [M: produc9003781588162623004on_val > option_val,N: produc9003781588162623004on_val > option_val,K: produc9003781588162623004on_val] :
( ( ( map_ad5466549115852757998al_val @ M @ N @ K )
= none_val )
= ( ( ( N @ K )
= none_val )
& ( ( M @ K )
= none_val ) ) ) ).
% map_add_None
thf(fact_66_map__add__None,axiom,
! [M: produc1457211279475724562t_char > option_val,N: produc1457211279475724562t_char > option_val,K: produc1457211279475724562t_char] :
( ( ( map_ad2908576761495157028ar_val @ M @ N @ K )
= none_val )
= ( ( ( N @ K )
= none_val )
& ( ( M @ K )
= none_val ) ) ) ).
% map_add_None
thf(fact_67_compatible__options_Osimps_I2_J,axiom,
! [Uv: option8887860577033306220on_val] : ( compat6602494657299208312on_val @ none_P8728355543607141243on_val @ Uv ) ).
% compatible_options.simps(2)
thf(fact_68_compatible__options_Osimps_I2_J,axiom,
! [Uv: option_list_char] : ( compat7573737823326560701t_char @ none_list_char @ Uv ) ).
% compatible_options.simps(2)
thf(fact_69_compatible__options_Osimps_I2_J,axiom,
! [Uv: option5747939881698552298on_val] : ( compat2032066794789061494on_val @ none_P1334921381875262201on_val @ Uv ) ).
% compatible_options.simps(2)
thf(fact_70_compatible__options_Osimps_I2_J,axiom,
! [Uv: option_state] : ( compat2278460363914054422_state @ none_state @ Uv ) ).
% compatible_options.simps(2)
thf(fact_71_compatible__options_Osimps_I2_J,axiom,
! [Uv: option_val] : ( compat7209469420100717861ns_val @ none_val @ Uv ) ).
% compatible_options.simps(2)
thf(fact_72_compatible__options_Osimps_I3_J,axiom,
! [Uu: option8887860577033306220on_val] : ( compat6602494657299208312on_val @ Uu @ none_P8728355543607141243on_val ) ).
% compatible_options.simps(3)
thf(fact_73_compatible__options_Osimps_I3_J,axiom,
! [Uu: option_list_char] : ( compat7573737823326560701t_char @ Uu @ none_list_char ) ).
% compatible_options.simps(3)
thf(fact_74_compatible__options_Osimps_I3_J,axiom,
! [Uu: option5747939881698552298on_val] : ( compat2032066794789061494on_val @ Uu @ none_P1334921381875262201on_val ) ).
% compatible_options.simps(3)
thf(fact_75_compatible__options_Osimps_I3_J,axiom,
! [Uu: option_state] : ( compat2278460363914054422_state @ Uu @ none_state ) ).
% compatible_options.simps(3)
thf(fact_76_compatible__options_Osimps_I3_J,axiom,
! [Uu: option_val] : ( compat7209469420100717861ns_val @ Uu @ none_val ) ).
% compatible_options.simps(3)
thf(fact_77_combine__options__cases,axiom,
! [X: option_state,P: option_state > option_state > $o,Y2: option_state] :
( ( ( X = none_state )
=> ( P @ X @ Y2 ) )
=> ( ( ( Y2 = none_state )
=> ( P @ X @ Y2 ) )
=> ( ! [A4: state,B4: state] :
( ( X
= ( some_state @ A4 ) )
=> ( ( Y2
= ( some_state @ B4 ) )
=> ( P @ X @ Y2 ) ) )
=> ( P @ X @ Y2 ) ) ) ) ).
% combine_options_cases
thf(fact_78_combine__options__cases,axiom,
! [X: option_state,P: option_state > option_val > $o,Y2: option_val] :
( ( ( X = none_state )
=> ( P @ X @ Y2 ) )
=> ( ( ( Y2 = none_val )
=> ( P @ X @ Y2 ) )
=> ( ! [A4: state,B4: val] :
( ( X
= ( some_state @ A4 ) )
=> ( ( Y2
= ( some_val @ B4 ) )
=> ( P @ X @ Y2 ) ) )
=> ( P @ X @ Y2 ) ) ) ) ).
% combine_options_cases
thf(fact_79_combine__options__cases,axiom,
! [X: option_val,P: option_val > option_state > $o,Y2: option_state] :
( ( ( X = none_val )
=> ( P @ X @ Y2 ) )
=> ( ( ( Y2 = none_state )
=> ( P @ X @ Y2 ) )
=> ( ! [A4: val,B4: state] :
( ( X
= ( some_val @ A4 ) )
=> ( ( Y2
= ( some_state @ B4 ) )
=> ( P @ X @ Y2 ) ) )
=> ( P @ X @ Y2 ) ) ) ) ).
% combine_options_cases
thf(fact_80_combine__options__cases,axiom,
! [X: option_val,P: option_val > option_val > $o,Y2: option_val] :
( ( ( X = none_val )
=> ( P @ X @ Y2 ) )
=> ( ( ( Y2 = none_val )
=> ( P @ X @ Y2 ) )
=> ( ! [A4: val,B4: val] :
( ( X
= ( some_val @ A4 ) )
=> ( ( Y2
= ( some_val @ B4 ) )
=> ( P @ X @ Y2 ) ) )
=> ( P @ X @ Y2 ) ) ) ) ).
% combine_options_cases
thf(fact_81_combine__options__cases,axiom,
! [X: option_state,P: option_state > option_list_char > $o,Y2: option_list_char] :
( ( ( X = none_state )
=> ( P @ X @ Y2 ) )
=> ( ( ( Y2 = none_list_char )
=> ( P @ X @ Y2 ) )
=> ( ! [A4: state,B4: list_char] :
( ( X
= ( some_state @ A4 ) )
=> ( ( Y2
= ( some_list_char @ B4 ) )
=> ( P @ X @ Y2 ) ) )
=> ( P @ X @ Y2 ) ) ) ) ).
% combine_options_cases
thf(fact_82_combine__options__cases,axiom,
! [X: option_val,P: option_val > option_list_char > $o,Y2: option_list_char] :
( ( ( X = none_val )
=> ( P @ X @ Y2 ) )
=> ( ( ( Y2 = none_list_char )
=> ( P @ X @ Y2 ) )
=> ( ! [A4: val,B4: list_char] :
( ( X
= ( some_val @ A4 ) )
=> ( ( Y2
= ( some_list_char @ B4 ) )
=> ( P @ X @ Y2 ) ) )
=> ( P @ X @ Y2 ) ) ) ) ).
% combine_options_cases
thf(fact_83_combine__options__cases,axiom,
! [X: option_list_char,P: option_list_char > option_state > $o,Y2: option_state] :
( ( ( X = none_list_char )
=> ( P @ X @ Y2 ) )
=> ( ( ( Y2 = none_state )
=> ( P @ X @ Y2 ) )
=> ( ! [A4: list_char,B4: state] :
( ( X
= ( some_list_char @ A4 ) )
=> ( ( Y2
= ( some_state @ B4 ) )
=> ( P @ X @ Y2 ) ) )
=> ( P @ X @ Y2 ) ) ) ) ).
% combine_options_cases
thf(fact_84_combine__options__cases,axiom,
! [X: option_list_char,P: option_list_char > option_val > $o,Y2: option_val] :
( ( ( X = none_list_char )
=> ( P @ X @ Y2 ) )
=> ( ( ( Y2 = none_val )
=> ( P @ X @ Y2 ) )
=> ( ! [A4: list_char,B4: val] :
( ( X
= ( some_list_char @ A4 ) )
=> ( ( Y2
= ( some_val @ B4 ) )
=> ( P @ X @ Y2 ) ) )
=> ( P @ X @ Y2 ) ) ) ) ).
% combine_options_cases
thf(fact_85_combine__options__cases,axiom,
! [X: option_list_char,P: option_list_char > option_list_char > $o,Y2: option_list_char] :
( ( ( X = none_list_char )
=> ( P @ X @ Y2 ) )
=> ( ( ( Y2 = none_list_char )
=> ( P @ X @ Y2 ) )
=> ( ! [A4: list_char,B4: list_char] :
( ( X
= ( some_list_char @ A4 ) )
=> ( ( Y2
= ( some_list_char @ B4 ) )
=> ( P @ X @ Y2 ) ) )
=> ( P @ X @ Y2 ) ) ) ) ).
% combine_options_cases
thf(fact_86_combine__options__cases,axiom,
! [X: option_state,P: option_state > option5747939881698552298on_val > $o,Y2: option5747939881698552298on_val] :
( ( ( X = none_state )
=> ( P @ X @ Y2 ) )
=> ( ( ( Y2 = none_P1334921381875262201on_val )
=> ( P @ X @ Y2 ) )
=> ( ! [A4: state,B4: produc1457211279475724562t_char > option_val] :
( ( X
= ( some_state @ A4 ) )
=> ( ( Y2
= ( some_P7669353234731512949on_val @ B4 ) )
=> ( P @ X @ Y2 ) ) )
=> ( P @ X @ Y2 ) ) ) ) ).
% combine_options_cases
thf(fact_87_split__option__all,axiom,
( ( ^ [P2: option8887860577033306220on_val > $o] :
! [X4: option8887860577033306220on_val] : ( P2 @ X4 ) )
= ( ^ [P3: option8887860577033306220on_val > $o] :
( ( P3 @ none_P8728355543607141243on_val )
& ! [X3: produc9003781588162623004on_val] : ( P3 @ ( some_P2581650809551911671on_val @ X3 ) ) ) ) ) ).
% split_option_all
thf(fact_88_split__option__all,axiom,
( ( ^ [P2: option_list_char > $o] :
! [X4: option_list_char] : ( P2 @ X4 ) )
= ( ^ [P3: option_list_char > $o] :
( ( P3 @ none_list_char )
& ! [X3: list_char] : ( P3 @ ( some_list_char @ X3 ) ) ) ) ) ).
% split_option_all
thf(fact_89_split__option__all,axiom,
( ( ^ [P2: option5747939881698552298on_val > $o] :
! [X4: option5747939881698552298on_val] : ( P2 @ X4 ) )
= ( ^ [P3: option5747939881698552298on_val > $o] :
( ( P3 @ none_P1334921381875262201on_val )
& ! [X3: produc1457211279475724562t_char > option_val] : ( P3 @ ( some_P7669353234731512949on_val @ X3 ) ) ) ) ) ).
% split_option_all
thf(fact_90_split__option__all,axiom,
( ( ^ [P2: option_state > $o] :
! [X4: option_state] : ( P2 @ X4 ) )
= ( ^ [P3: option_state > $o] :
( ( P3 @ none_state )
& ! [X3: state] : ( P3 @ ( some_state @ X3 ) ) ) ) ) ).
% split_option_all
thf(fact_91_split__option__all,axiom,
( ( ^ [P2: option_val > $o] :
! [X4: option_val] : ( P2 @ X4 ) )
= ( ^ [P3: option_val > $o] :
( ( P3 @ none_val )
& ! [X3: val] : ( P3 @ ( some_val @ X3 ) ) ) ) ) ).
% split_option_all
thf(fact_92_split__option__ex,axiom,
( ( ^ [P2: option8887860577033306220on_val > $o] :
? [X4: option8887860577033306220on_val] : ( P2 @ X4 ) )
= ( ^ [P3: option8887860577033306220on_val > $o] :
( ( P3 @ none_P8728355543607141243on_val )
| ? [X3: produc9003781588162623004on_val] : ( P3 @ ( some_P2581650809551911671on_val @ X3 ) ) ) ) ) ).
% split_option_ex
thf(fact_93_split__option__ex,axiom,
( ( ^ [P2: option_list_char > $o] :
? [X4: option_list_char] : ( P2 @ X4 ) )
= ( ^ [P3: option_list_char > $o] :
( ( P3 @ none_list_char )
| ? [X3: list_char] : ( P3 @ ( some_list_char @ X3 ) ) ) ) ) ).
% split_option_ex
thf(fact_94_split__option__ex,axiom,
( ( ^ [P2: option5747939881698552298on_val > $o] :
? [X4: option5747939881698552298on_val] : ( P2 @ X4 ) )
= ( ^ [P3: option5747939881698552298on_val > $o] :
( ( P3 @ none_P1334921381875262201on_val )
| ? [X3: produc1457211279475724562t_char > option_val] : ( P3 @ ( some_P7669353234731512949on_val @ X3 ) ) ) ) ) ).
% split_option_ex
thf(fact_95_split__option__ex,axiom,
( ( ^ [P2: option_state > $o] :
? [X4: option_state] : ( P2 @ X4 ) )
= ( ^ [P3: option_state > $o] :
( ( P3 @ none_state )
| ? [X3: state] : ( P3 @ ( some_state @ X3 ) ) ) ) ) ).
% split_option_ex
thf(fact_96_split__option__ex,axiom,
( ( ^ [P2: option_val > $o] :
? [X4: option_val] : ( P2 @ X4 ) )
= ( ^ [P3: option_val > $o] :
( ( P3 @ none_val )
| ? [X3: val] : ( P3 @ ( some_val @ X3 ) ) ) ) ) ).
% split_option_ex
thf(fact_97_option_Oexhaust,axiom,
! [Y2: option8887860577033306220on_val] :
( ( Y2 != none_P8728355543607141243on_val )
=> ~ ! [X23: produc9003781588162623004on_val] :
( Y2
!= ( some_P2581650809551911671on_val @ X23 ) ) ) ).
% option.exhaust
thf(fact_98_option_Oexhaust,axiom,
! [Y2: option_list_char] :
( ( Y2 != none_list_char )
=> ~ ! [X23: list_char] :
( Y2
!= ( some_list_char @ X23 ) ) ) ).
% option.exhaust
thf(fact_99_option_Oexhaust,axiom,
! [Y2: option5747939881698552298on_val] :
( ( Y2 != none_P1334921381875262201on_val )
=> ~ ! [X23: produc1457211279475724562t_char > option_val] :
( Y2
!= ( some_P7669353234731512949on_val @ X23 ) ) ) ).
% option.exhaust
thf(fact_100_option_Oexhaust,axiom,
! [Y2: option_state] :
( ( Y2 != none_state )
=> ~ ! [X23: state] :
( Y2
!= ( some_state @ X23 ) ) ) ).
% option.exhaust
thf(fact_101_option_Oexhaust,axiom,
! [Y2: option_val] :
( ( Y2 != none_val )
=> ~ ! [X23: val] :
( Y2
!= ( some_val @ X23 ) ) ) ).
% option.exhaust
thf(fact_102_mem__Collect__eq,axiom,
! [A2: val,P: val > $o] :
( ( member_val @ A2 @ ( collect_val @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_103_mem__Collect__eq,axiom,
! [A2: nat,P: nat > $o] :
( ( member_nat @ A2 @ ( collect_nat @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_104_mem__Collect__eq,axiom,
! [A2: produc1457211279475724562t_char > option_val,P: ( produc1457211279475724562t_char > option_val ) > $o] :
( ( member1577473829074448177on_val @ A2 @ ( collec8455114619259388271on_val @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_105_mem__Collect__eq,axiom,
! [A2: produc1457211279475724562t_char > prat,P: ( produc1457211279475724562t_char > prat ) > $o] :
( ( member2336342582916103932r_prat @ A2 @ ( collec7093475260167521854r_prat @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_106_mem__Collect__eq,axiom,
! [A2: produc1457211279475724562t_char,P: produc1457211279475724562t_char > $o] :
( ( member484235747325421115t_char @ A2 @ ( collec2458894688891239037t_char @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_107_mem__Collect__eq,axiom,
! [A2: option_state,P: option_state > $o] :
( ( member_option_state @ A2 @ ( collect_option_state @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_108_mem__Collect__eq,axiom,
! [A2: option2736423997234022232t_char,P: option2736423997234022232t_char > $o] :
( ( member1900516542280067841t_char @ A2 @ ( collec3561702660602934339t_char @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_109_mem__Collect__eq,axiom,
! [A2: option8887860577033306220on_val,P: option8887860577033306220on_val > $o] :
( ( member4602090469187516291on_val @ A2 @ ( collec6281439769543645121on_val @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_110_mem__Collect__eq,axiom,
! [A2: option_val,P: option_val > $o] :
( ( member_option_val @ A2 @ ( collect_option_val @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_111_mem__Collect__eq,axiom,
! [A2: produc9003781588162623004on_val,P: produc9003781588162623004on_val > $o] :
( ( member2879030624002546611on_val @ A2 @ ( collec7475294502966882545on_val @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_112_Collect__mem__eq,axiom,
! [A5: set_val] :
( ( collect_val
@ ^ [X3: val] : ( member_val @ X3 @ A5 ) )
= A5 ) ).
% Collect_mem_eq
thf(fact_113_Collect__mem__eq,axiom,
! [A5: set_nat] :
( ( collect_nat
@ ^ [X3: nat] : ( member_nat @ X3 @ A5 ) )
= A5 ) ).
% Collect_mem_eq
thf(fact_114_Collect__mem__eq,axiom,
! [A5: set_Pr1004501353197068112on_val] :
( ( collec8455114619259388271on_val
@ ^ [X3: produc1457211279475724562t_char > option_val] : ( member1577473829074448177on_val @ X3 @ A5 ) )
= A5 ) ).
% Collect_mem_eq
thf(fact_115_Collect__mem__eq,axiom,
! [A5: set_Pr3433046674199179443r_prat] :
( ( collec7093475260167521854r_prat
@ ^ [X3: produc1457211279475724562t_char > prat] : ( member2336342582916103932r_prat @ X3 @ A5 ) )
= A5 ) ).
% Collect_mem_eq
thf(fact_116_Collect__mem__eq,axiom,
! [A5: set_Pr2507339680178222706t_char] :
( ( collec2458894688891239037t_char
@ ^ [X3: produc1457211279475724562t_char] : ( member484235747325421115t_char @ X3 @ A5 ) )
= A5 ) ).
% Collect_mem_eq
thf(fact_117_Collect__mem__eq,axiom,
! [A5: set_option_state] :
( ( collect_option_state
@ ^ [X3: option_state] : ( member_option_state @ X3 @ A5 ) )
= A5 ) ).
% Collect_mem_eq
thf(fact_118_Collect__mem__eq,axiom,
! [A5: set_op9137726805559506488t_char] :
( ( collec3561702660602934339t_char
@ ^ [X3: option2736423997234022232t_char] : ( member1900516542280067841t_char @ X3 @ A5 ) )
= A5 ) ).
% Collect_mem_eq
thf(fact_119_Collect__mem__eq,axiom,
! [A5: set_op6240181410663953058on_val] :
( ( collec6281439769543645121on_val
@ ^ [X3: option8887860577033306220on_val] : ( member4602090469187516291on_val @ X3 @ A5 ) )
= A5 ) ).
% Collect_mem_eq
thf(fact_120_Collect__mem__eq,axiom,
! [A5: set_option_val] :
( ( collect_option_val
@ ^ [X3: option_val] : ( member_option_val @ X3 @ A5 ) )
= A5 ) ).
% Collect_mem_eq
thf(fact_121_Collect__mem__eq,axiom,
! [A5: set_Pr7649655576376376530on_val] :
( ( collec7475294502966882545on_val
@ ^ [X3: produc9003781588162623004on_val] : ( member2879030624002546611on_val @ X3 @ A5 ) )
= A5 ) ).
% Collect_mem_eq
thf(fact_122_Collect__cong,axiom,
! [P: produc1457211279475724562t_char > $o,Q: produc1457211279475724562t_char > $o] :
( ! [X2: produc1457211279475724562t_char] :
( ( P @ X2 )
= ( Q @ X2 ) )
=> ( ( collec2458894688891239037t_char @ P )
= ( collec2458894688891239037t_char @ Q ) ) ) ).
% Collect_cong
thf(fact_123_Collect__cong,axiom,
! [P: option_state > $o,Q: option_state > $o] :
( ! [X2: option_state] :
( ( P @ X2 )
= ( Q @ X2 ) )
=> ( ( collect_option_state @ P )
= ( collect_option_state @ Q ) ) ) ).
% Collect_cong
thf(fact_124_Collect__cong,axiom,
! [P: option2736423997234022232t_char > $o,Q: option2736423997234022232t_char > $o] :
( ! [X2: option2736423997234022232t_char] :
( ( P @ X2 )
= ( Q @ X2 ) )
=> ( ( collec3561702660602934339t_char @ P )
= ( collec3561702660602934339t_char @ Q ) ) ) ).
% Collect_cong
thf(fact_125_Collect__cong,axiom,
! [P: option8887860577033306220on_val > $o,Q: option8887860577033306220on_val > $o] :
( ! [X2: option8887860577033306220on_val] :
( ( P @ X2 )
= ( Q @ X2 ) )
=> ( ( collec6281439769543645121on_val @ P )
= ( collec6281439769543645121on_val @ Q ) ) ) ).
% Collect_cong
thf(fact_126_Collect__cong,axiom,
! [P: option_val > $o,Q: option_val > $o] :
( ! [X2: option_val] :
( ( P @ X2 )
= ( Q @ X2 ) )
=> ( ( collect_option_val @ P )
= ( collect_option_val @ Q ) ) ) ).
% Collect_cong
thf(fact_127_Collect__cong,axiom,
! [P: produc9003781588162623004on_val > $o,Q: produc9003781588162623004on_val > $o] :
( ! [X2: produc9003781588162623004on_val] :
( ( P @ X2 )
= ( Q @ X2 ) )
=> ( ( collec7475294502966882545on_val @ P )
= ( collec7475294502966882545on_val @ Q ) ) ) ).
% Collect_cong
thf(fact_128_option_OdiscI,axiom,
! [Option: option8887860577033306220on_val,X22: produc9003781588162623004on_val] :
( ( Option
= ( some_P2581650809551911671on_val @ X22 ) )
=> ( Option != none_P8728355543607141243on_val ) ) ).
% option.discI
thf(fact_129_option_OdiscI,axiom,
! [Option: option_list_char,X22: list_char] :
( ( Option
= ( some_list_char @ X22 ) )
=> ( Option != none_list_char ) ) ).
% option.discI
thf(fact_130_option_OdiscI,axiom,
! [Option: option5747939881698552298on_val,X22: produc1457211279475724562t_char > option_val] :
( ( Option
= ( some_P7669353234731512949on_val @ X22 ) )
=> ( Option != none_P1334921381875262201on_val ) ) ).
% option.discI
thf(fact_131_option_OdiscI,axiom,
! [Option: option_state,X22: state] :
( ( Option
= ( some_state @ X22 ) )
=> ( Option != none_state ) ) ).
% option.discI
thf(fact_132_option_OdiscI,axiom,
! [Option: option_val,X22: val] :
( ( Option
= ( some_val @ X22 ) )
=> ( Option != none_val ) ) ).
% option.discI
thf(fact_133_option_Odistinct_I1_J,axiom,
! [X22: produc9003781588162623004on_val] :
( none_P8728355543607141243on_val
!= ( some_P2581650809551911671on_val @ X22 ) ) ).
% option.distinct(1)
thf(fact_134_option_Odistinct_I1_J,axiom,
! [X22: list_char] :
( none_list_char
!= ( some_list_char @ X22 ) ) ).
% option.distinct(1)
thf(fact_135_option_Odistinct_I1_J,axiom,
! [X22: produc1457211279475724562t_char > option_val] :
( none_P1334921381875262201on_val
!= ( some_P7669353234731512949on_val @ X22 ) ) ).
% option.distinct(1)
thf(fact_136_option_Odistinct_I1_J,axiom,
! [X22: state] :
( none_state
!= ( some_state @ X22 ) ) ).
% option.distinct(1)
thf(fact_137_option_Odistinct_I1_J,axiom,
! [X22: val] :
( none_val
!= ( some_val @ X22 ) ) ).
% option.distinct(1)
thf(fact_138_compatible__options_Oelims_I1_J,axiom,
! [X: option8887860577033306220on_val,Xa: option8887860577033306220on_val,Y2: $o] :
( ( ( compat6602494657299208312on_val @ X @ Xa )
= Y2 )
=> ( ! [A4: produc9003781588162623004on_val] :
( ( X
= ( some_P2581650809551911671on_val @ A4 ) )
=> ! [B4: produc9003781588162623004on_val] :
( ( Xa
= ( some_P2581650809551911671on_val @ B4 ) )
=> ( Y2
= ( A4 != B4 ) ) ) )
=> ( ( ( X = none_P8728355543607141243on_val )
=> ~ Y2 )
=> ~ ( ( Xa = none_P8728355543607141243on_val )
=> ~ Y2 ) ) ) ) ).
% compatible_options.elims(1)
thf(fact_139_compatible__options_Oelims_I1_J,axiom,
! [X: option_list_char,Xa: option_list_char,Y2: $o] :
( ( ( compat7573737823326560701t_char @ X @ Xa )
= Y2 )
=> ( ! [A4: list_char] :
( ( X
= ( some_list_char @ A4 ) )
=> ! [B4: list_char] :
( ( Xa
= ( some_list_char @ B4 ) )
=> ( Y2
= ( A4 != B4 ) ) ) )
=> ( ( ( X = none_list_char )
=> ~ Y2 )
=> ~ ( ( Xa = none_list_char )
=> ~ Y2 ) ) ) ) ).
% compatible_options.elims(1)
thf(fact_140_compatible__options_Oelims_I1_J,axiom,
! [X: option5747939881698552298on_val,Xa: option5747939881698552298on_val,Y2: $o] :
( ( ( compat2032066794789061494on_val @ X @ Xa )
= Y2 )
=> ( ! [A4: produc1457211279475724562t_char > option_val] :
( ( X
= ( some_P7669353234731512949on_val @ A4 ) )
=> ! [B4: produc1457211279475724562t_char > option_val] :
( ( Xa
= ( some_P7669353234731512949on_val @ B4 ) )
=> ( Y2
= ( A4 != B4 ) ) ) )
=> ( ( ( X = none_P1334921381875262201on_val )
=> ~ Y2 )
=> ~ ( ( Xa = none_P1334921381875262201on_val )
=> ~ Y2 ) ) ) ) ).
% compatible_options.elims(1)
thf(fact_141_compatible__options_Oelims_I1_J,axiom,
! [X: option_state,Xa: option_state,Y2: $o] :
( ( ( compat2278460363914054422_state @ X @ Xa )
= Y2 )
=> ( ! [A4: state] :
( ( X
= ( some_state @ A4 ) )
=> ! [B4: state] :
( ( Xa
= ( some_state @ B4 ) )
=> ( Y2
= ( A4 != B4 ) ) ) )
=> ( ( ( X = none_state )
=> ~ Y2 )
=> ~ ( ( Xa = none_state )
=> ~ Y2 ) ) ) ) ).
% compatible_options.elims(1)
thf(fact_142_compatible__options_Oelims_I1_J,axiom,
! [X: option_val,Xa: option_val,Y2: $o] :
( ( ( compat7209469420100717861ns_val @ X @ Xa )
= Y2 )
=> ( ! [A4: val] :
( ( X
= ( some_val @ A4 ) )
=> ! [B4: val] :
( ( Xa
= ( some_val @ B4 ) )
=> ( Y2
= ( A4 != B4 ) ) ) )
=> ( ( ( X = none_val )
=> ~ Y2 )
=> ~ ( ( Xa = none_val )
=> ~ Y2 ) ) ) ) ).
% compatible_options.elims(1)
thf(fact_143_compatible__options_Oelims_I2_J,axiom,
! [X: option8887860577033306220on_val,Xa: option8887860577033306220on_val] :
( ( compat6602494657299208312on_val @ X @ Xa )
=> ( ! [A4: produc9003781588162623004on_val] :
( ( X
= ( some_P2581650809551911671on_val @ A4 ) )
=> ! [B4: produc9003781588162623004on_val] :
( ( Xa
= ( some_P2581650809551911671on_val @ B4 ) )
=> ( A4 != B4 ) ) )
=> ( ( X != none_P8728355543607141243on_val )
=> ( Xa = none_P8728355543607141243on_val ) ) ) ) ).
% compatible_options.elims(2)
thf(fact_144_compatible__options_Oelims_I2_J,axiom,
! [X: option_list_char,Xa: option_list_char] :
( ( compat7573737823326560701t_char @ X @ Xa )
=> ( ! [A4: list_char] :
( ( X
= ( some_list_char @ A4 ) )
=> ! [B4: list_char] :
( ( Xa
= ( some_list_char @ B4 ) )
=> ( A4 != B4 ) ) )
=> ( ( X != none_list_char )
=> ( Xa = none_list_char ) ) ) ) ).
% compatible_options.elims(2)
thf(fact_145_compatible__options_Oelims_I2_J,axiom,
! [X: option5747939881698552298on_val,Xa: option5747939881698552298on_val] :
( ( compat2032066794789061494on_val @ X @ Xa )
=> ( ! [A4: produc1457211279475724562t_char > option_val] :
( ( X
= ( some_P7669353234731512949on_val @ A4 ) )
=> ! [B4: produc1457211279475724562t_char > option_val] :
( ( Xa
= ( some_P7669353234731512949on_val @ B4 ) )
=> ( A4 != B4 ) ) )
=> ( ( X != none_P1334921381875262201on_val )
=> ( Xa = none_P1334921381875262201on_val ) ) ) ) ).
% compatible_options.elims(2)
thf(fact_146_compatible__options_Oelims_I2_J,axiom,
! [X: option_state,Xa: option_state] :
( ( compat2278460363914054422_state @ X @ Xa )
=> ( ! [A4: state] :
( ( X
= ( some_state @ A4 ) )
=> ! [B4: state] :
( ( Xa
= ( some_state @ B4 ) )
=> ( A4 != B4 ) ) )
=> ( ( X != none_state )
=> ( Xa = none_state ) ) ) ) ).
% compatible_options.elims(2)
thf(fact_147_compatible__options_Oelims_I2_J,axiom,
! [X: option_val,Xa: option_val] :
( ( compat7209469420100717861ns_val @ X @ Xa )
=> ( ! [A4: val] :
( ( X
= ( some_val @ A4 ) )
=> ! [B4: val] :
( ( Xa
= ( some_val @ B4 ) )
=> ( A4 != B4 ) ) )
=> ( ( X != none_val )
=> ( Xa = none_val ) ) ) ) ).
% compatible_options.elims(2)
thf(fact_148_compatible__heapsI,axiom,
! [H: produc1457211279475724562t_char > option_val,H2: produc1457211279475724562t_char > option_val] :
( ! [Hl: produc1457211279475724562t_char,A4: val,B4: val] :
( ( ( H @ Hl )
= ( some_val @ A4 ) )
=> ( ( ( H2 @ Hl )
= ( some_val @ B4 ) )
=> ( A4 = B4 ) ) )
=> ( compatible_heaps @ H @ H2 ) ) ).
% compatible_heapsI
thf(fact_149_map__add__Some__iff,axiom,
! [M: produc9003781588162623004on_val > option_state,N: produc9003781588162623004on_val > option_state,K: produc9003781588162623004on_val,X: state] :
( ( ( map_ad2629041965313307917_state @ M @ N @ K )
= ( some_state @ X ) )
= ( ( ( N @ K )
= ( some_state @ X ) )
| ( ( ( N @ K )
= none_state )
& ( ( M @ K )
= ( some_state @ X ) ) ) ) ) ).
% map_add_Some_iff
thf(fact_150_map__add__Some__iff,axiom,
! [M: produc9003781588162623004on_val > option_val,N: produc9003781588162623004on_val > option_val,K: produc9003781588162623004on_val,X: val] :
( ( ( map_ad5466549115852757998al_val @ M @ N @ K )
= ( some_val @ X ) )
= ( ( ( N @ K )
= ( some_val @ X ) )
| ( ( ( N @ K )
= none_val )
& ( ( M @ K )
= ( some_val @ X ) ) ) ) ) ).
% map_add_Some_iff
thf(fact_151_map__add__Some__iff,axiom,
! [M: produc1457211279475724562t_char > option_val,N: produc1457211279475724562t_char > option_val,K: produc1457211279475724562t_char,X: val] :
( ( ( map_ad2908576761495157028ar_val @ M @ N @ K )
= ( some_val @ X ) )
= ( ( ( N @ K )
= ( some_val @ X ) )
| ( ( ( N @ K )
= none_val )
& ( ( M @ K )
= ( some_val @ X ) ) ) ) ) ).
% map_add_Some_iff
thf(fact_152_map__add__SomeD,axiom,
! [M: produc9003781588162623004on_val > option_state,N: produc9003781588162623004on_val > option_state,K: produc9003781588162623004on_val,X: state] :
( ( ( map_ad2629041965313307917_state @ M @ N @ K )
= ( some_state @ X ) )
=> ( ( ( N @ K )
= ( some_state @ X ) )
| ( ( ( N @ K )
= none_state )
& ( ( M @ K )
= ( some_state @ X ) ) ) ) ) ).
% map_add_SomeD
thf(fact_153_map__add__SomeD,axiom,
! [M: produc9003781588162623004on_val > option_val,N: produc9003781588162623004on_val > option_val,K: produc9003781588162623004on_val,X: val] :
( ( ( map_ad5466549115852757998al_val @ M @ N @ K )
= ( some_val @ X ) )
=> ( ( ( N @ K )
= ( some_val @ X ) )
| ( ( ( N @ K )
= none_val )
& ( ( M @ K )
= ( some_val @ X ) ) ) ) ) ).
% map_add_SomeD
thf(fact_154_map__add__SomeD,axiom,
! [M: produc1457211279475724562t_char > option_val,N: produc1457211279475724562t_char > option_val,K: produc1457211279475724562t_char,X: val] :
( ( ( map_ad2908576761495157028ar_val @ M @ N @ K )
= ( some_val @ X ) )
=> ( ( ( N @ K )
= ( some_val @ X ) )
| ( ( ( N @ K )
= none_val )
& ( ( M @ K )
= ( some_val @ X ) ) ) ) ) ).
% map_add_SomeD
thf(fact_155_empty__heap__def,axiom,
( empty_7512026568161686585ar_val
= ( ^ [Hl2: produc1457211279475724562t_char] : none_val ) ) ).
% empty_heap_def
thf(fact_156_valid__mask__full__mask,axiom,
valid_mask @ full_mask ).
% valid_mask_full_mask
thf(fact_157_add__masks__equiv__valid__null,axiom,
! [A2: produc1457211279475724562t_char > prat,B2: produc1457211279475724562t_char > prat] :
( ( valid_null @ ( add_ma6586698345353345811t_char @ A2 @ B2 ) )
= ( ( valid_null @ A2 )
& ( valid_null @ B2 ) ) ) ).
% add_masks_equiv_valid_null
thf(fact_158_option_Ocollapse,axiom,
! [Option: option8887860577033306220on_val] :
( ( Option != none_P8728355543607141243on_val )
=> ( ( some_P2581650809551911671on_val @ ( the_Pr3639693038709580936on_val @ Option ) )
= Option ) ) ).
% option.collapse
thf(fact_159_option_Ocollapse,axiom,
! [Option: option_list_char] :
( ( Option != none_list_char )
=> ( ( some_list_char @ ( the_list_char @ Option ) )
= Option ) ) ).
% option.collapse
thf(fact_160_option_Ocollapse,axiom,
! [Option: option5747939881698552298on_val] :
( ( Option != none_P1334921381875262201on_val )
=> ( ( some_P7669353234731512949on_val @ ( the_Pr646328391962797958on_val @ Option ) )
= Option ) ) ).
% option.collapse
thf(fact_161_option_Ocollapse,axiom,
! [Option: option_state] :
( ( Option != none_state )
=> ( ( some_state @ ( the_state @ Option ) )
= Option ) ) ).
% option.collapse
thf(fact_162_option_Ocollapse,axiom,
! [Option: option_val] :
( ( Option != none_val )
=> ( ( some_val @ ( the_val @ Option ) )
= Option ) ) ).
% option.collapse
thf(fact_163_minus__empty,axiom,
! [Pi: ( produc1457211279475724562t_char > prat ) > prat] :
( Pi
= ( add_ma5081279659257173972r_prat @ Pi @ empty_6616431780912394577r_prat ) ) ).
% minus_empty
thf(fact_164_minus__empty,axiom,
! [Pi: state > prat] :
( Pi
= ( add_masks_state @ Pi @ empty_mask_state ) ) ).
% minus_empty
thf(fact_165_minus__empty,axiom,
! [Pi: produc9003781588162623004on_val > prat] :
( Pi
= ( add_ma7175289307942684891on_val @ Pi @ empty_6102255041883331742on_val ) ) ).
% minus_empty
thf(fact_166_minus__empty,axiom,
! [Pi: produc1317171644805857433on_val > prat] :
( Pi
= ( add_ma2842950146128053786on_val @ Pi @ empty_4129289814623480215on_val ) ) ).
% minus_empty
thf(fact_167_minus__empty,axiom,
! [Pi: produc1457211279475724562t_char > prat] :
( Pi
= ( add_ma6586698345353345811t_char @ Pi @ empty_3446695950879338768t_char ) ) ).
% minus_empty
thf(fact_168_bind__split,axiom,
! [P: option_state > $o,M: option_state,F: state > option_state] :
( ( P @ ( bind_state_state @ M @ F ) )
= ( ( ( M = none_state )
=> ( P @ none_state ) )
& ! [V: state] :
( ( M
= ( some_state @ V ) )
=> ( P @ ( F @ V ) ) ) ) ) ).
% bind_split
thf(fact_169_bind__split,axiom,
! [P: option_val > $o,M: option_state,F: state > option_val] :
( ( P @ ( bind_state_val @ M @ F ) )
= ( ( ( M = none_state )
=> ( P @ none_val ) )
& ! [V: state] :
( ( M
= ( some_state @ V ) )
=> ( P @ ( F @ V ) ) ) ) ) ).
% bind_split
thf(fact_170_bind__split,axiom,
! [P: option_state > $o,M: option_val,F: val > option_state] :
( ( P @ ( bind_val_state @ M @ F ) )
= ( ( ( M = none_val )
=> ( P @ none_state ) )
& ! [V: val] :
( ( M
= ( some_val @ V ) )
=> ( P @ ( F @ V ) ) ) ) ) ).
% bind_split
thf(fact_171_bind__split,axiom,
! [P: option_val > $o,M: option_val,F: val > option_val] :
( ( P @ ( bind_val_val @ M @ F ) )
= ( ( ( M = none_val )
=> ( P @ none_val ) )
& ! [V: val] :
( ( M
= ( some_val @ V ) )
=> ( P @ ( F @ V ) ) ) ) ) ).
% bind_split
thf(fact_172_bind__split,axiom,
! [P: option_list_char > $o,M: option_state,F: state > option_list_char] :
( ( P @ ( bind_state_list_char @ M @ F ) )
= ( ( ( M = none_state )
=> ( P @ none_list_char ) )
& ! [V: state] :
( ( M
= ( some_state @ V ) )
=> ( P @ ( F @ V ) ) ) ) ) ).
% bind_split
thf(fact_173_bind__split,axiom,
! [P: option_list_char > $o,M: option_val,F: val > option_list_char] :
( ( P @ ( bind_val_list_char @ M @ F ) )
= ( ( ( M = none_val )
=> ( P @ none_list_char ) )
& ! [V: val] :
( ( M
= ( some_val @ V ) )
=> ( P @ ( F @ V ) ) ) ) ) ).
% bind_split
thf(fact_174_bind__split,axiom,
! [P: option_state > $o,M: option_list_char,F: list_char > option_state] :
( ( P @ ( bind_list_char_state @ M @ F ) )
= ( ( ( M = none_list_char )
=> ( P @ none_state ) )
& ! [V: list_char] :
( ( M
= ( some_list_char @ V ) )
=> ( P @ ( F @ V ) ) ) ) ) ).
% bind_split
thf(fact_175_bind__split,axiom,
! [P: option_val > $o,M: option_list_char,F: list_char > option_val] :
( ( P @ ( bind_list_char_val @ M @ F ) )
= ( ( ( M = none_list_char )
=> ( P @ none_val ) )
& ! [V: list_char] :
( ( M
= ( some_list_char @ V ) )
=> ( P @ ( F @ V ) ) ) ) ) ).
% bind_split
thf(fact_176_bind__split,axiom,
! [P: option_list_char > $o,M: option_list_char,F: list_char > option_list_char] :
( ( P @ ( bind_l7575086113700739714t_char @ M @ F ) )
= ( ( ( M = none_list_char )
=> ( P @ none_list_char ) )
& ! [V: list_char] :
( ( M
= ( some_list_char @ V ) )
=> ( P @ ( F @ V ) ) ) ) ) ).
% bind_split
thf(fact_177_bind__split,axiom,
! [P: option5747939881698552298on_val > $o,M: option_state,F: state > option5747939881698552298on_val] :
( ( P @ ( bind_s7388421589535509396on_val @ M @ F ) )
= ( ( ( M = none_state )
=> ( P @ none_P1334921381875262201on_val ) )
& ! [V: state] :
( ( M
= ( some_state @ V ) )
=> ( P @ ( F @ V ) ) ) ) ) ).
% bind_split
thf(fact_178_bind__split__asm,axiom,
! [P: option_state > $o,M: option_state,F: state > option_state] :
( ( P @ ( bind_state_state @ M @ F ) )
= ( ~ ( ( ( M = none_state )
& ~ ( P @ none_state ) )
| ? [X3: state] :
( ( M
= ( some_state @ X3 ) )
& ~ ( P @ ( F @ X3 ) ) ) ) ) ) ).
% bind_split_asm
thf(fact_179_bind__split__asm,axiom,
! [P: option_val > $o,M: option_state,F: state > option_val] :
( ( P @ ( bind_state_val @ M @ F ) )
= ( ~ ( ( ( M = none_state )
& ~ ( P @ none_val ) )
| ? [X3: state] :
( ( M
= ( some_state @ X3 ) )
& ~ ( P @ ( F @ X3 ) ) ) ) ) ) ).
% bind_split_asm
thf(fact_180_bind__split__asm,axiom,
! [P: option_state > $o,M: option_val,F: val > option_state] :
( ( P @ ( bind_val_state @ M @ F ) )
= ( ~ ( ( ( M = none_val )
& ~ ( P @ none_state ) )
| ? [X3: val] :
( ( M
= ( some_val @ X3 ) )
& ~ ( P @ ( F @ X3 ) ) ) ) ) ) ).
% bind_split_asm
thf(fact_181_bind__split__asm,axiom,
! [P: option_val > $o,M: option_val,F: val > option_val] :
( ( P @ ( bind_val_val @ M @ F ) )
= ( ~ ( ( ( M = none_val )
& ~ ( P @ none_val ) )
| ? [X3: val] :
( ( M
= ( some_val @ X3 ) )
& ~ ( P @ ( F @ X3 ) ) ) ) ) ) ).
% bind_split_asm
thf(fact_182_bind__split__asm,axiom,
! [P: option_list_char > $o,M: option_state,F: state > option_list_char] :
( ( P @ ( bind_state_list_char @ M @ F ) )
= ( ~ ( ( ( M = none_state )
& ~ ( P @ none_list_char ) )
| ? [X3: state] :
( ( M
= ( some_state @ X3 ) )
& ~ ( P @ ( F @ X3 ) ) ) ) ) ) ).
% bind_split_asm
thf(fact_183_bind__split__asm,axiom,
! [P: option_list_char > $o,M: option_val,F: val > option_list_char] :
( ( P @ ( bind_val_list_char @ M @ F ) )
= ( ~ ( ( ( M = none_val )
& ~ ( P @ none_list_char ) )
| ? [X3: val] :
( ( M
= ( some_val @ X3 ) )
& ~ ( P @ ( F @ X3 ) ) ) ) ) ) ).
% bind_split_asm
thf(fact_184_bind__split__asm,axiom,
! [P: option_state > $o,M: option_list_char,F: list_char > option_state] :
( ( P @ ( bind_list_char_state @ M @ F ) )
= ( ~ ( ( ( M = none_list_char )
& ~ ( P @ none_state ) )
| ? [X3: list_char] :
( ( M
= ( some_list_char @ X3 ) )
& ~ ( P @ ( F @ X3 ) ) ) ) ) ) ).
% bind_split_asm
thf(fact_185_bind__split__asm,axiom,
! [P: option_val > $o,M: option_list_char,F: list_char > option_val] :
( ( P @ ( bind_list_char_val @ M @ F ) )
= ( ~ ( ( ( M = none_list_char )
& ~ ( P @ none_val ) )
| ? [X3: list_char] :
( ( M
= ( some_list_char @ X3 ) )
& ~ ( P @ ( F @ X3 ) ) ) ) ) ) ).
% bind_split_asm
thf(fact_186_bind__split__asm,axiom,
! [P: option_list_char > $o,M: option_list_char,F: list_char > option_list_char] :
( ( P @ ( bind_l7575086113700739714t_char @ M @ F ) )
= ( ~ ( ( ( M = none_list_char )
& ~ ( P @ none_list_char ) )
| ? [X3: list_char] :
( ( M
= ( some_list_char @ X3 ) )
& ~ ( P @ ( F @ X3 ) ) ) ) ) ) ).
% bind_split_asm
thf(fact_187_bind__split__asm,axiom,
! [P: option5747939881698552298on_val > $o,M: option_state,F: state > option5747939881698552298on_val] :
( ( P @ ( bind_s7388421589535509396on_val @ M @ F ) )
= ( ~ ( ( ( M = none_state )
& ~ ( P @ none_P1334921381875262201on_val ) )
| ? [X3: state] :
( ( M
= ( some_state @ X3 ) )
& ~ ( P @ ( F @ X3 ) ) ) ) ) ) ).
% bind_split_asm
thf(fact_188_bind__runit,axiom,
! [X: option8887860577033306220on_val] :
( ( bind_P2485767298420691192on_val @ X @ some_P2581650809551911671on_val )
= X ) ).
% bind_runit
thf(fact_189_bind__runit,axiom,
! [X: option_list_char] :
( ( bind_l7575086113700739714t_char @ X @ some_list_char )
= X ) ).
% bind_runit
thf(fact_190_bind__runit,axiom,
! [X: option5747939881698552298on_val] :
( ( bind_P4424090778364213876on_val @ X @ some_P7669353234731512949on_val )
= X ) ).
% bind_runit
thf(fact_191_bind__runit,axiom,
! [X: option_state] :
( ( bind_state_state @ X @ some_state )
= X ) ).
% bind_runit
thf(fact_192_bind__runit,axiom,
! [X: option_val] :
( ( bind_val_val @ X @ some_val )
= X ) ).
% bind_runit
thf(fact_193_bind__option__cong__code,axiom,
! [X: option_val,Y2: option_val,F: val > option_val] :
( ( X = Y2 )
=> ( ( bind_val_val @ X @ F )
= ( bind_val_val @ Y2 @ F ) ) ) ).
% bind_option_cong_code
thf(fact_194_bind__option__cong__code,axiom,
! [X: option_val,Y2: option_val,F: val > option_state] :
( ( X = Y2 )
=> ( ( bind_val_state @ X @ F )
= ( bind_val_state @ Y2 @ F ) ) ) ).
% bind_option_cong_code
thf(fact_195_bind__option__cong__code,axiom,
! [X: option_state,Y2: option_state,F: state > option_val] :
( ( X = Y2 )
=> ( ( bind_state_val @ X @ F )
= ( bind_state_val @ Y2 @ F ) ) ) ).
% bind_option_cong_code
thf(fact_196_bind__option__cong__code,axiom,
! [X: option_state,Y2: option_state,F: state > option_state] :
( ( X = Y2 )
=> ( ( bind_state_state @ X @ F )
= ( bind_state_state @ Y2 @ F ) ) ) ).
% bind_option_cong_code
thf(fact_197_bind__eq__None__conv,axiom,
! [A2: option_state,F: state > option_state] :
( ( ( bind_state_state @ A2 @ F )
= none_state )
= ( ( A2 = none_state )
| ( ( F @ ( the_state @ A2 ) )
= none_state ) ) ) ).
% bind_eq_None_conv
thf(fact_198_bind__eq__None__conv,axiom,
! [A2: option_val,F: val > option_state] :
( ( ( bind_val_state @ A2 @ F )
= none_state )
= ( ( A2 = none_val )
| ( ( F @ ( the_val @ A2 ) )
= none_state ) ) ) ).
% bind_eq_None_conv
thf(fact_199_bind__eq__None__conv,axiom,
! [A2: option_state,F: state > option_val] :
( ( ( bind_state_val @ A2 @ F )
= none_val )
= ( ( A2 = none_state )
| ( ( F @ ( the_state @ A2 ) )
= none_val ) ) ) ).
% bind_eq_None_conv
thf(fact_200_bind__eq__None__conv,axiom,
! [A2: option_val,F: val > option_val] :
( ( ( bind_val_val @ A2 @ F )
= none_val )
= ( ( A2 = none_val )
| ( ( F @ ( the_val @ A2 ) )
= none_val ) ) ) ).
% bind_eq_None_conv
thf(fact_201_bind__eq__None__conv,axiom,
! [A2: option_list_char,F: list_char > option_state] :
( ( ( bind_list_char_state @ A2 @ F )
= none_state )
= ( ( A2 = none_list_char )
| ( ( F @ ( the_list_char @ A2 ) )
= none_state ) ) ) ).
% bind_eq_None_conv
thf(fact_202_bind__eq__None__conv,axiom,
! [A2: option_list_char,F: list_char > option_val] :
( ( ( bind_list_char_val @ A2 @ F )
= none_val )
= ( ( A2 = none_list_char )
| ( ( F @ ( the_list_char @ A2 ) )
= none_val ) ) ) ).
% bind_eq_None_conv
thf(fact_203_bind__eq__None__conv,axiom,
! [A2: option_state,F: state > option_list_char] :
( ( ( bind_state_list_char @ A2 @ F )
= none_list_char )
= ( ( A2 = none_state )
| ( ( F @ ( the_state @ A2 ) )
= none_list_char ) ) ) ).
% bind_eq_None_conv
thf(fact_204_bind__eq__None__conv,axiom,
! [A2: option_val,F: val > option_list_char] :
( ( ( bind_val_list_char @ A2 @ F )
= none_list_char )
= ( ( A2 = none_val )
| ( ( F @ ( the_val @ A2 ) )
= none_list_char ) ) ) ).
% bind_eq_None_conv
thf(fact_205_bind__eq__None__conv,axiom,
! [A2: option_list_char,F: list_char > option_list_char] :
( ( ( bind_l7575086113700739714t_char @ A2 @ F )
= none_list_char )
= ( ( A2 = none_list_char )
| ( ( F @ ( the_list_char @ A2 ) )
= none_list_char ) ) ) ).
% bind_eq_None_conv
thf(fact_206_bind__eq__None__conv,axiom,
! [A2: option5747939881698552298on_val,F: ( produc1457211279475724562t_char > option_val ) > option_state] :
( ( ( bind_P6102080752330912020_state @ A2 @ F )
= none_state )
= ( ( A2 = none_P1334921381875262201on_val )
| ( ( F @ ( the_Pr646328391962797958on_val @ A2 ) )
= none_state ) ) ) ).
% bind_eq_None_conv
thf(fact_207_option_Osel,axiom,
! [X22: produc9003781588162623004on_val] :
( ( the_Pr3639693038709580936on_val @ ( some_P2581650809551911671on_val @ X22 ) )
= X22 ) ).
% option.sel
thf(fact_208_option_Osel,axiom,
! [X22: list_char] :
( ( the_list_char @ ( some_list_char @ X22 ) )
= X22 ) ).
% option.sel
thf(fact_209_option_Osel,axiom,
! [X22: produc1457211279475724562t_char > option_val] :
( ( the_Pr646328391962797958on_val @ ( some_P7669353234731512949on_val @ X22 ) )
= X22 ) ).
% option.sel
thf(fact_210_option_Osel,axiom,
! [X22: state] :
( ( the_state @ ( some_state @ X22 ) )
= X22 ) ).
% option.sel
thf(fact_211_option_Osel,axiom,
! [X22: val] :
( ( the_val @ ( some_val @ X22 ) )
= X22 ) ).
% option.sel
thf(fact_212_option_Oexpand,axiom,
! [Option: option8887860577033306220on_val,Option2: option8887860577033306220on_val] :
( ( ( Option = none_P8728355543607141243on_val )
= ( Option2 = none_P8728355543607141243on_val ) )
=> ( ( ( Option != none_P8728355543607141243on_val )
=> ( ( Option2 != none_P8728355543607141243on_val )
=> ( ( the_Pr3639693038709580936on_val @ Option )
= ( the_Pr3639693038709580936on_val @ Option2 ) ) ) )
=> ( Option = Option2 ) ) ) ).
% option.expand
thf(fact_213_option_Oexpand,axiom,
! [Option: option_list_char,Option2: option_list_char] :
( ( ( Option = none_list_char )
= ( Option2 = none_list_char ) )
=> ( ( ( Option != none_list_char )
=> ( ( Option2 != none_list_char )
=> ( ( the_list_char @ Option )
= ( the_list_char @ Option2 ) ) ) )
=> ( Option = Option2 ) ) ) ).
% option.expand
thf(fact_214_option_Oexpand,axiom,
! [Option: option5747939881698552298on_val,Option2: option5747939881698552298on_val] :
( ( ( Option = none_P1334921381875262201on_val )
= ( Option2 = none_P1334921381875262201on_val ) )
=> ( ( ( Option != none_P1334921381875262201on_val )
=> ( ( Option2 != none_P1334921381875262201on_val )
=> ( ( the_Pr646328391962797958on_val @ Option )
= ( the_Pr646328391962797958on_val @ Option2 ) ) ) )
=> ( Option = Option2 ) ) ) ).
% option.expand
thf(fact_215_option_Oexpand,axiom,
! [Option: option_state,Option2: option_state] :
( ( ( Option = none_state )
= ( Option2 = none_state ) )
=> ( ( ( Option != none_state )
=> ( ( Option2 != none_state )
=> ( ( the_state @ Option )
= ( the_state @ Option2 ) ) ) )
=> ( Option = Option2 ) ) ) ).
% option.expand
thf(fact_216_option_Oexpand,axiom,
! [Option: option_val,Option2: option_val] :
( ( ( Option = none_val )
= ( Option2 = none_val ) )
=> ( ( ( Option != none_val )
=> ( ( Option2 != none_val )
=> ( ( the_val @ Option )
= ( the_val @ Option2 ) ) ) )
=> ( Option = Option2 ) ) ) ).
% option.expand
thf(fact_217_bind_Obind__lunit,axiom,
! [X: state,F: state > option_val] :
( ( bind_state_val @ ( some_state @ X ) @ F )
= ( F @ X ) ) ).
% bind.bind_lunit
thf(fact_218_bind_Obind__lunit,axiom,
! [X: state,F: state > option_state] :
( ( bind_state_state @ ( some_state @ X ) @ F )
= ( F @ X ) ) ).
% bind.bind_lunit
thf(fact_219_bind_Obind__lunit,axiom,
! [X: val,F: val > option_val] :
( ( bind_val_val @ ( some_val @ X ) @ F )
= ( F @ X ) ) ).
% bind.bind_lunit
thf(fact_220_bind_Obind__lunit,axiom,
! [X: val,F: val > option_state] :
( ( bind_val_state @ ( some_val @ X ) @ F )
= ( F @ X ) ) ).
% bind.bind_lunit
thf(fact_221_Option_Obind__cong,axiom,
! [X: option_state,Y2: option_state,F: state > option_val,G: state > option_val] :
( ( X = Y2 )
=> ( ! [A4: state] :
( ( Y2
= ( some_state @ A4 ) )
=> ( ( F @ A4 )
= ( G @ A4 ) ) )
=> ( ( bind_state_val @ X @ F )
= ( bind_state_val @ Y2 @ G ) ) ) ) ).
% Option.bind_cong
thf(fact_222_Option_Obind__cong,axiom,
! [X: option_state,Y2: option_state,F: state > option_state,G: state > option_state] :
( ( X = Y2 )
=> ( ! [A4: state] :
( ( Y2
= ( some_state @ A4 ) )
=> ( ( F @ A4 )
= ( G @ A4 ) ) )
=> ( ( bind_state_state @ X @ F )
= ( bind_state_state @ Y2 @ G ) ) ) ) ).
% Option.bind_cong
thf(fact_223_Option_Obind__cong,axiom,
! [X: option_val,Y2: option_val,F: val > option_val,G: val > option_val] :
( ( X = Y2 )
=> ( ! [A4: val] :
( ( Y2
= ( some_val @ A4 ) )
=> ( ( F @ A4 )
= ( G @ A4 ) ) )
=> ( ( bind_val_val @ X @ F )
= ( bind_val_val @ Y2 @ G ) ) ) ) ).
% Option.bind_cong
thf(fact_224_Option_Obind__cong,axiom,
! [X: option_val,Y2: option_val,F: val > option_state,G: val > option_state] :
( ( X = Y2 )
=> ( ! [A4: val] :
( ( Y2
= ( some_val @ A4 ) )
=> ( ( F @ A4 )
= ( G @ A4 ) ) )
=> ( ( bind_val_state @ X @ F )
= ( bind_val_state @ Y2 @ G ) ) ) ) ).
% Option.bind_cong
thf(fact_225_bind__eq__Some__conv,axiom,
! [F: option_state,G: state > option_state,X: state] :
( ( ( bind_state_state @ F @ G )
= ( some_state @ X ) )
= ( ? [Y3: state] :
( ( F
= ( some_state @ Y3 ) )
& ( ( G @ Y3 )
= ( some_state @ X ) ) ) ) ) ).
% bind_eq_Some_conv
thf(fact_226_bind__eq__Some__conv,axiom,
! [F: option_val,G: val > option_state,X: state] :
( ( ( bind_val_state @ F @ G )
= ( some_state @ X ) )
= ( ? [Y3: val] :
( ( F
= ( some_val @ Y3 ) )
& ( ( G @ Y3 )
= ( some_state @ X ) ) ) ) ) ).
% bind_eq_Some_conv
thf(fact_227_bind__eq__Some__conv,axiom,
! [F: option_state,G: state > option_val,X: val] :
( ( ( bind_state_val @ F @ G )
= ( some_val @ X ) )
= ( ? [Y3: state] :
( ( F
= ( some_state @ Y3 ) )
& ( ( G @ Y3 )
= ( some_val @ X ) ) ) ) ) ).
% bind_eq_Some_conv
thf(fact_228_bind__eq__Some__conv,axiom,
! [F: option_val,G: val > option_val,X: val] :
( ( ( bind_val_val @ F @ G )
= ( some_val @ X ) )
= ( ? [Y3: val] :
( ( F
= ( some_val @ Y3 ) )
& ( ( G @ Y3 )
= ( some_val @ X ) ) ) ) ) ).
% bind_eq_Some_conv
thf(fact_229_bind__eq__Some__conv,axiom,
! [F: option_list_char,G: list_char > option_state,X: state] :
( ( ( bind_list_char_state @ F @ G )
= ( some_state @ X ) )
= ( ? [Y3: list_char] :
( ( F
= ( some_list_char @ Y3 ) )
& ( ( G @ Y3 )
= ( some_state @ X ) ) ) ) ) ).
% bind_eq_Some_conv
thf(fact_230_bind__eq__Some__conv,axiom,
! [F: option_list_char,G: list_char > option_val,X: val] :
( ( ( bind_list_char_val @ F @ G )
= ( some_val @ X ) )
= ( ? [Y3: list_char] :
( ( F
= ( some_list_char @ Y3 ) )
& ( ( G @ Y3 )
= ( some_val @ X ) ) ) ) ) ).
% bind_eq_Some_conv
thf(fact_231_bind__eq__Some__conv,axiom,
! [F: option_state,G: state > option_list_char,X: list_char] :
( ( ( bind_state_list_char @ F @ G )
= ( some_list_char @ X ) )
= ( ? [Y3: state] :
( ( F
= ( some_state @ Y3 ) )
& ( ( G @ Y3 )
= ( some_list_char @ X ) ) ) ) ) ).
% bind_eq_Some_conv
thf(fact_232_bind__eq__Some__conv,axiom,
! [F: option_val,G: val > option_list_char,X: list_char] :
( ( ( bind_val_list_char @ F @ G )
= ( some_list_char @ X ) )
= ( ? [Y3: val] :
( ( F
= ( some_val @ Y3 ) )
& ( ( G @ Y3 )
= ( some_list_char @ X ) ) ) ) ) ).
% bind_eq_Some_conv
thf(fact_233_bind__eq__Some__conv,axiom,
! [F: option_list_char,G: list_char > option_list_char,X: list_char] :
( ( ( bind_l7575086113700739714t_char @ F @ G )
= ( some_list_char @ X ) )
= ( ? [Y3: list_char] :
( ( F
= ( some_list_char @ Y3 ) )
& ( ( G @ Y3 )
= ( some_list_char @ X ) ) ) ) ) ).
% bind_eq_Some_conv
thf(fact_234_bind__eq__Some__conv,axiom,
! [F: option5747939881698552298on_val,G: ( produc1457211279475724562t_char > option_val ) > option_state,X: state] :
( ( ( bind_P6102080752330912020_state @ F @ G )
= ( some_state @ X ) )
= ( ? [Y3: produc1457211279475724562t_char > option_val] :
( ( F
= ( some_P7669353234731512949on_val @ Y3 ) )
& ( ( G @ Y3 )
= ( some_state @ X ) ) ) ) ) ).
% bind_eq_Some_conv
thf(fact_235_bind_Obind__lzero,axiom,
! [F: state > option_state] :
( ( bind_state_state @ none_state @ F )
= none_state ) ).
% bind.bind_lzero
thf(fact_236_bind_Obind__lzero,axiom,
! [F: state > option_val] :
( ( bind_state_val @ none_state @ F )
= none_val ) ).
% bind.bind_lzero
thf(fact_237_bind_Obind__lzero,axiom,
! [F: val > option_state] :
( ( bind_val_state @ none_val @ F )
= none_state ) ).
% bind.bind_lzero
thf(fact_238_bind_Obind__lzero,axiom,
! [F: val > option_val] :
( ( bind_val_val @ none_val @ F )
= none_val ) ).
% bind.bind_lzero
thf(fact_239_bind_Obind__lzero,axiom,
! [F: state > option_list_char] :
( ( bind_state_list_char @ none_state @ F )
= none_list_char ) ).
% bind.bind_lzero
thf(fact_240_bind_Obind__lzero,axiom,
! [F: val > option_list_char] :
( ( bind_val_list_char @ none_val @ F )
= none_list_char ) ).
% bind.bind_lzero
thf(fact_241_bind_Obind__lzero,axiom,
! [F: list_char > option_state] :
( ( bind_list_char_state @ none_list_char @ F )
= none_state ) ).
% bind.bind_lzero
thf(fact_242_bind_Obind__lzero,axiom,
! [F: list_char > option_val] :
( ( bind_list_char_val @ none_list_char @ F )
= none_val ) ).
% bind.bind_lzero
thf(fact_243_bind_Obind__lzero,axiom,
! [F: list_char > option_list_char] :
( ( bind_l7575086113700739714t_char @ none_list_char @ F )
= none_list_char ) ).
% bind.bind_lzero
thf(fact_244_bind_Obind__lzero,axiom,
! [F: state > option5747939881698552298on_val] :
( ( bind_s7388421589535509396on_val @ none_state @ F )
= none_P1334921381875262201on_val ) ).
% bind.bind_lzero
thf(fact_245_valid__empty,axiom,
valid_mask @ empty_3446695950879338768t_char ).
% valid_empty
thf(fact_246_option_Oexhaust__sel,axiom,
! [Option: option8887860577033306220on_val] :
( ( Option != none_P8728355543607141243on_val )
=> ( Option
= ( some_P2581650809551911671on_val @ ( the_Pr3639693038709580936on_val @ Option ) ) ) ) ).
% option.exhaust_sel
thf(fact_247_option_Oexhaust__sel,axiom,
! [Option: option_list_char] :
( ( Option != none_list_char )
=> ( Option
= ( some_list_char @ ( the_list_char @ Option ) ) ) ) ).
% option.exhaust_sel
thf(fact_248_option_Oexhaust__sel,axiom,
! [Option: option5747939881698552298on_val] :
( ( Option != none_P1334921381875262201on_val )
=> ( Option
= ( some_P7669353234731512949on_val @ ( the_Pr646328391962797958on_val @ Option ) ) ) ) ).
% option.exhaust_sel
thf(fact_249_option_Oexhaust__sel,axiom,
! [Option: option_state] :
( ( Option != none_state )
=> ( Option
= ( some_state @ ( the_state @ Option ) ) ) ) ).
% option.exhaust_sel
thf(fact_250_option_Oexhaust__sel,axiom,
! [Option: option_val] :
( ( Option != none_val )
=> ( Option
= ( some_val @ ( the_val @ Option ) ) ) ) ).
% option.exhaust_sel
thf(fact_251_option_Osplit__sel__asm,axiom,
! [P: option_state > $o,F1: option_state,F2: state > option_state,Option: option_state] :
( ( P @ ( case_o8916064052540797265_state @ F1 @ F2 @ Option ) )
= ( ~ ( ( ( Option = none_state )
& ~ ( P @ F1 ) )
| ( ( Option
= ( some_state @ ( the_state @ Option ) ) )
& ~ ( P @ ( F2 @ ( the_state @ Option ) ) ) ) ) ) ) ).
% option.split_sel_asm
thf(fact_252_option_Osplit__sel__asm,axiom,
! [P: option_val > $o,F1: option_val,F2: val > option_val,Option: option_val] :
( ( P @ ( case_o7794706883426356101al_val @ F1 @ F2 @ Option ) )
= ( ~ ( ( ( Option = none_val )
& ~ ( P @ F1 ) )
| ( ( Option
= ( some_val @ ( the_val @ Option ) ) )
& ~ ( P @ ( F2 @ ( the_val @ Option ) ) ) ) ) ) ) ).
% option.split_sel_asm
thf(fact_253_option_Osplit__sel__asm,axiom,
! [P: val > $o,F1: val,F2: val > val,Option: option_val] :
( ( P @ ( case_option_val_val @ F1 @ F2 @ Option ) )
= ( ~ ( ( ( Option = none_val )
& ~ ( P @ F1 ) )
| ( ( Option
= ( some_val @ ( the_val @ Option ) ) )
& ~ ( P @ ( F2 @ ( the_val @ Option ) ) ) ) ) ) ) ).
% option.split_sel_asm
thf(fact_254_option_Osplit__sel__asm,axiom,
! [P: $o > $o,F1: $o,F2: state > $o,Option: option_state] :
( ( P @ ( case_option_o_state @ F1 @ F2 @ Option ) )
= ( ~ ( ( ( Option = none_state )
& ~ ( P @ F1 ) )
| ( ( Option
= ( some_state @ ( the_state @ Option ) ) )
& ~ ( P @ ( F2 @ ( the_state @ Option ) ) ) ) ) ) ) ).
% option.split_sel_asm
thf(fact_255_option_Osplit__sel__asm,axiom,
! [P: $o > $o,F1: $o,F2: val > $o,Option: option_val] :
( ( P @ ( case_option_o_val @ F1 @ F2 @ Option ) )
= ( ~ ( ( ( Option = none_val )
& ~ ( P @ F1 ) )
| ( ( Option
= ( some_val @ ( the_val @ Option ) ) )
& ~ ( P @ ( F2 @ ( the_val @ Option ) ) ) ) ) ) ) ).
% option.split_sel_asm
thf(fact_256_option_Osplit__sel,axiom,
! [P: option_state > $o,F1: option_state,F2: state > option_state,Option: option_state] :
( ( P @ ( case_o8916064052540797265_state @ F1 @ F2 @ Option ) )
= ( ( ( Option = none_state )
=> ( P @ F1 ) )
& ( ( Option
= ( some_state @ ( the_state @ Option ) ) )
=> ( P @ ( F2 @ ( the_state @ Option ) ) ) ) ) ) ).
% option.split_sel
thf(fact_257_option_Osplit__sel,axiom,
! [P: option_val > $o,F1: option_val,F2: val > option_val,Option: option_val] :
( ( P @ ( case_o7794706883426356101al_val @ F1 @ F2 @ Option ) )
= ( ( ( Option = none_val )
=> ( P @ F1 ) )
& ( ( Option
= ( some_val @ ( the_val @ Option ) ) )
=> ( P @ ( F2 @ ( the_val @ Option ) ) ) ) ) ) ).
% option.split_sel
thf(fact_258_option_Osplit__sel,axiom,
! [P: val > $o,F1: val,F2: val > val,Option: option_val] :
( ( P @ ( case_option_val_val @ F1 @ F2 @ Option ) )
= ( ( ( Option = none_val )
=> ( P @ F1 ) )
& ( ( Option
= ( some_val @ ( the_val @ Option ) ) )
=> ( P @ ( F2 @ ( the_val @ Option ) ) ) ) ) ) ).
% option.split_sel
thf(fact_259_option_Osplit__sel,axiom,
! [P: $o > $o,F1: $o,F2: state > $o,Option: option_state] :
( ( P @ ( case_option_o_state @ F1 @ F2 @ Option ) )
= ( ( ( Option = none_state )
=> ( P @ F1 ) )
& ( ( Option
= ( some_state @ ( the_state @ Option ) ) )
=> ( P @ ( F2 @ ( the_state @ Option ) ) ) ) ) ) ).
% option.split_sel
thf(fact_260_option_Osplit__sel,axiom,
! [P: $o > $o,F1: $o,F2: val > $o,Option: option_val] :
( ( P @ ( case_option_o_val @ F1 @ F2 @ Option ) )
= ( ( ( Option = none_val )
=> ( P @ F1 ) )
& ( ( Option
= ( some_val @ ( the_val @ Option ) ) )
=> ( P @ ( F2 @ ( the_val @ Option ) ) ) ) ) ) ).
% option.split_sel
thf(fact_261_valid__larger__mask,axiom,
( valid_mask
= ( greate7680731506090375811t_char @ full_mask ) ) ).
% valid_larger_mask
thf(fact_262_is__none__bind,axiom,
! [F: option_val,G: val > option_val] :
( ( is_none_val @ ( bind_val_val @ F @ G ) )
= ( ( is_none_val @ F )
| ( is_none_val @ ( G @ ( the_val @ F ) ) ) ) ) ).
% is_none_bind
thf(fact_263_is__none__bind,axiom,
! [F: option_val,G: val > option_state] :
( ( is_none_state @ ( bind_val_state @ F @ G ) )
= ( ( is_none_val @ F )
| ( is_none_state @ ( G @ ( the_val @ F ) ) ) ) ) ).
% is_none_bind
thf(fact_264_is__none__bind,axiom,
! [F: option_state,G: state > option_val] :
( ( is_none_val @ ( bind_state_val @ F @ G ) )
= ( ( is_none_state @ F )
| ( is_none_val @ ( G @ ( the_state @ F ) ) ) ) ) ).
% is_none_bind
thf(fact_265_is__none__bind,axiom,
! [F: option_state,G: state > option_state] :
( ( is_none_state @ ( bind_state_state @ F @ G ) )
= ( ( is_none_state @ F )
| ( is_none_state @ ( G @ ( the_state @ F ) ) ) ) ) ).
% is_none_bind
thf(fact_266_is__none__bind,axiom,
! [F: option8887860577033306220on_val,G: produc9003781588162623004on_val > option_val] :
( ( is_none_val @ ( bind_P8603646205577311397al_val @ F @ G ) )
= ( ( is_non3468859156093823296on_val @ F )
| ( is_none_val @ ( G @ ( the_Pr3639693038709580936on_val @ F ) ) ) ) ) ).
% is_none_bind
thf(fact_267_is__none__bind,axiom,
! [F: option8887860577033306220on_val,G: produc9003781588162623004on_val > option_state] :
( ( is_none_state @ ( bind_P2178757275261240214_state @ F @ G ) )
= ( ( is_non3468859156093823296on_val @ F )
| ( is_none_state @ ( G @ ( the_Pr3639693038709580936on_val @ F ) ) ) ) ) ).
% is_none_bind
thf(fact_268_is__none__bind,axiom,
! [F: option_list_char,G: list_char > option_val] :
( ( is_none_val @ ( bind_list_char_val @ F @ G ) )
= ( ( is_none_list_char @ F )
| ( is_none_val @ ( G @ ( the_list_char @ F ) ) ) ) ) ).
% is_none_bind
thf(fact_269_is__none__bind,axiom,
! [F: option_list_char,G: list_char > option_state] :
( ( is_none_state @ ( bind_list_char_state @ F @ G ) )
= ( ( is_none_list_char @ F )
| ( is_none_state @ ( G @ ( the_list_char @ F ) ) ) ) ) ).
% is_none_bind
thf(fact_270_is__none__bind,axiom,
! [F: option5747939881698552298on_val,G: ( produc1457211279475724562t_char > option_val ) > option_val] :
( ( is_none_val @ ( bind_P5848121846087789735al_val @ F @ G ) )
= ( ( is_non6205214127102033982on_val @ F )
| ( is_none_val @ ( G @ ( the_Pr646328391962797958on_val @ F ) ) ) ) ) ).
% is_none_bind
thf(fact_271_is__none__bind,axiom,
! [F: option5747939881698552298on_val,G: ( produc1457211279475724562t_char > option_val ) > option_state] :
( ( is_none_state @ ( bind_P6102080752330912020_state @ F @ G ) )
= ( ( is_non6205214127102033982on_val @ F )
| ( is_none_state @ ( G @ ( the_Pr646328391962797958on_val @ F ) ) ) ) ) ).
% is_none_bind
thf(fact_272_option_Ocase__eq__if,axiom,
( case_o8916064052540797265_state
= ( ^ [F12: option_state,F22: state > option_state,Option3: option_state] : ( if_option_state @ ( Option3 = none_state ) @ F12 @ ( F22 @ ( the_state @ Option3 ) ) ) ) ) ).
% option.case_eq_if
thf(fact_273_option_Ocase__eq__if,axiom,
( case_o7794706883426356101al_val
= ( ^ [F12: option_val,F22: val > option_val,Option3: option_val] : ( if_option_val @ ( Option3 = none_val ) @ F12 @ ( F22 @ ( the_val @ Option3 ) ) ) ) ) ).
% option.case_eq_if
thf(fact_274_option_Ocase__eq__if,axiom,
( case_option_val_val
= ( ^ [F12: val,F22: val > val,Option3: option_val] : ( if_val @ ( Option3 = none_val ) @ F12 @ ( F22 @ ( the_val @ Option3 ) ) ) ) ) ).
% option.case_eq_if
thf(fact_275_option_Ocase__eq__if,axiom,
( case_option_o_state
= ( ^ [F12: $o,F22: state > $o,Option3: option_state] :
( ( ( Option3 = none_state )
=> F12 )
& ( ( Option3 != none_state )
=> ( F22 @ ( the_state @ Option3 ) ) ) ) ) ) ).
% option.case_eq_if
thf(fact_276_option_Ocase__eq__if,axiom,
( case_option_o_val
= ( ^ [F12: $o,F22: val > $o,Option3: option_val] :
( ( ( Option3 = none_val )
=> F12 )
& ( ( Option3 != none_val )
=> ( F22 @ ( the_val @ Option3 ) ) ) ) ) ) ).
% option.case_eq_if
thf(fact_277_PartialHeapSA_Ostable__def,axiom,
( stable
= ( ^ [Phi3: state] :
! [Hl2: produc1457211279475724562t_char] :
( ( ppos @ ( get_m @ Phi3 @ Hl2 ) )
= ( ( get_h @ Phi3 @ Hl2 )
!= none_val ) ) ) ) ).
% PartialHeapSA.stable_def
thf(fact_278_option_Oset__sel,axiom,
! [A2: option_option_val] :
( ( A2 != none_option_val )
=> ( member_option_val @ ( the_option_val @ A2 ) @ ( set_op911010586042427349on_val @ A2 ) ) ) ).
% option.set_sel
thf(fact_279_option_Oset__sel,axiom,
! [A2: option_nat] :
( ( A2 != none_nat )
=> ( member_nat @ ( the_nat @ A2 ) @ ( set_option_nat @ A2 ) ) ) ).
% option.set_sel
thf(fact_280_option_Oset__sel,axiom,
! [A2: option3572569098863364761r_prat] :
( ( A2 != none_P6742040017396684084r_prat )
=> ( member2336342582916103932r_prat @ ( the_Pr3206600365949932263r_prat @ A2 ) @ ( set_op923924987228895969r_prat @ A2 ) ) ) ).
% option.set_sel
thf(fact_281_option_Oset__sel,axiom,
! [A2: option_list_char] :
( ( A2 != none_list_char )
=> ( member_list_char @ ( the_list_char @ A2 ) @ ( set_option_list_char2 @ A2 ) ) ) ).
% option.set_sel
thf(fact_282_option_Oset__sel,axiom,
! [A2: option5747939881698552298on_val] :
( ( A2 != none_P1334921381875262201on_val )
=> ( member1577473829074448177on_val @ ( the_Pr646328391962797958on_val @ A2 ) @ ( set_op1770538635792728844on_val @ A2 ) ) ) ).
% option.set_sel
thf(fact_283_option_Oset__sel,axiom,
! [A2: option2736423997234022232t_char] :
( ( A2 != none_P5486107665612286067t_char )
=> ( member484235747325421115t_char @ ( the_Pr4674812069856641446t_char @ A2 ) @ ( set_op7440730737645789856t_char @ A2 ) ) ) ).
% option.set_sel
thf(fact_284_option_Oset__sel,axiom,
! [A2: option8887860577033306220on_val] :
( ( A2 != none_P8728355543607141243on_val )
=> ( member2879030624002546611on_val @ ( the_Pr3639693038709580936on_val @ A2 ) @ ( set_op9004752959087400718on_val @ A2 ) ) ) ).
% option.set_sel
thf(fact_285_option_Oset__sel,axiom,
! [A2: option_state] :
( ( A2 != none_state )
=> ( member_state @ ( the_state @ A2 ) @ ( set_option_state2 @ A2 ) ) ) ).
% option.set_sel
thf(fact_286_option_Oset__sel,axiom,
! [A2: option_val] :
( ( A2 != none_val )
=> ( member_val @ ( the_val @ A2 ) @ ( set_option_val2 @ A2 ) ) ) ).
% option.set_sel
thf(fact_287_map__add__upd,axiom,
! [F: produc9003781588162623004on_val > option_state,G: produc9003781588162623004on_val > option_state,X: produc9003781588162623004on_val,Y2: state] :
( ( map_ad2629041965313307917_state @ F @ ( fun_up6681822530636708645_state @ G @ X @ ( some_state @ Y2 ) ) )
= ( fun_up6681822530636708645_state @ ( map_ad2629041965313307917_state @ F @ G ) @ X @ ( some_state @ Y2 ) ) ) ).
% map_add_upd
thf(fact_288_map__add__upd,axiom,
! [F: produc9003781588162623004on_val > option_val,G: produc9003781588162623004on_val > option_val,X: produc9003781588162623004on_val,Y2: val] :
( ( map_ad5466549115852757998al_val @ F @ ( fun_up8559965269643824108on_val @ G @ X @ ( some_val @ Y2 ) ) )
= ( fun_up8559965269643824108on_val @ ( map_ad5466549115852757998al_val @ F @ G ) @ X @ ( some_val @ Y2 ) ) ) ).
% map_add_upd
thf(fact_289_map__add__upd,axiom,
! [F: produc9003781588162623004on_val > option8887860577033306220on_val,G: produc9003781588162623004on_val > option8887860577033306220on_val,X: produc9003781588162623004on_val,Y2: produc9003781588162623004on_val] :
( ( map_ad6375351378680859759on_val @ F @ ( fun_up273046073882939271on_val @ G @ X @ ( some_P2581650809551911671on_val @ Y2 ) ) )
= ( fun_up273046073882939271on_val @ ( map_ad6375351378680859759on_val @ F @ G ) @ X @ ( some_P2581650809551911671on_val @ Y2 ) ) ) ).
% map_add_upd
thf(fact_290_map__add__upd,axiom,
! [F: nat > option_list_char,G: nat > option_list_char,X: nat,Y2: list_char] :
( ( map_ad208561015412637672t_char @ F @ ( fun_up4009399622604172288t_char @ G @ X @ ( some_list_char @ Y2 ) ) )
= ( fun_up4009399622604172288t_char @ ( map_ad208561015412637672t_char @ F @ G ) @ X @ ( some_list_char @ Y2 ) ) ) ).
% map_add_upd
thf(fact_291_map__add__upd,axiom,
! [F: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,G: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,X: produc1457211279475724562t_char > prat,Y2: produc1457211279475724562t_char > option_val] :
( ( map_ad2898753242718228216on_val @ F @ ( fun_up1601731230164360576on_val @ G @ X @ ( some_P7669353234731512949on_val @ Y2 ) ) )
= ( fun_up1601731230164360576on_val @ ( map_ad2898753242718228216on_val @ F @ G ) @ X @ ( some_P7669353234731512949on_val @ Y2 ) ) ) ).
% map_add_upd
thf(fact_292_map__add__upd,axiom,
! [F: produc1457211279475724562t_char > option_val,G: produc1457211279475724562t_char > option_val,X: produc1457211279475724562t_char,Y2: val] :
( ( map_ad2908576761495157028ar_val @ F @ ( fun_up5735975307950539954on_val @ G @ X @ ( some_val @ Y2 ) ) )
= ( fun_up5735975307950539954on_val @ ( map_ad2908576761495157028ar_val @ F @ G ) @ X @ ( some_val @ Y2 ) ) ) ).
% map_add_upd
thf(fact_293_combine__options__simps_I2_J,axiom,
! [F: produc9003781588162623004on_val > produc9003781588162623004on_val > produc9003781588162623004on_val,X: option8887860577033306220on_val] :
( ( combin6222804963853957469on_val @ F @ X @ none_P8728355543607141243on_val )
= X ) ).
% combine_options_simps(2)
thf(fact_294_combine__options__simps_I2_J,axiom,
! [F: list_char > list_char > list_char,X: option_list_char] :
( ( combin4118143342443788322t_char @ F @ X @ none_list_char )
= X ) ).
% combine_options_simps(2)
thf(fact_295_combine__options__simps_I2_J,axiom,
! [F: ( produc1457211279475724562t_char > option_val ) > ( produc1457211279475724562t_char > option_val ) > produc1457211279475724562t_char > option_val,X: option5747939881698552298on_val] :
( ( combin3271118981050854363on_val @ F @ X @ none_P1334921381875262201on_val )
= X ) ).
% combine_options_simps(2)
thf(fact_296_combine__options__simps_I2_J,axiom,
! [F: state > state > state,X: option_state] :
( ( combin3633514924185701883_state @ F @ X @ none_state )
= X ) ).
% combine_options_simps(2)
thf(fact_297_combine__options__simps_I2_J,axiom,
! [F: val > val > val,X: option_val] :
( ( combine_options_val @ F @ X @ none_val )
= X ) ).
% combine_options_simps(2)
thf(fact_298_elem__set,axiom,
! [X: option_val,Xo: option_option_val] :
( ( member_option_val @ X @ ( set_op911010586042427349on_val @ Xo ) )
= ( Xo
= ( some_option_val @ X ) ) ) ).
% elem_set
thf(fact_299_elem__set,axiom,
! [X: nat,Xo: option_nat] :
( ( member_nat @ X @ ( set_option_nat @ Xo ) )
= ( Xo
= ( some_nat @ X ) ) ) ).
% elem_set
thf(fact_300_elem__set,axiom,
! [X: produc1457211279475724562t_char > prat,Xo: option3572569098863364761r_prat] :
( ( member2336342582916103932r_prat @ X @ ( set_op923924987228895969r_prat @ Xo ) )
= ( Xo
= ( some_P8530153984677361336r_prat @ X ) ) ) ).
% elem_set
thf(fact_301_elem__set,axiom,
! [X: list_char,Xo: option_list_char] :
( ( member_list_char @ X @ ( set_option_list_char2 @ Xo ) )
= ( Xo
= ( some_list_char @ X ) ) ) ).
% elem_set
thf(fact_302_elem__set,axiom,
! [X: produc1457211279475724562t_char > option_val,Xo: option5747939881698552298on_val] :
( ( member1577473829074448177on_val @ X @ ( set_op1770538635792728844on_val @ Xo ) )
= ( Xo
= ( some_P7669353234731512949on_val @ X ) ) ) ).
% elem_set
thf(fact_303_elem__set,axiom,
! [X: produc1457211279475724562t_char,Xo: option2736423997234022232t_char] :
( ( member484235747325421115t_char @ X @ ( set_op7440730737645789856t_char @ Xo ) )
= ( Xo
= ( some_P6851457240968045559t_char @ X ) ) ) ).
% elem_set
thf(fact_304_elem__set,axiom,
! [X: produc9003781588162623004on_val,Xo: option8887860577033306220on_val] :
( ( member2879030624002546611on_val @ X @ ( set_op9004752959087400718on_val @ Xo ) )
= ( Xo
= ( some_P2581650809551911671on_val @ X ) ) ) ).
% elem_set
thf(fact_305_elem__set,axiom,
! [X: state,Xo: option_state] :
( ( member_state @ X @ ( set_option_state2 @ Xo ) )
= ( Xo
= ( some_state @ X ) ) ) ).
% elem_set
thf(fact_306_elem__set,axiom,
! [X: val,Xo: option_val] :
( ( member_val @ X @ ( set_option_val2 @ Xo ) )
= ( Xo
= ( some_val @ X ) ) ) ).
% elem_set
thf(fact_307_is__none__code_I2_J,axiom,
! [X: produc9003781588162623004on_val] :
~ ( is_non3468859156093823296on_val @ ( some_P2581650809551911671on_val @ X ) ) ).
% is_none_code(2)
thf(fact_308_is__none__code_I2_J,axiom,
! [X: list_char] :
~ ( is_none_list_char @ ( some_list_char @ X ) ) ).
% is_none_code(2)
thf(fact_309_is__none__code_I2_J,axiom,
! [X: produc1457211279475724562t_char > option_val] :
~ ( is_non6205214127102033982on_val @ ( some_P7669353234731512949on_val @ X ) ) ).
% is_none_code(2)
thf(fact_310_is__none__code_I2_J,axiom,
! [X: state] :
~ ( is_none_state @ ( some_state @ X ) ) ).
% is_none_code(2)
thf(fact_311_is__none__code_I2_J,axiom,
! [X: val] :
~ ( is_none_val @ ( some_val @ X ) ) ).
% is_none_code(2)
thf(fact_312_is__none__code_I1_J,axiom,
is_non3468859156093823296on_val @ none_P8728355543607141243on_val ).
% is_none_code(1)
thf(fact_313_is__none__code_I1_J,axiom,
is_none_list_char @ none_list_char ).
% is_none_code(1)
thf(fact_314_is__none__code_I1_J,axiom,
is_non6205214127102033982on_val @ none_P1334921381875262201on_val ).
% is_none_code(1)
thf(fact_315_is__none__code_I1_J,axiom,
is_none_state @ none_state ).
% is_none_code(1)
thf(fact_316_is__none__code_I1_J,axiom,
is_none_val @ none_val ).
% is_none_code(1)
thf(fact_317_combine__options__simps_I3_J,axiom,
! [F: produc9003781588162623004on_val > produc9003781588162623004on_val > produc9003781588162623004on_val,A2: produc9003781588162623004on_val,B2: produc9003781588162623004on_val] :
( ( combin6222804963853957469on_val @ F @ ( some_P2581650809551911671on_val @ A2 ) @ ( some_P2581650809551911671on_val @ B2 ) )
= ( some_P2581650809551911671on_val @ ( F @ A2 @ B2 ) ) ) ).
% combine_options_simps(3)
thf(fact_318_combine__options__simps_I3_J,axiom,
! [F: list_char > list_char > list_char,A2: list_char,B2: list_char] :
( ( combin4118143342443788322t_char @ F @ ( some_list_char @ A2 ) @ ( some_list_char @ B2 ) )
= ( some_list_char @ ( F @ A2 @ B2 ) ) ) ).
% combine_options_simps(3)
thf(fact_319_combine__options__simps_I3_J,axiom,
! [F: ( produc1457211279475724562t_char > option_val ) > ( produc1457211279475724562t_char > option_val ) > produc1457211279475724562t_char > option_val,A2: produc1457211279475724562t_char > option_val,B2: produc1457211279475724562t_char > option_val] :
( ( combin3271118981050854363on_val @ F @ ( some_P7669353234731512949on_val @ A2 ) @ ( some_P7669353234731512949on_val @ B2 ) )
= ( some_P7669353234731512949on_val @ ( F @ A2 @ B2 ) ) ) ).
% combine_options_simps(3)
thf(fact_320_combine__options__simps_I3_J,axiom,
! [F: state > state > state,A2: state,B2: state] :
( ( combin3633514924185701883_state @ F @ ( some_state @ A2 ) @ ( some_state @ B2 ) )
= ( some_state @ ( F @ A2 @ B2 ) ) ) ).
% combine_options_simps(3)
thf(fact_321_combine__options__simps_I3_J,axiom,
! [F: val > val > val,A2: val,B2: val] :
( ( combine_options_val @ F @ ( some_val @ A2 ) @ ( some_val @ B2 ) )
= ( some_val @ ( F @ A2 @ B2 ) ) ) ).
% combine_options_simps(3)
thf(fact_322_combine__options__simps_I1_J,axiom,
! [F: produc9003781588162623004on_val > produc9003781588162623004on_val > produc9003781588162623004on_val,Y2: option8887860577033306220on_val] :
( ( combin6222804963853957469on_val @ F @ none_P8728355543607141243on_val @ Y2 )
= Y2 ) ).
% combine_options_simps(1)
thf(fact_323_combine__options__simps_I1_J,axiom,
! [F: list_char > list_char > list_char,Y2: option_list_char] :
( ( combin4118143342443788322t_char @ F @ none_list_char @ Y2 )
= Y2 ) ).
% combine_options_simps(1)
thf(fact_324_combine__options__simps_I1_J,axiom,
! [F: ( produc1457211279475724562t_char > option_val ) > ( produc1457211279475724562t_char > option_val ) > produc1457211279475724562t_char > option_val,Y2: option5747939881698552298on_val] :
( ( combin3271118981050854363on_val @ F @ none_P1334921381875262201on_val @ Y2 )
= Y2 ) ).
% combine_options_simps(1)
thf(fact_325_combine__options__simps_I1_J,axiom,
! [F: state > state > state,Y2: option_state] :
( ( combin3633514924185701883_state @ F @ none_state @ Y2 )
= Y2 ) ).
% combine_options_simps(1)
thf(fact_326_combine__options__simps_I1_J,axiom,
! [F: val > val > val,Y2: option_val] :
( ( combine_options_val @ F @ none_val @ Y2 )
= Y2 ) ).
% combine_options_simps(1)
thf(fact_327_greater__mask__properties_I3_J,axiom,
! [Pi2: produc1457211279475724562t_char > prat,Pi: produc1457211279475724562t_char > prat] :
( ( ( greate7680731506090375811t_char @ Pi2 @ Pi )
& ( greate7680731506090375811t_char @ Pi @ Pi2 ) )
=> ( Pi = Pi2 ) ) ).
% greater_mask_properties(3)
thf(fact_328_greater__mask__properties_I2_J,axiom,
! [A2: produc1457211279475724562t_char > prat,B2: produc1457211279475724562t_char > prat,C: produc1457211279475724562t_char > prat] :
( ( ( greate7680731506090375811t_char @ A2 @ B2 )
& ( greate7680731506090375811t_char @ B2 @ C ) )
=> ( greate7680731506090375811t_char @ A2 @ C ) ) ).
% greater_mask_properties(2)
thf(fact_329_greater__mask__properties_I1_J,axiom,
! [Pi: produc1457211279475724562t_char > prat] : ( greate7680731506090375811t_char @ Pi @ Pi ) ).
% greater_mask_properties(1)
thf(fact_330_combine__options__assoc,axiom,
! [F: val > val > val,X: option_val,Y2: option_val,Z: option_val] :
( ! [X2: val,Y: val,Z2: val] :
( ( F @ ( F @ X2 @ Y ) @ Z2 )
= ( F @ X2 @ ( F @ Y @ Z2 ) ) )
=> ( ( combine_options_val @ F @ ( combine_options_val @ F @ X @ Y2 ) @ Z )
= ( combine_options_val @ F @ X @ ( combine_options_val @ F @ Y2 @ Z ) ) ) ) ).
% combine_options_assoc
thf(fact_331_combine__options__assoc,axiom,
! [F: state > state > state,X: option_state,Y2: option_state,Z: option_state] :
( ! [X2: state,Y: state,Z2: state] :
( ( F @ ( F @ X2 @ Y ) @ Z2 )
= ( F @ X2 @ ( F @ Y @ Z2 ) ) )
=> ( ( combin3633514924185701883_state @ F @ ( combin3633514924185701883_state @ F @ X @ Y2 ) @ Z )
= ( combin3633514924185701883_state @ F @ X @ ( combin3633514924185701883_state @ F @ Y2 @ Z ) ) ) ) ).
% combine_options_assoc
thf(fact_332_combine__options__commute,axiom,
! [F: val > val > val,X: option_val,Y2: option_val] :
( ! [X2: val,Y: val] :
( ( F @ X2 @ Y )
= ( F @ Y @ X2 ) )
=> ( ( combine_options_val @ F @ X @ Y2 )
= ( combine_options_val @ F @ Y2 @ X ) ) ) ).
% combine_options_commute
thf(fact_333_combine__options__commute,axiom,
! [F: state > state > state,X: option_state,Y2: option_state] :
( ! [X2: state,Y: state] :
( ( F @ X2 @ Y )
= ( F @ Y @ X2 ) )
=> ( ( combin3633514924185701883_state @ F @ X @ Y2 )
= ( combin3633514924185701883_state @ F @ Y2 @ X ) ) ) ).
% combine_options_commute
thf(fact_334_combine__options__left__commute,axiom,
! [F: val > val > val,Y2: option_val,X: option_val,Z: option_val] :
( ! [X2: val,Y: val] :
( ( F @ X2 @ Y )
= ( F @ Y @ X2 ) )
=> ( ! [X2: val,Y: val,Z2: val] :
( ( F @ ( F @ X2 @ Y ) @ Z2 )
= ( F @ X2 @ ( F @ Y @ Z2 ) ) )
=> ( ( combine_options_val @ F @ Y2 @ ( combine_options_val @ F @ X @ Z ) )
= ( combine_options_val @ F @ X @ ( combine_options_val @ F @ Y2 @ Z ) ) ) ) ) ).
% combine_options_left_commute
thf(fact_335_combine__options__left__commute,axiom,
! [F: state > state > state,Y2: option_state,X: option_state,Z: option_state] :
( ! [X2: state,Y: state] :
( ( F @ X2 @ Y )
= ( F @ Y @ X2 ) )
=> ( ! [X2: state,Y: state,Z2: state] :
( ( F @ ( F @ X2 @ Y ) @ Z2 )
= ( F @ X2 @ ( F @ Y @ Z2 ) ) )
=> ( ( combin3633514924185701883_state @ F @ Y2 @ ( combin3633514924185701883_state @ F @ X @ Z ) )
= ( combin3633514924185701883_state @ F @ X @ ( combin3633514924185701883_state @ F @ Y2 @ Z ) ) ) ) ) ).
% combine_options_left_commute
thf(fact_336_map__upd__Some__unfold,axiom,
! [M: produc9003781588162623004on_val > option_state,A2: produc9003781588162623004on_val,B2: state,X: produc9003781588162623004on_val,Y2: state] :
( ( ( fun_up6681822530636708645_state @ M @ A2 @ ( some_state @ B2 ) @ X )
= ( some_state @ Y2 ) )
= ( ( ( X = A2 )
& ( B2 = Y2 ) )
| ( ( X != A2 )
& ( ( M @ X )
= ( some_state @ Y2 ) ) ) ) ) ).
% map_upd_Some_unfold
thf(fact_337_map__upd__Some__unfold,axiom,
! [M: produc9003781588162623004on_val > option_val,A2: produc9003781588162623004on_val,B2: val,X: produc9003781588162623004on_val,Y2: val] :
( ( ( fun_up8559965269643824108on_val @ M @ A2 @ ( some_val @ B2 ) @ X )
= ( some_val @ Y2 ) )
= ( ( ( X = A2 )
& ( B2 = Y2 ) )
| ( ( X != A2 )
& ( ( M @ X )
= ( some_val @ Y2 ) ) ) ) ) ).
% map_upd_Some_unfold
thf(fact_338_map__upd__Some__unfold,axiom,
! [M: produc9003781588162623004on_val > option8887860577033306220on_val,A2: produc9003781588162623004on_val,B2: produc9003781588162623004on_val,X: produc9003781588162623004on_val,Y2: produc9003781588162623004on_val] :
( ( ( fun_up273046073882939271on_val @ M @ A2 @ ( some_P2581650809551911671on_val @ B2 ) @ X )
= ( some_P2581650809551911671on_val @ Y2 ) )
= ( ( ( X = A2 )
& ( B2 = Y2 ) )
| ( ( X != A2 )
& ( ( M @ X )
= ( some_P2581650809551911671on_val @ Y2 ) ) ) ) ) ).
% map_upd_Some_unfold
thf(fact_339_map__upd__Some__unfold,axiom,
! [M: nat > option_list_char,A2: nat,B2: list_char,X: nat,Y2: list_char] :
( ( ( fun_up4009399622604172288t_char @ M @ A2 @ ( some_list_char @ B2 ) @ X )
= ( some_list_char @ Y2 ) )
= ( ( ( X = A2 )
& ( B2 = Y2 ) )
| ( ( X != A2 )
& ( ( M @ X )
= ( some_list_char @ Y2 ) ) ) ) ) ).
% map_upd_Some_unfold
thf(fact_340_map__upd__Some__unfold,axiom,
! [M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,A2: produc1457211279475724562t_char > prat,B2: produc1457211279475724562t_char > option_val,X: produc1457211279475724562t_char > prat,Y2: produc1457211279475724562t_char > option_val] :
( ( ( fun_up1601731230164360576on_val @ M @ A2 @ ( some_P7669353234731512949on_val @ B2 ) @ X )
= ( some_P7669353234731512949on_val @ Y2 ) )
= ( ( ( X = A2 )
& ( B2 = Y2 ) )
| ( ( X != A2 )
& ( ( M @ X )
= ( some_P7669353234731512949on_val @ Y2 ) ) ) ) ) ).
% map_upd_Some_unfold
thf(fact_341_map__upd__triv,axiom,
! [T: produc9003781588162623004on_val > option_state,K: produc9003781588162623004on_val,X: state] :
( ( ( T @ K )
= ( some_state @ X ) )
=> ( ( fun_up6681822530636708645_state @ T @ K @ ( some_state @ X ) )
= T ) ) ).
% map_upd_triv
thf(fact_342_map__upd__triv,axiom,
! [T: produc9003781588162623004on_val > option_val,K: produc9003781588162623004on_val,X: val] :
( ( ( T @ K )
= ( some_val @ X ) )
=> ( ( fun_up8559965269643824108on_val @ T @ K @ ( some_val @ X ) )
= T ) ) ).
% map_upd_triv
thf(fact_343_map__upd__triv,axiom,
! [T: produc9003781588162623004on_val > option8887860577033306220on_val,K: produc9003781588162623004on_val,X: produc9003781588162623004on_val] :
( ( ( T @ K )
= ( some_P2581650809551911671on_val @ X ) )
=> ( ( fun_up273046073882939271on_val @ T @ K @ ( some_P2581650809551911671on_val @ X ) )
= T ) ) ).
% map_upd_triv
thf(fact_344_map__upd__triv,axiom,
! [T: nat > option_list_char,K: nat,X: list_char] :
( ( ( T @ K )
= ( some_list_char @ X ) )
=> ( ( fun_up4009399622604172288t_char @ T @ K @ ( some_list_char @ X ) )
= T ) ) ).
% map_upd_triv
thf(fact_345_map__upd__triv,axiom,
! [T: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,K: produc1457211279475724562t_char > prat,X: produc1457211279475724562t_char > option_val] :
( ( ( T @ K )
= ( some_P7669353234731512949on_val @ X ) )
=> ( ( fun_up1601731230164360576on_val @ T @ K @ ( some_P7669353234731512949on_val @ X ) )
= T ) ) ).
% map_upd_triv
thf(fact_346_map__upd__eqD1,axiom,
! [M: produc9003781588162623004on_val > option_state,A2: produc9003781588162623004on_val,X: state,N: produc9003781588162623004on_val > option_state,Y2: state] :
( ( ( fun_up6681822530636708645_state @ M @ A2 @ ( some_state @ X ) )
= ( fun_up6681822530636708645_state @ N @ A2 @ ( some_state @ Y2 ) ) )
=> ( X = Y2 ) ) ).
% map_upd_eqD1
thf(fact_347_map__upd__eqD1,axiom,
! [M: produc9003781588162623004on_val > option_val,A2: produc9003781588162623004on_val,X: val,N: produc9003781588162623004on_val > option_val,Y2: val] :
( ( ( fun_up8559965269643824108on_val @ M @ A2 @ ( some_val @ X ) )
= ( fun_up8559965269643824108on_val @ N @ A2 @ ( some_val @ Y2 ) ) )
=> ( X = Y2 ) ) ).
% map_upd_eqD1
thf(fact_348_map__upd__eqD1,axiom,
! [M: produc9003781588162623004on_val > option8887860577033306220on_val,A2: produc9003781588162623004on_val,X: produc9003781588162623004on_val,N: produc9003781588162623004on_val > option8887860577033306220on_val,Y2: produc9003781588162623004on_val] :
( ( ( fun_up273046073882939271on_val @ M @ A2 @ ( some_P2581650809551911671on_val @ X ) )
= ( fun_up273046073882939271on_val @ N @ A2 @ ( some_P2581650809551911671on_val @ Y2 ) ) )
=> ( X = Y2 ) ) ).
% map_upd_eqD1
thf(fact_349_map__upd__eqD1,axiom,
! [M: nat > option_list_char,A2: nat,X: list_char,N: nat > option_list_char,Y2: list_char] :
( ( ( fun_up4009399622604172288t_char @ M @ A2 @ ( some_list_char @ X ) )
= ( fun_up4009399622604172288t_char @ N @ A2 @ ( some_list_char @ Y2 ) ) )
=> ( X = Y2 ) ) ).
% map_upd_eqD1
thf(fact_350_map__upd__eqD1,axiom,
! [M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,A2: produc1457211279475724562t_char > prat,X: produc1457211279475724562t_char > option_val,N: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,Y2: produc1457211279475724562t_char > option_val] :
( ( ( fun_up1601731230164360576on_val @ M @ A2 @ ( some_P7669353234731512949on_val @ X ) )
= ( fun_up1601731230164360576on_val @ N @ A2 @ ( some_P7669353234731512949on_val @ Y2 ) ) )
=> ( X = Y2 ) ) ).
% map_upd_eqD1
thf(fact_351_ospec,axiom,
! [A5: option_list_char,P: list_char > $o,X: list_char] :
( ! [X2: list_char] :
( ( member_list_char @ X2 @ ( set_option_list_char2 @ A5 ) )
=> ( P @ X2 ) )
=> ( ( A5
= ( some_list_char @ X ) )
=> ( P @ X ) ) ) ).
% ospec
thf(fact_352_ospec,axiom,
! [A5: option5747939881698552298on_val,P: ( produc1457211279475724562t_char > option_val ) > $o,X: produc1457211279475724562t_char > option_val] :
( ! [X2: produc1457211279475724562t_char > option_val] :
( ( member1577473829074448177on_val @ X2 @ ( set_op1770538635792728844on_val @ A5 ) )
=> ( P @ X2 ) )
=> ( ( A5
= ( some_P7669353234731512949on_val @ X ) )
=> ( P @ X ) ) ) ).
% ospec
thf(fact_353_ospec,axiom,
! [A5: option8887860577033306220on_val,P: produc9003781588162623004on_val > $o,X: produc9003781588162623004on_val] :
( ! [X2: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ X2 @ ( set_op9004752959087400718on_val @ A5 ) )
=> ( P @ X2 ) )
=> ( ( A5
= ( some_P2581650809551911671on_val @ X ) )
=> ( P @ X ) ) ) ).
% ospec
thf(fact_354_ospec,axiom,
! [A5: option2736423997234022232t_char,P: produc1457211279475724562t_char > $o,X: produc1457211279475724562t_char] :
( ! [X2: produc1457211279475724562t_char] :
( ( member484235747325421115t_char @ X2 @ ( set_op7440730737645789856t_char @ A5 ) )
=> ( P @ X2 ) )
=> ( ( A5
= ( some_P6851457240968045559t_char @ X ) )
=> ( P @ X ) ) ) ).
% ospec
thf(fact_355_ospec,axiom,
! [A5: option_state,P: state > $o,X: state] :
( ! [X2: state] :
( ( member_state @ X2 @ ( set_option_state2 @ A5 ) )
=> ( P @ X2 ) )
=> ( ( A5
= ( some_state @ X ) )
=> ( P @ X ) ) ) ).
% ospec
thf(fact_356_ospec,axiom,
! [A5: option_val,P: val > $o,X: val] :
( ! [X2: val] :
( ( member_val @ X2 @ ( set_option_val2 @ A5 ) )
=> ( P @ X2 ) )
=> ( ( A5
= ( some_val @ X ) )
=> ( P @ X ) ) ) ).
% ospec
thf(fact_357_option_Oset__intros,axiom,
! [X22: option_val] : ( member_option_val @ X22 @ ( set_op911010586042427349on_val @ ( some_option_val @ X22 ) ) ) ).
% option.set_intros
thf(fact_358_option_Oset__intros,axiom,
! [X22: nat] : ( member_nat @ X22 @ ( set_option_nat @ ( some_nat @ X22 ) ) ) ).
% option.set_intros
thf(fact_359_option_Oset__intros,axiom,
! [X22: produc1457211279475724562t_char > prat] : ( member2336342582916103932r_prat @ X22 @ ( set_op923924987228895969r_prat @ ( some_P8530153984677361336r_prat @ X22 ) ) ) ).
% option.set_intros
thf(fact_360_option_Oset__intros,axiom,
! [X22: list_char] : ( member_list_char @ X22 @ ( set_option_list_char2 @ ( some_list_char @ X22 ) ) ) ).
% option.set_intros
thf(fact_361_option_Oset__intros,axiom,
! [X22: produc1457211279475724562t_char > option_val] : ( member1577473829074448177on_val @ X22 @ ( set_op1770538635792728844on_val @ ( some_P7669353234731512949on_val @ X22 ) ) ) ).
% option.set_intros
thf(fact_362_option_Oset__intros,axiom,
! [X22: produc1457211279475724562t_char] : ( member484235747325421115t_char @ X22 @ ( set_op7440730737645789856t_char @ ( some_P6851457240968045559t_char @ X22 ) ) ) ).
% option.set_intros
thf(fact_363_option_Oset__intros,axiom,
! [X22: produc9003781588162623004on_val] : ( member2879030624002546611on_val @ X22 @ ( set_op9004752959087400718on_val @ ( some_P2581650809551911671on_val @ X22 ) ) ) ).
% option.set_intros
thf(fact_364_option_Oset__intros,axiom,
! [X22: state] : ( member_state @ X22 @ ( set_option_state2 @ ( some_state @ X22 ) ) ) ).
% option.set_intros
thf(fact_365_option_Oset__intros,axiom,
! [X22: val] : ( member_val @ X22 @ ( set_option_val2 @ ( some_val @ X22 ) ) ) ).
% option.set_intros
thf(fact_366_option_Oset__cases,axiom,
! [E: option_val,A2: option_option_val] :
( ( member_option_val @ E @ ( set_op911010586042427349on_val @ A2 ) )
=> ( A2
= ( some_option_val @ E ) ) ) ).
% option.set_cases
thf(fact_367_option_Oset__cases,axiom,
! [E: nat,A2: option_nat] :
( ( member_nat @ E @ ( set_option_nat @ A2 ) )
=> ( A2
= ( some_nat @ E ) ) ) ).
% option.set_cases
thf(fact_368_option_Oset__cases,axiom,
! [E: produc1457211279475724562t_char > prat,A2: option3572569098863364761r_prat] :
( ( member2336342582916103932r_prat @ E @ ( set_op923924987228895969r_prat @ A2 ) )
=> ( A2
= ( some_P8530153984677361336r_prat @ E ) ) ) ).
% option.set_cases
thf(fact_369_option_Oset__cases,axiom,
! [E: list_char,A2: option_list_char] :
( ( member_list_char @ E @ ( set_option_list_char2 @ A2 ) )
=> ( A2
= ( some_list_char @ E ) ) ) ).
% option.set_cases
thf(fact_370_option_Oset__cases,axiom,
! [E: produc1457211279475724562t_char > option_val,A2: option5747939881698552298on_val] :
( ( member1577473829074448177on_val @ E @ ( set_op1770538635792728844on_val @ A2 ) )
=> ( A2
= ( some_P7669353234731512949on_val @ E ) ) ) ).
% option.set_cases
thf(fact_371_option_Oset__cases,axiom,
! [E: produc1457211279475724562t_char,A2: option2736423997234022232t_char] :
( ( member484235747325421115t_char @ E @ ( set_op7440730737645789856t_char @ A2 ) )
=> ( A2
= ( some_P6851457240968045559t_char @ E ) ) ) ).
% option.set_cases
thf(fact_372_option_Oset__cases,axiom,
! [E: produc9003781588162623004on_val,A2: option8887860577033306220on_val] :
( ( member2879030624002546611on_val @ E @ ( set_op9004752959087400718on_val @ A2 ) )
=> ( A2
= ( some_P2581650809551911671on_val @ E ) ) ) ).
% option.set_cases
thf(fact_373_option_Oset__cases,axiom,
! [E: state,A2: option_state] :
( ( member_state @ E @ ( set_option_state2 @ A2 ) )
=> ( A2
= ( some_state @ E ) ) ) ).
% option.set_cases
thf(fact_374_option_Oset__cases,axiom,
! [E: val,A2: option_val] :
( ( member_val @ E @ ( set_option_val2 @ A2 ) )
=> ( A2
= ( some_val @ E ) ) ) ).
% option.set_cases
thf(fact_375_option_Osimps_I5_J,axiom,
! [F1: option_state,F2: state > option_state,X22: state] :
( ( case_o8916064052540797265_state @ F1 @ F2 @ ( some_state @ X22 ) )
= ( F2 @ X22 ) ) ).
% option.simps(5)
thf(fact_376_option_Osimps_I5_J,axiom,
! [F1: option_val,F2: val > option_val,X22: val] :
( ( case_o7794706883426356101al_val @ F1 @ F2 @ ( some_val @ X22 ) )
= ( F2 @ X22 ) ) ).
% option.simps(5)
thf(fact_377_option_Osimps_I5_J,axiom,
! [F1: val,F2: val > val,X22: val] :
( ( case_option_val_val @ F1 @ F2 @ ( some_val @ X22 ) )
= ( F2 @ X22 ) ) ).
% option.simps(5)
thf(fact_378_option_Osimps_I5_J,axiom,
! [F1: $o,F2: state > $o,X22: state] :
( ( case_option_o_state @ F1 @ F2 @ ( some_state @ X22 ) )
= ( F2 @ X22 ) ) ).
% option.simps(5)
thf(fact_379_option_Osimps_I5_J,axiom,
! [F1: $o,F2: val > $o,X22: val] :
( ( case_option_o_val @ F1 @ F2 @ ( some_val @ X22 ) )
= ( F2 @ X22 ) ) ).
% option.simps(5)
thf(fact_380_bind__option__cong,axiom,
! [X: option_val,Y2: option_val,F: val > option_val,G: val > option_val] :
( ( X = Y2 )
=> ( ! [Z2: val] :
( ( member_val @ Z2 @ ( set_option_val2 @ Y2 ) )
=> ( ( F @ Z2 )
= ( G @ Z2 ) ) )
=> ( ( bind_val_val @ X @ F )
= ( bind_val_val @ Y2 @ G ) ) ) ) ).
% bind_option_cong
thf(fact_381_bind__option__cong,axiom,
! [X: option_val,Y2: option_val,F: val > option_state,G: val > option_state] :
( ( X = Y2 )
=> ( ! [Z2: val] :
( ( member_val @ Z2 @ ( set_option_val2 @ Y2 ) )
=> ( ( F @ Z2 )
= ( G @ Z2 ) ) )
=> ( ( bind_val_state @ X @ F )
= ( bind_val_state @ Y2 @ G ) ) ) ) ).
% bind_option_cong
thf(fact_382_bind__option__cong,axiom,
! [X: option_state,Y2: option_state,F: state > option_val,G: state > option_val] :
( ( X = Y2 )
=> ( ! [Z2: state] :
( ( member_state @ Z2 @ ( set_option_state2 @ Y2 ) )
=> ( ( F @ Z2 )
= ( G @ Z2 ) ) )
=> ( ( bind_state_val @ X @ F )
= ( bind_state_val @ Y2 @ G ) ) ) ) ).
% bind_option_cong
thf(fact_383_bind__option__cong,axiom,
! [X: option_state,Y2: option_state,F: state > option_state,G: state > option_state] :
( ( X = Y2 )
=> ( ! [Z2: state] :
( ( member_state @ Z2 @ ( set_option_state2 @ Y2 ) )
=> ( ( F @ Z2 )
= ( G @ Z2 ) ) )
=> ( ( bind_state_state @ X @ F )
= ( bind_state_state @ Y2 @ G ) ) ) ) ).
% bind_option_cong
thf(fact_384_option_Osimps_I4_J,axiom,
! [F1: option_state,F2: state > option_state] :
( ( case_o8916064052540797265_state @ F1 @ F2 @ none_state )
= F1 ) ).
% option.simps(4)
thf(fact_385_option_Osimps_I4_J,axiom,
! [F1: option_val,F2: val > option_val] :
( ( case_o7794706883426356101al_val @ F1 @ F2 @ none_val )
= F1 ) ).
% option.simps(4)
thf(fact_386_option_Osimps_I4_J,axiom,
! [F1: val,F2: val > val] :
( ( case_option_val_val @ F1 @ F2 @ none_val )
= F1 ) ).
% option.simps(4)
thf(fact_387_option_Osimps_I4_J,axiom,
! [F1: $o,F2: state > $o] :
( ( case_option_o_state @ F1 @ F2 @ none_state )
= F1 ) ).
% option.simps(4)
thf(fact_388_option_Osimps_I4_J,axiom,
! [F1: $o,F2: val > $o] :
( ( case_option_o_val @ F1 @ F2 @ none_val )
= F1 ) ).
% option.simps(4)
thf(fact_389_is__none__simps_I2_J,axiom,
! [X: produc9003781588162623004on_val] :
~ ( is_non3468859156093823296on_val @ ( some_P2581650809551911671on_val @ X ) ) ).
% is_none_simps(2)
thf(fact_390_is__none__simps_I2_J,axiom,
! [X: list_char] :
~ ( is_none_list_char @ ( some_list_char @ X ) ) ).
% is_none_simps(2)
thf(fact_391_is__none__simps_I2_J,axiom,
! [X: produc1457211279475724562t_char > option_val] :
~ ( is_non6205214127102033982on_val @ ( some_P7669353234731512949on_val @ X ) ) ).
% is_none_simps(2)
thf(fact_392_is__none__simps_I2_J,axiom,
! [X: state] :
~ ( is_none_state @ ( some_state @ X ) ) ).
% is_none_simps(2)
thf(fact_393_is__none__simps_I2_J,axiom,
! [X: val] :
~ ( is_none_val @ ( some_val @ X ) ) ).
% is_none_simps(2)
thf(fact_394_Option_Ois__none__def,axiom,
( is_non3468859156093823296on_val
= ( ^ [X3: option8887860577033306220on_val] : ( X3 = none_P8728355543607141243on_val ) ) ) ).
% Option.is_none_def
thf(fact_395_Option_Ois__none__def,axiom,
( is_none_list_char
= ( ^ [X3: option_list_char] : ( X3 = none_list_char ) ) ) ).
% Option.is_none_def
thf(fact_396_Option_Ois__none__def,axiom,
( is_non6205214127102033982on_val
= ( ^ [X3: option5747939881698552298on_val] : ( X3 = none_P1334921381875262201on_val ) ) ) ).
% Option.is_none_def
thf(fact_397_Option_Ois__none__def,axiom,
( is_none_state
= ( ^ [X3: option_state] : ( X3 = none_state ) ) ) ).
% Option.is_none_def
thf(fact_398_Option_Ois__none__def,axiom,
( is_none_val
= ( ^ [X3: option_val] : ( X3 = none_val ) ) ) ).
% Option.is_none_def
thf(fact_399_is__none__simps_I1_J,axiom,
is_non3468859156093823296on_val @ none_P8728355543607141243on_val ).
% is_none_simps(1)
thf(fact_400_is__none__simps_I1_J,axiom,
is_none_list_char @ none_list_char ).
% is_none_simps(1)
thf(fact_401_is__none__simps_I1_J,axiom,
is_non6205214127102033982on_val @ none_P1334921381875262201on_val ).
% is_none_simps(1)
thf(fact_402_is__none__simps_I1_J,axiom,
is_none_state @ none_state ).
% is_none_simps(1)
thf(fact_403_is__none__simps_I1_J,axiom,
is_none_val @ none_val ).
% is_none_simps(1)
thf(fact_404_const__sum__mask__greater,axiom,
! [A2: produc1457211279475724562t_char > prat,B2: produc1457211279475724562t_char > prat,C: produc1457211279475724562t_char > prat,D: produc1457211279475724562t_char > prat] :
( ( ( add_ma6586698345353345811t_char @ A2 @ B2 )
= ( add_ma6586698345353345811t_char @ C @ D ) )
=> ( ( greate7680731506090375811t_char @ A2 @ C )
=> ( greate7680731506090375811t_char @ D @ B2 ) ) ) ).
% const_sum_mask_greater
thf(fact_405_greater__mask__decomp,axiom,
! [A2: produc1457211279475724562t_char > prat,B2: produc1457211279475724562t_char > prat,C: produc1457211279475724562t_char > prat] :
( ( greate7680731506090375811t_char @ A2 @ ( add_ma6586698345353345811t_char @ B2 @ C ) )
=> ? [A1: produc1457211279475724562t_char > prat,A22: produc1457211279475724562t_char > prat] :
( ( A2
= ( add_ma6586698345353345811t_char @ A1 @ A22 ) )
& ( greate7680731506090375811t_char @ A1 @ B2 )
& ( greate7680731506090375811t_char @ A22 @ C ) ) ) ).
% greater_mask_decomp
thf(fact_406_greater__mask__def,axiom,
( greate7680731506090375811t_char
= ( ^ [Pi3: produc1457211279475724562t_char > prat,Pi4: produc1457211279475724562t_char > prat] :
? [R: produc1457211279475724562t_char > prat] :
( Pi3
= ( add_ma6586698345353345811t_char @ Pi4 @ R ) ) ) ) ).
% greater_mask_def
thf(fact_407_map__upd__nonempty,axiom,
! [T: produc9003781588162623004on_val > option_state,K: produc9003781588162623004on_val,X: state] :
( ( fun_up6681822530636708645_state @ T @ K @ ( some_state @ X ) )
!= ( ^ [X3: produc9003781588162623004on_val] : none_state ) ) ).
% map_upd_nonempty
thf(fact_408_map__upd__nonempty,axiom,
! [T: produc9003781588162623004on_val > option_val,K: produc9003781588162623004on_val,X: val] :
( ( fun_up8559965269643824108on_val @ T @ K @ ( some_val @ X ) )
!= ( ^ [X3: produc9003781588162623004on_val] : none_val ) ) ).
% map_upd_nonempty
thf(fact_409_map__upd__nonempty,axiom,
! [T: produc9003781588162623004on_val > option8887860577033306220on_val,K: produc9003781588162623004on_val,X: produc9003781588162623004on_val] :
( ( fun_up273046073882939271on_val @ T @ K @ ( some_P2581650809551911671on_val @ X ) )
!= ( ^ [X3: produc9003781588162623004on_val] : none_P8728355543607141243on_val ) ) ).
% map_upd_nonempty
thf(fact_410_map__upd__nonempty,axiom,
! [T: nat > option_list_char,K: nat,X: list_char] :
( ( fun_up4009399622604172288t_char @ T @ K @ ( some_list_char @ X ) )
!= ( ^ [X3: nat] : none_list_char ) ) ).
% map_upd_nonempty
thf(fact_411_map__upd__nonempty,axiom,
! [T: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,K: produc1457211279475724562t_char > prat,X: produc1457211279475724562t_char > option_val] :
( ( fun_up1601731230164360576on_val @ T @ K @ ( some_P7669353234731512949on_val @ X ) )
!= ( ^ [X3: produc1457211279475724562t_char > prat] : none_P1334921381875262201on_val ) ) ).
% map_upd_nonempty
thf(fact_412_fun__upd__apply,axiom,
( fun_up6681822530636708645_state
= ( ^ [F3: produc9003781588162623004on_val > option_state,X3: produc9003781588162623004on_val,Y3: option_state,Z3: produc9003781588162623004on_val] : ( if_option_state @ ( Z3 = X3 ) @ Y3 @ ( F3 @ Z3 ) ) ) ) ).
% fun_upd_apply
thf(fact_413_fun__upd__apply,axiom,
( fun_up273046073882939271on_val
= ( ^ [F3: produc9003781588162623004on_val > option8887860577033306220on_val,X3: produc9003781588162623004on_val,Y3: option8887860577033306220on_val,Z3: produc9003781588162623004on_val] : ( if_opt2965748431298708774on_val @ ( Z3 = X3 ) @ Y3 @ ( F3 @ Z3 ) ) ) ) ).
% fun_upd_apply
thf(fact_414_fun__upd__apply,axiom,
( fun_up8559965269643824108on_val
= ( ^ [F3: produc9003781588162623004on_val > option_val,X3: produc9003781588162623004on_val,Y3: option_val,Z3: produc9003781588162623004on_val] : ( if_option_val @ ( Z3 = X3 ) @ Y3 @ ( F3 @ Z3 ) ) ) ) ).
% fun_upd_apply
thf(fact_415_fun__upd__apply,axiom,
( fun_up4009399622604172288t_char
= ( ^ [F3: nat > option_list_char,X3: nat,Y3: option_list_char,Z3: nat] : ( if_option_list_char @ ( Z3 = X3 ) @ Y3 @ ( F3 @ Z3 ) ) ) ) ).
% fun_upd_apply
thf(fact_416_fun__upd__apply,axiom,
( fun_up1601731230164360576on_val
= ( ^ [F3: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,X3: produc1457211279475724562t_char > prat,Y3: option5747939881698552298on_val,Z3: produc1457211279475724562t_char > prat] : ( if_opt6509584284076893604on_val @ ( Z3 = X3 ) @ Y3 @ ( F3 @ Z3 ) ) ) ) ).
% fun_upd_apply
thf(fact_417_fun__upd__triv,axiom,
! [F: produc9003781588162623004on_val > option_state,X: produc9003781588162623004on_val] :
( ( fun_up6681822530636708645_state @ F @ X @ ( F @ X ) )
= F ) ).
% fun_upd_triv
thf(fact_418_fun__upd__triv,axiom,
! [F: produc9003781588162623004on_val > option8887860577033306220on_val,X: produc9003781588162623004on_val] :
( ( fun_up273046073882939271on_val @ F @ X @ ( F @ X ) )
= F ) ).
% fun_upd_triv
thf(fact_419_fun__upd__triv,axiom,
! [F: produc9003781588162623004on_val > option_val,X: produc9003781588162623004on_val] :
( ( fun_up8559965269643824108on_val @ F @ X @ ( F @ X ) )
= F ) ).
% fun_upd_triv
thf(fact_420_fun__upd__triv,axiom,
! [F: nat > option_list_char,X: nat] :
( ( fun_up4009399622604172288t_char @ F @ X @ ( F @ X ) )
= F ) ).
% fun_upd_triv
thf(fact_421_fun__upd__triv,axiom,
! [F: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,X: produc1457211279475724562t_char > prat] :
( ( fun_up1601731230164360576on_val @ F @ X @ ( F @ X ) )
= F ) ).
% fun_upd_triv
thf(fact_422_fun__upd__upd,axiom,
! [F: produc9003781588162623004on_val > option_state,X: produc9003781588162623004on_val,Y2: option_state,Z: option_state] :
( ( fun_up6681822530636708645_state @ ( fun_up6681822530636708645_state @ F @ X @ Y2 ) @ X @ Z )
= ( fun_up6681822530636708645_state @ F @ X @ Z ) ) ).
% fun_upd_upd
thf(fact_423_fun__upd__upd,axiom,
! [F: produc9003781588162623004on_val > option8887860577033306220on_val,X: produc9003781588162623004on_val,Y2: option8887860577033306220on_val,Z: option8887860577033306220on_val] :
( ( fun_up273046073882939271on_val @ ( fun_up273046073882939271on_val @ F @ X @ Y2 ) @ X @ Z )
= ( fun_up273046073882939271on_val @ F @ X @ Z ) ) ).
% fun_upd_upd
thf(fact_424_fun__upd__upd,axiom,
! [F: produc9003781588162623004on_val > option_val,X: produc9003781588162623004on_val,Y2: option_val,Z: option_val] :
( ( fun_up8559965269643824108on_val @ ( fun_up8559965269643824108on_val @ F @ X @ Y2 ) @ X @ Z )
= ( fun_up8559965269643824108on_val @ F @ X @ Z ) ) ).
% fun_upd_upd
thf(fact_425_fun__upd__upd,axiom,
! [F: nat > option_list_char,X: nat,Y2: option_list_char,Z: option_list_char] :
( ( fun_up4009399622604172288t_char @ ( fun_up4009399622604172288t_char @ F @ X @ Y2 ) @ X @ Z )
= ( fun_up4009399622604172288t_char @ F @ X @ Z ) ) ).
% fun_upd_upd
thf(fact_426_fun__upd__upd,axiom,
! [F: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,X: produc1457211279475724562t_char > prat,Y2: option5747939881698552298on_val,Z: option5747939881698552298on_val] :
( ( fun_up1601731230164360576on_val @ ( fun_up1601731230164360576on_val @ F @ X @ Y2 ) @ X @ Z )
= ( fun_up1601731230164360576on_val @ F @ X @ Z ) ) ).
% fun_upd_upd
thf(fact_427_valid__heap__def,axiom,
( valid_heap
= ( ^ [Pi4: produc1457211279475724562t_char > prat,H4: produc1457211279475724562t_char > option_val] :
! [Hl2: produc1457211279475724562t_char] :
( ( ppos @ ( Pi4 @ Hl2 ) )
=> ( ( H4 @ Hl2 )
!= none_val ) ) ) ) ).
% valid_heap_def
thf(fact_428_valid__heapI,axiom,
! [Pi: produc1457211279475724562t_char > prat,H: produc1457211279475724562t_char > option_val] :
( ! [Hl: produc1457211279475724562t_char] :
( ( ppos @ ( Pi @ Hl ) )
=> ( ( H @ Hl )
!= none_val ) )
=> ( valid_heap @ Pi @ H ) ) ).
% valid_heapI
thf(fact_429_map__le__imp__upd__le,axiom,
! [M1: produc9003781588162623004on_val > option_state,M2: produc9003781588162623004on_val > option_state,X: produc9003781588162623004on_val,Y2: state] :
( ( map_le2714403320317326333_state @ M1 @ M2 )
=> ( map_le2714403320317326333_state @ ( fun_up6681822530636708645_state @ M1 @ X @ none_state ) @ ( fun_up6681822530636708645_state @ M2 @ X @ ( some_state @ Y2 ) ) ) ) ).
% map_le_imp_upd_le
thf(fact_430_map__le__imp__upd__le,axiom,
! [M1: produc1457211279475724562t_char > option_val,M2: produc1457211279475724562t_char > option_val,X: produc1457211279475724562t_char,Y2: val] :
( ( map_le3432596473071271956ar_val @ M1 @ M2 )
=> ( map_le3432596473071271956ar_val @ ( fun_up5735975307950539954on_val @ M1 @ X @ none_val ) @ ( fun_up5735975307950539954on_val @ M2 @ X @ ( some_val @ Y2 ) ) ) ) ).
% map_le_imp_upd_le
thf(fact_431_map__le__imp__upd__le,axiom,
! [M1: produc9003781588162623004on_val > option_val,M2: produc9003781588162623004on_val > option_val,X: produc9003781588162623004on_val,Y2: val] :
( ( map_le662008219874789630al_val @ M1 @ M2 )
=> ( map_le662008219874789630al_val @ ( fun_up8559965269643824108on_val @ M1 @ X @ none_val ) @ ( fun_up8559965269643824108on_val @ M2 @ X @ ( some_val @ Y2 ) ) ) ) ).
% map_le_imp_upd_le
thf(fact_432_map__le__imp__upd__le,axiom,
! [M1: produc9003781588162623004on_val > option8887860577033306220on_val,M2: produc9003781588162623004on_val > option8887860577033306220on_val,X: produc9003781588162623004on_val,Y2: produc9003781588162623004on_val] :
( ( map_le1786601613863086943on_val @ M1 @ M2 )
=> ( map_le1786601613863086943on_val @ ( fun_up273046073882939271on_val @ M1 @ X @ none_P8728355543607141243on_val ) @ ( fun_up273046073882939271on_val @ M2 @ X @ ( some_P2581650809551911671on_val @ Y2 ) ) ) ) ).
% map_le_imp_upd_le
thf(fact_433_map__le__imp__upd__le,axiom,
! [M1: nat > option_list_char,M2: nat > option_list_char,X: nat,Y2: list_char] :
( ( map_le_nat_list_char @ M1 @ M2 )
=> ( map_le_nat_list_char @ ( fun_up4009399622604172288t_char @ M1 @ X @ none_list_char ) @ ( fun_up4009399622604172288t_char @ M2 @ X @ ( some_list_char @ Y2 ) ) ) ) ).
% map_le_imp_upd_le
thf(fact_434_map__le__imp__upd__le,axiom,
! [M1: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,M2: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,X: produc1457211279475724562t_char > prat,Y2: produc1457211279475724562t_char > option_val] :
( ( map_le7591542393800649736on_val @ M1 @ M2 )
=> ( map_le7591542393800649736on_val @ ( fun_up1601731230164360576on_val @ M1 @ X @ none_P1334921381875262201on_val ) @ ( fun_up1601731230164360576on_val @ M2 @ X @ ( some_P7669353234731512949on_val @ Y2 ) ) ) ) ).
% map_le_imp_upd_le
thf(fact_435_fun__upd__idem__iff,axiom,
! [F: produc9003781588162623004on_val > option_state,X: produc9003781588162623004on_val,Y2: option_state] :
( ( ( fun_up6681822530636708645_state @ F @ X @ Y2 )
= F )
= ( ( F @ X )
= Y2 ) ) ).
% fun_upd_idem_iff
thf(fact_436_fun__upd__idem__iff,axiom,
! [F: produc9003781588162623004on_val > option8887860577033306220on_val,X: produc9003781588162623004on_val,Y2: option8887860577033306220on_val] :
( ( ( fun_up273046073882939271on_val @ F @ X @ Y2 )
= F )
= ( ( F @ X )
= Y2 ) ) ).
% fun_upd_idem_iff
thf(fact_437_fun__upd__idem__iff,axiom,
! [F: produc9003781588162623004on_val > option_val,X: produc9003781588162623004on_val,Y2: option_val] :
( ( ( fun_up8559965269643824108on_val @ F @ X @ Y2 )
= F )
= ( ( F @ X )
= Y2 ) ) ).
% fun_upd_idem_iff
thf(fact_438_fun__upd__idem__iff,axiom,
! [F: nat > option_list_char,X: nat,Y2: option_list_char] :
( ( ( fun_up4009399622604172288t_char @ F @ X @ Y2 )
= F )
= ( ( F @ X )
= Y2 ) ) ).
% fun_upd_idem_iff
thf(fact_439_fun__upd__idem__iff,axiom,
! [F: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,X: produc1457211279475724562t_char > prat,Y2: option5747939881698552298on_val] :
( ( ( fun_up1601731230164360576on_val @ F @ X @ Y2 )
= F )
= ( ( F @ X )
= Y2 ) ) ).
% fun_upd_idem_iff
thf(fact_440_map__le__antisym,axiom,
! [F: produc1457211279475724562t_char > option_val,G: produc1457211279475724562t_char > option_val] :
( ( map_le3432596473071271956ar_val @ F @ G )
=> ( ( map_le3432596473071271956ar_val @ G @ F )
=> ( F = G ) ) ) ).
% map_le_antisym
thf(fact_441_map__le__trans,axiom,
! [M1: produc1457211279475724562t_char > option_val,M2: produc1457211279475724562t_char > option_val,M3: produc1457211279475724562t_char > option_val] :
( ( map_le3432596473071271956ar_val @ M1 @ M2 )
=> ( ( map_le3432596473071271956ar_val @ M2 @ M3 )
=> ( map_le3432596473071271956ar_val @ M1 @ M3 ) ) ) ).
% map_le_trans
thf(fact_442_map__le__refl,axiom,
! [F: produc1457211279475724562t_char > option_val] : ( map_le3432596473071271956ar_val @ F @ F ) ).
% map_le_refl
thf(fact_443_map__le__map__add,axiom,
! [F: produc9003781588162623004on_val > option_val,G: produc9003781588162623004on_val > option_val] : ( map_le662008219874789630al_val @ F @ ( map_ad5466549115852757998al_val @ G @ F ) ) ).
% map_le_map_add
thf(fact_444_map__le__map__add,axiom,
! [F: produc9003781588162623004on_val > option_state,G: produc9003781588162623004on_val > option_state] : ( map_le2714403320317326333_state @ F @ ( map_ad2629041965313307917_state @ G @ F ) ) ).
% map_le_map_add
thf(fact_445_map__le__map__add,axiom,
! [F: produc1457211279475724562t_char > option_val,G: produc1457211279475724562t_char > option_val] : ( map_le3432596473071271956ar_val @ F @ ( map_ad2908576761495157028ar_val @ G @ F ) ) ).
% map_le_map_add
thf(fact_446_map__add__le__mapE,axiom,
! [F: produc9003781588162623004on_val > option_val,G: produc9003781588162623004on_val > option_val,H: produc9003781588162623004on_val > option_val] :
( ( map_le662008219874789630al_val @ ( map_ad5466549115852757998al_val @ F @ G ) @ H )
=> ( map_le662008219874789630al_val @ G @ H ) ) ).
% map_add_le_mapE
thf(fact_447_map__add__le__mapE,axiom,
! [F: produc9003781588162623004on_val > option_state,G: produc9003781588162623004on_val > option_state,H: produc9003781588162623004on_val > option_state] :
( ( map_le2714403320317326333_state @ ( map_ad2629041965313307917_state @ F @ G ) @ H )
=> ( map_le2714403320317326333_state @ G @ H ) ) ).
% map_add_le_mapE
thf(fact_448_map__add__le__mapE,axiom,
! [F: produc1457211279475724562t_char > option_val,G: produc1457211279475724562t_char > option_val,H: produc1457211279475724562t_char > option_val] :
( ( map_le3432596473071271956ar_val @ ( map_ad2908576761495157028ar_val @ F @ G ) @ H )
=> ( map_le3432596473071271956ar_val @ G @ H ) ) ).
% map_add_le_mapE
thf(fact_449_map__add__le__mapI,axiom,
! [F: produc9003781588162623004on_val > option_val,H: produc9003781588162623004on_val > option_val,G: produc9003781588162623004on_val > option_val] :
( ( map_le662008219874789630al_val @ F @ H )
=> ( ( map_le662008219874789630al_val @ G @ H )
=> ( map_le662008219874789630al_val @ ( map_ad5466549115852757998al_val @ F @ G ) @ H ) ) ) ).
% map_add_le_mapI
thf(fact_450_map__add__le__mapI,axiom,
! [F: produc9003781588162623004on_val > option_state,H: produc9003781588162623004on_val > option_state,G: produc9003781588162623004on_val > option_state] :
( ( map_le2714403320317326333_state @ F @ H )
=> ( ( map_le2714403320317326333_state @ G @ H )
=> ( map_le2714403320317326333_state @ ( map_ad2629041965313307917_state @ F @ G ) @ H ) ) ) ).
% map_add_le_mapI
thf(fact_451_map__add__le__mapI,axiom,
! [F: produc1457211279475724562t_char > option_val,H: produc1457211279475724562t_char > option_val,G: produc1457211279475724562t_char > option_val] :
( ( map_le3432596473071271956ar_val @ F @ H )
=> ( ( map_le3432596473071271956ar_val @ G @ H )
=> ( map_le3432596473071271956ar_val @ ( map_ad2908576761495157028ar_val @ F @ G ) @ H ) ) ) ).
% map_add_le_mapI
thf(fact_452_map__add__subsumed1,axiom,
! [F: produc9003781588162623004on_val > option_val,G: produc9003781588162623004on_val > option_val] :
( ( map_le662008219874789630al_val @ F @ G )
=> ( ( map_ad5466549115852757998al_val @ F @ G )
= G ) ) ).
% map_add_subsumed1
thf(fact_453_map__add__subsumed1,axiom,
! [F: produc9003781588162623004on_val > option_state,G: produc9003781588162623004on_val > option_state] :
( ( map_le2714403320317326333_state @ F @ G )
=> ( ( map_ad2629041965313307917_state @ F @ G )
= G ) ) ).
% map_add_subsumed1
thf(fact_454_map__add__subsumed1,axiom,
! [F: produc1457211279475724562t_char > option_val,G: produc1457211279475724562t_char > option_val] :
( ( map_le3432596473071271956ar_val @ F @ G )
=> ( ( map_ad2908576761495157028ar_val @ F @ G )
= G ) ) ).
% map_add_subsumed1
thf(fact_455_map__add__subsumed2,axiom,
! [F: produc9003781588162623004on_val > option_val,G: produc9003781588162623004on_val > option_val] :
( ( map_le662008219874789630al_val @ F @ G )
=> ( ( map_ad5466549115852757998al_val @ G @ F )
= G ) ) ).
% map_add_subsumed2
thf(fact_456_map__add__subsumed2,axiom,
! [F: produc9003781588162623004on_val > option_state,G: produc9003781588162623004on_val > option_state] :
( ( map_le2714403320317326333_state @ F @ G )
=> ( ( map_ad2629041965313307917_state @ G @ F )
= G ) ) ).
% map_add_subsumed2
thf(fact_457_map__add__subsumed2,axiom,
! [F: produc1457211279475724562t_char > option_val,G: produc1457211279475724562t_char > option_val] :
( ( map_le3432596473071271956ar_val @ F @ G )
=> ( ( map_ad2908576761495157028ar_val @ G @ F )
= G ) ) ).
% map_add_subsumed2
thf(fact_458_map__le__iff__map__add__commute,axiom,
! [F: produc9003781588162623004on_val > option_val,G: produc9003781588162623004on_val > option_val] :
( ( map_le662008219874789630al_val @ F @ ( map_ad5466549115852757998al_val @ F @ G ) )
= ( ( map_ad5466549115852757998al_val @ F @ G )
= ( map_ad5466549115852757998al_val @ G @ F ) ) ) ).
% map_le_iff_map_add_commute
thf(fact_459_map__le__iff__map__add__commute,axiom,
! [F: produc9003781588162623004on_val > option_state,G: produc9003781588162623004on_val > option_state] :
( ( map_le2714403320317326333_state @ F @ ( map_ad2629041965313307917_state @ F @ G ) )
= ( ( map_ad2629041965313307917_state @ F @ G )
= ( map_ad2629041965313307917_state @ G @ F ) ) ) ).
% map_le_iff_map_add_commute
thf(fact_460_map__le__iff__map__add__commute,axiom,
! [F: produc1457211279475724562t_char > option_val,G: produc1457211279475724562t_char > option_val] :
( ( map_le3432596473071271956ar_val @ F @ ( map_ad2908576761495157028ar_val @ F @ G ) )
= ( ( map_ad2908576761495157028ar_val @ F @ G )
= ( map_ad2908576761495157028ar_val @ G @ F ) ) ) ).
% map_le_iff_map_add_commute
thf(fact_461_map__le__upd,axiom,
! [F: produc1457211279475724562t_char > option_val,G: produc1457211279475724562t_char > option_val,A2: produc1457211279475724562t_char,B2: option_val] :
( ( map_le3432596473071271956ar_val @ F @ G )
=> ( map_le3432596473071271956ar_val @ ( fun_up5735975307950539954on_val @ F @ A2 @ B2 ) @ ( fun_up5735975307950539954on_val @ G @ A2 @ B2 ) ) ) ).
% map_le_upd
thf(fact_462_map__le__upd,axiom,
! [F: produc9003781588162623004on_val > option_state,G: produc9003781588162623004on_val > option_state,A2: produc9003781588162623004on_val,B2: option_state] :
( ( map_le2714403320317326333_state @ F @ G )
=> ( map_le2714403320317326333_state @ ( fun_up6681822530636708645_state @ F @ A2 @ B2 ) @ ( fun_up6681822530636708645_state @ G @ A2 @ B2 ) ) ) ).
% map_le_upd
thf(fact_463_map__le__upd,axiom,
! [F: produc9003781588162623004on_val > option8887860577033306220on_val,G: produc9003781588162623004on_val > option8887860577033306220on_val,A2: produc9003781588162623004on_val,B2: option8887860577033306220on_val] :
( ( map_le1786601613863086943on_val @ F @ G )
=> ( map_le1786601613863086943on_val @ ( fun_up273046073882939271on_val @ F @ A2 @ B2 ) @ ( fun_up273046073882939271on_val @ G @ A2 @ B2 ) ) ) ).
% map_le_upd
thf(fact_464_map__le__upd,axiom,
! [F: produc9003781588162623004on_val > option_val,G: produc9003781588162623004on_val > option_val,A2: produc9003781588162623004on_val,B2: option_val] :
( ( map_le662008219874789630al_val @ F @ G )
=> ( map_le662008219874789630al_val @ ( fun_up8559965269643824108on_val @ F @ A2 @ B2 ) @ ( fun_up8559965269643824108on_val @ G @ A2 @ B2 ) ) ) ).
% map_le_upd
thf(fact_465_map__le__upd,axiom,
! [F: nat > option_list_char,G: nat > option_list_char,A2: nat,B2: option_list_char] :
( ( map_le_nat_list_char @ F @ G )
=> ( map_le_nat_list_char @ ( fun_up4009399622604172288t_char @ F @ A2 @ B2 ) @ ( fun_up4009399622604172288t_char @ G @ A2 @ B2 ) ) ) ).
% map_le_upd
thf(fact_466_map__le__upd,axiom,
! [F: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,G: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,A2: produc1457211279475724562t_char > prat,B2: option5747939881698552298on_val] :
( ( map_le7591542393800649736on_val @ F @ G )
=> ( map_le7591542393800649736on_val @ ( fun_up1601731230164360576on_val @ F @ A2 @ B2 ) @ ( fun_up1601731230164360576on_val @ G @ A2 @ B2 ) ) ) ).
% map_le_upd
thf(fact_467_upd__None__map__le,axiom,
! [F: produc9003781588162623004on_val > option_state,X: produc9003781588162623004on_val] : ( map_le2714403320317326333_state @ ( fun_up6681822530636708645_state @ F @ X @ none_state ) @ F ) ).
% upd_None_map_le
thf(fact_468_upd__None__map__le,axiom,
! [F: produc1457211279475724562t_char > option_val,X: produc1457211279475724562t_char] : ( map_le3432596473071271956ar_val @ ( fun_up5735975307950539954on_val @ F @ X @ none_val ) @ F ) ).
% upd_None_map_le
thf(fact_469_upd__None__map__le,axiom,
! [F: produc9003781588162623004on_val > option_val,X: produc9003781588162623004on_val] : ( map_le662008219874789630al_val @ ( fun_up8559965269643824108on_val @ F @ X @ none_val ) @ F ) ).
% upd_None_map_le
thf(fact_470_upd__None__map__le,axiom,
! [F: produc9003781588162623004on_val > option8887860577033306220on_val,X: produc9003781588162623004on_val] : ( map_le1786601613863086943on_val @ ( fun_up273046073882939271on_val @ F @ X @ none_P8728355543607141243on_val ) @ F ) ).
% upd_None_map_le
thf(fact_471_upd__None__map__le,axiom,
! [F: nat > option_list_char,X: nat] : ( map_le_nat_list_char @ ( fun_up4009399622604172288t_char @ F @ X @ none_list_char ) @ F ) ).
% upd_None_map_le
thf(fact_472_upd__None__map__le,axiom,
! [F: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,X: produc1457211279475724562t_char > prat] : ( map_le7591542393800649736on_val @ ( fun_up1601731230164360576on_val @ F @ X @ none_P1334921381875262201on_val ) @ F ) ).
% upd_None_map_le
thf(fact_473_fun__upd__def,axiom,
( fun_up6681822530636708645_state
= ( ^ [F3: produc9003781588162623004on_val > option_state,A: produc9003781588162623004on_val,B: option_state,X3: produc9003781588162623004on_val] : ( if_option_state @ ( X3 = A ) @ B @ ( F3 @ X3 ) ) ) ) ).
% fun_upd_def
thf(fact_474_fun__upd__def,axiom,
( fun_up273046073882939271on_val
= ( ^ [F3: produc9003781588162623004on_val > option8887860577033306220on_val,A: produc9003781588162623004on_val,B: option8887860577033306220on_val,X3: produc9003781588162623004on_val] : ( if_opt2965748431298708774on_val @ ( X3 = A ) @ B @ ( F3 @ X3 ) ) ) ) ).
% fun_upd_def
thf(fact_475_fun__upd__def,axiom,
( fun_up8559965269643824108on_val
= ( ^ [F3: produc9003781588162623004on_val > option_val,A: produc9003781588162623004on_val,B: option_val,X3: produc9003781588162623004on_val] : ( if_option_val @ ( X3 = A ) @ B @ ( F3 @ X3 ) ) ) ) ).
% fun_upd_def
thf(fact_476_fun__upd__def,axiom,
( fun_up4009399622604172288t_char
= ( ^ [F3: nat > option_list_char,A: nat,B: option_list_char,X3: nat] : ( if_option_list_char @ ( X3 = A ) @ B @ ( F3 @ X3 ) ) ) ) ).
% fun_upd_def
thf(fact_477_fun__upd__def,axiom,
( fun_up1601731230164360576on_val
= ( ^ [F3: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,A: produc1457211279475724562t_char > prat,B: option5747939881698552298on_val,X3: produc1457211279475724562t_char > prat] : ( if_opt6509584284076893604on_val @ ( X3 = A ) @ B @ ( F3 @ X3 ) ) ) ) ).
% fun_upd_def
thf(fact_478_fun__upd__eqD,axiom,
! [F: produc9003781588162623004on_val > option_state,X: produc9003781588162623004on_val,Y2: option_state,G: produc9003781588162623004on_val > option_state,Z: option_state] :
( ( ( fun_up6681822530636708645_state @ F @ X @ Y2 )
= ( fun_up6681822530636708645_state @ G @ X @ Z ) )
=> ( Y2 = Z ) ) ).
% fun_upd_eqD
thf(fact_479_fun__upd__eqD,axiom,
! [F: produc9003781588162623004on_val > option8887860577033306220on_val,X: produc9003781588162623004on_val,Y2: option8887860577033306220on_val,G: produc9003781588162623004on_val > option8887860577033306220on_val,Z: option8887860577033306220on_val] :
( ( ( fun_up273046073882939271on_val @ F @ X @ Y2 )
= ( fun_up273046073882939271on_val @ G @ X @ Z ) )
=> ( Y2 = Z ) ) ).
% fun_upd_eqD
thf(fact_480_fun__upd__eqD,axiom,
! [F: produc9003781588162623004on_val > option_val,X: produc9003781588162623004on_val,Y2: option_val,G: produc9003781588162623004on_val > option_val,Z: option_val] :
( ( ( fun_up8559965269643824108on_val @ F @ X @ Y2 )
= ( fun_up8559965269643824108on_val @ G @ X @ Z ) )
=> ( Y2 = Z ) ) ).
% fun_upd_eqD
thf(fact_481_fun__upd__eqD,axiom,
! [F: nat > option_list_char,X: nat,Y2: option_list_char,G: nat > option_list_char,Z: option_list_char] :
( ( ( fun_up4009399622604172288t_char @ F @ X @ Y2 )
= ( fun_up4009399622604172288t_char @ G @ X @ Z ) )
=> ( Y2 = Z ) ) ).
% fun_upd_eqD
thf(fact_482_fun__upd__eqD,axiom,
! [F: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,X: produc1457211279475724562t_char > prat,Y2: option5747939881698552298on_val,G: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,Z: option5747939881698552298on_val] :
( ( ( fun_up1601731230164360576on_val @ F @ X @ Y2 )
= ( fun_up1601731230164360576on_val @ G @ X @ Z ) )
=> ( Y2 = Z ) ) ).
% fun_upd_eqD
thf(fact_483_fun__upd__idem,axiom,
! [F: produc9003781588162623004on_val > option_state,X: produc9003781588162623004on_val,Y2: option_state] :
( ( ( F @ X )
= Y2 )
=> ( ( fun_up6681822530636708645_state @ F @ X @ Y2 )
= F ) ) ).
% fun_upd_idem
thf(fact_484_fun__upd__idem,axiom,
! [F: produc9003781588162623004on_val > option8887860577033306220on_val,X: produc9003781588162623004on_val,Y2: option8887860577033306220on_val] :
( ( ( F @ X )
= Y2 )
=> ( ( fun_up273046073882939271on_val @ F @ X @ Y2 )
= F ) ) ).
% fun_upd_idem
thf(fact_485_fun__upd__idem,axiom,
! [F: produc9003781588162623004on_val > option_val,X: produc9003781588162623004on_val,Y2: option_val] :
( ( ( F @ X )
= Y2 )
=> ( ( fun_up8559965269643824108on_val @ F @ X @ Y2 )
= F ) ) ).
% fun_upd_idem
thf(fact_486_fun__upd__idem,axiom,
! [F: nat > option_list_char,X: nat,Y2: option_list_char] :
( ( ( F @ X )
= Y2 )
=> ( ( fun_up4009399622604172288t_char @ F @ X @ Y2 )
= F ) ) ).
% fun_upd_idem
thf(fact_487_fun__upd__idem,axiom,
! [F: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,X: produc1457211279475724562t_char > prat,Y2: option5747939881698552298on_val] :
( ( ( F @ X )
= Y2 )
=> ( ( fun_up1601731230164360576on_val @ F @ X @ Y2 )
= F ) ) ).
% fun_upd_idem
thf(fact_488_fun__upd__same,axiom,
! [F: produc9003781588162623004on_val > option_state,X: produc9003781588162623004on_val,Y2: option_state] :
( ( fun_up6681822530636708645_state @ F @ X @ Y2 @ X )
= Y2 ) ).
% fun_upd_same
thf(fact_489_fun__upd__same,axiom,
! [F: produc9003781588162623004on_val > option8887860577033306220on_val,X: produc9003781588162623004on_val,Y2: option8887860577033306220on_val] :
( ( fun_up273046073882939271on_val @ F @ X @ Y2 @ X )
= Y2 ) ).
% fun_upd_same
thf(fact_490_fun__upd__same,axiom,
! [F: produc9003781588162623004on_val > option_val,X: produc9003781588162623004on_val,Y2: option_val] :
( ( fun_up8559965269643824108on_val @ F @ X @ Y2 @ X )
= Y2 ) ).
% fun_upd_same
thf(fact_491_fun__upd__same,axiom,
! [F: nat > option_list_char,X: nat,Y2: option_list_char] :
( ( fun_up4009399622604172288t_char @ F @ X @ Y2 @ X )
= Y2 ) ).
% fun_upd_same
thf(fact_492_fun__upd__same,axiom,
! [F: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,X: produc1457211279475724562t_char > prat,Y2: option5747939881698552298on_val] :
( ( fun_up1601731230164360576on_val @ F @ X @ Y2 @ X )
= Y2 ) ).
% fun_upd_same
thf(fact_493_fun__upd__other,axiom,
! [Z: produc9003781588162623004on_val,X: produc9003781588162623004on_val,F: produc9003781588162623004on_val > option_state,Y2: option_state] :
( ( Z != X )
=> ( ( fun_up6681822530636708645_state @ F @ X @ Y2 @ Z )
= ( F @ Z ) ) ) ).
% fun_upd_other
thf(fact_494_fun__upd__other,axiom,
! [Z: produc9003781588162623004on_val,X: produc9003781588162623004on_val,F: produc9003781588162623004on_val > option8887860577033306220on_val,Y2: option8887860577033306220on_val] :
( ( Z != X )
=> ( ( fun_up273046073882939271on_val @ F @ X @ Y2 @ Z )
= ( F @ Z ) ) ) ).
% fun_upd_other
thf(fact_495_fun__upd__other,axiom,
! [Z: produc9003781588162623004on_val,X: produc9003781588162623004on_val,F: produc9003781588162623004on_val > option_val,Y2: option_val] :
( ( Z != X )
=> ( ( fun_up8559965269643824108on_val @ F @ X @ Y2 @ Z )
= ( F @ Z ) ) ) ).
% fun_upd_other
thf(fact_496_fun__upd__other,axiom,
! [Z: nat,X: nat,F: nat > option_list_char,Y2: option_list_char] :
( ( Z != X )
=> ( ( fun_up4009399622604172288t_char @ F @ X @ Y2 @ Z )
= ( F @ Z ) ) ) ).
% fun_upd_other
thf(fact_497_fun__upd__other,axiom,
! [Z: produc1457211279475724562t_char > prat,X: produc1457211279475724562t_char > prat,F: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,Y2: option5747939881698552298on_val] :
( ( Z != X )
=> ( ( fun_up1601731230164360576on_val @ F @ X @ Y2 @ Z )
= ( F @ Z ) ) ) ).
% fun_upd_other
thf(fact_498_fun__upd__twist,axiom,
! [A2: produc9003781588162623004on_val,C: produc9003781588162623004on_val,M: produc9003781588162623004on_val > option_state,B2: option_state,D: option_state] :
( ( A2 != C )
=> ( ( fun_up6681822530636708645_state @ ( fun_up6681822530636708645_state @ M @ A2 @ B2 ) @ C @ D )
= ( fun_up6681822530636708645_state @ ( fun_up6681822530636708645_state @ M @ C @ D ) @ A2 @ B2 ) ) ) ).
% fun_upd_twist
thf(fact_499_fun__upd__twist,axiom,
! [A2: produc9003781588162623004on_val,C: produc9003781588162623004on_val,M: produc9003781588162623004on_val > option8887860577033306220on_val,B2: option8887860577033306220on_val,D: option8887860577033306220on_val] :
( ( A2 != C )
=> ( ( fun_up273046073882939271on_val @ ( fun_up273046073882939271on_val @ M @ A2 @ B2 ) @ C @ D )
= ( fun_up273046073882939271on_val @ ( fun_up273046073882939271on_val @ M @ C @ D ) @ A2 @ B2 ) ) ) ).
% fun_upd_twist
thf(fact_500_fun__upd__twist,axiom,
! [A2: produc9003781588162623004on_val,C: produc9003781588162623004on_val,M: produc9003781588162623004on_val > option_val,B2: option_val,D: option_val] :
( ( A2 != C )
=> ( ( fun_up8559965269643824108on_val @ ( fun_up8559965269643824108on_val @ M @ A2 @ B2 ) @ C @ D )
= ( fun_up8559965269643824108on_val @ ( fun_up8559965269643824108on_val @ M @ C @ D ) @ A2 @ B2 ) ) ) ).
% fun_upd_twist
thf(fact_501_fun__upd__twist,axiom,
! [A2: nat,C: nat,M: nat > option_list_char,B2: option_list_char,D: option_list_char] :
( ( A2 != C )
=> ( ( fun_up4009399622604172288t_char @ ( fun_up4009399622604172288t_char @ M @ A2 @ B2 ) @ C @ D )
= ( fun_up4009399622604172288t_char @ ( fun_up4009399622604172288t_char @ M @ C @ D ) @ A2 @ B2 ) ) ) ).
% fun_upd_twist
thf(fact_502_fun__upd__twist,axiom,
! [A2: produc1457211279475724562t_char > prat,C: produc1457211279475724562t_char > prat,M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,B2: option5747939881698552298on_val,D: option5747939881698552298on_val] :
( ( A2 != C )
=> ( ( fun_up1601731230164360576on_val @ ( fun_up1601731230164360576on_val @ M @ A2 @ B2 ) @ C @ D )
= ( fun_up1601731230164360576on_val @ ( fun_up1601731230164360576on_val @ M @ C @ D ) @ A2 @ B2 ) ) ) ).
% fun_upd_twist
thf(fact_503_uni__mask_Osimps,axiom,
( uni_ma8757825773229499086r_prat
= ( fun_up9120501182914450918t_prat @ empty_6616431780912394577r_prat ) ) ).
% uni_mask.simps
thf(fact_504_uni__mask_Osimps,axiom,
( uni_mask_state
= ( fun_upd_state_prat @ empty_mask_state ) ) ).
% uni_mask.simps
thf(fact_505_uni__mask_Osimps,axiom,
( uni_ma3016027189315475553on_val
= ( fun_up322103695952382443l_prat @ empty_6102255041883331742on_val ) ) ).
% uni_mask.simps
thf(fact_506_uni__mask_Osimps,axiom,
( uni_ma2802115457281451284on_val
= ( fun_up4040928134582614060l_prat @ empty_4129289814623480215on_val ) ) ).
% uni_mask.simps
thf(fact_507_uni__mask_Osimps,axiom,
( uni_ma6578582744724537101t_char
= ( fun_up829850848796697765r_prat @ empty_3446695950879338768t_char ) ) ).
% uni_mask.simps
thf(fact_508_uni__mask_Oelims,axiom,
! [X: produc1457211279475724562t_char > prat,Xa: prat,Y2: ( produc1457211279475724562t_char > prat ) > prat] :
( ( ( uni_ma8757825773229499086r_prat @ X @ Xa )
= Y2 )
=> ( Y2
= ( fun_up9120501182914450918t_prat @ empty_6616431780912394577r_prat @ X @ Xa ) ) ) ).
% uni_mask.elims
thf(fact_509_uni__mask_Oelims,axiom,
! [X: state,Xa: prat,Y2: state > prat] :
( ( ( uni_mask_state @ X @ Xa )
= Y2 )
=> ( Y2
= ( fun_upd_state_prat @ empty_mask_state @ X @ Xa ) ) ) ).
% uni_mask.elims
thf(fact_510_uni__mask_Oelims,axiom,
! [X: produc9003781588162623004on_val,Xa: prat,Y2: produc9003781588162623004on_val > prat] :
( ( ( uni_ma3016027189315475553on_val @ X @ Xa )
= Y2 )
=> ( Y2
= ( fun_up322103695952382443l_prat @ empty_6102255041883331742on_val @ X @ Xa ) ) ) ).
% uni_mask.elims
thf(fact_511_uni__mask_Oelims,axiom,
! [X: produc1317171644805857433on_val,Xa: prat,Y2: produc1317171644805857433on_val > prat] :
( ( ( uni_ma2802115457281451284on_val @ X @ Xa )
= Y2 )
=> ( Y2
= ( fun_up4040928134582614060l_prat @ empty_4129289814623480215on_val @ X @ Xa ) ) ) ).
% uni_mask.elims
thf(fact_512_uni__mask_Oelims,axiom,
! [X: produc1457211279475724562t_char,Xa: prat,Y2: produc1457211279475724562t_char > prat] :
( ( ( uni_ma6578582744724537101t_char @ X @ Xa )
= Y2 )
=> ( Y2
= ( fun_up829850848796697765r_prat @ empty_3446695950879338768t_char @ X @ Xa ) ) ) ).
% uni_mask.elims
thf(fact_513_map__add__upd__left,axiom,
! [M: produc1457211279475724562t_char,E2: produc1457211279475724562t_char > option_val,E1: produc1457211279475724562t_char > option_val,U1: val] :
( ~ ( member484235747325421115t_char @ M @ ( dom_Pr8989479155164304065ar_val @ E2 ) )
=> ( ( map_ad2908576761495157028ar_val @ ( fun_up5735975307950539954on_val @ E1 @ M @ ( some_val @ U1 ) ) @ E2 )
= ( fun_up5735975307950539954on_val @ ( map_ad2908576761495157028ar_val @ E1 @ E2 ) @ M @ ( some_val @ U1 ) ) ) ) ).
% map_add_upd_left
thf(fact_514_map__add__upd__left,axiom,
! [M: produc9003781588162623004on_val,E2: produc9003781588162623004on_val > option_state,E1: produc9003781588162623004on_val > option_state,U1: state] :
( ~ ( member2879030624002546611on_val @ M @ ( dom_Pr4448331044451638570_state @ E2 ) )
=> ( ( map_ad2629041965313307917_state @ ( fun_up6681822530636708645_state @ E1 @ M @ ( some_state @ U1 ) ) @ E2 )
= ( fun_up6681822530636708645_state @ ( map_ad2629041965313307917_state @ E1 @ E2 ) @ M @ ( some_state @ U1 ) ) ) ) ).
% map_add_upd_left
thf(fact_515_map__add__upd__left,axiom,
! [M: produc9003781588162623004on_val,E2: produc9003781588162623004on_val > option_val,E1: produc9003781588162623004on_val > option_val,U1: val] :
( ~ ( member2879030624002546611on_val @ M @ ( dom_Pr7381289304162206737al_val @ E2 ) )
=> ( ( map_ad5466549115852757998al_val @ ( fun_up8559965269643824108on_val @ E1 @ M @ ( some_val @ U1 ) ) @ E2 )
= ( fun_up8559965269643824108on_val @ ( map_ad5466549115852757998al_val @ E1 @ E2 ) @ M @ ( some_val @ U1 ) ) ) ) ).
% map_add_upd_left
thf(fact_516_map__add__upd__left,axiom,
! [M: val,E2: val > option_state,E1: val > option_state,U1: state] :
( ~ ( member_val @ M @ ( dom_val_state @ E2 ) )
=> ( ( map_add_val_state @ ( fun_up7100790768922270414_state @ E1 @ M @ ( some_state @ U1 ) ) @ E2 )
= ( fun_up7100790768922270414_state @ ( map_add_val_state @ E1 @ E2 ) @ M @ ( some_state @ U1 ) ) ) ) ).
% map_add_upd_left
thf(fact_517_map__add__upd__left,axiom,
! [M: nat,E2: nat > option_state,E1: nat > option_state,U1: state] :
( ~ ( member_nat @ M @ ( dom_nat_state @ E2 ) )
=> ( ( map_add_nat_state @ ( fun_up5089051266557015257_state @ E1 @ M @ ( some_state @ U1 ) ) @ E2 )
= ( fun_up5089051266557015257_state @ ( map_add_nat_state @ E1 @ E2 ) @ M @ ( some_state @ U1 ) ) ) ) ).
% map_add_upd_left
thf(fact_518_map__add__upd__left,axiom,
! [M: val,E2: val > option_val,E1: val > option_val,U1: val] :
( ~ ( member_val @ M @ ( dom_val_val @ E2 ) )
=> ( ( map_add_val_val @ ( fun_up735531404784515971on_val @ E1 @ M @ ( some_val @ U1 ) ) @ E2 )
= ( fun_up735531404784515971on_val @ ( map_add_val_val @ E1 @ E2 ) @ M @ ( some_val @ U1 ) ) ) ) ).
% map_add_upd_left
thf(fact_519_map__add__upd__left,axiom,
! [M: nat,E2: nat > option_val,E1: nat > option_val,U1: val] :
( ~ ( member_nat @ M @ ( dom_nat_val @ E2 ) )
=> ( ( map_add_nat_val @ ( fun_up810121132392276792on_val @ E1 @ M @ ( some_val @ U1 ) ) @ E2 )
= ( fun_up810121132392276792on_val @ ( map_add_nat_val @ E1 @ E2 ) @ M @ ( some_val @ U1 ) ) ) ) ).
% map_add_upd_left
thf(fact_520_map__add__upd__left,axiom,
! [M: option_val,E2: option_val > option_state,E1: option_val > option_state,U1: state] :
( ~ ( member_option_val @ M @ ( dom_option_val_state @ E2 ) )
=> ( ( map_ad1596397661948740748_state @ ( fun_up2039547756584784788_state @ E1 @ M @ ( some_state @ U1 ) ) @ E2 )
= ( fun_up2039547756584784788_state @ ( map_ad1596397661948740748_state @ E1 @ E2 ) @ M @ ( some_state @ U1 ) ) ) ) ).
% map_add_upd_left
thf(fact_521_map__add__upd__left,axiom,
! [M: option_val,E2: option_val > option_val,E1: option_val > option_val,U1: val] :
( ~ ( member_option_val @ M @ ( dom_option_val_val @ E2 ) )
=> ( ( map_ad2791809220819668783al_val @ ( fun_up8761876891205509693on_val @ E1 @ M @ ( some_val @ U1 ) ) @ E2 )
= ( fun_up8761876891205509693on_val @ ( map_ad2791809220819668783al_val @ E1 @ E2 ) @ M @ ( some_val @ U1 ) ) ) ) ).
% map_add_upd_left
thf(fact_522_map__add__upd__left,axiom,
! [M: val,E2: val > option_list_char,E1: val > option_list_char,U1: list_char] :
( ~ ( member_val @ M @ ( dom_val_list_char @ E2 ) )
=> ( ( map_ad6513282191902725485t_char @ ( fun_up7032939564753911157t_char @ E1 @ M @ ( some_list_char @ U1 ) ) @ E2 )
= ( fun_up7032939564753911157t_char @ ( map_ad6513282191902725485t_char @ E1 @ E2 ) @ M @ ( some_list_char @ U1 ) ) ) ) ).
% map_add_upd_left
thf(fact_523_mult__greater,axiom,
! [A2: produc1457211279475724562t_char > prat,B2: produc1457211279475724562t_char > prat,P4: prat] :
( ( greate7680731506090375811t_char @ A2 @ B2 )
=> ( greate7680731506090375811t_char @ ( multiply_mask @ P4 @ A2 ) @ ( multiply_mask @ P4 @ B2 ) ) ) ).
% mult_greater
thf(fact_524_set__empty__eq,axiom,
! [Xo: option_list_char] :
( ( ( set_option_list_char2 @ Xo )
= bot_bo8503570744482963627t_char )
= ( Xo = none_list_char ) ) ).
% set_empty_eq
thf(fact_525_set__empty__eq,axiom,
! [Xo: option5747939881698552298on_val] :
( ( ( set_op1770538635792728844on_val @ Xo )
= bot_bo5671083314777306084on_val )
= ( Xo = none_P1334921381875262201on_val ) ) ).
% set_empty_eq
thf(fact_526_set__empty__eq,axiom,
! [Xo: option_option_state] :
( ( ( set_op5162993263733338108_state @ Xo )
= bot_bo710180891245420500_state )
= ( Xo = none_option_state ) ) ).
% set_empty_eq
thf(fact_527_set__empty__eq,axiom,
! [Xo: option_option_val] :
( ( ( set_op911010586042427349on_val @ Xo )
= bot_bo5906790151302476563on_val )
= ( Xo = none_option_val ) ) ).
% set_empty_eq
thf(fact_528_set__empty__eq,axiom,
! [Xo: option8887860577033306220on_val] :
( ( ( set_op9004752959087400718on_val @ Xo )
= bot_bo6722054719108133734on_val )
= ( Xo = none_P8728355543607141243on_val ) ) ).
% set_empty_eq
thf(fact_529_set__empty__eq,axiom,
! [Xo: option2736423997234022232t_char] :
( ( ( set_op7440730737645789856t_char @ Xo )
= bot_bo1414094081888755934t_char )
= ( Xo = none_P5486107665612286067t_char ) ) ).
% set_empty_eq
thf(fact_530_set__empty__eq,axiom,
! [Xo: option_state] :
( ( ( set_option_state2 @ Xo )
= bot_bot_set_state )
= ( Xo = none_state ) ) ).
% set_empty_eq
thf(fact_531_set__empty__eq,axiom,
! [Xo: option_val] :
( ( ( set_option_val2 @ Xo )
= bot_bot_set_val )
= ( Xo = none_val ) ) ).
% set_empty_eq
thf(fact_532_update__trans,axiom,
! [Pi: produc1457211279475724562t_char > prat,Pi2: produc1457211279475724562t_char > prat,Pi5: produc1457211279475724562t_char > prat,Dm: produc1457211279475724562t_char > $o] :
( ( greate7680731506090375811t_char @ Pi @ Pi2 )
=> ( ( greate7680731506090375811t_char @ Pi2 @ Pi5 )
=> ( ( update5099441844846592839t_char @ ( update5099441844846592839t_char @ Dm @ Pi @ Pi2 ) @ Pi2 @ Pi5 )
= ( update5099441844846592839t_char @ Dm @ Pi @ Pi5 ) ) ) ) ).
% update_trans
thf(fact_533_fun__upd__None__if__notin__dom,axiom,
! [K: produc9003781588162623004on_val,M: produc9003781588162623004on_val > option_state] :
( ~ ( member2879030624002546611on_val @ K @ ( dom_Pr4448331044451638570_state @ M ) )
=> ( ( fun_up6681822530636708645_state @ M @ K @ none_state )
= M ) ) ).
% fun_upd_None_if_notin_dom
thf(fact_534_fun__upd__None__if__notin__dom,axiom,
! [K: produc9003781588162623004on_val,M: produc9003781588162623004on_val > option_val] :
( ~ ( member2879030624002546611on_val @ K @ ( dom_Pr7381289304162206737al_val @ M ) )
=> ( ( fun_up8559965269643824108on_val @ M @ K @ none_val )
= M ) ) ).
% fun_upd_None_if_notin_dom
thf(fact_535_fun__upd__None__if__notin__dom,axiom,
! [K: val,M: val > option_state] :
( ~ ( member_val @ K @ ( dom_val_state @ M ) )
=> ( ( fun_up7100790768922270414_state @ M @ K @ none_state )
= M ) ) ).
% fun_upd_None_if_notin_dom
thf(fact_536_fun__upd__None__if__notin__dom,axiom,
! [K: nat,M: nat > option_state] :
( ~ ( member_nat @ K @ ( dom_nat_state @ M ) )
=> ( ( fun_up5089051266557015257_state @ M @ K @ none_state )
= M ) ) ).
% fun_upd_None_if_notin_dom
thf(fact_537_fun__upd__None__if__notin__dom,axiom,
! [K: val,M: val > option_val] :
( ~ ( member_val @ K @ ( dom_val_val @ M ) )
=> ( ( fun_up735531404784515971on_val @ M @ K @ none_val )
= M ) ) ).
% fun_upd_None_if_notin_dom
thf(fact_538_fun__upd__None__if__notin__dom,axiom,
! [K: nat,M: nat > option_val] :
( ~ ( member_nat @ K @ ( dom_nat_val @ M ) )
=> ( ( fun_up810121132392276792on_val @ M @ K @ none_val )
= M ) ) ).
% fun_upd_None_if_notin_dom
thf(fact_539_fun__upd__None__if__notin__dom,axiom,
! [K: option_val,M: option_val > option_state] :
( ~ ( member_option_val @ K @ ( dom_option_val_state @ M ) )
=> ( ( fun_up2039547756584784788_state @ M @ K @ none_state )
= M ) ) ).
% fun_upd_None_if_notin_dom
thf(fact_540_fun__upd__None__if__notin__dom,axiom,
! [K: option_val,M: option_val > option_val] :
( ~ ( member_option_val @ K @ ( dom_option_val_val @ M ) )
=> ( ( fun_up8761876891205509693on_val @ M @ K @ none_val )
= M ) ) ).
% fun_upd_None_if_notin_dom
thf(fact_541_fun__upd__None__if__notin__dom,axiom,
! [K: val,M: val > option_list_char] :
( ~ ( member_val @ K @ ( dom_val_list_char @ M ) )
=> ( ( fun_up7032939564753911157t_char @ M @ K @ none_list_char )
= M ) ) ).
% fun_upd_None_if_notin_dom
thf(fact_542_fun__upd__None__if__notin__dom,axiom,
! [K: nat,M: nat > option_list_char] :
( ~ ( member_nat @ K @ ( dom_nat_list_char @ M ) )
=> ( ( fun_up4009399622604172288t_char @ M @ K @ none_list_char )
= M ) ) ).
% fun_upd_None_if_notin_dom
thf(fact_543_image__map__upd,axiom,
! [X: produc9003781588162623004on_val,A5: set_Pr7649655576376376530on_val,M: produc9003781588162623004on_val > option_state,Y2: state] :
( ~ ( member2879030624002546611on_val @ X @ A5 )
=> ( ( image_2102623794538073773_state @ ( fun_up6681822530636708645_state @ M @ X @ ( some_state @ Y2 ) ) @ A5 )
= ( image_2102623794538073773_state @ M @ A5 ) ) ) ).
% image_map_upd
thf(fact_544_image__map__upd,axiom,
! [X: produc9003781588162623004on_val,A5: set_Pr7649655576376376530on_val,M: produc9003781588162623004on_val > option_val,Y2: val] :
( ~ ( member2879030624002546611on_val @ X @ A5 )
=> ( ( image_453284115904594532on_val @ ( fun_up8559965269643824108on_val @ M @ X @ ( some_val @ Y2 ) ) @ A5 )
= ( image_453284115904594532on_val @ M @ A5 ) ) ) ).
% image_map_upd
thf(fact_545_image__map__upd,axiom,
! [X: val,A5: set_val,M: val > option_state,Y2: state] :
( ~ ( member_val @ X @ A5 )
=> ( ( image_8370355904157991238_state @ ( fun_up7100790768922270414_state @ M @ X @ ( some_state @ Y2 ) ) @ A5 )
= ( image_8370355904157991238_state @ M @ A5 ) ) ) ).
% image_map_upd
thf(fact_546_image__map__upd,axiom,
! [X: nat,A5: set_nat,M: nat > option_state,Y2: state] :
( ~ ( member_nat @ X @ A5 )
=> ( ( image_8240249968597053537_state @ ( fun_up5089051266557015257_state @ M @ X @ ( some_state @ Y2 ) ) @ A5 )
= ( image_8240249968597053537_state @ M @ A5 ) ) ) ).
% image_map_upd
thf(fact_547_image__map__upd,axiom,
! [X: val,A5: set_val,M: val > option_val,Y2: val] :
( ~ ( member_val @ X @ A5 )
=> ( ( image_val_option_val @ ( fun_up735531404784515971on_val @ M @ X @ ( some_val @ Y2 ) ) @ A5 )
= ( image_val_option_val @ M @ A5 ) ) ) ).
% image_map_upd
thf(fact_548_image__map__upd,axiom,
! [X: nat,A5: set_nat,M: nat > option_val,Y2: val] :
( ~ ( member_nat @ X @ A5 )
=> ( ( image_nat_option_val @ ( fun_up810121132392276792on_val @ M @ X @ ( some_val @ Y2 ) ) @ A5 )
= ( image_nat_option_val @ M @ A5 ) ) ) ).
% image_map_upd
thf(fact_549_image__map__upd,axiom,
! [X: option_val,A5: set_option_val,M: option_val > option_state,Y2: state] :
( ~ ( member_option_val @ X @ A5 )
=> ( ( image_2662813144889517580_state @ ( fun_up2039547756584784788_state @ M @ X @ ( some_state @ Y2 ) ) @ A5 )
= ( image_2662813144889517580_state @ M @ A5 ) ) ) ).
% image_map_upd
thf(fact_550_image__map__upd,axiom,
! [X: option_val,A5: set_option_val,M: option_val > option_val,Y2: val] :
( ~ ( member_option_val @ X @ A5 )
=> ( ( image_5994708315261978053on_val @ ( fun_up8761876891205509693on_val @ M @ X @ ( some_val @ Y2 ) ) @ A5 )
= ( image_5994708315261978053on_val @ M @ A5 ) ) ) ).
% image_map_upd
thf(fact_551_image__map__upd,axiom,
! [X: val,A5: set_val,M: val > option_list_char,Y2: list_char] :
( ~ ( member_val @ X @ A5 )
=> ( ( image_7372873807906076653t_char @ ( fun_up7032939564753911157t_char @ M @ X @ ( some_list_char @ Y2 ) ) @ A5 )
= ( image_7372873807906076653t_char @ M @ A5 ) ) ) ).
% image_map_upd
thf(fact_552_image__map__upd,axiom,
! [X: nat,A5: set_nat,M: nat > option_list_char,Y2: list_char] :
( ~ ( member_nat @ X @ A5 )
=> ( ( image_570131288342041480t_char @ ( fun_up4009399622604172288t_char @ M @ X @ ( some_list_char @ Y2 ) ) @ A5 )
= ( image_570131288342041480t_char @ M @ A5 ) ) ) ).
% image_map_upd
thf(fact_553_option_Osimps_I14_J,axiom,
( ( set_option_list_char2 @ none_list_char )
= bot_bo8503570744482963627t_char ) ).
% option.simps(14)
thf(fact_554_option_Osimps_I14_J,axiom,
( ( set_op1770538635792728844on_val @ none_P1334921381875262201on_val )
= bot_bo5671083314777306084on_val ) ).
% option.simps(14)
thf(fact_555_option_Osimps_I14_J,axiom,
( ( set_op5162993263733338108_state @ none_option_state )
= bot_bo710180891245420500_state ) ).
% option.simps(14)
thf(fact_556_option_Osimps_I14_J,axiom,
( ( set_op911010586042427349on_val @ none_option_val )
= bot_bo5906790151302476563on_val ) ).
% option.simps(14)
thf(fact_557_option_Osimps_I14_J,axiom,
( ( set_op9004752959087400718on_val @ none_P8728355543607141243on_val )
= bot_bo6722054719108133734on_val ) ).
% option.simps(14)
thf(fact_558_option_Osimps_I14_J,axiom,
( ( set_op7440730737645789856t_char @ none_P5486107665612286067t_char )
= bot_bo1414094081888755934t_char ) ).
% option.simps(14)
thf(fact_559_option_Osimps_I14_J,axiom,
( ( set_option_state2 @ none_state )
= bot_bot_set_state ) ).
% option.simps(14)
thf(fact_560_option_Osimps_I14_J,axiom,
( ( set_option_val2 @ none_val )
= bot_bot_set_val ) ).
% option.simps(14)
thf(fact_561_dom__eq__empty__conv,axiom,
! [F: val > option_state] :
( ( ( dom_val_state @ F )
= bot_bot_set_val )
= ( F
= ( ^ [X3: val] : none_state ) ) ) ).
% dom_eq_empty_conv
thf(fact_562_dom__eq__empty__conv,axiom,
! [F: val > option_val] :
( ( ( dom_val_val @ F )
= bot_bot_set_val )
= ( F
= ( ^ [X3: val] : none_val ) ) ) ).
% dom_eq_empty_conv
thf(fact_563_dom__eq__empty__conv,axiom,
! [F: nat > option_list_char] :
( ( ( dom_nat_list_char @ F )
= bot_bot_set_nat )
= ( F
= ( ^ [X3: nat] : none_list_char ) ) ) ).
% dom_eq_empty_conv
thf(fact_564_dom__eq__empty__conv,axiom,
! [F: option_state > option_state] :
( ( ( dom_op8569336450220619928_state @ F )
= bot_bo710180891245420500_state )
= ( F
= ( ^ [X3: option_state] : none_state ) ) ) ).
% dom_eq_empty_conv
thf(fact_565_dom__eq__empty__conv,axiom,
! [F: option_state > option_val] :
( ( ( dom_option_state_val @ F )
= bot_bo710180891245420500_state )
= ( F
= ( ^ [X3: option_state] : none_val ) ) ) ).
% dom_eq_empty_conv
thf(fact_566_dom__eq__empty__conv,axiom,
! [F: option_val > option_state] :
( ( ( dom_option_val_state @ F )
= bot_bo5906790151302476563on_val )
= ( F
= ( ^ [X3: option_val] : none_state ) ) ) ).
% dom_eq_empty_conv
thf(fact_567_dom__eq__empty__conv,axiom,
! [F: option_val > option_val] :
( ( ( dom_option_val_val @ F )
= bot_bo5906790151302476563on_val )
= ( F
= ( ^ [X3: option_val] : none_val ) ) ) ).
% dom_eq_empty_conv
thf(fact_568_dom__eq__empty__conv,axiom,
! [F: val > option_list_char] :
( ( ( dom_val_list_char @ F )
= bot_bot_set_val )
= ( F
= ( ^ [X3: val] : none_list_char ) ) ) ).
% dom_eq_empty_conv
thf(fact_569_dom__eq__empty__conv,axiom,
! [F: option_state > option_list_char] :
( ( ( dom_op2927896937727732287t_char @ F )
= bot_bo710180891245420500_state )
= ( F
= ( ^ [X3: option_state] : none_list_char ) ) ) ).
% dom_eq_empty_conv
thf(fact_570_dom__eq__empty__conv,axiom,
! [F: option_val > option_list_char] :
( ( ( dom_op1123738440007651926t_char @ F )
= bot_bo5906790151302476563on_val )
= ( F
= ( ^ [X3: option_val] : none_list_char ) ) ) ).
% dom_eq_empty_conv
thf(fact_571_update__dm__same,axiom,
! [Dm: produc1457211279475724562t_char > $o,Pi: produc1457211279475724562t_char > prat] :
( ( update5099441844846592839t_char @ Dm @ Pi @ Pi )
= Dm ) ).
% update_dm_same
thf(fact_572_domI,axiom,
! [M: produc9003781588162623004on_val > option_state,A2: produc9003781588162623004on_val,B2: state] :
( ( ( M @ A2 )
= ( some_state @ B2 ) )
=> ( member2879030624002546611on_val @ A2 @ ( dom_Pr4448331044451638570_state @ M ) ) ) ).
% domI
thf(fact_573_domI,axiom,
! [M: produc9003781588162623004on_val > option_val,A2: produc9003781588162623004on_val,B2: val] :
( ( ( M @ A2 )
= ( some_val @ B2 ) )
=> ( member2879030624002546611on_val @ A2 @ ( dom_Pr7381289304162206737al_val @ M ) ) ) ).
% domI
thf(fact_574_domI,axiom,
! [M: val > option_state,A2: val,B2: state] :
( ( ( M @ A2 )
= ( some_state @ B2 ) )
=> ( member_val @ A2 @ ( dom_val_state @ M ) ) ) ).
% domI
thf(fact_575_domI,axiom,
! [M: nat > option_state,A2: nat,B2: state] :
( ( ( M @ A2 )
= ( some_state @ B2 ) )
=> ( member_nat @ A2 @ ( dom_nat_state @ M ) ) ) ).
% domI
thf(fact_576_domI,axiom,
! [M: val > option_val,A2: val,B2: val] :
( ( ( M @ A2 )
= ( some_val @ B2 ) )
=> ( member_val @ A2 @ ( dom_val_val @ M ) ) ) ).
% domI
thf(fact_577_domI,axiom,
! [M: nat > option_val,A2: nat,B2: val] :
( ( ( M @ A2 )
= ( some_val @ B2 ) )
=> ( member_nat @ A2 @ ( dom_nat_val @ M ) ) ) ).
% domI
thf(fact_578_domI,axiom,
! [M: option_val > option_state,A2: option_val,B2: state] :
( ( ( M @ A2 )
= ( some_state @ B2 ) )
=> ( member_option_val @ A2 @ ( dom_option_val_state @ M ) ) ) ).
% domI
thf(fact_579_domI,axiom,
! [M: option_val > option_val,A2: option_val,B2: val] :
( ( ( M @ A2 )
= ( some_val @ B2 ) )
=> ( member_option_val @ A2 @ ( dom_option_val_val @ M ) ) ) ).
% domI
thf(fact_580_domI,axiom,
! [M: val > option_list_char,A2: val,B2: list_char] :
( ( ( M @ A2 )
= ( some_list_char @ B2 ) )
=> ( member_val @ A2 @ ( dom_val_list_char @ M ) ) ) ).
% domI
thf(fact_581_domI,axiom,
! [M: nat > option_list_char,A2: nat,B2: list_char] :
( ( ( M @ A2 )
= ( some_list_char @ B2 ) )
=> ( member_nat @ A2 @ ( dom_nat_list_char @ M ) ) ) ).
% domI
thf(fact_582_domD,axiom,
! [A2: produc9003781588162623004on_val,M: produc9003781588162623004on_val > option_state] :
( ( member2879030624002546611on_val @ A2 @ ( dom_Pr4448331044451638570_state @ M ) )
=> ? [B4: state] :
( ( M @ A2 )
= ( some_state @ B4 ) ) ) ).
% domD
thf(fact_583_domD,axiom,
! [A2: produc9003781588162623004on_val,M: produc9003781588162623004on_val > option_val] :
( ( member2879030624002546611on_val @ A2 @ ( dom_Pr7381289304162206737al_val @ M ) )
=> ? [B4: val] :
( ( M @ A2 )
= ( some_val @ B4 ) ) ) ).
% domD
thf(fact_584_domD,axiom,
! [A2: val,M: val > option_state] :
( ( member_val @ A2 @ ( dom_val_state @ M ) )
=> ? [B4: state] :
( ( M @ A2 )
= ( some_state @ B4 ) ) ) ).
% domD
thf(fact_585_domD,axiom,
! [A2: nat,M: nat > option_state] :
( ( member_nat @ A2 @ ( dom_nat_state @ M ) )
=> ? [B4: state] :
( ( M @ A2 )
= ( some_state @ B4 ) ) ) ).
% domD
thf(fact_586_domD,axiom,
! [A2: val,M: val > option_val] :
( ( member_val @ A2 @ ( dom_val_val @ M ) )
=> ? [B4: val] :
( ( M @ A2 )
= ( some_val @ B4 ) ) ) ).
% domD
thf(fact_587_domD,axiom,
! [A2: nat,M: nat > option_val] :
( ( member_nat @ A2 @ ( dom_nat_val @ M ) )
=> ? [B4: val] :
( ( M @ A2 )
= ( some_val @ B4 ) ) ) ).
% domD
thf(fact_588_domD,axiom,
! [A2: option_val,M: option_val > option_state] :
( ( member_option_val @ A2 @ ( dom_option_val_state @ M ) )
=> ? [B4: state] :
( ( M @ A2 )
= ( some_state @ B4 ) ) ) ).
% domD
thf(fact_589_domD,axiom,
! [A2: option_val,M: option_val > option_val] :
( ( member_option_val @ A2 @ ( dom_option_val_val @ M ) )
=> ? [B4: val] :
( ( M @ A2 )
= ( some_val @ B4 ) ) ) ).
% domD
thf(fact_590_domD,axiom,
! [A2: val,M: val > option_list_char] :
( ( member_val @ A2 @ ( dom_val_list_char @ M ) )
=> ? [B4: list_char] :
( ( M @ A2 )
= ( some_list_char @ B4 ) ) ) ).
% domD
thf(fact_591_domD,axiom,
! [A2: nat,M: nat > option_list_char] :
( ( member_nat @ A2 @ ( dom_nat_list_char @ M ) )
=> ? [B4: list_char] :
( ( M @ A2 )
= ( some_list_char @ B4 ) ) ) ).
% domD
thf(fact_592_domIff,axiom,
! [A2: produc9003781588162623004on_val,M: produc9003781588162623004on_val > option_state] :
( ( member2879030624002546611on_val @ A2 @ ( dom_Pr4448331044451638570_state @ M ) )
= ( ( M @ A2 )
!= none_state ) ) ).
% domIff
thf(fact_593_domIff,axiom,
! [A2: produc9003781588162623004on_val,M: produc9003781588162623004on_val > option_val] :
( ( member2879030624002546611on_val @ A2 @ ( dom_Pr7381289304162206737al_val @ M ) )
= ( ( M @ A2 )
!= none_val ) ) ).
% domIff
thf(fact_594_domIff,axiom,
! [A2: val,M: val > option_state] :
( ( member_val @ A2 @ ( dom_val_state @ M ) )
= ( ( M @ A2 )
!= none_state ) ) ).
% domIff
thf(fact_595_domIff,axiom,
! [A2: nat,M: nat > option_state] :
( ( member_nat @ A2 @ ( dom_nat_state @ M ) )
= ( ( M @ A2 )
!= none_state ) ) ).
% domIff
thf(fact_596_domIff,axiom,
! [A2: val,M: val > option_val] :
( ( member_val @ A2 @ ( dom_val_val @ M ) )
= ( ( M @ A2 )
!= none_val ) ) ).
% domIff
thf(fact_597_domIff,axiom,
! [A2: nat,M: nat > option_val] :
( ( member_nat @ A2 @ ( dom_nat_val @ M ) )
= ( ( M @ A2 )
!= none_val ) ) ).
% domIff
thf(fact_598_domIff,axiom,
! [A2: option_val,M: option_val > option_state] :
( ( member_option_val @ A2 @ ( dom_option_val_state @ M ) )
= ( ( M @ A2 )
!= none_state ) ) ).
% domIff
thf(fact_599_domIff,axiom,
! [A2: option_val,M: option_val > option_val] :
( ( member_option_val @ A2 @ ( dom_option_val_val @ M ) )
= ( ( M @ A2 )
!= none_val ) ) ).
% domIff
thf(fact_600_domIff,axiom,
! [A2: val,M: val > option_list_char] :
( ( member_val @ A2 @ ( dom_val_list_char @ M ) )
= ( ( M @ A2 )
!= none_list_char ) ) ).
% domIff
thf(fact_601_domIff,axiom,
! [A2: nat,M: nat > option_list_char] :
( ( member_nat @ A2 @ ( dom_nat_list_char @ M ) )
= ( ( M @ A2 )
!= none_list_char ) ) ).
% domIff
thf(fact_602_map__add__dom__app__simps_I1_J,axiom,
! [M: produc9003781588162623004on_val,L2: produc9003781588162623004on_val > option8887860577033306220on_val,L1: produc9003781588162623004on_val > option8887860577033306220on_val] :
( ( member2879030624002546611on_val @ M @ ( dom_Pr2742230247756046988on_val @ L2 ) )
=> ( ( map_ad6375351378680859759on_val @ L1 @ L2 @ M )
= ( L2 @ M ) ) ) ).
% map_add_dom_app_simps(1)
thf(fact_603_map__add__dom__app__simps_I1_J,axiom,
! [M: nat,L2: nat > option_list_char,L1: nat > option_list_char] :
( ( member_nat @ M @ ( dom_nat_list_char @ L2 ) )
=> ( ( map_ad208561015412637672t_char @ L1 @ L2 @ M )
= ( L2 @ M ) ) ) ).
% map_add_dom_app_simps(1)
thf(fact_604_map__add__dom__app__simps_I1_J,axiom,
! [M: produc1457211279475724562t_char > prat,L2: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,L1: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val] :
( ( member2336342582916103932r_prat @ M @ ( dom_Pr4152820065153570843on_val @ L2 ) )
=> ( ( map_ad2898753242718228216on_val @ L1 @ L2 @ M )
= ( L2 @ M ) ) ) ).
% map_add_dom_app_simps(1)
thf(fact_605_map__add__dom__app__simps_I1_J,axiom,
! [M: produc9003781588162623004on_val,L2: produc9003781588162623004on_val > option_val,L1: produc9003781588162623004on_val > option_val] :
( ( member2879030624002546611on_val @ M @ ( dom_Pr7381289304162206737al_val @ L2 ) )
=> ( ( map_ad5466549115852757998al_val @ L1 @ L2 @ M )
= ( L2 @ M ) ) ) ).
% map_add_dom_app_simps(1)
thf(fact_606_map__add__dom__app__simps_I1_J,axiom,
! [M: produc9003781588162623004on_val,L2: produc9003781588162623004on_val > option_state,L1: produc9003781588162623004on_val > option_state] :
( ( member2879030624002546611on_val @ M @ ( dom_Pr4448331044451638570_state @ L2 ) )
=> ( ( map_ad2629041965313307917_state @ L1 @ L2 @ M )
= ( L2 @ M ) ) ) ).
% map_add_dom_app_simps(1)
thf(fact_607_map__add__dom__app__simps_I1_J,axiom,
! [M: produc1457211279475724562t_char,L2: produc1457211279475724562t_char > option_val,L1: produc1457211279475724562t_char > option_val] :
( ( member484235747325421115t_char @ M @ ( dom_Pr8989479155164304065ar_val @ L2 ) )
=> ( ( map_ad2908576761495157028ar_val @ L1 @ L2 @ M )
= ( L2 @ M ) ) ) ).
% map_add_dom_app_simps(1)
thf(fact_608_map__add__dom__app__simps_I2_J,axiom,
! [M: produc9003781588162623004on_val,L1: produc9003781588162623004on_val > option8887860577033306220on_val,L2: produc9003781588162623004on_val > option8887860577033306220on_val] :
( ~ ( member2879030624002546611on_val @ M @ ( dom_Pr2742230247756046988on_val @ L1 ) )
=> ( ( map_ad6375351378680859759on_val @ L1 @ L2 @ M )
= ( L2 @ M ) ) ) ).
% map_add_dom_app_simps(2)
thf(fact_609_map__add__dom__app__simps_I2_J,axiom,
! [M: nat,L1: nat > option_list_char,L2: nat > option_list_char] :
( ~ ( member_nat @ M @ ( dom_nat_list_char @ L1 ) )
=> ( ( map_ad208561015412637672t_char @ L1 @ L2 @ M )
= ( L2 @ M ) ) ) ).
% map_add_dom_app_simps(2)
thf(fact_610_map__add__dom__app__simps_I2_J,axiom,
! [M: produc1457211279475724562t_char > prat,L1: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,L2: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val] :
( ~ ( member2336342582916103932r_prat @ M @ ( dom_Pr4152820065153570843on_val @ L1 ) )
=> ( ( map_ad2898753242718228216on_val @ L1 @ L2 @ M )
= ( L2 @ M ) ) ) ).
% map_add_dom_app_simps(2)
thf(fact_611_map__add__dom__app__simps_I2_J,axiom,
! [M: produc9003781588162623004on_val,L1: produc9003781588162623004on_val > option_val,L2: produc9003781588162623004on_val > option_val] :
( ~ ( member2879030624002546611on_val @ M @ ( dom_Pr7381289304162206737al_val @ L1 ) )
=> ( ( map_ad5466549115852757998al_val @ L1 @ L2 @ M )
= ( L2 @ M ) ) ) ).
% map_add_dom_app_simps(2)
thf(fact_612_map__add__dom__app__simps_I2_J,axiom,
! [M: produc9003781588162623004on_val,L1: produc9003781588162623004on_val > option_state,L2: produc9003781588162623004on_val > option_state] :
( ~ ( member2879030624002546611on_val @ M @ ( dom_Pr4448331044451638570_state @ L1 ) )
=> ( ( map_ad2629041965313307917_state @ L1 @ L2 @ M )
= ( L2 @ M ) ) ) ).
% map_add_dom_app_simps(2)
thf(fact_613_map__add__dom__app__simps_I2_J,axiom,
! [M: produc1457211279475724562t_char,L1: produc1457211279475724562t_char > option_val,L2: produc1457211279475724562t_char > option_val] :
( ~ ( member484235747325421115t_char @ M @ ( dom_Pr8989479155164304065ar_val @ L1 ) )
=> ( ( map_ad2908576761495157028ar_val @ L1 @ L2 @ M )
= ( L2 @ M ) ) ) ).
% map_add_dom_app_simps(2)
thf(fact_614_map__add__dom__app__simps_I3_J,axiom,
! [M: produc9003781588162623004on_val,L2: produc9003781588162623004on_val > option8887860577033306220on_val,L1: produc9003781588162623004on_val > option8887860577033306220on_val] :
( ~ ( member2879030624002546611on_val @ M @ ( dom_Pr2742230247756046988on_val @ L2 ) )
=> ( ( map_ad6375351378680859759on_val @ L1 @ L2 @ M )
= ( L1 @ M ) ) ) ).
% map_add_dom_app_simps(3)
thf(fact_615_map__add__dom__app__simps_I3_J,axiom,
! [M: nat,L2: nat > option_list_char,L1: nat > option_list_char] :
( ~ ( member_nat @ M @ ( dom_nat_list_char @ L2 ) )
=> ( ( map_ad208561015412637672t_char @ L1 @ L2 @ M )
= ( L1 @ M ) ) ) ).
% map_add_dom_app_simps(3)
thf(fact_616_map__add__dom__app__simps_I3_J,axiom,
! [M: produc1457211279475724562t_char > prat,L2: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,L1: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val] :
( ~ ( member2336342582916103932r_prat @ M @ ( dom_Pr4152820065153570843on_val @ L2 ) )
=> ( ( map_ad2898753242718228216on_val @ L1 @ L2 @ M )
= ( L1 @ M ) ) ) ).
% map_add_dom_app_simps(3)
thf(fact_617_map__add__dom__app__simps_I3_J,axiom,
! [M: produc9003781588162623004on_val,L2: produc9003781588162623004on_val > option_val,L1: produc9003781588162623004on_val > option_val] :
( ~ ( member2879030624002546611on_val @ M @ ( dom_Pr7381289304162206737al_val @ L2 ) )
=> ( ( map_ad5466549115852757998al_val @ L1 @ L2 @ M )
= ( L1 @ M ) ) ) ).
% map_add_dom_app_simps(3)
thf(fact_618_map__add__dom__app__simps_I3_J,axiom,
! [M: produc9003781588162623004on_val,L2: produc9003781588162623004on_val > option_state,L1: produc9003781588162623004on_val > option_state] :
( ~ ( member2879030624002546611on_val @ M @ ( dom_Pr4448331044451638570_state @ L2 ) )
=> ( ( map_ad2629041965313307917_state @ L1 @ L2 @ M )
= ( L1 @ M ) ) ) ).
% map_add_dom_app_simps(3)
thf(fact_619_map__add__dom__app__simps_I3_J,axiom,
! [M: produc1457211279475724562t_char,L2: produc1457211279475724562t_char > option_val,L1: produc1457211279475724562t_char > option_val] :
( ~ ( member484235747325421115t_char @ M @ ( dom_Pr8989479155164304065ar_val @ L2 ) )
=> ( ( map_ad2908576761495157028ar_val @ L1 @ L2 @ M )
= ( L1 @ M ) ) ) ).
% map_add_dom_app_simps(3)
thf(fact_620_map__le__def,axiom,
( map_le2714403320317326333_state
= ( ^ [M_1: produc9003781588162623004on_val > option_state,M_2: produc9003781588162623004on_val > option_state] :
! [X3: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ X3 @ ( dom_Pr4448331044451638570_state @ M_1 ) )
=> ( ( M_1 @ X3 )
= ( M_2 @ X3 ) ) ) ) ) ).
% map_le_def
thf(fact_621_map__le__def,axiom,
( map_le1786601613863086943on_val
= ( ^ [M_1: produc9003781588162623004on_val > option8887860577033306220on_val,M_2: produc9003781588162623004on_val > option8887860577033306220on_val] :
! [X3: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ X3 @ ( dom_Pr2742230247756046988on_val @ M_1 ) )
=> ( ( M_1 @ X3 )
= ( M_2 @ X3 ) ) ) ) ) ).
% map_le_def
thf(fact_622_map__le__def,axiom,
( map_le662008219874789630al_val
= ( ^ [M_1: produc9003781588162623004on_val > option_val,M_2: produc9003781588162623004on_val > option_val] :
! [X3: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ X3 @ ( dom_Pr7381289304162206737al_val @ M_1 ) )
=> ( ( M_1 @ X3 )
= ( M_2 @ X3 ) ) ) ) ) ).
% map_le_def
thf(fact_623_map__le__def,axiom,
( map_le_nat_list_char
= ( ^ [M_1: nat > option_list_char,M_2: nat > option_list_char] :
! [X3: nat] :
( ( member_nat @ X3 @ ( dom_nat_list_char @ M_1 ) )
=> ( ( M_1 @ X3 )
= ( M_2 @ X3 ) ) ) ) ) ).
% map_le_def
thf(fact_624_map__le__def,axiom,
( map_le7591542393800649736on_val
= ( ^ [M_1: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,M_2: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val] :
! [X3: produc1457211279475724562t_char > prat] :
( ( member2336342582916103932r_prat @ X3 @ ( dom_Pr4152820065153570843on_val @ M_1 ) )
=> ( ( M_1 @ X3 )
= ( M_2 @ X3 ) ) ) ) ) ).
% map_le_def
thf(fact_625_map__le__def,axiom,
( map_le3432596473071271956ar_val
= ( ^ [M_1: produc1457211279475724562t_char > option_val,M_2: produc1457211279475724562t_char > option_val] :
! [X3: produc1457211279475724562t_char] :
( ( member484235747325421115t_char @ X3 @ ( dom_Pr8989479155164304065ar_val @ M_1 ) )
=> ( ( M_1 @ X3 )
= ( M_2 @ X3 ) ) ) ) ) ).
% map_le_def
thf(fact_626_None__notin__image__Some,axiom,
! [A5: set_Pr7649655576376376530on_val] :
~ ( member4602090469187516291on_val @ none_P8728355543607141243on_val @ ( image_4416128703135814415on_val @ some_P2581650809551911671on_val @ A5 ) ) ).
% None_notin_image_Some
thf(fact_627_None__notin__image__Some,axiom,
! [A5: set_list_char] :
~ ( member873824481883127368t_char @ none_list_char @ ( image_4379178946295307545t_char @ some_list_char @ A5 ) ) ).
% None_notin_image_Some
thf(fact_628_None__notin__image__Some,axiom,
! [A5: set_Pr1004501353197068112on_val] :
~ ( member7216203038034776961on_val @ none_P1334921381875262201on_val @ ( image_5626594990718149899on_val @ some_P7669353234731512949on_val @ A5 ) ) ).
% None_notin_image_Some
thf(fact_629_None__notin__image__Some,axiom,
! [A5: set_state] :
~ ( member_option_state @ none_state @ ( image_6076465424260689483_state @ some_state @ A5 ) ) ).
% None_notin_image_Some
thf(fact_630_None__notin__image__Some,axiom,
! [A5: set_val] :
~ ( member_option_val @ none_val @ ( image_val_option_val @ some_val @ A5 ) ) ).
% None_notin_image_Some
thf(fact_631_mult__distr__masks,axiom,
! [A2: prat,B2: produc1457211279475724562t_char > prat,C: produc1457211279475724562t_char > prat] :
( ( multiply_mask @ A2 @ ( add_ma6586698345353345811t_char @ B2 @ C ) )
= ( add_ma6586698345353345811t_char @ ( multiply_mask @ A2 @ B2 ) @ ( multiply_mask @ A2 @ C ) ) ) ).
% mult_distr_masks
thf(fact_632_add__acc__uni__mask,axiom,
( add_ac6043276672051819257t_char
= ( ^ [Pi4: produc1457211279475724562t_char > prat,Hl2: produc1457211279475724562t_char,P5: prat] : ( add_ma6586698345353345811t_char @ Pi4 @ ( uni_ma6578582744724537101t_char @ Hl2 @ P5 ) ) ) ) ).
% add_acc_uni_mask
thf(fact_633_these__image__Some__eq,axiom,
! [A5: set_list_char] :
( ( these_list_char @ ( image_4379178946295307545t_char @ some_list_char @ A5 ) )
= A5 ) ).
% these_image_Some_eq
thf(fact_634_these__image__Some__eq,axiom,
! [A5: set_Pr1004501353197068112on_val] :
( ( these_602426935119867933on_val @ ( image_5626594990718149899on_val @ some_P7669353234731512949on_val @ A5 ) )
= A5 ) ).
% these_image_Some_eq
thf(fact_635_these__image__Some__eq,axiom,
! [A5: set_state] :
( ( these_state @ ( image_6076465424260689483_state @ some_state @ A5 ) )
= A5 ) ).
% these_image_Some_eq
thf(fact_636_these__image__Some__eq,axiom,
! [A5: set_val] :
( ( these_val @ ( image_val_option_val @ some_val @ A5 ) )
= A5 ) ).
% these_image_Some_eq
thf(fact_637_notin__range__Some,axiom,
! [X: option_state] :
( ( ~ ( member_option_state @ X @ ( image_6076465424260689483_state @ some_state @ top_top_set_state ) ) )
= ( X = none_state ) ) ).
% notin_range_Some
thf(fact_638_notin__range__Some,axiom,
! [X: option_val] :
( ( ~ ( member_option_val @ X @ ( image_val_option_val @ some_val @ top_top_set_val ) ) )
= ( X = none_val ) ) ).
% notin_range_Some
thf(fact_639_map__add__comm,axiom,
! [M1: produc1457211279475724562t_char > option_val,M2: produc1457211279475724562t_char > option_val] :
( ( ( inf_in3544766959038609504t_char @ ( dom_Pr8989479155164304065ar_val @ M1 ) @ ( dom_Pr8989479155164304065ar_val @ M2 ) )
= bot_bo1414094081888755934t_char )
=> ( ( map_ad2908576761495157028ar_val @ M1 @ M2 )
= ( map_ad2908576761495157028ar_val @ M2 @ M1 ) ) ) ).
% map_add_comm
thf(fact_640_option_Osimps_I15_J,axiom,
! [X22: state] :
( ( set_option_state2 @ ( some_state @ X22 ) )
= ( insert_state @ X22 @ bot_bot_set_state ) ) ).
% option.simps(15)
thf(fact_641_option_Osimps_I15_J,axiom,
! [X22: val] :
( ( set_option_val2 @ ( some_val @ X22 ) )
= ( insert_val @ X22 @ bot_bot_set_val ) ) ).
% option.simps(15)
thf(fact_642_greater__mask__uniI,axiom,
! [Pi: produc1457211279475724562t_char > prat,Hl3: produc1457211279475724562t_char,R2: prat] :
( ( pgte @ ( Pi @ Hl3 ) @ R2 )
=> ( greate7680731506090375811t_char @ Pi @ ( uni_ma6578582744724537101t_char @ Hl3 @ R2 ) ) ) ).
% greater_mask_uniI
thf(fact_643_restrict__out,axiom,
! [X: produc9003781588162623004on_val,A5: set_Pr7649655576376376530on_val,M: produc9003781588162623004on_val > option_state] :
( ~ ( member2879030624002546611on_val @ X @ A5 )
=> ( ( restri5336766904122854152_state @ M @ A5 @ X )
= none_state ) ) ).
% restrict_out
thf(fact_644_restrict__out,axiom,
! [X: produc9003781588162623004on_val,A5: set_Pr7649655576376376530on_val,M: produc9003781588162623004on_val > option_val] :
( ~ ( member2879030624002546611on_val @ X @ A5 )
=> ( ( restri5251746167140823987al_val @ M @ A5 @ X )
= none_val ) ) ).
% restrict_out
thf(fact_645_these__insert__None,axiom,
! [A5: set_option_state] :
( ( these_state @ ( insert_option_state @ none_state @ A5 ) )
= ( these_state @ A5 ) ) ).
% these_insert_None
thf(fact_646_these__insert__None,axiom,
! [A5: set_option_val] :
( ( these_val @ ( insert_option_val @ none_val @ A5 ) )
= ( these_val @ A5 ) ) ).
% these_insert_None
thf(fact_647_these__insert__Some,axiom,
! [X: state,A5: set_option_state] :
( ( these_state @ ( insert_option_state @ ( some_state @ X ) @ A5 ) )
= ( insert_state @ X @ ( these_state @ A5 ) ) ) ).
% these_insert_Some
thf(fact_648_these__insert__Some,axiom,
! [X: val,A5: set_option_val] :
( ( these_val @ ( insert_option_val @ ( some_val @ X ) @ A5 ) )
= ( insert_val @ X @ ( these_val @ A5 ) ) ) ).
% these_insert_Some
thf(fact_649_UNIV__option__conv,axiom,
( top_to7666338855062656496_state
= ( insert_option_state @ none_state @ ( image_6076465424260689483_state @ some_state @ top_top_set_state ) ) ) ).
% UNIV_option_conv
thf(fact_650_UNIV__option__conv,axiom,
( top_to853123400021307383on_val
= ( insert_option_val @ none_val @ ( image_val_option_val @ some_val @ top_top_set_val ) ) ) ).
% UNIV_option_conv
thf(fact_651_these__not__empty__eq,axiom,
! [B5: set_option_state] :
( ( ( these_state @ B5 )
!= bot_bot_set_state )
= ( ( B5 != bot_bo710180891245420500_state )
& ( B5
!= ( insert_option_state @ none_state @ bot_bo710180891245420500_state ) ) ) ) ).
% these_not_empty_eq
thf(fact_652_these__not__empty__eq,axiom,
! [B5: set_option_val] :
( ( ( these_val @ B5 )
!= bot_bot_set_val )
= ( ( B5 != bot_bo5906790151302476563on_val )
& ( B5
!= ( insert_option_val @ none_val @ bot_bo5906790151302476563on_val ) ) ) ) ).
% these_not_empty_eq
thf(fact_653_these__empty__eq,axiom,
! [B5: set_option_state] :
( ( ( these_state @ B5 )
= bot_bot_set_state )
= ( ( B5 = bot_bo710180891245420500_state )
| ( B5
= ( insert_option_state @ none_state @ bot_bo710180891245420500_state ) ) ) ) ).
% these_empty_eq
thf(fact_654_these__empty__eq,axiom,
! [B5: set_option_val] :
( ( ( these_val @ B5 )
= bot_bot_set_val )
= ( ( B5 = bot_bo5906790151302476563on_val )
| ( B5
= ( insert_option_val @ none_val @ bot_bo5906790151302476563on_val ) ) ) ) ).
% these_empty_eq
thf(fact_655_restrict__map__def,axiom,
( restri5336766904122854152_state
= ( ^ [M4: produc9003781588162623004on_val > option_state,A6: set_Pr7649655576376376530on_val,X3: produc9003781588162623004on_val] : ( if_option_state @ ( member2879030624002546611on_val @ X3 @ A6 ) @ ( M4 @ X3 ) @ none_state ) ) ) ).
% restrict_map_def
thf(fact_656_restrict__map__def,axiom,
( restri5251746167140823987al_val
= ( ^ [M4: produc9003781588162623004on_val > option_val,A6: set_Pr7649655576376376530on_val,X3: produc9003781588162623004on_val] : ( if_option_val @ ( member2879030624002546611on_val @ X3 @ A6 ) @ ( M4 @ X3 ) @ none_val ) ) ) ).
% restrict_map_def
thf(fact_657_greater__mask__equiv__def,axiom,
( greate7680731506090375811t_char
= ( ^ [Pi3: produc1457211279475724562t_char > prat,Pi4: produc1457211279475724562t_char > prat] :
! [Hl2: produc1457211279475724562t_char] : ( pgte @ ( Pi3 @ Hl2 ) @ ( Pi4 @ Hl2 ) ) ) ) ).
% greater_mask_equiv_def
thf(fact_658_greater__maskI,axiom,
! [Pi2: produc1457211279475724562t_char > prat,Pi: produc1457211279475724562t_char > prat] :
( ! [Hl: produc1457211279475724562t_char] : ( pgte @ ( Pi2 @ Hl ) @ ( Pi @ Hl ) )
=> ( greate7680731506090375811t_char @ Pi2 @ Pi ) ) ).
% greater_maskI
thf(fact_659_in__these__eq,axiom,
! [X: produc9003781588162623004on_val,A5: set_op6240181410663953058on_val] :
( ( member2879030624002546611on_val @ X @ ( these_3919539662624406175on_val @ A5 ) )
= ( member4602090469187516291on_val @ ( some_P2581650809551911671on_val @ X ) @ A5 ) ) ).
% in_these_eq
thf(fact_660_in__these__eq,axiom,
! [X: state,A5: set_option_state] :
( ( member_state @ X @ ( these_state @ A5 ) )
= ( member_option_state @ ( some_state @ X ) @ A5 ) ) ).
% in_these_eq
thf(fact_661_in__these__eq,axiom,
! [X: val,A5: set_option_val] :
( ( member_val @ X @ ( these_val @ A5 ) )
= ( member_option_val @ ( some_val @ X ) @ A5 ) ) ).
% in_these_eq
thf(fact_662_greater__mask__uni__equiv,axiom,
! [Pi: produc1457211279475724562t_char > prat,Hl3: produc1457211279475724562t_char,R2: prat] :
( ( greate7680731506090375811t_char @ Pi @ ( uni_ma6578582744724537101t_char @ Hl3 @ R2 ) )
= ( pgte @ ( Pi @ Hl3 ) @ R2 ) ) ).
% greater_mask_uni_equiv
thf(fact_663_fun__upd__None__restrict,axiom,
! [X: produc9003781588162623004on_val,D2: set_Pr7649655576376376530on_val,M: produc9003781588162623004on_val > option_state] :
( ( ( member2879030624002546611on_val @ X @ D2 )
=> ( ( fun_up6681822530636708645_state @ ( restri5336766904122854152_state @ M @ D2 ) @ X @ none_state )
= ( restri5336766904122854152_state @ M @ ( minus_9160195963678339755on_val @ D2 @ ( insert3030518898131756108on_val @ X @ bot_bo6722054719108133734on_val ) ) ) ) )
& ( ~ ( member2879030624002546611on_val @ X @ D2 )
=> ( ( fun_up6681822530636708645_state @ ( restri5336766904122854152_state @ M @ D2 ) @ X @ none_state )
= ( restri5336766904122854152_state @ M @ D2 ) ) ) ) ).
% fun_upd_None_restrict
thf(fact_664_fun__upd__None__restrict,axiom,
! [X: produc9003781588162623004on_val,D2: set_Pr7649655576376376530on_val,M: produc9003781588162623004on_val > option_val] :
( ( ( member2879030624002546611on_val @ X @ D2 )
=> ( ( fun_up8559965269643824108on_val @ ( restri5251746167140823987al_val @ M @ D2 ) @ X @ none_val )
= ( restri5251746167140823987al_val @ M @ ( minus_9160195963678339755on_val @ D2 @ ( insert3030518898131756108on_val @ X @ bot_bo6722054719108133734on_val ) ) ) ) )
& ( ~ ( member2879030624002546611on_val @ X @ D2 )
=> ( ( fun_up8559965269643824108on_val @ ( restri5251746167140823987al_val @ M @ D2 ) @ X @ none_val )
= ( restri5251746167140823987al_val @ M @ D2 ) ) ) ) ).
% fun_upd_None_restrict
thf(fact_665_valid__mult,axiom,
! [Pi: produc1457211279475724562t_char > prat,P4: prat] :
( ( valid_mask @ Pi )
=> ( ( pgte @ pwrite @ P4 )
=> ( valid_mask @ ( multiply_mask @ P4 @ Pi ) ) ) ) ).
% valid_mult
thf(fact_666_mult__write__mask,axiom,
! [Pi: produc1457211279475724562t_char > prat] :
( ( multiply_mask @ pwrite @ Pi )
= Pi ) ).
% mult_write_mask
thf(fact_667_ran__map__add,axiom,
! [M1: produc1457211279475724562t_char > option_val,M2: produc1457211279475724562t_char > option_val] :
( ( ( inf_in3544766959038609504t_char @ ( dom_Pr8989479155164304065ar_val @ M1 ) @ ( dom_Pr8989479155164304065ar_val @ M2 ) )
= bot_bo1414094081888755934t_char )
=> ( ( ran_Pr786515303459910110ar_val @ ( map_ad2908576761495157028ar_val @ M1 @ M2 ) )
= ( sup_sup_set_val @ ( ran_Pr786515303459910110ar_val @ M1 ) @ ( ran_Pr786515303459910110ar_val @ M2 ) ) ) ) ).
% ran_map_add
thf(fact_668_half__between__0__1,axiom,
( ( ppos @ half )
& ( pgt @ pwrite @ half ) ) ).
% half_between_0_1
thf(fact_669_pdiv__smaller,axiom,
! [A2: prat,B2: prat] :
( ( pgte @ A2 @ B2 )
=> ( ( ppos @ A2 )
=> ( pgte @ pwrite @ ( pdiv @ B2 @ A2 ) ) ) ) ).
% pdiv_smaller
thf(fact_670_dom__map__add,axiom,
! [M: produc1457211279475724562t_char > option_val,N: produc1457211279475724562t_char > option_val] :
( ( dom_Pr8989479155164304065ar_val @ ( map_ad2908576761495157028ar_val @ M @ N ) )
= ( sup_su7899656352754981958t_char @ ( dom_Pr8989479155164304065ar_val @ N ) @ ( dom_Pr8989479155164304065ar_val @ M ) ) ) ).
% dom_map_add
thf(fact_671_inj__on__map__add__dom,axiom,
! [M: produc1457211279475724562t_char > option_val,M5: produc1457211279475724562t_char > option_val] :
( ( inj_on4474484569326248358on_val @ ( map_ad2908576761495157028ar_val @ M @ M5 ) @ ( dom_Pr8989479155164304065ar_val @ M5 ) )
= ( inj_on4474484569326248358on_val @ M5 @ ( dom_Pr8989479155164304065ar_val @ M5 ) ) ) ).
% inj_on_map_add_dom
thf(fact_672_ppos__add,axiom,
! [A2: prat,B2: prat] :
( ( ppos @ A2 )
=> ( ppos @ ( padd @ A2 @ B2 ) ) ) ).
% ppos_add
thf(fact_673_inj__Some,axiom,
! [A5: set_state] : ( inj_on3577428053172332983_state @ some_state @ A5 ) ).
% inj_Some
thf(fact_674_inj__Some,axiom,
! [A5: set_val] : ( inj_on4074814566786472055on_val @ some_val @ A5 ) ).
% inj_Some
thf(fact_675_sum__coeff,axiom,
! [A2: prat,B2: prat] :
( ( ppos @ A2 )
=> ( ( ppos @ B2 )
=> ( ( padd @ ( pdiv @ A2 @ ( padd @ A2 @ B2 ) ) @ ( pdiv @ B2 @ ( padd @ A2 @ B2 ) ) )
= pwrite ) ) ) ).
% sum_coeff
thf(fact_676_add__masks_Oelims,axiom,
! [X: produc1457211279475724562t_char > prat,Xa: produc1457211279475724562t_char > prat,Xb: produc1457211279475724562t_char,Y2: prat] :
( ( ( add_ma6586698345353345811t_char @ X @ Xa @ Xb )
= Y2 )
=> ( Y2
= ( padd @ ( X @ Xb ) @ ( Xa @ Xb ) ) ) ) ).
% add_masks.elims
thf(fact_677_add__masks_Osimps,axiom,
( add_ma6586698345353345811t_char
= ( ^ [Pi3: produc1457211279475724562t_char > prat,Pi4: produc1457211279475724562t_char > prat,Hl2: produc1457211279475724562t_char] : ( padd @ ( Pi3 @ Hl2 ) @ ( Pi4 @ Hl2 ) ) ) ) ).
% add_masks.simps
thf(fact_678_finite__range__Some,axiom,
( ( finite3180955649987104801_state @ ( image_6076465424260689483_state @ some_state @ top_top_set_state ) )
= ( finite_finite_state @ top_top_set_state ) ) ).
% finite_range_Some
thf(fact_679_finite__range__Some,axiom,
( ( finite4212117559080419824on_val @ ( image_val_option_val @ some_val @ top_top_set_val ) )
= ( finite_finite_val @ top_top_set_val ) ) ).
% finite_range_Some
thf(fact_680_inj__image__mem__iff,axiom,
! [F: produc9003781588162623004on_val > produc9003781588162623004on_val,A2: produc9003781588162623004on_val,A5: set_Pr7649655576376376530on_val] :
( ( inj_on7948954794846770859on_val @ F @ top_to1561438921946393474on_val )
=> ( ( member2879030624002546611on_val @ ( F @ A2 ) @ ( image_4170889944715819327on_val @ F @ A5 ) )
= ( member2879030624002546611on_val @ A2 @ A5 ) ) ) ).
% inj_image_mem_iff
thf(fact_681_inj__img__insertE,axiom,
! [F: produc9003781588162623004on_val > produc9003781588162623004on_val,A5: set_Pr7649655576376376530on_val,X: produc9003781588162623004on_val,B5: set_Pr7649655576376376530on_val] :
( ( inj_on7948954794846770859on_val @ F @ A5 )
=> ( ~ ( member2879030624002546611on_val @ X @ B5 )
=> ( ( ( insert3030518898131756108on_val @ X @ B5 )
= ( image_4170889944715819327on_val @ F @ A5 ) )
=> ~ ! [X5: produc9003781588162623004on_val,A7: set_Pr7649655576376376530on_val] :
( ~ ( member2879030624002546611on_val @ X5 @ A7 )
=> ( ( A5
= ( insert3030518898131756108on_val @ X5 @ A7 ) )
=> ( ( X
= ( F @ X5 ) )
=> ( B5
!= ( image_4170889944715819327on_val @ F @ A7 ) ) ) ) ) ) ) ) ).
% inj_img_insertE
thf(fact_682_mult__add__states,axiom,
! [A2: prat,B2: prat,Pi: produc1457211279475724562t_char > prat] :
( ( multiply_mask @ ( padd @ A2 @ B2 ) @ Pi )
= ( add_ma6586698345353345811t_char @ ( multiply_mask @ A2 @ Pi ) @ ( multiply_mask @ B2 @ Pi ) ) ) ).
% mult_add_states
thf(fact_683_valid__sum_I2_J,axiom,
! [A2: produc1457211279475724562t_char > prat,B2: produc1457211279475724562t_char > prat,Ma: prat,Mb: prat] :
( ( valid_mask @ A2 )
=> ( ( valid_mask @ B2 )
=> ( ( upper_bounded @ A2 @ Ma )
=> ( ( upper_bounded @ B2 @ Mb )
=> ( ( pgte @ pwrite @ ( padd @ Ma @ Mb ) )
=> ( upper_bounded @ ( add_ma6586698345353345811t_char @ A2 @ B2 ) @ ( padd @ Ma @ Mb ) ) ) ) ) ) ) ).
% valid_sum(2)
thf(fact_684_valid__sum_I1_J,axiom,
! [A2: produc1457211279475724562t_char > prat,B2: produc1457211279475724562t_char > prat,Ma: prat,Mb: prat] :
( ( valid_mask @ A2 )
=> ( ( valid_mask @ B2 )
=> ( ( upper_bounded @ A2 @ Ma )
=> ( ( upper_bounded @ B2 @ Mb )
=> ( ( pgte @ pwrite @ ( padd @ Ma @ Mb ) )
=> ( valid_mask @ ( add_ma6586698345353345811t_char @ A2 @ B2 ) ) ) ) ) ) ) ).
% valid_sum(1)
thf(fact_685_graph__map__add,axiom,
! [M1: produc1457211279475724562t_char > option_val,M2: produc1457211279475724562t_char > option_val] :
( ( ( inf_in3544766959038609504t_char @ ( dom_Pr8989479155164304065ar_val @ M1 ) @ ( dom_Pr8989479155164304065ar_val @ M2 ) )
= bot_bo1414094081888755934t_char )
=> ( ( graph_1733029056113894637ar_val @ ( map_ad2908576761495157028ar_val @ M1 @ M2 ) )
= ( sup_su5754804325903363146ar_val @ ( graph_1733029056113894637ar_val @ M1 ) @ ( graph_1733029056113894637ar_val @ M2 ) ) ) ) ).
% graph_map_add
thf(fact_686_upper__boundedI,axiom,
! [P4: prat,Pi: produc1457211279475724562t_char > prat] :
( ! [Hl: produc1457211279475724562t_char] : ( pgte @ P4 @ ( Pi @ Hl ) )
=> ( upper_bounded @ Pi @ P4 ) ) ).
% upper_boundedI
thf(fact_687_upper__bounded__def,axiom,
( upper_bounded
= ( ^ [Pi4: produc1457211279475724562t_char > prat,P5: prat] :
! [Hl2: produc1457211279475724562t_char] : ( pgte @ P5 @ ( Pi4 @ Hl2 ) ) ) ) ).
% upper_bounded_def
thf(fact_688_upper__bounded__bigger,axiom,
! [Pi: produc1457211279475724562t_char > prat,A2: prat,B2: prat] :
( ( upper_bounded @ Pi @ A2 )
=> ( ( pgte @ B2 @ A2 )
=> ( upper_bounded @ Pi @ B2 ) ) ) ).
% upper_bounded_bigger
thf(fact_689_valid__multiply,axiom,
! [A2: produc1457211279475724562t_char > prat,Ma: prat,P4: prat] :
( ( valid_mask @ A2 )
=> ( ( upper_bounded @ A2 @ Ma )
=> ( ( pgte @ pwrite @ ( pmult @ Ma @ P4 ) )
=> ( valid_mask @ ( multiply_mask @ P4 @ A2 ) ) ) ) ) ).
% valid_multiply
thf(fact_690_graph__map__upd,axiom,
! [M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,K: produc1457211279475724562t_char > prat,V2: produc1457211279475724562t_char > option_val] :
( ( graph_1288227317702120175on_val @ ( fun_up1601731230164360576on_val @ M @ K @ ( some_P7669353234731512949on_val @ V2 ) ) )
= ( insert3030518898131756108on_val @ ( produc74620467203698198on_val @ K @ V2 ) @ ( graph_1288227317702120175on_val @ ( fun_up1601731230164360576on_val @ M @ K @ none_P1334921381875262201on_val ) ) ) ) ).
% graph_map_upd
thf(fact_691_graph__map__upd,axiom,
! [M: produc9003781588162623004on_val > option8887860577033306220on_val,K: produc9003781588162623004on_val,V2: produc9003781588162623004on_val] :
( ( graph_6108330199704490680on_val @ ( fun_up273046073882939271on_val @ M @ K @ ( some_P2581650809551911671on_val @ V2 ) ) )
= ( insert7062705985672971881on_val @ ( produc4958730763592889809on_val @ K @ V2 ) @ ( graph_6108330199704490680on_val @ ( fun_up273046073882939271on_val @ M @ K @ none_P8728355543607141243on_val ) ) ) ) ).
% graph_map_upd
thf(fact_692_graph__map__upd,axiom,
! [M: nat > option_list_char,K: nat,V2: list_char] :
( ( graph_nat_list_char @ ( fun_up4009399622604172288t_char @ M @ K @ ( some_list_char @ V2 ) ) )
= ( insert3372640069787401954t_char @ ( produc120197956887798346t_char @ K @ V2 ) @ ( graph_nat_list_char @ ( fun_up4009399622604172288t_char @ M @ K @ none_list_char ) ) ) ) ).
% graph_map_upd
thf(fact_693_finite__range__map__of__map__add,axiom,
! [F: produc1457211279475724562t_char > option_val,L: list_P375024181684815772ar_val] :
( ( finite4212117559080419824on_val @ ( image_4269386950610408506on_val @ F @ top_to1250346684925019074t_char ) )
=> ( finite4212117559080419824on_val @ ( image_4269386950610408506on_val @ ( map_ad2908576761495157028ar_val @ F @ ( map_of6844234013878170066ar_val @ L ) ) @ top_to1250346684925019074t_char ) ) ) ).
% finite_range_map_of_map_add
thf(fact_694_pinv__inverts,axiom,
! [A2: prat,B2: prat] :
( ( pgte @ A2 @ B2 )
=> ( ( ppos @ B2 )
=> ( pgte @ ( pinv @ B2 ) @ ( pinv @ A2 ) ) ) ) ).
% pinv_inverts
thf(fact_695_ssubsetI,axiom,
! [A5: set_Pr7649655576376376530on_val,B5: set_Pr7649655576376376530on_val] :
( ! [Pi6: produc1457211279475724562t_char > prat,H5: produc1457211279475724562t_char > option_val] :
( ( member2879030624002546611on_val @ ( produc74620467203698198on_val @ Pi6 @ H5 ) @ A5 )
=> ( member2879030624002546611on_val @ ( produc74620467203698198on_val @ Pi6 @ H5 ) @ B5 ) )
=> ( ord_le6900622908513426738on_val @ A5 @ B5 ) ) ).
% ssubsetI
thf(fact_696_ssubsetI,axiom,
! [A5: set_Pr4305388979797279737on_val,B5: set_Pr4305388979797279737on_val] :
( ! [Pi6: produc9003781588162623004on_val,H5: produc9003781588162623004on_val] :
( ( member6505152944228695362on_val @ ( produc4958730763592889809on_val @ Pi6 @ H5 ) @ A5 )
=> ( member6505152944228695362on_val @ ( produc4958730763592889809on_val @ Pi6 @ H5 ) @ B5 ) )
=> ( ord_le7224449410216889241on_val @ A5 @ B5 ) ) ).
% ssubsetI
thf(fact_697_ssubsetI,axiom,
! [A5: set_Pr2507339680178222706t_char,B5: set_Pr2507339680178222706t_char] :
( ! [Pi6: nat,H5: list_char] :
( ( member484235747325421115t_char @ ( produc120197956887798346t_char @ Pi6 @ H5 ) @ A5 )
=> ( member484235747325421115t_char @ ( produc120197956887798346t_char @ Pi6 @ H5 ) @ B5 ) )
=> ( ord_le6315511645215477266t_char @ A5 @ B5 ) ) ).
% ssubsetI
thf(fact_698_the__inv__into__into,axiom,
! [F: produc9003781588162623004on_val > produc9003781588162623004on_val,A5: set_Pr7649655576376376530on_val,X: produc9003781588162623004on_val,B5: set_Pr7649655576376376530on_val] :
( ( inj_on7948954794846770859on_val @ F @ A5 )
=> ( ( member2879030624002546611on_val @ X @ ( image_4170889944715819327on_val @ F @ A5 ) )
=> ( ( ord_le6900622908513426738on_val @ A5 @ B5 )
=> ( member2879030624002546611on_val @ ( the_in8616418995011220461on_val @ A5 @ F @ X ) @ B5 ) ) ) ) ).
% the_inv_into_into
thf(fact_699_pmult__ppos,axiom,
! [A2: prat,B2: prat] :
( ( ppos @ A2 )
=> ( ( ppos @ B2 )
=> ( ppos @ ( pmult @ A2 @ B2 ) ) ) ) ).
% pmult_ppos
thf(fact_700_pinv__pmult__ok,axiom,
! [P4: prat] :
( ( ppos @ P4 )
=> ( ( pmult @ P4 @ ( pinv @ P4 ) )
= pwrite ) ) ).
% pinv_pmult_ok
thf(fact_701_multiply__mask__def,axiom,
( multiply_mask
= ( ^ [P5: prat,Pi4: produc1457211279475724562t_char > prat,Hl2: produc1457211279475724562t_char] : ( pmult @ P5 @ ( Pi4 @ Hl2 ) ) ) ) ).
% multiply_mask_def
thf(fact_702_compatible__options_Ocases,axiom,
! [X: produc3142500478612311029_state] :
( ! [A4: state,B4: state] :
( X
!= ( produc9160152616361873709_state @ ( some_state @ A4 ) @ ( some_state @ B4 ) ) )
=> ( ! [Uv2: option_state] :
( X
!= ( produc9160152616361873709_state @ none_state @ Uv2 ) )
=> ~ ! [Uu2: option_state] :
( X
!= ( produc9160152616361873709_state @ Uu2 @ none_state ) ) ) ) ).
% compatible_options.cases
thf(fact_703_compatible__options_Ocases,axiom,
! [X: produc5122021904355189735on_val] :
( ! [A4: val,B4: val] :
( X
!= ( produc904852209897547607on_val @ ( some_val @ A4 ) @ ( some_val @ B4 ) ) )
=> ( ! [Uv2: option_val] :
( X
!= ( produc904852209897547607on_val @ none_val @ Uv2 ) )
=> ~ ! [Uu2: option_val] :
( X
!= ( produc904852209897547607on_val @ Uu2 @ none_val ) ) ) ) ).
% compatible_options.cases
thf(fact_704_inj__on__image__mem__iff,axiom,
! [F: produc9003781588162623004on_val > produc9003781588162623004on_val,B5: set_Pr7649655576376376530on_val,A2: produc9003781588162623004on_val,A5: set_Pr7649655576376376530on_val] :
( ( inj_on7948954794846770859on_val @ F @ B5 )
=> ( ( member2879030624002546611on_val @ A2 @ B5 )
=> ( ( ord_le6900622908513426738on_val @ A5 @ B5 )
=> ( ( member2879030624002546611on_val @ ( F @ A2 ) @ ( image_4170889944715819327on_val @ F @ A5 ) )
= ( member2879030624002546611on_val @ A2 @ A5 ) ) ) ) ) ).
% inj_on_image_mem_iff
thf(fact_705_in__graphD,axiom,
! [K: produc1457211279475724562t_char > prat,V2: produc1457211279475724562t_char > option_val,M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val] :
( ( member2879030624002546611on_val @ ( produc74620467203698198on_val @ K @ V2 ) @ ( graph_1288227317702120175on_val @ M ) )
=> ( ( M @ K )
= ( some_P7669353234731512949on_val @ V2 ) ) ) ).
% in_graphD
thf(fact_706_in__graphD,axiom,
! [K: produc9003781588162623004on_val,V2: produc9003781588162623004on_val,M: produc9003781588162623004on_val > option8887860577033306220on_val] :
( ( member6505152944228695362on_val @ ( produc4958730763592889809on_val @ K @ V2 ) @ ( graph_6108330199704490680on_val @ M ) )
=> ( ( M @ K )
= ( some_P2581650809551911671on_val @ V2 ) ) ) ).
% in_graphD
thf(fact_707_in__graphD,axiom,
! [K: nat,V2: list_char,M: nat > option_list_char] :
( ( member484235747325421115t_char @ ( produc120197956887798346t_char @ K @ V2 ) @ ( graph_nat_list_char @ M ) )
=> ( ( M @ K )
= ( some_list_char @ V2 ) ) ) ).
% in_graphD
thf(fact_708_in__graphI,axiom,
! [M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,K: produc1457211279475724562t_char > prat,V2: produc1457211279475724562t_char > option_val] :
( ( ( M @ K )
= ( some_P7669353234731512949on_val @ V2 ) )
=> ( member2879030624002546611on_val @ ( produc74620467203698198on_val @ K @ V2 ) @ ( graph_1288227317702120175on_val @ M ) ) ) ).
% in_graphI
thf(fact_709_in__graphI,axiom,
! [M: produc9003781588162623004on_val > option8887860577033306220on_val,K: produc9003781588162623004on_val,V2: produc9003781588162623004on_val] :
( ( ( M @ K )
= ( some_P2581650809551911671on_val @ V2 ) )
=> ( member6505152944228695362on_val @ ( produc4958730763592889809on_val @ K @ V2 ) @ ( graph_6108330199704490680on_val @ M ) ) ) ).
% in_graphI
thf(fact_710_in__graphI,axiom,
! [M: nat > option_list_char,K: nat,V2: list_char] :
( ( ( M @ K )
= ( some_list_char @ V2 ) )
=> ( member484235747325421115t_char @ ( produc120197956887798346t_char @ K @ V2 ) @ ( graph_nat_list_char @ M ) ) ) ).
% in_graphI
thf(fact_711_graph__restrictD_I1_J,axiom,
! [K: produc1457211279475724562t_char > prat,V2: produc1457211279475724562t_char > option_val,M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,A5: set_Pr3433046674199179443r_prat] :
( ( member2879030624002546611on_val @ ( produc74620467203698198on_val @ K @ V2 ) @ ( graph_1288227317702120175on_val @ ( restri7594233908965391805on_val @ M @ A5 ) ) )
=> ( member2336342582916103932r_prat @ K @ A5 ) ) ).
% graph_restrictD(1)
thf(fact_712_graph__restrictD_I1_J,axiom,
! [K: produc9003781588162623004on_val,V2: produc9003781588162623004on_val,M: produc9003781588162623004on_val > option8887860577033306220on_val,A5: set_Pr7649655576376376530on_val] :
( ( member6505152944228695362on_val @ ( produc4958730763592889809on_val @ K @ V2 ) @ ( graph_6108330199704490680on_val @ ( restri2354629191430751338on_val @ M @ A5 ) ) )
=> ( member2879030624002546611on_val @ K @ A5 ) ) ).
% graph_restrictD(1)
thf(fact_713_graph__restrictD_I1_J,axiom,
! [K: nat,V2: list_char,M: nat > option_list_char,A5: set_nat] :
( ( member484235747325421115t_char @ ( produc120197956887798346t_char @ K @ V2 ) @ ( graph_nat_list_char @ ( restri7497266720855523683t_char @ M @ A5 ) ) )
=> ( member_nat @ K @ A5 ) ) ).
% graph_restrictD(1)
thf(fact_714_ppos__inv,axiom,
! [P4: prat] :
( ( ppos @ P4 )
=> ( ppos @ ( pinv @ P4 ) ) ) ).
% ppos_inv
thf(fact_715_pinv__double__half,axiom,
! [P4: prat] :
( ( ppos @ P4 )
=> ( ( pmult @ half @ ( pinv @ P4 ) )
= ( pinv @ ( padd @ P4 @ P4 ) ) ) ) ).
% pinv_double_half
thf(fact_716_pmult__pdiv__cancel,axiom,
! [A2: prat,X: prat] :
( ( ppos @ A2 )
=> ( ( pmult @ A2 @ ( pdiv @ X @ A2 ) )
= X ) ) ).
% pmult_pdiv_cancel
thf(fact_717_upper__bounded__smaller,axiom,
! [Pi: produc1457211279475724562t_char > prat,A2: prat,P4: prat] :
( ( upper_bounded @ Pi @ A2 )
=> ( upper_bounded @ ( multiply_mask @ P4 @ Pi ) @ ( pmult @ P4 @ A2 ) ) ) ).
% upper_bounded_smaller
thf(fact_718_graph__restrictD_I2_J,axiom,
! [K: produc1457211279475724562t_char > prat,V2: produc1457211279475724562t_char > option_val,M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,A5: set_Pr3433046674199179443r_prat] :
( ( member2879030624002546611on_val @ ( produc74620467203698198on_val @ K @ V2 ) @ ( graph_1288227317702120175on_val @ ( restri7594233908965391805on_val @ M @ A5 ) ) )
=> ( ( M @ K )
= ( some_P7669353234731512949on_val @ V2 ) ) ) ).
% graph_restrictD(2)
thf(fact_719_graph__restrictD_I2_J,axiom,
! [K: produc9003781588162623004on_val,V2: produc9003781588162623004on_val,M: produc9003781588162623004on_val > option8887860577033306220on_val,A5: set_Pr7649655576376376530on_val] :
( ( member6505152944228695362on_val @ ( produc4958730763592889809on_val @ K @ V2 ) @ ( graph_6108330199704490680on_val @ ( restri2354629191430751338on_val @ M @ A5 ) ) )
=> ( ( M @ K )
= ( some_P2581650809551911671on_val @ V2 ) ) ) ).
% graph_restrictD(2)
thf(fact_720_graph__restrictD_I2_J,axiom,
! [K: nat,V2: list_char,M: nat > option_list_char,A5: set_nat] :
( ( member484235747325421115t_char @ ( produc120197956887798346t_char @ K @ V2 ) @ ( graph_nat_list_char @ ( restri7497266720855523683t_char @ M @ A5 ) ) )
=> ( ( M @ K )
= ( some_list_char @ V2 ) ) ) ).
% graph_restrictD(2)
thf(fact_721_add__states_Oelims,axiom,
! [X: produc9003781588162623004on_val,Xa: produc9003781588162623004on_val,Y2: produc9003781588162623004on_val] :
( ( ( add_states @ X @ Xa )
= Y2 )
=> ~ ! [Pi6: produc1457211279475724562t_char > prat,H5: produc1457211279475724562t_char > option_val] :
( ( X
= ( produc74620467203698198on_val @ Pi6 @ H5 ) )
=> ! [Pi7: produc1457211279475724562t_char > prat,H6: produc1457211279475724562t_char > option_val] :
( ( Xa
= ( produc74620467203698198on_val @ Pi7 @ H6 ) )
=> ( Y2
!= ( produc74620467203698198on_val @ ( add_ma6586698345353345811t_char @ Pi6 @ Pi7 ) @ ( map_ad2908576761495157028ar_val @ H5 @ H6 ) ) ) ) ) ) ).
% add_states.elims
thf(fact_722_add__states_Osimps,axiom,
! [Pi: produc1457211279475724562t_char > prat,H: produc1457211279475724562t_char > option_val,Pi2: produc1457211279475724562t_char > prat,H2: produc1457211279475724562t_char > option_val] :
( ( add_states @ ( produc74620467203698198on_val @ Pi @ H ) @ ( produc74620467203698198on_val @ Pi2 @ H2 ) )
= ( produc74620467203698198on_val @ ( add_ma6586698345353345811t_char @ Pi @ Pi2 ) @ ( map_ad2908576761495157028ar_val @ H @ H2 ) ) ) ).
% add_states.simps
thf(fact_723_valid__stateI,axiom,
! [Pi: produc1457211279475724562t_char > prat,H: produc1457211279475724562t_char > option_val] :
( ( valid_mask @ Pi )
=> ( ! [Hl: produc1457211279475724562t_char] :
( ( ppos @ ( Pi @ Hl ) )
=> ( ( H @ Hl )
!= none_val ) )
=> ( valid_state @ ( produc74620467203698198on_val @ Pi @ H ) ) ) ) ).
% valid_stateI
thf(fact_724_core__def,axiom,
( core
= ( ^ [Phi3: state] : ( abs_state @ ( produc74620467203698198on_val @ empty_3446695950879338768t_char @ ( get_h @ Phi3 ) ) ) ) ) ).
% core_def
thf(fact_725_get__h__m,axiom,
( rep_state
= ( ^ [X3: state] : ( produc74620467203698198on_val @ ( get_m @ X3 ) @ ( get_h @ X3 ) ) ) ) ).
% get_h_m
thf(fact_726_valid__state_Osimps,axiom,
! [Pi: produc1457211279475724562t_char > prat,H: produc1457211279475724562t_char > option_val] :
( ( valid_state @ ( produc74620467203698198on_val @ Pi @ H ) )
= ( ( valid_mask @ Pi )
& ( valid_heap @ Pi @ H ) ) ) ).
% valid_state.simps
thf(fact_727_valid__state_Oelims_I1_J,axiom,
! [X: produc9003781588162623004on_val,Y2: $o] :
( ( ( valid_state @ X )
= Y2 )
=> ~ ! [Pi6: produc1457211279475724562t_char > prat,H5: produc1457211279475724562t_char > option_val] :
( ( X
= ( produc74620467203698198on_val @ Pi6 @ H5 ) )
=> ( Y2
= ( ~ ( ( valid_mask @ Pi6 )
& ( valid_heap @ Pi6 @ H5 ) ) ) ) ) ) ).
% valid_state.elims(1)
thf(fact_728_add__states_Ocases,axiom,
! [X: produc1317171644805857433on_val] :
~ ! [Pi6: produc1457211279475724562t_char > prat,H5: produc1457211279475724562t_char > option_val,Pi7: produc1457211279475724562t_char > prat,H6: produc1457211279475724562t_char > option_val] :
( X
!= ( produc4958730763592889809on_val @ ( produc74620467203698198on_val @ Pi6 @ H5 ) @ ( produc74620467203698198on_val @ Pi7 @ H6 ) ) ) ).
% add_states.cases
thf(fact_729_valid__state_Ocases,axiom,
! [X: produc9003781588162623004on_val] :
~ ! [Pi6: produc1457211279475724562t_char > prat,H5: produc1457211279475724562t_char > option_val] :
( X
!= ( produc74620467203698198on_val @ Pi6 @ H5 ) ) ).
% valid_state.cases
thf(fact_730_Rep__state__inverse,axiom,
! [X: state] :
( ( abs_state @ ( rep_state @ X ) )
= X ) ).
% Rep_state_inverse
thf(fact_731_Rep__state__inject,axiom,
! [X: state,Y2: state] :
( ( ( rep_state @ X )
= ( rep_state @ Y2 ) )
= ( X = Y2 ) ) ).
% Rep_state_inject
thf(fact_732_valid__state__decompose,axiom,
! [A2: produc1457211279475724562t_char > prat,B2: produc1457211279475724562t_char > prat,H: produc1457211279475724562t_char > option_val] :
( ( valid_state @ ( produc74620467203698198on_val @ ( add_ma6586698345353345811t_char @ A2 @ B2 ) @ H ) )
=> ( valid_state @ ( produc74620467203698198on_val @ A2 @ H ) ) ) ).
% valid_state_decompose
thf(fact_733_valid__pre__unit,axiom,
valid_state @ ( produc74620467203698198on_val @ empty_3446695950879338768t_char @ empty_7512026568161686585ar_val ) ).
% valid_pre_unit
thf(fact_734_valid__state_Oelims_I3_J,axiom,
! [X: produc9003781588162623004on_val] :
( ~ ( valid_state @ X )
=> ~ ! [Pi6: produc1457211279475724562t_char > prat,H5: produc1457211279475724562t_char > option_val] :
( ( X
= ( produc74620467203698198on_val @ Pi6 @ H5 ) )
=> ( ( valid_mask @ Pi6 )
& ( valid_heap @ Pi6 @ H5 ) ) ) ) ).
% valid_state.elims(3)
thf(fact_735_valid__state_Oelims_I2_J,axiom,
! [X: produc9003781588162623004on_val] :
( ( valid_state @ X )
=> ~ ! [Pi6: produc1457211279475724562t_char > prat,H5: produc1457211279475724562t_char > option_val] :
( ( X
= ( produc74620467203698198on_val @ Pi6 @ H5 ) )
=> ~ ( ( valid_mask @ Pi6 )
& ( valid_heap @ Pi6 @ H5 ) ) ) ) ).
% valid_state.elims(2)
thf(fact_736_unit__def,axiom,
( unit
= ( abs_state @ ( produc74620467203698198on_val @ empty_3446695950879338768t_char @ empty_7512026568161686585ar_val ) ) ) ).
% unit_def
thf(fact_737_plus__def,axiom,
( plus
= ( ^ [A: state,B: state] : ( if_option_state @ ( compatible @ ( rep_state @ A ) @ ( rep_state @ B ) ) @ ( some_state @ ( abs_state @ ( add_states @ ( rep_state @ A ) @ ( rep_state @ B ) ) ) ) @ none_state ) ) ) ).
% plus_def
thf(fact_738_add__states_Opelims,axiom,
! [X: produc9003781588162623004on_val,Xa: produc9003781588162623004on_val,Y2: produc9003781588162623004on_val] :
( ( ( add_states @ X @ Xa )
= Y2 )
=> ( ( accp_P6797916352740768290on_val @ add_states_rel @ ( produc4958730763592889809on_val @ X @ Xa ) )
=> ~ ! [Pi6: produc1457211279475724562t_char > prat,H5: produc1457211279475724562t_char > option_val] :
( ( X
= ( produc74620467203698198on_val @ Pi6 @ H5 ) )
=> ! [Pi7: produc1457211279475724562t_char > prat,H6: produc1457211279475724562t_char > option_val] :
( ( Xa
= ( produc74620467203698198on_val @ Pi7 @ H6 ) )
=> ( ( Y2
= ( produc74620467203698198on_val @ ( add_ma6586698345353345811t_char @ Pi6 @ Pi7 ) @ ( map_ad2908576761495157028ar_val @ H5 @ H6 ) ) )
=> ~ ( accp_P6797916352740768290on_val @ add_states_rel @ ( produc4958730763592889809on_val @ ( produc74620467203698198on_val @ Pi6 @ H5 ) @ ( produc74620467203698198on_val @ Pi7 @ H6 ) ) ) ) ) ) ) ) ).
% add_states.pelims
thf(fact_739_uni__mask_Opelims,axiom,
! [X: produc1457211279475724562t_char,Xa: prat,Y2: produc1457211279475724562t_char > prat] :
( ( ( uni_ma6578582744724537101t_char @ X @ Xa )
= Y2 )
=> ( ( accp_P8956218777217113800r_prat @ uni_ma1788645471123007132t_char @ ( produc2920179824973321483r_prat @ X @ Xa ) )
=> ~ ( ( Y2
= ( fun_up829850848796697765r_prat @ empty_3446695950879338768t_char @ X @ Xa ) )
=> ~ ( accp_P8956218777217113800r_prat @ uni_ma1788645471123007132t_char @ ( produc2920179824973321483r_prat @ X @ Xa ) ) ) ) ) ).
% uni_mask.pelims
thf(fact_740_map__option__eq__Some,axiom,
! [F: state > state,Xo: option_state,Y2: state] :
( ( ( map_op2726735944305651201_state @ F @ Xo )
= ( some_state @ Y2 ) )
= ( ? [Z3: state] :
( ( Xo
= ( some_state @ Z3 ) )
& ( ( F @ Z3 )
= Y2 ) ) ) ) ).
% map_option_eq_Some
thf(fact_741_map__option__eq__Some,axiom,
! [F: val > state,Xo: option_val,Y2: state] :
( ( ( map_option_val_state @ F @ Xo )
= ( some_state @ Y2 ) )
= ( ? [Z3: val] :
( ( Xo
= ( some_val @ Z3 ) )
& ( ( F @ Z3 )
= Y2 ) ) ) ) ).
% map_option_eq_Some
thf(fact_742_map__option__eq__Some,axiom,
! [F: state > val,Xo: option_state,Y2: val] :
( ( ( map_option_state_val @ F @ Xo )
= ( some_val @ Y2 ) )
= ( ? [Z3: state] :
( ( Xo
= ( some_state @ Z3 ) )
& ( ( F @ Z3 )
= Y2 ) ) ) ) ).
% map_option_eq_Some
thf(fact_743_map__option__eq__Some,axiom,
! [F: val > val,Xo: option_val,Y2: val] :
( ( ( map_option_val_val @ F @ Xo )
= ( some_val @ Y2 ) )
= ( ? [Z3: val] :
( ( Xo
= ( some_val @ Z3 ) )
& ( ( F @ Z3 )
= Y2 ) ) ) ) ).
% map_option_eq_Some
thf(fact_744_option_Omap__disc__iff,axiom,
! [F: state > state,A2: option_state] :
( ( ( map_op2726735944305651201_state @ F @ A2 )
= none_state )
= ( A2 = none_state ) ) ).
% option.map_disc_iff
thf(fact_745_option_Omap__disc__iff,axiom,
! [F: val > state,A2: option_val] :
( ( ( map_option_val_state @ F @ A2 )
= none_state )
= ( A2 = none_val ) ) ).
% option.map_disc_iff
thf(fact_746_option_Omap__disc__iff,axiom,
! [F: state > val,A2: option_state] :
( ( ( map_option_state_val @ F @ A2 )
= none_val )
= ( A2 = none_state ) ) ).
% option.map_disc_iff
thf(fact_747_option_Omap__disc__iff,axiom,
! [F: val > val,A2: option_val] :
( ( ( map_option_val_val @ F @ A2 )
= none_val )
= ( A2 = none_val ) ) ).
% option.map_disc_iff
thf(fact_748_map__option__is__None,axiom,
! [F: state > state,Opt: option_state] :
( ( ( map_op2726735944305651201_state @ F @ Opt )
= none_state )
= ( Opt = none_state ) ) ).
% map_option_is_None
thf(fact_749_map__option__is__None,axiom,
! [F: val > state,Opt: option_val] :
( ( ( map_option_val_state @ F @ Opt )
= none_state )
= ( Opt = none_val ) ) ).
% map_option_is_None
thf(fact_750_map__option__is__None,axiom,
! [F: state > val,Opt: option_state] :
( ( ( map_option_state_val @ F @ Opt )
= none_val )
= ( Opt = none_state ) ) ).
% map_option_is_None
thf(fact_751_map__option__is__None,axiom,
! [F: val > val,Opt: option_val] :
( ( ( map_option_val_val @ F @ Opt )
= none_val )
= ( Opt = none_val ) ) ).
% map_option_is_None
thf(fact_752_None__eq__map__option__iff,axiom,
! [F: state > state,X: option_state] :
( ( none_state
= ( map_op2726735944305651201_state @ F @ X ) )
= ( X = none_state ) ) ).
% None_eq_map_option_iff
thf(fact_753_None__eq__map__option__iff,axiom,
! [F: val > state,X: option_val] :
( ( none_state
= ( map_option_val_state @ F @ X ) )
= ( X = none_val ) ) ).
% None_eq_map_option_iff
thf(fact_754_None__eq__map__option__iff,axiom,
! [F: state > val,X: option_state] :
( ( none_val
= ( map_option_state_val @ F @ X ) )
= ( X = none_state ) ) ).
% None_eq_map_option_iff
thf(fact_755_None__eq__map__option__iff,axiom,
! [F: val > val,X: option_val] :
( ( none_val
= ( map_option_val_val @ F @ X ) )
= ( X = none_val ) ) ).
% None_eq_map_option_iff
thf(fact_756_option_Osimps_I9_J,axiom,
! [F: state > state,X22: state] :
( ( map_op2726735944305651201_state @ F @ ( some_state @ X22 ) )
= ( some_state @ ( F @ X22 ) ) ) ).
% option.simps(9)
thf(fact_757_option_Osimps_I9_J,axiom,
! [F: state > val,X22: state] :
( ( map_option_state_val @ F @ ( some_state @ X22 ) )
= ( some_val @ ( F @ X22 ) ) ) ).
% option.simps(9)
thf(fact_758_option_Osimps_I9_J,axiom,
! [F: val > state,X22: val] :
( ( map_option_val_state @ F @ ( some_val @ X22 ) )
= ( some_state @ ( F @ X22 ) ) ) ).
% option.simps(9)
thf(fact_759_option_Osimps_I9_J,axiom,
! [F: val > val,X22: val] :
( ( map_option_val_val @ F @ ( some_val @ X22 ) )
= ( some_val @ ( F @ X22 ) ) ) ).
% option.simps(9)
thf(fact_760_option_Osimps_I8_J,axiom,
! [F: state > state] :
( ( map_op2726735944305651201_state @ F @ none_state )
= none_state ) ).
% option.simps(8)
thf(fact_761_option_Osimps_I8_J,axiom,
! [F: state > val] :
( ( map_option_state_val @ F @ none_state )
= none_val ) ).
% option.simps(8)
thf(fact_762_option_Osimps_I8_J,axiom,
! [F: val > state] :
( ( map_option_val_state @ F @ none_val )
= none_state ) ).
% option.simps(8)
thf(fact_763_option_Osimps_I8_J,axiom,
! [F: val > val] :
( ( map_option_val_val @ F @ none_val )
= none_val ) ).
% option.simps(8)
thf(fact_764_map__option__idI,axiom,
! [X: option8887860577033306220on_val,F: produc9003781588162623004on_val > produc9003781588162623004on_val] :
( ! [Y: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ Y @ ( set_op9004752959087400718on_val @ X ) )
=> ( ( F @ Y )
= Y ) )
=> ( ( map_op7709461780610975941on_val @ F @ X )
= X ) ) ).
% map_option_idI
thf(fact_765_option_Omap__ident__strong,axiom,
! [T: option8887860577033306220on_val,F: produc9003781588162623004on_val > produc9003781588162623004on_val] :
( ! [Z2: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ Z2 @ ( set_op9004752959087400718on_val @ T ) )
=> ( ( F @ Z2 )
= Z2 ) )
=> ( ( map_op7709461780610975941on_val @ F @ T )
= T ) ) ).
% option.map_ident_strong
thf(fact_766_add__masks_Opelims,axiom,
! [X: produc1457211279475724562t_char > prat,Xa: produc1457211279475724562t_char > prat,Xb: produc1457211279475724562t_char,Y2: prat] :
( ( ( add_ma6586698345353345811t_char @ X @ Xa @ Xb )
= Y2 )
=> ( ( accp_P224314924008452035t_char @ add_ma2412268806269088278t_char @ ( produc2957999048406202538t_char @ X @ ( produc2591414526589101846t_char @ Xa @ Xb ) ) )
=> ~ ( ( Y2
= ( padd @ ( X @ Xb ) @ ( Xa @ Xb ) ) )
=> ~ ( accp_P224314924008452035t_char @ add_ma2412268806269088278t_char @ ( produc2957999048406202538t_char @ X @ ( produc2591414526589101846t_char @ Xa @ Xb ) ) ) ) ) ) ).
% add_masks.pelims
thf(fact_767_valid__state_Opelims_I3_J,axiom,
! [X: produc9003781588162623004on_val] :
( ~ ( valid_state @ X )
=> ( ( accp_P4405556307444930259on_val @ valid_state_rel @ X )
=> ~ ! [Pi6: produc1457211279475724562t_char > prat,H5: produc1457211279475724562t_char > option_val] :
( ( X
= ( produc74620467203698198on_val @ Pi6 @ H5 ) )
=> ( ( accp_P4405556307444930259on_val @ valid_state_rel @ ( produc74620467203698198on_val @ Pi6 @ H5 ) )
=> ( ( valid_mask @ Pi6 )
& ( valid_heap @ Pi6 @ H5 ) ) ) ) ) ) ).
% valid_state.pelims(3)
thf(fact_768_valid__state_Opelims_I2_J,axiom,
! [X: produc9003781588162623004on_val] :
( ( valid_state @ X )
=> ( ( accp_P4405556307444930259on_val @ valid_state_rel @ X )
=> ~ ! [Pi6: produc1457211279475724562t_char > prat,H5: produc1457211279475724562t_char > option_val] :
( ( X
= ( produc74620467203698198on_val @ Pi6 @ H5 ) )
=> ( ( accp_P4405556307444930259on_val @ valid_state_rel @ ( produc74620467203698198on_val @ Pi6 @ H5 ) )
=> ~ ( ( valid_mask @ Pi6 )
& ( valid_heap @ Pi6 @ H5 ) ) ) ) ) ) ).
% valid_state.pelims(2)
thf(fact_769_bij__betw__apply,axiom,
! [F: produc9003781588162623004on_val > produc9003781588162623004on_val,A5: set_Pr7649655576376376530on_val,B5: set_Pr7649655576376376530on_val,A2: produc9003781588162623004on_val] :
( ( bij_be532653817181524272on_val @ F @ A5 @ B5 )
=> ( ( member2879030624002546611on_val @ A2 @ A5 )
=> ( member2879030624002546611on_val @ ( F @ A2 ) @ B5 ) ) ) ).
% bij_betw_apply
thf(fact_770_bij__betw__iff__bijections,axiom,
( bij_be532653817181524272on_val
= ( ^ [F3: produc9003781588162623004on_val > produc9003781588162623004on_val,A6: set_Pr7649655576376376530on_val,B6: set_Pr7649655576376376530on_val] :
? [G2: produc9003781588162623004on_val > produc9003781588162623004on_val] :
( ! [X3: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ X3 @ A6 )
=> ( ( member2879030624002546611on_val @ ( F3 @ X3 ) @ B6 )
& ( ( G2 @ ( F3 @ X3 ) )
= X3 ) ) )
& ! [X3: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ X3 @ B6 )
=> ( ( member2879030624002546611on_val @ ( G2 @ X3 ) @ A6 )
& ( ( F3 @ ( G2 @ X3 ) )
= X3 ) ) ) ) ) ) ).
% bij_betw_iff_bijections
thf(fact_771_notIn__Un__bij__betw3,axiom,
! [B2: produc9003781588162623004on_val,A5: set_Pr7649655576376376530on_val,F: produc9003781588162623004on_val > produc9003781588162623004on_val,A8: set_Pr7649655576376376530on_val] :
( ~ ( member2879030624002546611on_val @ B2 @ A5 )
=> ( ~ ( member2879030624002546611on_val @ ( F @ B2 ) @ A8 )
=> ( ( bij_be532653817181524272on_val @ F @ A5 @ A8 )
= ( bij_be532653817181524272on_val @ F @ ( sup_su7506060154676209150on_val @ A5 @ ( insert3030518898131756108on_val @ B2 @ bot_bo6722054719108133734on_val ) ) @ ( sup_su7506060154676209150on_val @ A8 @ ( insert3030518898131756108on_val @ ( F @ B2 ) @ bot_bo6722054719108133734on_val ) ) ) ) ) ) ).
% notIn_Un_bij_betw3
thf(fact_772_notIn__Un__bij__betw,axiom,
! [B2: produc9003781588162623004on_val,A5: set_Pr7649655576376376530on_val,F: produc9003781588162623004on_val > produc9003781588162623004on_val,A8: set_Pr7649655576376376530on_val] :
( ~ ( member2879030624002546611on_val @ B2 @ A5 )
=> ( ~ ( member2879030624002546611on_val @ ( F @ B2 ) @ A8 )
=> ( ( bij_be532653817181524272on_val @ F @ A5 @ A8 )
=> ( bij_be532653817181524272on_val @ F @ ( sup_su7506060154676209150on_val @ A5 @ ( insert3030518898131756108on_val @ B2 @ bot_bo6722054719108133734on_val ) ) @ ( sup_su7506060154676209150on_val @ A8 @ ( insert3030518898131756108on_val @ ( F @ B2 ) @ bot_bo6722054719108133734on_val ) ) ) ) ) ) ).
% notIn_Un_bij_betw
thf(fact_773_valid__state_Opelims_I1_J,axiom,
! [X: produc9003781588162623004on_val,Y2: $o] :
( ( ( valid_state @ X )
= Y2 )
=> ( ( accp_P4405556307444930259on_val @ valid_state_rel @ X )
=> ~ ! [Pi6: produc1457211279475724562t_char > prat,H5: produc1457211279475724562t_char > option_val] :
( ( X
= ( produc74620467203698198on_val @ Pi6 @ H5 ) )
=> ( ( Y2
= ( ( valid_mask @ Pi6 )
& ( valid_heap @ Pi6 @ H5 ) ) )
=> ~ ( accp_P4405556307444930259on_val @ valid_state_rel @ ( produc74620467203698198on_val @ Pi6 @ H5 ) ) ) ) ) ) ).
% valid_state.pelims(1)
thf(fact_774_comp__the__Some,axiom,
( ( comp_o4916166309651032803_state @ the_state @ some_state )
= id_state ) ).
% comp_the_Some
thf(fact_775_comp__the__Some,axiom,
( ( comp_o5604524432708427236al_val @ the_val @ some_val )
= id_val ) ).
% comp_the_Some
thf(fact_776_map__of__Cons__code_I2_J,axiom,
! [L: produc1457211279475724562t_char > prat,K: produc1457211279475724562t_char > prat,V2: produc1457211279475724562t_char > option_val,Ps: list_P8058578141249370668on_val] :
( ( ( L = K )
=> ( ( map_of8940823041123231434on_val @ ( cons_P1300772314254706406on_val @ ( produc74620467203698198on_val @ L @ V2 ) @ Ps ) @ K )
= ( some_P7669353234731512949on_val @ V2 ) ) )
& ( ( L != K )
=> ( ( map_of8940823041123231434on_val @ ( cons_P1300772314254706406on_val @ ( produc74620467203698198on_val @ L @ V2 ) @ Ps ) @ K )
= ( map_of8940823041123231434on_val @ Ps @ K ) ) ) ) ).
% map_of_Cons_code(2)
thf(fact_777_map__of__Cons__code_I2_J,axiom,
! [L: produc9003781588162623004on_val,K: produc9003781588162623004on_val,V2: produc9003781588162623004on_val,Ps: list_P5521618065476132895on_val] :
( ( ( L = K )
=> ( ( map_of2499293770471829533on_val @ ( cons_P1869654434729225551on_val @ ( produc4958730763592889809on_val @ L @ V2 ) @ Ps ) @ K )
= ( some_P2581650809551911671on_val @ V2 ) ) )
& ( ( L != K )
=> ( ( map_of2499293770471829533on_val @ ( cons_P1869654434729225551on_val @ ( produc4958730763592889809on_val @ L @ V2 ) @ Ps ) @ K )
= ( map_of2499293770471829533on_val @ Ps @ K ) ) ) ) ).
% map_of_Cons_code(2)
thf(fact_778_map__of__Cons__code_I2_J,axiom,
! [L: nat,K: nat,V2: list_char,Ps: list_P8003064839462976920t_char] :
( ( ( L = K )
=> ( ( map_of_nat_list_char @ ( cons_P6700496888814104776t_char @ ( produc120197956887798346t_char @ L @ V2 ) @ Ps ) @ K )
= ( some_list_char @ V2 ) ) )
& ( ( L != K )
=> ( ( map_of_nat_list_char @ ( cons_P6700496888814104776t_char @ ( produc120197956887798346t_char @ L @ V2 ) @ Ps ) @ K )
= ( map_of_nat_list_char @ Ps @ K ) ) ) ) ).
% map_of_Cons_code(2)
thf(fact_779_map__of__SomeD,axiom,
! [Xs: list_P8058578141249370668on_val,K: produc1457211279475724562t_char > prat,Y2: produc1457211279475724562t_char > option_val] :
( ( ( map_of8940823041123231434on_val @ Xs @ K )
= ( some_P7669353234731512949on_val @ Y2 ) )
=> ( member2879030624002546611on_val @ ( produc74620467203698198on_val @ K @ Y2 ) @ ( set_Pr1015909255637879367on_val @ Xs ) ) ) ).
% map_of_SomeD
thf(fact_780_map__of__SomeD,axiom,
! [Xs: list_P5521618065476132895on_val,K: produc9003781588162623004on_val,Y2: produc9003781588162623004on_val] :
( ( ( map_of2499293770471829533on_val @ Xs @ K )
= ( some_P2581650809551911671on_val @ Y2 ) )
=> ( member6505152944228695362on_val @ ( produc4958730763592889809on_val @ K @ Y2 ) @ ( set_Pr5935206576607725998on_val @ Xs ) ) ) ).
% map_of_SomeD
thf(fact_781_map__of__SomeD,axiom,
! [Xs: list_P8003064839462976920t_char,K: nat,Y2: list_char] :
( ( ( map_of_nat_list_char @ Xs @ K )
= ( some_list_char @ Y2 ) )
=> ( member484235747325421115t_char @ ( produc120197956887798346t_char @ K @ Y2 ) @ ( set_Pr4422032998922688679t_char @ Xs ) ) ) ).
% map_of_SomeD
thf(fact_782_weak__map__of__SomeI,axiom,
! [K: produc1457211279475724562t_char > prat,X: produc1457211279475724562t_char > option_val,L: list_P8058578141249370668on_val] :
( ( member2879030624002546611on_val @ ( produc74620467203698198on_val @ K @ X ) @ ( set_Pr1015909255637879367on_val @ L ) )
=> ? [X2: produc1457211279475724562t_char > option_val] :
( ( map_of8940823041123231434on_val @ L @ K )
= ( some_P7669353234731512949on_val @ X2 ) ) ) ).
% weak_map_of_SomeI
thf(fact_783_weak__map__of__SomeI,axiom,
! [K: produc9003781588162623004on_val,X: produc9003781588162623004on_val,L: list_P5521618065476132895on_val] :
( ( member6505152944228695362on_val @ ( produc4958730763592889809on_val @ K @ X ) @ ( set_Pr5935206576607725998on_val @ L ) )
=> ? [X2: produc9003781588162623004on_val] :
( ( map_of2499293770471829533on_val @ L @ K )
= ( some_P2581650809551911671on_val @ X2 ) ) ) ).
% weak_map_of_SomeI
thf(fact_784_weak__map__of__SomeI,axiom,
! [K: nat,X: list_char,L: list_P8003064839462976920t_char] :
( ( member484235747325421115t_char @ ( produc120197956887798346t_char @ K @ X ) @ ( set_Pr4422032998922688679t_char @ L ) )
=> ? [X2: list_char] :
( ( map_of_nat_list_char @ L @ K )
= ( some_list_char @ X2 ) ) ) ).
% weak_map_of_SomeI
thf(fact_785_map__upds__twist,axiom,
! [A2: produc9003781588162623004on_val,As: list_P8058578141249370668on_val,M: produc9003781588162623004on_val > option_state,B2: state,Bs: list_state] :
( ~ ( member2879030624002546611on_val @ A2 @ ( set_Pr1015909255637879367on_val @ As ) )
=> ( ( map_up1579866409222595534_state @ ( fun_up6681822530636708645_state @ M @ A2 @ ( some_state @ B2 ) ) @ As @ Bs )
= ( fun_up6681822530636708645_state @ ( map_up1579866409222595534_state @ M @ As @ Bs ) @ A2 @ ( some_state @ B2 ) ) ) ) ).
% map_upds_twist
thf(fact_786_map__upds__twist,axiom,
! [A2: produc9003781588162623004on_val,As: list_P8058578141249370668on_val,M: produc9003781588162623004on_val > option_val,B2: val,Bs: list_val] :
( ~ ( member2879030624002546611on_val @ A2 @ ( set_Pr1015909255637879367on_val @ As ) )
=> ( ( map_up8749164644216650349al_val @ ( fun_up8559965269643824108on_val @ M @ A2 @ ( some_val @ B2 ) ) @ As @ Bs )
= ( fun_up8559965269643824108on_val @ ( map_up8749164644216650349al_val @ M @ As @ Bs ) @ A2 @ ( some_val @ B2 ) ) ) ) ).
% map_upds_twist
thf(fact_787_dom__map__of__conv__image__fst,axiom,
! [Xys: list_P8058578141249370668on_val] :
( ( dom_Pr4152820065153570843on_val @ ( map_of8940823041123231434on_val @ Xys ) )
= ( image_3067683418878703216r_prat @ produc5239619271231976746on_val @ ( set_Pr1015909255637879367on_val @ Xys ) ) ) ).
% dom_map_of_conv_image_fst
thf(fact_788_dom__map__of__conv__image__fst,axiom,
! [Xys: list_P8003064839462976920t_char] :
( ( dom_nat_list_char @ ( map_of_nat_list_char @ Xys ) )
= ( image_3548405822317538717ar_nat @ produc6204653154488278070t_char @ ( set_Pr4422032998922688679t_char @ Xys ) ) ) ).
% dom_map_of_conv_image_fst
thf(fact_789_map__add__upds,axiom,
! [M1: produc1457211279475724562t_char > option_val,M2: produc1457211279475724562t_char > option_val,Xs: list_P8003064839462976920t_char,Ys: list_val] :
( ( map_ad2908576761495157028ar_val @ M1 @ ( map_up5062815548473444197ar_val @ M2 @ Xs @ Ys ) )
= ( map_up5062815548473444197ar_val @ ( map_ad2908576761495157028ar_val @ M1 @ M2 ) @ Xs @ Ys ) ) ).
% map_add_upds
thf(fact_790_inj__on__fst__graph,axiom,
! [M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val] : ( inj_on3812695684120442372r_prat @ produc5239619271231976746on_val @ ( graph_1288227317702120175on_val @ M ) ) ).
% inj_on_fst_graph
thf(fact_791_inj__on__fst__graph,axiom,
! [M: nat > option_list_char] : ( inj_on2499120878504899377ar_nat @ produc6204653154488278070t_char @ ( graph_nat_list_char @ M ) ) ).
% inj_on_fst_graph
thf(fact_792_map__of__eq__dom,axiom,
! [Xs: list_P8058578141249370668on_val,Ys: list_P8058578141249370668on_val] :
( ( ( map_of8940823041123231434on_val @ Xs )
= ( map_of8940823041123231434on_val @ Ys ) )
=> ( ( image_3067683418878703216r_prat @ produc5239619271231976746on_val @ ( set_Pr1015909255637879367on_val @ Xs ) )
= ( image_3067683418878703216r_prat @ produc5239619271231976746on_val @ ( set_Pr1015909255637879367on_val @ Ys ) ) ) ) ).
% map_of_eq_dom
thf(fact_793_map__of__eq__dom,axiom,
! [Xs: list_P8003064839462976920t_char,Ys: list_P8003064839462976920t_char] :
( ( ( map_of_nat_list_char @ Xs )
= ( map_of_nat_list_char @ Ys ) )
=> ( ( image_3548405822317538717ar_nat @ produc6204653154488278070t_char @ ( set_Pr4422032998922688679t_char @ Xs ) )
= ( image_3548405822317538717ar_nat @ produc6204653154488278070t_char @ ( set_Pr4422032998922688679t_char @ Ys ) ) ) ) ).
% map_of_eq_dom
thf(fact_794_graph__domD,axiom,
! [X: produc9003781588162623004on_val,M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val] :
( ( member2879030624002546611on_val @ X @ ( graph_1288227317702120175on_val @ M ) )
=> ( member2336342582916103932r_prat @ ( produc5239619271231976746on_val @ X ) @ ( dom_Pr4152820065153570843on_val @ M ) ) ) ).
% graph_domD
thf(fact_795_graph__domD,axiom,
! [X: produc1457211279475724562t_char,M: nat > option_list_char] :
( ( member484235747325421115t_char @ X @ ( graph_nat_list_char @ M ) )
=> ( member_nat @ ( produc6204653154488278070t_char @ X ) @ ( dom_nat_list_char @ M ) ) ) ).
% graph_domD
thf(fact_796_fst__graph__eq__dom,axiom,
! [M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val] :
( ( image_3067683418878703216r_prat @ produc5239619271231976746on_val @ ( graph_1288227317702120175on_val @ M ) )
= ( dom_Pr4152820065153570843on_val @ M ) ) ).
% fst_graph_eq_dom
thf(fact_797_fst__graph__eq__dom,axiom,
! [M: nat > option_list_char] :
( ( image_3548405822317538717ar_nat @ produc6204653154488278070t_char @ ( graph_nat_list_char @ M ) )
= ( dom_nat_list_char @ M ) ) ).
% fst_graph_eq_dom
thf(fact_798_get__pre_I2_J,axiom,
( get_m
= ( ^ [X3: state] : ( produc5239619271231976746on_val @ ( rep_state @ X3 ) ) ) ) ).
% get_pre(2)
thf(fact_799_get__m_Oelims,axiom,
! [X: state,Y2: produc1457211279475724562t_char > prat] :
( ( ( get_m @ X )
= Y2 )
=> ( Y2
= ( produc5239619271231976746on_val @ ( rep_state @ X ) ) ) ) ).
% get_m.elims
thf(fact_800_get__m_Osimps,axiom,
( get_m
= ( ^ [A: state] : ( produc5239619271231976746on_val @ ( rep_state @ A ) ) ) ) ).
% get_m.simps
thf(fact_801_map__of__eq__None__iff,axiom,
! [Xys: list_P5536455655026101949_state,X: produc9003781588162623004on_val] :
( ( ( map_of2328580218031654075_state @ Xys @ X )
= none_state )
= ( ~ ( member2879030624002546611on_val @ X @ ( image_3733899853514731534on_val @ produc6734235122797862491_state @ ( set_Pr5697038692337814348_state @ Xys ) ) ) ) ) ).
% map_of_eq_None_iff
thf(fact_802_map__of__eq__None__iff,axiom,
! [Xys: list_P7552871840895951722al_val,X: produc9003781588162623004on_val] :
( ( ( map_of5667034440649354688al_val @ Xys @ X )
= none_val )
= ( ~ ( member2879030624002546611on_val @ X @ ( image_8672218912373160061on_val @ produc4782051922924837920al_val @ ( set_Pr8419001214735528069al_val @ Xys ) ) ) ) ) ).
% map_of_eq_None_iff
thf(fact_803_map__of__eq__None__iff,axiom,
! [Xys: list_P8058578141249370668on_val,X: produc1457211279475724562t_char > prat] :
( ( ( map_of8940823041123231434on_val @ Xys @ X )
= none_P1334921381875262201on_val )
= ( ~ ( member2336342582916103932r_prat @ X @ ( image_3067683418878703216r_prat @ produc5239619271231976746on_val @ ( set_Pr1015909255637879367on_val @ Xys ) ) ) ) ) ).
% map_of_eq_None_iff
thf(fact_804_map__of__eq__None__iff,axiom,
! [Xys: list_P8003064839462976920t_char,X: nat] :
( ( ( map_of_nat_list_char @ Xys @ X )
= none_list_char )
= ( ~ ( member_nat @ X @ ( image_3548405822317538717ar_nat @ produc6204653154488278070t_char @ ( set_Pr4422032998922688679t_char @ Xys ) ) ) ) ) ).
% map_of_eq_None_iff
thf(fact_805_compatibleI__old,axiom,
! [Phi: produc9003781588162623004on_val,Phi2: produc9003781588162623004on_val] :
( ! [Hl: produc1457211279475724562t_char,X2: val,Y: val] :
( ( ( ( produc2319605628138516840on_val @ Phi @ Hl )
= ( some_val @ X2 ) )
& ( ( produc2319605628138516840on_val @ Phi2 @ Hl )
= ( some_val @ Y ) ) )
=> ( X2 = Y ) )
=> ( ( valid_mask @ ( add_ma6586698345353345811t_char @ ( produc5239619271231976746on_val @ Phi ) @ ( produc5239619271231976746on_val @ Phi2 ) ) )
=> ( compatible @ Phi @ Phi2 ) ) ) ).
% compatibleI_old
thf(fact_806_map__of_Osimps_I2_J,axiom,
! [P4: produc1457211279475724562t_char,Ps: list_P8003064839462976920t_char] :
( ( map_of_nat_list_char @ ( cons_P6700496888814104776t_char @ P4 @ Ps ) )
= ( fun_up4009399622604172288t_char @ ( map_of_nat_list_char @ Ps ) @ ( produc6204653154488278070t_char @ P4 ) @ ( some_list_char @ ( produc1900778367047502200t_char @ P4 ) ) ) ) ).
% map_of.simps(2)
thf(fact_807_map__of_Osimps_I2_J,axiom,
! [P4: produc9003781588162623004on_val,Ps: list_P8058578141249370668on_val] :
( ( map_of8940823041123231434on_val @ ( cons_P1300772314254706406on_val @ P4 @ Ps ) )
= ( fun_up1601731230164360576on_val @ ( map_of8940823041123231434on_val @ Ps ) @ ( produc5239619271231976746on_val @ P4 ) @ ( some_P7669353234731512949on_val @ ( produc2319605628138516840on_val @ P4 ) ) ) ) ).
% map_of.simps(2)
thf(fact_808_compatible__def,axiom,
( compatible
= ( ^ [Phi3: produc9003781588162623004on_val,Phi4: produc9003781588162623004on_val] :
( ( compatible_heaps @ ( produc2319605628138516840on_val @ Phi3 ) @ ( produc2319605628138516840on_val @ Phi4 ) )
& ( valid_mask @ ( add_ma6586698345353345811t_char @ ( produc5239619271231976746on_val @ Phi3 ) @ ( produc5239619271231976746on_val @ Phi4 ) ) ) ) ) ) ).
% compatible_def
thf(fact_809_get__h_Osimps,axiom,
( get_h
= ( ^ [A: state] : ( produc2319605628138516840on_val @ ( rep_state @ A ) ) ) ) ).
% get_h.simps
thf(fact_810_get__h_Oelims,axiom,
! [X: state,Y2: produc1457211279475724562t_char > option_val] :
( ( ( get_h @ X )
= Y2 )
=> ( Y2
= ( produc2319605628138516840on_val @ ( rep_state @ X ) ) ) ) ).
% get_h.elims
thf(fact_811_get__pre_I1_J,axiom,
( get_h
= ( ^ [X3: state] : ( produc2319605628138516840on_val @ ( rep_state @ X3 ) ) ) ) ).
% get_pre(1)
thf(fact_812_graph__ranD,axiom,
! [X: produc9003781588162623004on_val,M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val] :
( ( member2879030624002546611on_val @ X @ ( graph_1288227317702120175on_val @ M ) )
=> ( member1577473829074448177on_val @ ( produc2319605628138516840on_val @ X ) @ ( ran_Pr878516737976613822on_val @ M ) ) ) ).
% graph_ranD
thf(fact_813_snd__graph__ran,axiom,
! [M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val] :
( ( image_2330660378567450301on_val @ produc2319605628138516840on_val @ ( graph_1288227317702120175on_val @ M ) )
= ( ran_Pr878516737976613822on_val @ M ) ) ).
% snd_graph_ran
thf(fact_814_map__upd__upds__conv__if,axiom,
! [X: produc9003781588162623004on_val,Ys: list_state,Xs: list_P8058578141249370668on_val,F: produc9003781588162623004on_val > option_state,Y2: state] :
( ( ( member2879030624002546611on_val @ X @ ( set_Pr1015909255637879367on_val @ ( take_P84704344506987694on_val @ ( size_size_list_state @ Ys ) @ Xs ) ) )
=> ( ( map_up1579866409222595534_state @ ( fun_up6681822530636708645_state @ F @ X @ ( some_state @ Y2 ) ) @ Xs @ Ys )
= ( map_up1579866409222595534_state @ F @ Xs @ Ys ) ) )
& ( ~ ( member2879030624002546611on_val @ X @ ( set_Pr1015909255637879367on_val @ ( take_P84704344506987694on_val @ ( size_size_list_state @ Ys ) @ Xs ) ) )
=> ( ( map_up1579866409222595534_state @ ( fun_up6681822530636708645_state @ F @ X @ ( some_state @ Y2 ) ) @ Xs @ Ys )
= ( fun_up6681822530636708645_state @ ( map_up1579866409222595534_state @ F @ Xs @ Ys ) @ X @ ( some_state @ Y2 ) ) ) ) ) ).
% map_upd_upds_conv_if
thf(fact_815_map__upd__upds__conv__if,axiom,
! [X: produc9003781588162623004on_val,Ys: list_val,Xs: list_P8058578141249370668on_val,F: produc9003781588162623004on_val > option_val,Y2: val] :
( ( ( member2879030624002546611on_val @ X @ ( set_Pr1015909255637879367on_val @ ( take_P84704344506987694on_val @ ( size_size_list_val @ Ys ) @ Xs ) ) )
=> ( ( map_up8749164644216650349al_val @ ( fun_up8559965269643824108on_val @ F @ X @ ( some_val @ Y2 ) ) @ Xs @ Ys )
= ( map_up8749164644216650349al_val @ F @ Xs @ Ys ) ) )
& ( ~ ( member2879030624002546611on_val @ X @ ( set_Pr1015909255637879367on_val @ ( take_P84704344506987694on_val @ ( size_size_list_val @ Ys ) @ Xs ) ) )
=> ( ( map_up8749164644216650349al_val @ ( fun_up8559965269643824108on_val @ F @ X @ ( some_val @ Y2 ) ) @ Xs @ Ys )
= ( fun_up8559965269643824108on_val @ ( map_up8749164644216650349al_val @ F @ Xs @ Ys ) @ X @ ( some_val @ Y2 ) ) ) ) ) ).
% map_upd_upds_conv_if
thf(fact_816_map__of__zip__upd,axiom,
! [Ys: list_state,Xs: list_P8058578141249370668on_val,Zs: list_state,X: produc9003781588162623004on_val,Y2: state,Z: state] :
( ( ( size_size_list_state @ Ys )
= ( size_s4492361580139269312on_val @ Xs ) )
=> ( ( ( size_size_list_state @ Zs )
= ( size_s4492361580139269312on_val @ Xs ) )
=> ( ~ ( member2879030624002546611on_val @ X @ ( set_Pr1015909255637879367on_val @ Xs ) )
=> ( ( ( fun_up6681822530636708645_state @ ( map_of2328580218031654075_state @ ( zip_Pr183230366627191183_state @ Xs @ Ys ) ) @ X @ ( some_state @ Y2 ) )
= ( fun_up6681822530636708645_state @ ( map_of2328580218031654075_state @ ( zip_Pr183230366627191183_state @ Xs @ Zs ) ) @ X @ ( some_state @ Z ) ) )
=> ( ( map_of2328580218031654075_state @ ( zip_Pr183230366627191183_state @ Xs @ Ys ) )
= ( map_of2328580218031654075_state @ ( zip_Pr183230366627191183_state @ Xs @ Zs ) ) ) ) ) ) ) ).
% map_of_zip_upd
thf(fact_817_map__of__zip__upd,axiom,
! [Ys: list_val,Xs: list_P8058578141249370668on_val,Zs: list_val,X: produc9003781588162623004on_val,Y2: val,Z: val] :
( ( ( size_size_list_val @ Ys )
= ( size_s4492361580139269312on_val @ Xs ) )
=> ( ( ( size_size_list_val @ Zs )
= ( size_s4492361580139269312on_val @ Xs ) )
=> ( ~ ( member2879030624002546611on_val @ X @ ( set_Pr1015909255637879367on_val @ Xs ) )
=> ( ( ( fun_up8559965269643824108on_val @ ( map_of5667034440649354688al_val @ ( zip_Pr897381525307642348al_val @ Xs @ Ys ) ) @ X @ ( some_val @ Y2 ) )
= ( fun_up8559965269643824108on_val @ ( map_of5667034440649354688al_val @ ( zip_Pr897381525307642348al_val @ Xs @ Zs ) ) @ X @ ( some_val @ Z ) ) )
=> ( ( map_of5667034440649354688al_val @ ( zip_Pr897381525307642348al_val @ Xs @ Ys ) )
= ( map_of5667034440649354688al_val @ ( zip_Pr897381525307642348al_val @ Xs @ Zs ) ) ) ) ) ) ) ).
% map_of_zip_upd
thf(fact_818_map__of__zip__is__None,axiom,
! [Xs: list_P8058578141249370668on_val,Ys: list_state,X: produc9003781588162623004on_val] :
( ( ( size_s4492361580139269312on_val @ Xs )
= ( size_size_list_state @ Ys ) )
=> ( ( ( map_of2328580218031654075_state @ ( zip_Pr183230366627191183_state @ Xs @ Ys ) @ X )
= none_state )
= ( ~ ( member2879030624002546611on_val @ X @ ( set_Pr1015909255637879367on_val @ Xs ) ) ) ) ) ).
% map_of_zip_is_None
thf(fact_819_map__of__zip__is__None,axiom,
! [Xs: list_P8058578141249370668on_val,Ys: list_val,X: produc9003781588162623004on_val] :
( ( ( size_s4492361580139269312on_val @ Xs )
= ( size_size_list_val @ Ys ) )
=> ( ( ( map_of5667034440649354688al_val @ ( zip_Pr897381525307642348al_val @ Xs @ Ys ) @ X )
= none_val )
= ( ~ ( member2879030624002546611on_val @ X @ ( set_Pr1015909255637879367on_val @ Xs ) ) ) ) ) ).
% map_of_zip_is_None
thf(fact_820_map__of__zip__is__Some,axiom,
! [Xs: list_P8058578141249370668on_val,Ys: list_state,X: produc9003781588162623004on_val] :
( ( ( size_s4492361580139269312on_val @ Xs )
= ( size_size_list_state @ Ys ) )
=> ( ( member2879030624002546611on_val @ X @ ( set_Pr1015909255637879367on_val @ Xs ) )
= ( ? [Y3: state] :
( ( map_of2328580218031654075_state @ ( zip_Pr183230366627191183_state @ Xs @ Ys ) @ X )
= ( some_state @ Y3 ) ) ) ) ) ).
% map_of_zip_is_Some
thf(fact_821_map__of__zip__is__Some,axiom,
! [Xs: list_P8058578141249370668on_val,Ys: list_val,X: produc9003781588162623004on_val] :
( ( ( size_s4492361580139269312on_val @ Xs )
= ( size_size_list_val @ Ys ) )
=> ( ( member2879030624002546611on_val @ X @ ( set_Pr1015909255637879367on_val @ Xs ) )
= ( ? [Y3: val] :
( ( map_of5667034440649354688al_val @ ( zip_Pr897381525307642348al_val @ Xs @ Ys ) @ X )
= ( some_val @ Y3 ) ) ) ) ) ).
% map_of_zip_is_Some
thf(fact_822_map__of__zip__map,axiom,
! [Xs: list_P8058578141249370668on_val,F: produc9003781588162623004on_val > state] :
( ( map_of2328580218031654075_state @ ( zip_Pr183230366627191183_state @ Xs @ ( map_Pr4168196228874954140_state @ F @ Xs ) ) )
= ( ^ [X3: produc9003781588162623004on_val] : ( if_option_state @ ( member2879030624002546611on_val @ X3 @ ( set_Pr1015909255637879367on_val @ Xs ) ) @ ( some_state @ ( F @ X3 ) ) @ none_state ) ) ) ).
% map_of_zip_map
thf(fact_823_map__of__zip__map,axiom,
! [Xs: list_P8058578141249370668on_val,F: produc9003781588162623004on_val > val] :
( ( map_of5667034440649354688al_val @ ( zip_Pr897381525307642348al_val @ Xs @ ( map_Pr201512126527963679al_val @ F @ Xs ) ) )
= ( ^ [X3: produc9003781588162623004on_val] : ( if_option_val @ ( member2879030624002546611on_val @ X3 @ ( set_Pr1015909255637879367on_val @ Xs ) ) @ ( some_val @ ( F @ X3 ) ) @ none_val ) ) ) ).
% map_of_zip_map
thf(fact_824_map__upds__def,axiom,
( map_up5062815548473444197ar_val
= ( ^ [M4: produc1457211279475724562t_char > option_val,Xs2: list_P8003064839462976920t_char,Ys2: list_val] : ( map_ad2908576761495157028ar_val @ M4 @ ( map_of6844234013878170066ar_val @ ( rev_Pr6055279906267038332ar_val @ ( zip_Pr909124973800381606ar_val @ Xs2 @ Ys2 ) ) ) ) ) ) ).
% map_upds_def
thf(fact_825_pre__get__h_Oelims,axiom,
! [X: produc9003781588162623004on_val,Y2: produc1457211279475724562t_char > option_val] :
( ( ( pre_ge1486375753531218896on_val @ X )
= Y2 )
=> ( Y2
= ( produc2319605628138516840on_val @ X ) ) ) ).
% pre_get_h.elims
thf(fact_826_map__of__eq__Some__iff,axiom,
! [Xys: list_P5521618065476132895on_val,X: produc9003781588162623004on_val,Y2: produc9003781588162623004on_val] :
( ( distin602967888454099555on_val @ ( map_Pr2662348860696421617on_val @ produc3129717363260770749on_val @ Xys ) )
=> ( ( ( map_of2499293770471829533on_val @ Xys @ X )
= ( some_P2581650809551911671on_val @ Y2 ) )
= ( member6505152944228695362on_val @ ( produc4958730763592889809on_val @ X @ Y2 ) @ ( set_Pr5935206576607725998on_val @ Xys ) ) ) ) ).
% map_of_eq_Some_iff
thf(fact_827_map__of__eq__Some__iff,axiom,
! [Xys: list_P8058578141249370668on_val,X: produc1457211279475724562t_char > prat,Y2: produc1457211279475724562t_char > option_val] :
( ( distin8840078896927665228r_prat @ ( map_Pr7735014948560838385r_prat @ produc5239619271231976746on_val @ Xys ) )
=> ( ( ( map_of8940823041123231434on_val @ Xys @ X )
= ( some_P7669353234731512949on_val @ Y2 ) )
= ( member2879030624002546611on_val @ ( produc74620467203698198on_val @ X @ Y2 ) @ ( set_Pr1015909255637879367on_val @ Xys ) ) ) ) ).
% map_of_eq_Some_iff
thf(fact_828_map__of__eq__Some__iff,axiom,
! [Xys: list_P8003064839462976920t_char,X: nat,Y2: list_char] :
( ( distinct_nat @ ( map_Pr2525441637447625118ar_nat @ produc6204653154488278070t_char @ Xys ) )
=> ( ( ( map_of_nat_list_char @ Xys @ X )
= ( some_list_char @ Y2 ) )
= ( member484235747325421115t_char @ ( produc120197956887798346t_char @ X @ Y2 ) @ ( set_Pr4422032998922688679t_char @ Xys ) ) ) ) ).
% map_of_eq_Some_iff
thf(fact_829_Some__eq__map__of__iff,axiom,
! [Xys: list_P5521618065476132895on_val,Y2: produc9003781588162623004on_val,X: produc9003781588162623004on_val] :
( ( distin602967888454099555on_val @ ( map_Pr2662348860696421617on_val @ produc3129717363260770749on_val @ Xys ) )
=> ( ( ( some_P2581650809551911671on_val @ Y2 )
= ( map_of2499293770471829533on_val @ Xys @ X ) )
= ( member6505152944228695362on_val @ ( produc4958730763592889809on_val @ X @ Y2 ) @ ( set_Pr5935206576607725998on_val @ Xys ) ) ) ) ).
% Some_eq_map_of_iff
thf(fact_830_Some__eq__map__of__iff,axiom,
! [Xys: list_P8058578141249370668on_val,Y2: produc1457211279475724562t_char > option_val,X: produc1457211279475724562t_char > prat] :
( ( distin8840078896927665228r_prat @ ( map_Pr7735014948560838385r_prat @ produc5239619271231976746on_val @ Xys ) )
=> ( ( ( some_P7669353234731512949on_val @ Y2 )
= ( map_of8940823041123231434on_val @ Xys @ X ) )
= ( member2879030624002546611on_val @ ( produc74620467203698198on_val @ X @ Y2 ) @ ( set_Pr1015909255637879367on_val @ Xys ) ) ) ) ).
% Some_eq_map_of_iff
thf(fact_831_Some__eq__map__of__iff,axiom,
! [Xys: list_P8003064839462976920t_char,Y2: list_char,X: nat] :
( ( distinct_nat @ ( map_Pr2525441637447625118ar_nat @ produc6204653154488278070t_char @ Xys ) )
=> ( ( ( some_list_char @ Y2 )
= ( map_of_nat_list_char @ Xys @ X ) )
= ( member484235747325421115t_char @ ( produc120197956887798346t_char @ X @ Y2 ) @ ( set_Pr4422032998922688679t_char @ Xys ) ) ) ) ).
% Some_eq_map_of_iff
thf(fact_832_map__of__is__SomeI,axiom,
! [Xys: list_P5521618065476132895on_val,X: produc9003781588162623004on_val,Y2: produc9003781588162623004on_val] :
( ( distin602967888454099555on_val @ ( map_Pr2662348860696421617on_val @ produc3129717363260770749on_val @ Xys ) )
=> ( ( member6505152944228695362on_val @ ( produc4958730763592889809on_val @ X @ Y2 ) @ ( set_Pr5935206576607725998on_val @ Xys ) )
=> ( ( map_of2499293770471829533on_val @ Xys @ X )
= ( some_P2581650809551911671on_val @ Y2 ) ) ) ) ).
% map_of_is_SomeI
thf(fact_833_map__of__is__SomeI,axiom,
! [Xys: list_P8058578141249370668on_val,X: produc1457211279475724562t_char > prat,Y2: produc1457211279475724562t_char > option_val] :
( ( distin8840078896927665228r_prat @ ( map_Pr7735014948560838385r_prat @ produc5239619271231976746on_val @ Xys ) )
=> ( ( member2879030624002546611on_val @ ( produc74620467203698198on_val @ X @ Y2 ) @ ( set_Pr1015909255637879367on_val @ Xys ) )
=> ( ( map_of8940823041123231434on_val @ Xys @ X )
= ( some_P7669353234731512949on_val @ Y2 ) ) ) ) ).
% map_of_is_SomeI
thf(fact_834_map__of__is__SomeI,axiom,
! [Xys: list_P8003064839462976920t_char,X: nat,Y2: list_char] :
( ( distinct_nat @ ( map_Pr2525441637447625118ar_nat @ produc6204653154488278070t_char @ Xys ) )
=> ( ( member484235747325421115t_char @ ( produc120197956887798346t_char @ X @ Y2 ) @ ( set_Pr4422032998922688679t_char @ Xys ) )
=> ( ( map_of_nat_list_char @ Xys @ X )
= ( some_list_char @ Y2 ) ) ) ) ).
% map_of_is_SomeI
thf(fact_835_eq__key__imp__eq__value,axiom,
! [Xs: list_P5521618065476132895on_val,K: produc9003781588162623004on_val,V1: produc9003781588162623004on_val,V22: produc9003781588162623004on_val] :
( ( distin602967888454099555on_val @ ( map_Pr2662348860696421617on_val @ produc3129717363260770749on_val @ Xs ) )
=> ( ( member6505152944228695362on_val @ ( produc4958730763592889809on_val @ K @ V1 ) @ ( set_Pr5935206576607725998on_val @ Xs ) )
=> ( ( member6505152944228695362on_val @ ( produc4958730763592889809on_val @ K @ V22 ) @ ( set_Pr5935206576607725998on_val @ Xs ) )
=> ( V1 = V22 ) ) ) ) ).
% eq_key_imp_eq_value
thf(fact_836_eq__key__imp__eq__value,axiom,
! [Xs: list_P8058578141249370668on_val,K: produc1457211279475724562t_char > prat,V1: produc1457211279475724562t_char > option_val,V22: produc1457211279475724562t_char > option_val] :
( ( distin8840078896927665228r_prat @ ( map_Pr7735014948560838385r_prat @ produc5239619271231976746on_val @ Xs ) )
=> ( ( member2879030624002546611on_val @ ( produc74620467203698198on_val @ K @ V1 ) @ ( set_Pr1015909255637879367on_val @ Xs ) )
=> ( ( member2879030624002546611on_val @ ( produc74620467203698198on_val @ K @ V22 ) @ ( set_Pr1015909255637879367on_val @ Xs ) )
=> ( V1 = V22 ) ) ) ) ).
% eq_key_imp_eq_value
thf(fact_837_eq__key__imp__eq__value,axiom,
! [Xs: list_P8003064839462976920t_char,K: nat,V1: list_char,V22: list_char] :
( ( distinct_nat @ ( map_Pr2525441637447625118ar_nat @ produc6204653154488278070t_char @ Xs ) )
=> ( ( member484235747325421115t_char @ ( produc120197956887798346t_char @ K @ V1 ) @ ( set_Pr4422032998922688679t_char @ Xs ) )
=> ( ( member484235747325421115t_char @ ( produc120197956887798346t_char @ K @ V22 ) @ ( set_Pr4422032998922688679t_char @ Xs ) )
=> ( V1 = V22 ) ) ) ) ).
% eq_key_imp_eq_value
thf(fact_838_map__of__inject__set,axiom,
! [Xs: list_P8058578141249370668on_val,Ys: list_P8058578141249370668on_val] :
( ( distin8840078896927665228r_prat @ ( map_Pr7735014948560838385r_prat @ produc5239619271231976746on_val @ Xs ) )
=> ( ( distin8840078896927665228r_prat @ ( map_Pr7735014948560838385r_prat @ produc5239619271231976746on_val @ Ys ) )
=> ( ( ( map_of8940823041123231434on_val @ Xs )
= ( map_of8940823041123231434on_val @ Ys ) )
= ( ( set_Pr1015909255637879367on_val @ Xs )
= ( set_Pr1015909255637879367on_val @ Ys ) ) ) ) ) ).
% map_of_inject_set
thf(fact_839_map__of__inject__set,axiom,
! [Xs: list_P8003064839462976920t_char,Ys: list_P8003064839462976920t_char] :
( ( distinct_nat @ ( map_Pr2525441637447625118ar_nat @ produc6204653154488278070t_char @ Xs ) )
=> ( ( distinct_nat @ ( map_Pr2525441637447625118ar_nat @ produc6204653154488278070t_char @ Ys ) )
=> ( ( ( map_of_nat_list_char @ Xs )
= ( map_of_nat_list_char @ Ys ) )
= ( ( set_Pr4422032998922688679t_char @ Xs )
= ( set_Pr4422032998922688679t_char @ Ys ) ) ) ) ) ).
% map_of_inject_set
thf(fact_840_graph__map__of__if__distinct__dom,axiom,
! [Al: list_P8058578141249370668on_val] :
( ( distin8840078896927665228r_prat @ ( map_Pr7735014948560838385r_prat @ produc5239619271231976746on_val @ Al ) )
=> ( ( graph_1288227317702120175on_val @ ( map_of8940823041123231434on_val @ Al ) )
= ( set_Pr1015909255637879367on_val @ Al ) ) ) ).
% graph_map_of_if_distinct_dom
thf(fact_841_graph__map__of__if__distinct__dom,axiom,
! [Al: list_P8003064839462976920t_char] :
( ( distinct_nat @ ( map_Pr2525441637447625118ar_nat @ produc6204653154488278070t_char @ Al ) )
=> ( ( graph_nat_list_char @ ( map_of_nat_list_char @ Al ) )
= ( set_Pr4422032998922688679t_char @ Al ) ) ) ).
% graph_map_of_if_distinct_dom
thf(fact_842_map__of__eqI,axiom,
! [Xs: list_P8058578141249370668on_val,Ys: list_P8058578141249370668on_val] :
( ( ( set_Pr7516010431435912040r_prat @ ( map_Pr7735014948560838385r_prat @ produc5239619271231976746on_val @ Xs ) )
= ( set_Pr7516010431435912040r_prat @ ( map_Pr7735014948560838385r_prat @ produc5239619271231976746on_val @ Ys ) ) )
=> ( ! [X2: produc1457211279475724562t_char > prat] :
( ( member2336342582916103932r_prat @ X2 @ ( set_Pr7516010431435912040r_prat @ ( map_Pr7735014948560838385r_prat @ produc5239619271231976746on_val @ Xs ) ) )
=> ( ( map_of8940823041123231434on_val @ Xs @ X2 )
= ( map_of8940823041123231434on_val @ Ys @ X2 ) ) )
=> ( ( map_of8940823041123231434on_val @ Xs )
= ( map_of8940823041123231434on_val @ Ys ) ) ) ) ).
% map_of_eqI
thf(fact_843_map__of__eqI,axiom,
! [Xs: list_P8003064839462976920t_char,Ys: list_P8003064839462976920t_char] :
( ( ( set_nat2 @ ( map_Pr2525441637447625118ar_nat @ produc6204653154488278070t_char @ Xs ) )
= ( set_nat2 @ ( map_Pr2525441637447625118ar_nat @ produc6204653154488278070t_char @ Ys ) ) )
=> ( ! [X2: nat] :
( ( member_nat @ X2 @ ( set_nat2 @ ( map_Pr2525441637447625118ar_nat @ produc6204653154488278070t_char @ Xs ) ) )
=> ( ( map_of_nat_list_char @ Xs @ X2 )
= ( map_of_nat_list_char @ Ys @ X2 ) ) )
=> ( ( map_of_nat_list_char @ Xs )
= ( map_of_nat_list_char @ Ys ) ) ) ) ).
% map_of_eqI
thf(fact_844_ran__distinct,axiom,
! [Al: list_P8003064839462976920t_char] :
( ( distinct_nat @ ( map_Pr2525441637447625118ar_nat @ produc6204653154488278070t_char @ Al ) )
=> ( ( ran_nat_list_char @ ( map_of_nat_list_char @ Al ) )
= ( image_3034139768025083822t_char @ produc1900778367047502200t_char @ ( set_Pr4422032998922688679t_char @ Al ) ) ) ) ).
% ran_distinct
thf(fact_845_ran__distinct,axiom,
! [Al: list_P8058578141249370668on_val] :
( ( distin8840078896927665228r_prat @ ( map_Pr7735014948560838385r_prat @ produc5239619271231976746on_val @ Al ) )
=> ( ( ran_Pr878516737976613822on_val @ ( map_of8940823041123231434on_val @ Al ) )
= ( image_2330660378567450301on_val @ produc2319605628138516840on_val @ ( set_Pr1015909255637879367on_val @ Al ) ) ) ) ).
% ran_distinct
thf(fact_846_pre__get__h_Osimps,axiom,
pre_ge1486375753531218896on_val = produc2319605628138516840on_val ).
% pre_get_h.simps
thf(fact_847_pre__get__h_Opelims,axiom,
! [X: produc1317171644805857433on_val,Y2: produc9003781588162623004on_val] :
( ( ( pre_ge5139353195879713175on_val @ X )
= Y2 )
=> ( ( accp_P6797916352740768290on_val @ pre_ge7436079647097740950on_val @ X )
=> ~ ( ( Y2
= ( produc437328469718437375on_val @ X ) )
=> ~ ( accp_P6797916352740768290on_val @ pre_ge7436079647097740950on_val @ X ) ) ) ) ).
% pre_get_h.pelims
thf(fact_848_pre__get__h_Opelims,axiom,
! [X: produc9003781588162623004on_val,Y2: produc1457211279475724562t_char > option_val] :
( ( ( pre_ge1486375753531218896on_val @ X )
= Y2 )
=> ( ( accp_P4405556307444930259on_val @ pre_ge6140436789258014353on_val @ X )
=> ~ ( ( Y2
= ( produc2319605628138516840on_val @ X ) )
=> ~ ( accp_P4405556307444930259on_val @ pre_ge6140436789258014353on_val @ X ) ) ) ) ).
% pre_get_h.pelims
thf(fact_849_pre__get__m_Osimps,axiom,
pre_ge8481574585653477131on_val = produc5239619271231976746on_val ).
% pre_get_m.simps
thf(fact_850_pre__get__m_Osimps,axiom,
pre_ge2740421702909910421t_char = produc6204653154488278070t_char ).
% pre_get_m.simps
thf(fact_851_pre__get__m_Oelims,axiom,
! [X: produc9003781588162623004on_val,Y2: produc1457211279475724562t_char > prat] :
( ( ( pre_ge8481574585653477131on_val @ X )
= Y2 )
=> ( Y2
= ( produc5239619271231976746on_val @ X ) ) ) ).
% pre_get_m.elims
thf(fact_852_pre__get__m_Oelims,axiom,
! [X: produc1457211279475724562t_char,Y2: nat] :
( ( ( pre_ge2740421702909910421t_char @ X )
= Y2 )
=> ( Y2
= ( produc6204653154488278070t_char @ X ) ) ) ).
% pre_get_m.elims
thf(fact_853_pre__get__m_Opelims,axiom,
! [X: produc1317171644805857433on_val,Y2: produc9003781588162623004on_val] :
( ( ( pre_ge6899797224320663452on_val @ X )
= Y2 )
=> ( ( accp_P6797916352740768290on_val @ pre_ge1694281482089598673on_val @ X )
=> ~ ( ( Y2
= ( produc3129717363260770749on_val @ X ) )
=> ~ ( accp_P6797916352740768290on_val @ pre_ge1694281482089598673on_val @ X ) ) ) ) ).
% pre_get_m.pelims
thf(fact_854_pre__get__m_Opelims,axiom,
! [X: produc9003781588162623004on_val,Y2: produc1457211279475724562t_char > prat] :
( ( ( pre_ge8481574585653477131on_val @ X )
= Y2 )
=> ( ( accp_P4405556307444930259on_val @ pre_ge4462515927930180886on_val @ X )
=> ~ ( ( Y2
= ( produc5239619271231976746on_val @ X ) )
=> ~ ( accp_P4405556307444930259on_val @ pre_ge4462515927930180886on_val @ X ) ) ) ) ).
% pre_get_m.pelims
thf(fact_855_pre__get__m_Opelims,axiom,
! [X: produc1457211279475724562t_char,Y2: nat] :
( ( ( pre_ge2740421702909910421t_char @ X )
= Y2 )
=> ( ( accp_P8892882183480857371t_char @ pre_ge8748858970926381898t_char @ X )
=> ~ ( ( Y2
= ( produc6204653154488278070t_char @ X ) )
=> ~ ( accp_P8892882183480857371t_char @ pre_ge8748858970926381898t_char @ X ) ) ) ) ).
% pre_get_m.pelims
thf(fact_856_compatible__options_Opelims_I2_J,axiom,
! [X: option_state,Xa: option_state] :
( ( compat2278460363914054422_state @ X @ Xa )
=> ( ( accp_P7183347322223220350_state @ compat1844074344818064729_state @ ( produc9160152616361873709_state @ X @ Xa ) )
=> ( ! [A4: state] :
( ( X
= ( some_state @ A4 ) )
=> ! [B4: state] :
( ( Xa
= ( some_state @ B4 ) )
=> ( ( accp_P7183347322223220350_state @ compat1844074344818064729_state @ ( produc9160152616361873709_state @ ( some_state @ A4 ) @ ( some_state @ B4 ) ) )
=> ( A4 != B4 ) ) ) )
=> ( ( ( X = none_state )
=> ~ ( accp_P7183347322223220350_state @ compat1844074344818064729_state @ ( produc9160152616361873709_state @ none_state @ Xa ) ) )
=> ~ ( ( Xa = none_state )
=> ~ ( accp_P7183347322223220350_state @ compat1844074344818064729_state @ ( produc9160152616361873709_state @ X @ none_state ) ) ) ) ) ) ) ).
% compatible_options.pelims(2)
thf(fact_857_compatible__options_Opelims_I2_J,axiom,
! [X: option_val,Xa: option_val] :
( ( compat7209469420100717861ns_val @ X @ Xa )
=> ( ( accp_P4269981079083053040on_val @ compat8294034345482142370el_val @ ( produc904852209897547607on_val @ X @ Xa ) )
=> ( ! [A4: val] :
( ( X
= ( some_val @ A4 ) )
=> ! [B4: val] :
( ( Xa
= ( some_val @ B4 ) )
=> ( ( accp_P4269981079083053040on_val @ compat8294034345482142370el_val @ ( produc904852209897547607on_val @ ( some_val @ A4 ) @ ( some_val @ B4 ) ) )
=> ( A4 != B4 ) ) ) )
=> ( ( ( X = none_val )
=> ~ ( accp_P4269981079083053040on_val @ compat8294034345482142370el_val @ ( produc904852209897547607on_val @ none_val @ Xa ) ) )
=> ~ ( ( Xa = none_val )
=> ~ ( accp_P4269981079083053040on_val @ compat8294034345482142370el_val @ ( produc904852209897547607on_val @ X @ none_val ) ) ) ) ) ) ) ).
% compatible_options.pelims(2)
thf(fact_858_compatible__options_Opelims_I1_J,axiom,
! [X: option_state,Xa: option_state,Y2: $o] :
( ( ( compat2278460363914054422_state @ X @ Xa )
= Y2 )
=> ( ( accp_P7183347322223220350_state @ compat1844074344818064729_state @ ( produc9160152616361873709_state @ X @ Xa ) )
=> ( ! [A4: state] :
( ( X
= ( some_state @ A4 ) )
=> ! [B4: state] :
( ( Xa
= ( some_state @ B4 ) )
=> ( ( Y2
= ( A4 = B4 ) )
=> ~ ( accp_P7183347322223220350_state @ compat1844074344818064729_state @ ( produc9160152616361873709_state @ ( some_state @ A4 ) @ ( some_state @ B4 ) ) ) ) ) )
=> ( ( ( X = none_state )
=> ( Y2
=> ~ ( accp_P7183347322223220350_state @ compat1844074344818064729_state @ ( produc9160152616361873709_state @ none_state @ Xa ) ) ) )
=> ~ ( ( Xa = none_state )
=> ( Y2
=> ~ ( accp_P7183347322223220350_state @ compat1844074344818064729_state @ ( produc9160152616361873709_state @ X @ none_state ) ) ) ) ) ) ) ) ).
% compatible_options.pelims(1)
thf(fact_859_compatible__options_Opelims_I1_J,axiom,
! [X: option_val,Xa: option_val,Y2: $o] :
( ( ( compat7209469420100717861ns_val @ X @ Xa )
= Y2 )
=> ( ( accp_P4269981079083053040on_val @ compat8294034345482142370el_val @ ( produc904852209897547607on_val @ X @ Xa ) )
=> ( ! [A4: val] :
( ( X
= ( some_val @ A4 ) )
=> ! [B4: val] :
( ( Xa
= ( some_val @ B4 ) )
=> ( ( Y2
= ( A4 = B4 ) )
=> ~ ( accp_P4269981079083053040on_val @ compat8294034345482142370el_val @ ( produc904852209897547607on_val @ ( some_val @ A4 ) @ ( some_val @ B4 ) ) ) ) ) )
=> ( ( ( X = none_val )
=> ( Y2
=> ~ ( accp_P4269981079083053040on_val @ compat8294034345482142370el_val @ ( produc904852209897547607on_val @ none_val @ Xa ) ) ) )
=> ~ ( ( Xa = none_val )
=> ( Y2
=> ~ ( accp_P4269981079083053040on_val @ compat8294034345482142370el_val @ ( produc904852209897547607on_val @ X @ none_val ) ) ) ) ) ) ) ) ).
% compatible_options.pelims(1)
thf(fact_860_compatible__options_Opelims_I3_J,axiom,
! [X: option_state,Xa: option_state] :
( ~ ( compat2278460363914054422_state @ X @ Xa )
=> ( ( accp_P7183347322223220350_state @ compat1844074344818064729_state @ ( produc9160152616361873709_state @ X @ Xa ) )
=> ~ ! [A4: state] :
( ( X
= ( some_state @ A4 ) )
=> ! [B4: state] :
( ( Xa
= ( some_state @ B4 ) )
=> ( ( accp_P7183347322223220350_state @ compat1844074344818064729_state @ ( produc9160152616361873709_state @ ( some_state @ A4 ) @ ( some_state @ B4 ) ) )
=> ( A4 = B4 ) ) ) ) ) ) ).
% compatible_options.pelims(3)
thf(fact_861_compatible__options_Opelims_I3_J,axiom,
! [X: option_val,Xa: option_val] :
( ~ ( compat7209469420100717861ns_val @ X @ Xa )
=> ( ( accp_P4269981079083053040on_val @ compat8294034345482142370el_val @ ( produc904852209897547607on_val @ X @ Xa ) )
=> ~ ! [A4: val] :
( ( X
= ( some_val @ A4 ) )
=> ! [B4: val] :
( ( Xa
= ( some_val @ B4 ) )
=> ( ( accp_P4269981079083053040on_val @ compat8294034345482142370el_val @ ( produc904852209897547607on_val @ ( some_val @ A4 ) @ ( some_val @ B4 ) ) )
=> ( A4 = B4 ) ) ) ) ) ) ).
% compatible_options.pelims(3)
thf(fact_862_get__m_Opelims,axiom,
! [X: state,Y2: produc1457211279475724562t_char > prat] :
( ( ( get_m @ X )
= Y2 )
=> ( ( accp_state @ get_m_rel @ X )
=> ~ ( ( Y2
= ( produc5239619271231976746on_val @ ( rep_state @ X ) ) )
=> ~ ( accp_state @ get_m_rel @ X ) ) ) ) ).
% get_m.pelims
thf(fact_863_get__h_Opelims,axiom,
! [X: state,Y2: produc1457211279475724562t_char > option_val] :
( ( ( get_h @ X )
= Y2 )
=> ( ( accp_state @ get_h_rel @ X )
=> ~ ( ( Y2
= ( produc2319605628138516840on_val @ ( rep_state @ X ) ) )
=> ~ ( accp_state @ get_h_rel @ X ) ) ) ) ).
% get_h.pelims
thf(fact_864_find__None__iff2,axiom,
! [P: produc9003781588162623004on_val > $o,Xs: list_P8058578141249370668on_val] :
( ( none_P8728355543607141243on_val
= ( find_P7418167508921316608on_val @ P @ Xs ) )
= ( ~ ? [X3: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ X3 @ ( set_Pr1015909255637879367on_val @ Xs ) )
& ( P @ X3 ) ) ) ) ).
% find_None_iff2
thf(fact_865_find__None__iff2,axiom,
! [P: state > $o,Xs: list_state] :
( ( none_state
= ( find_state @ P @ Xs ) )
= ( ~ ? [X3: state] :
( ( member_state @ X3 @ ( set_state2 @ Xs ) )
& ( P @ X3 ) ) ) ) ).
% find_None_iff2
thf(fact_866_find__None__iff2,axiom,
! [P: val > $o,Xs: list_val] :
( ( none_val
= ( find_val @ P @ Xs ) )
= ( ~ ? [X3: val] :
( ( member_val @ X3 @ ( set_val2 @ Xs ) )
& ( P @ X3 ) ) ) ) ).
% find_None_iff2
thf(fact_867_find__None__iff,axiom,
! [P: produc9003781588162623004on_val > $o,Xs: list_P8058578141249370668on_val] :
( ( ( find_P7418167508921316608on_val @ P @ Xs )
= none_P8728355543607141243on_val )
= ( ~ ? [X3: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ X3 @ ( set_Pr1015909255637879367on_val @ Xs ) )
& ( P @ X3 ) ) ) ) ).
% find_None_iff
thf(fact_868_find__None__iff,axiom,
! [P: state > $o,Xs: list_state] :
( ( ( find_state @ P @ Xs )
= none_state )
= ( ~ ? [X3: state] :
( ( member_state @ X3 @ ( set_state2 @ Xs ) )
& ( P @ X3 ) ) ) ) ).
% find_None_iff
thf(fact_869_find__None__iff,axiom,
! [P: val > $o,Xs: list_val] :
( ( ( find_val @ P @ Xs )
= none_val )
= ( ~ ? [X3: val] :
( ( member_val @ X3 @ ( set_val2 @ Xs ) )
& ( P @ X3 ) ) ) ) ).
% find_None_iff
thf(fact_870_find_Osimps_I2_J,axiom,
! [P: state > $o,X: state,Xs: list_state] :
( ( ( P @ X )
=> ( ( find_state @ P @ ( cons_state @ X @ Xs ) )
= ( some_state @ X ) ) )
& ( ~ ( P @ X )
=> ( ( find_state @ P @ ( cons_state @ X @ Xs ) )
= ( find_state @ P @ Xs ) ) ) ) ).
% find.simps(2)
thf(fact_871_find_Osimps_I2_J,axiom,
! [P: val > $o,X: val,Xs: list_val] :
( ( ( P @ X )
=> ( ( find_val @ P @ ( cons_val @ X @ Xs ) )
= ( some_val @ X ) ) )
& ( ~ ( P @ X )
=> ( ( find_val @ P @ ( cons_val @ X @ Xs ) )
= ( find_val @ P @ Xs ) ) ) ) ).
% find.simps(2)
thf(fact_872_map__of__map__restrict,axiom,
! [F: ( produc1457211279475724562t_char > prat ) > produc1457211279475724562t_char > option_val,Ks: list_P6121108298706723033r_prat] :
( ( map_of8940823041123231434on_val
@ ( map_Pr6126389625903360171on_val
@ ^ [K2: produc1457211279475724562t_char > prat] : ( produc74620467203698198on_val @ K2 @ ( F @ K2 ) )
@ Ks ) )
= ( restri7594233908965391805on_val @ ( comp_P4400950274061688490r_prat @ some_P7669353234731512949on_val @ F ) @ ( set_Pr7516010431435912040r_prat @ Ks ) ) ) ).
% map_of_map_restrict
thf(fact_873_map__of__map__restrict,axiom,
! [F: produc9003781588162623004on_val > produc9003781588162623004on_val,Ks: list_P8058578141249370668on_val] :
( ( map_of2499293770471829533on_val
@ ( map_Pr6762588844207200055on_val
@ ^ [K2: produc9003781588162623004on_val] : ( produc4958730763592889809on_val @ K2 @ ( F @ K2 ) )
@ Ks ) )
= ( restri2354629191430751338on_val @ ( comp_P6513993558795193993on_val @ some_P2581650809551911671on_val @ F ) @ ( set_Pr1015909255637879367on_val @ Ks ) ) ) ).
% map_of_map_restrict
thf(fact_874_map__of__map__restrict,axiom,
! [F: nat > list_char,Ks: list_nat] :
( ( map_of_nat_list_char
@ ( map_na9203830342147005692t_char
@ ^ [K2: nat] : ( produc120197956887798346t_char @ K2 @ ( F @ K2 ) )
@ Ks ) )
= ( restri7497266720855523683t_char @ ( comp_l4346807716514216519ar_nat @ some_list_char @ F ) @ ( set_nat2 @ Ks ) ) ) ).
% map_of_map_restrict
thf(fact_875_empty__map__add,axiom,
! [M: produc1457211279475724562t_char > option_val] :
( ( map_ad2908576761495157028ar_val
@ ^ [X3: produc1457211279475724562t_char] : none_val
@ M )
= M ) ).
% empty_map_add
thf(fact_876_map__add__empty,axiom,
! [M: produc1457211279475724562t_char > option_val] :
( ( map_ad2908576761495157028ar_val @ M
@ ^ [X3: produc1457211279475724562t_char] : none_val )
= M ) ).
% map_add_empty
thf(fact_877_empty__eq__map__add__iff,axiom,
! [F: produc1457211279475724562t_char > option_val,G: produc1457211279475724562t_char > option_val] :
( ( ( ^ [X3: produc1457211279475724562t_char] : none_val )
= ( map_ad2908576761495157028ar_val @ F @ G ) )
= ( ( F
= ( ^ [X3: produc1457211279475724562t_char] : none_val ) )
& ( G
= ( ^ [X3: produc1457211279475724562t_char] : none_val ) ) ) ) ).
% empty_eq_map_add_iff
thf(fact_878_combine__options__def,axiom,
( combin3633514924185701883_state
= ( ^ [F3: state > state > state,X3: option_state,Y3: option_state] :
( case_o8916064052540797265_state @ Y3
@ ^ [Z3: state] :
( case_o8916064052540797265_state @ ( some_state @ Z3 )
@ ^ [Aa: state] : ( some_state @ ( F3 @ Z3 @ Aa ) )
@ Y3 )
@ X3 ) ) ) ).
% combine_options_def
thf(fact_879_combine__options__def,axiom,
( combine_options_val
= ( ^ [F3: val > val > val,X3: option_val,Y3: option_val] :
( case_o7794706883426356101al_val @ Y3
@ ^ [Z3: val] :
( case_o7794706883426356101al_val @ ( some_val @ Z3 )
@ ^ [Aa: val] : ( some_val @ ( F3 @ Z3 @ Aa ) )
@ Y3 )
@ X3 ) ) ) ).
% combine_options_def
thf(fact_880_case__optionE,axiom,
! [P: $o,Q: state > $o,X: option_state] :
( ( case_option_o_state @ P @ Q @ X )
=> ( ( ( X = none_state )
=> ~ P )
=> ~ ! [Y: state] :
( ( X
= ( some_state @ Y ) )
=> ~ ( Q @ Y ) ) ) ) ).
% case_optionE
thf(fact_881_case__optionE,axiom,
! [P: $o,Q: val > $o,X: option_val] :
( ( case_option_o_val @ P @ Q @ X )
=> ( ( ( X = none_val )
=> ~ P )
=> ~ ! [Y: val] :
( ( X
= ( some_val @ Y ) )
=> ~ ( Q @ Y ) ) ) ) ).
% case_optionE
thf(fact_882_dom__def,axiom,
( dom_Pr4448331044451638570_state
= ( ^ [M4: produc9003781588162623004on_val > option_state] :
( collec7475294502966882545on_val
@ ^ [A: produc9003781588162623004on_val] :
( ( M4 @ A )
!= none_state ) ) ) ) ).
% dom_def
thf(fact_883_dom__def,axiom,
( dom_Pr7381289304162206737al_val
= ( ^ [M4: produc9003781588162623004on_val > option_val] :
( collec7475294502966882545on_val
@ ^ [A: produc9003781588162623004on_val] :
( ( M4 @ A )
!= none_val ) ) ) ) ).
% dom_def
thf(fact_884_map__add__def,axiom,
( map_ad2908576761495157028ar_val
= ( ^ [M12: produc1457211279475724562t_char > option_val,M22: produc1457211279475724562t_char > option_val,X3: produc1457211279475724562t_char] : ( case_o7794706883426356101al_val @ ( M12 @ X3 ) @ some_val @ ( M22 @ X3 ) ) ) ) ).
% map_add_def
thf(fact_885_option_Odisc__eq__case_I1_J,axiom,
! [Option: option_state] :
( ( Option = none_state )
= ( case_option_o_state @ $true
@ ^ [Uu3: state] : $false
@ Option ) ) ).
% option.disc_eq_case(1)
thf(fact_886_option_Odisc__eq__case_I1_J,axiom,
! [Option: option_val] :
( ( Option = none_val )
= ( case_option_o_val @ $true
@ ^ [Uu3: val] : $false
@ Option ) ) ).
% option.disc_eq_case(1)
thf(fact_887_option_Odisc__eq__case_I2_J,axiom,
! [Option: option_state] :
( ( Option != none_state )
= ( case_option_o_state @ $false
@ ^ [Uu3: state] : $true
@ Option ) ) ).
% option.disc_eq_case(2)
thf(fact_888_option_Odisc__eq__case_I2_J,axiom,
! [Option: option_val] :
( ( Option != none_val )
= ( case_option_o_val @ $false
@ ^ [Uu3: val] : $true
@ Option ) ) ).
% option.disc_eq_case(2)
thf(fact_889_Option_Othese__def,axiom,
( these_state
= ( ^ [A6: set_option_state] :
( image_3532137647693456075_state @ the_state
@ ( collect_option_state
@ ^ [X3: option_state] :
( ( member_option_state @ X3 @ A6 )
& ( X3 != none_state ) ) ) ) ) ) ).
% Option.these_def
thf(fact_890_Option_Othese__def,axiom,
( these_val
= ( ^ [A6: set_option_val] :
( image_option_val_val @ the_val
@ ( collect_option_val
@ ^ [X3: option_val] :
( ( member_option_val @ X3 @ A6 )
& ( X3 != none_val ) ) ) ) ) ) ).
% Option.these_def
thf(fact_891_graph__fun__upd__None,axiom,
! [M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val,K: produc1457211279475724562t_char > prat] :
( ( graph_1288227317702120175on_val @ ( fun_up1601731230164360576on_val @ M @ K @ none_P1334921381875262201on_val ) )
= ( collec7475294502966882545on_val
@ ^ [E3: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ E3 @ ( graph_1288227317702120175on_val @ M ) )
& ( ( produc5239619271231976746on_val @ E3 )
!= K ) ) ) ) ).
% graph_fun_upd_None
thf(fact_892_graph__fun__upd__None,axiom,
! [M: nat > option_list_char,K: nat] :
( ( graph_nat_list_char @ ( fun_up4009399622604172288t_char @ M @ K @ none_list_char ) )
= ( collec2458894688891239037t_char
@ ^ [E3: produc1457211279475724562t_char] :
( ( member484235747325421115t_char @ E3 @ ( graph_nat_list_char @ M ) )
& ( ( produc6204653154488278070t_char @ E3 )
!= K ) ) ) ) ).
% graph_fun_upd_None
thf(fact_893_graph__eq__to__snd__dom,axiom,
( graph_1288227317702120175on_val
= ( ^ [M4: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val] :
( image_1459058096221225002on_val
@ ^ [X3: produc1457211279475724562t_char > prat] : ( produc74620467203698198on_val @ X3 @ ( the_Pr646328391962797958on_val @ ( M4 @ X3 ) ) )
@ ( dom_Pr4152820065153570843on_val @ M4 ) ) ) ) ).
% graph_eq_to_snd_dom
thf(fact_894_graph__eq__to__snd__dom,axiom,
( graph_6108330199704490680on_val
= ( ^ [M4: produc9003781588162623004on_val > option8887860577033306220on_val] :
( image_4249794487667743926on_val
@ ^ [X3: produc9003781588162623004on_val] : ( produc4958730763592889809on_val @ X3 @ ( the_Pr3639693038709580936on_val @ ( M4 @ X3 ) ) )
@ ( dom_Pr2742230247756046988on_val @ M4 ) ) ) ) ).
% graph_eq_to_snd_dom
thf(fact_895_graph__eq__to__snd__dom,axiom,
( graph_nat_list_char
= ( ^ [M4: nat > option_list_char] :
( image_1003422490162143483t_char
@ ^ [X3: nat] : ( produc120197956887798346t_char @ X3 @ ( the_list_char @ ( M4 @ X3 ) ) )
@ ( dom_nat_list_char @ M4 ) ) ) ) ).
% graph_eq_to_snd_dom
thf(fact_896_Some__image__these__eq,axiom,
! [A5: set_option_state] :
( ( image_6076465424260689483_state @ some_state @ ( these_state @ A5 ) )
= ( collect_option_state
@ ^ [X3: option_state] :
( ( member_option_state @ X3 @ A5 )
& ( X3 != none_state ) ) ) ) ).
% Some_image_these_eq
thf(fact_897_Some__image__these__eq,axiom,
! [A5: set_option_val] :
( ( image_val_option_val @ some_val @ ( these_val @ A5 ) )
= ( collect_option_val
@ ^ [X3: option_val] :
( ( member_option_val @ X3 @ A5 )
& ( X3 != none_val ) ) ) ) ).
% Some_image_these_eq
thf(fact_898_finite__Map__induct,axiom,
! [M: produc9003781588162623004on_val > option_state,P: ( produc9003781588162623004on_val > option_state ) > $o] :
( ( finite8324237431073730739on_val @ ( dom_Pr4448331044451638570_state @ M ) )
=> ( ( P
@ ^ [X3: produc9003781588162623004on_val] : none_state )
=> ( ! [K3: produc9003781588162623004on_val,V3: state,M6: produc9003781588162623004on_val > option_state] :
( ( finite8324237431073730739on_val @ ( dom_Pr4448331044451638570_state @ M6 ) )
=> ( ~ ( member2879030624002546611on_val @ K3 @ ( dom_Pr4448331044451638570_state @ M6 ) )
=> ( ( P @ M6 )
=> ( P @ ( fun_up6681822530636708645_state @ M6 @ K3 @ ( some_state @ V3 ) ) ) ) ) )
=> ( P @ M ) ) ) ) ).
% finite_Map_induct
thf(fact_899_finite__Map__induct,axiom,
! [M: produc9003781588162623004on_val > option_val,P: ( produc9003781588162623004on_val > option_val ) > $o] :
( ( finite8324237431073730739on_val @ ( dom_Pr7381289304162206737al_val @ M ) )
=> ( ( P
@ ^ [X3: produc9003781588162623004on_val] : none_val )
=> ( ! [K3: produc9003781588162623004on_val,V3: val,M6: produc9003781588162623004on_val > option_val] :
( ( finite8324237431073730739on_val @ ( dom_Pr7381289304162206737al_val @ M6 ) )
=> ( ~ ( member2879030624002546611on_val @ K3 @ ( dom_Pr7381289304162206737al_val @ M6 ) )
=> ( ( P @ M6 )
=> ( P @ ( fun_up8559965269643824108on_val @ M6 @ K3 @ ( some_val @ V3 ) ) ) ) ) )
=> ( P @ M ) ) ) ) ).
% finite_Map_induct
thf(fact_900_map__of__map__keys,axiom,
! [Xs: list_P6121108298706723033r_prat,M: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val] :
( ( ( set_Pr7516010431435912040r_prat @ Xs )
= ( dom_Pr4152820065153570843on_val @ M ) )
=> ( ( map_of8940823041123231434on_val
@ ( map_Pr6126389625903360171on_val
@ ^ [K2: produc1457211279475724562t_char > prat] : ( produc74620467203698198on_val @ K2 @ ( the_Pr646328391962797958on_val @ ( M @ K2 ) ) )
@ Xs ) )
= M ) ) ).
% map_of_map_keys
thf(fact_901_map__of__map__keys,axiom,
! [Xs: list_P8058578141249370668on_val,M: produc9003781588162623004on_val > option8887860577033306220on_val] :
( ( ( set_Pr1015909255637879367on_val @ Xs )
= ( dom_Pr2742230247756046988on_val @ M ) )
=> ( ( map_of2499293770471829533on_val
@ ( map_Pr6762588844207200055on_val
@ ^ [K2: produc9003781588162623004on_val] : ( produc4958730763592889809on_val @ K2 @ ( the_Pr3639693038709580936on_val @ ( M @ K2 ) ) )
@ Xs ) )
= M ) ) ).
% map_of_map_keys
thf(fact_902_map__of__map__keys,axiom,
! [Xs: list_nat,M: nat > option_list_char] :
( ( ( set_nat2 @ Xs )
= ( dom_nat_list_char @ M ) )
=> ( ( map_of_nat_list_char
@ ( map_na9203830342147005692t_char
@ ^ [K2: nat] : ( produc120197956887798346t_char @ K2 @ ( the_list_char @ ( M @ K2 ) ) )
@ Xs ) )
= M ) ) ).
% map_of_map_keys
thf(fact_903_find_Osimps_I1_J,axiom,
! [Uu: state > $o] :
( ( find_state @ Uu @ nil_state )
= none_state ) ).
% find.simps(1)
thf(fact_904_find_Osimps_I1_J,axiom,
! [Uu: val > $o] :
( ( find_val @ Uu @ nil_val )
= none_val ) ).
% find.simps(1)
thf(fact_905_set__map__of__compr,axiom,
! [Xs: list_P8058578141249370668on_val] :
( ( distin8840078896927665228r_prat @ ( map_Pr7735014948560838385r_prat @ produc5239619271231976746on_val @ Xs ) )
=> ( ( set_Pr1015909255637879367on_val @ Xs )
= ( collec7475294502966882545on_val
@ ( produc5248837549992124053_val_o
@ ^ [K2: produc1457211279475724562t_char > prat,V: produc1457211279475724562t_char > option_val] :
( ( map_of8940823041123231434on_val @ Xs @ K2 )
= ( some_P7669353234731512949on_val @ V ) ) ) ) ) ) ).
% set_map_of_compr
thf(fact_906_set__map__of__compr,axiom,
! [Xs: list_P8003064839462976920t_char] :
( ( distinct_nat @ ( map_Pr2525441637447625118ar_nat @ produc6204653154488278070t_char @ Xs ) )
=> ( ( set_Pr4422032998922688679t_char @ Xs )
= ( collec2458894688891239037t_char
@ ( produc8526122873445342073char_o
@ ^ [K2: nat,V: list_char] :
( ( map_of_nat_list_char @ Xs @ K2 )
= ( some_list_char @ V ) ) ) ) ) ) ).
% set_map_of_compr
thf(fact_907_option_Oin__rel,axiom,
( rel_op2494113632589343803t_char
= ( ^ [R3: nat > list_char > $o,A: option_nat,B: option_list_char] :
? [Z3: option2736423997234022232t_char] :
( ( member1900516542280067841t_char @ Z3
@ ( collec3561702660602934339t_char
@ ^ [X3: option2736423997234022232t_char] : ( ord_le6315511645215477266t_char @ ( set_op7440730737645789856t_char @ X3 ) @ ( collec2458894688891239037t_char @ ( produc8526122873445342073char_o @ R3 ) ) ) ) )
& ( ( map_op2304244586335077271ar_nat @ produc6204653154488278070t_char @ Z3 )
= A )
& ( ( map_op1953669867509794472t_char @ produc1900778367047502200t_char @ Z3 )
= B ) ) ) ) ).
% option.in_rel
thf(fact_908_option_Oin__rel,axiom,
( rel_op7555592896143267045on_val
= ( ^ [R3: ( produc1457211279475724562t_char > prat ) > ( produc1457211279475724562t_char > option_val ) > $o,A: option3572569098863364761r_prat,B: option5747939881698552298on_val] :
? [Z3: option8887860577033306220on_val] :
( ( member4602090469187516291on_val @ Z3
@ ( collec6281439769543645121on_val
@ ^ [X3: option8887860577033306220on_val] : ( ord_le6900622908513426738on_val @ ( set_op9004752959087400718on_val @ X3 ) @ ( collec7475294502966882545on_val @ ( produc5248837549992124053_val_o @ R3 ) ) ) ) )
& ( ( map_op457311912167326058r_prat @ produc5239619271231976746on_val @ Z3 )
= A )
& ( ( map_op5305211447164704579on_val @ produc2319605628138516840on_val @ Z3 )
= B ) ) ) ) ).
% option.in_rel
thf(fact_909_Abs__state__inverse,axiom,
! [Y2: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ Y2
@ ( collec7475294502966882545on_val
@ ^ [Uu3: produc9003781588162623004on_val] :
? [Phi3: produc9003781588162623004on_val] :
( ( Uu3 = Phi3 )
& ( valid_state @ Phi3 ) ) ) )
=> ( ( rep_state @ ( abs_state @ Y2 ) )
= Y2 ) ) ).
% Abs_state_inverse
thf(fact_910_graph__def,axiom,
( graph_1288227317702120175on_val
= ( ^ [M4: ( produc1457211279475724562t_char > prat ) > option5747939881698552298on_val] :
( collec7475294502966882545on_val
@ ^ [Uu3: produc9003781588162623004on_val] :
? [A: produc1457211279475724562t_char > prat,B: produc1457211279475724562t_char > option_val] :
( ( Uu3
= ( produc74620467203698198on_val @ A @ B ) )
& ( ( M4 @ A )
= ( some_P7669353234731512949on_val @ B ) ) ) ) ) ) ).
% graph_def
thf(fact_911_graph__def,axiom,
( graph_6108330199704490680on_val
= ( ^ [M4: produc9003781588162623004on_val > option8887860577033306220on_val] :
( collec5166231387257825412on_val
@ ^ [Uu3: produc1317171644805857433on_val] :
? [A: produc9003781588162623004on_val,B: produc9003781588162623004on_val] :
( ( Uu3
= ( produc4958730763592889809on_val @ A @ B ) )
& ( ( M4 @ A )
= ( some_P2581650809551911671on_val @ B ) ) ) ) ) ) ).
% graph_def
thf(fact_912_graph__def,axiom,
( graph_nat_list_char
= ( ^ [M4: nat > option_list_char] :
( collec2458894688891239037t_char
@ ^ [Uu3: produc1457211279475724562t_char] :
? [A: nat,B: list_char] :
( ( Uu3
= ( produc120197956887798346t_char @ A @ B ) )
& ( ( M4 @ A )
= ( some_list_char @ B ) ) ) ) ) ) ).
% graph_def
thf(fact_913_rel__option__None1,axiom,
! [P: state > state > $o,X: option_state] :
( ( rel_op4316599310523903102_state @ P @ none_state @ X )
= ( X = none_state ) ) ).
% rel_option_None1
thf(fact_914_rel__option__None1,axiom,
! [P: state > val > $o,X: option_val] :
( ( rel_option_state_val @ P @ none_state @ X )
= ( X = none_val ) ) ).
% rel_option_None1
thf(fact_915_rel__option__None1,axiom,
! [P: val > state > $o,X: option_state] :
( ( rel_option_val_state @ P @ none_val @ X )
= ( X = none_state ) ) ).
% rel_option_None1
thf(fact_916_rel__option__None1,axiom,
! [P: val > val > $o,X: option_val] :
( ( rel_option_val_val @ P @ none_val @ X )
= ( X = none_val ) ) ).
% rel_option_None1
thf(fact_917_rel__option__None2,axiom,
! [P: state > state > $o,X: option_state] :
( ( rel_op4316599310523903102_state @ P @ X @ none_state )
= ( X = none_state ) ) ).
% rel_option_None2
thf(fact_918_rel__option__None2,axiom,
! [P: val > state > $o,X: option_val] :
( ( rel_option_val_state @ P @ X @ none_state )
= ( X = none_val ) ) ).
% rel_option_None2
thf(fact_919_rel__option__None2,axiom,
! [P: state > val > $o,X: option_state] :
( ( rel_option_state_val @ P @ X @ none_val )
= ( X = none_state ) ) ).
% rel_option_None2
thf(fact_920_rel__option__None2,axiom,
! [P: val > val > $o,X: option_val] :
( ( rel_option_val_val @ P @ X @ none_val )
= ( X = none_val ) ) ).
% rel_option_None2
thf(fact_921_option_Orel__inject_I2_J,axiom,
! [R4: state > state > $o,X22: state,Y22: state] :
( ( rel_op4316599310523903102_state @ R4 @ ( some_state @ X22 ) @ ( some_state @ Y22 ) )
= ( R4 @ X22 @ Y22 ) ) ).
% option.rel_inject(2)
thf(fact_922_option_Orel__inject_I2_J,axiom,
! [R4: state > val > $o,X22: state,Y22: val] :
( ( rel_option_state_val @ R4 @ ( some_state @ X22 ) @ ( some_val @ Y22 ) )
= ( R4 @ X22 @ Y22 ) ) ).
% option.rel_inject(2)
thf(fact_923_option_Orel__inject_I2_J,axiom,
! [R4: val > state > $o,X22: val,Y22: state] :
( ( rel_option_val_state @ R4 @ ( some_val @ X22 ) @ ( some_state @ Y22 ) )
= ( R4 @ X22 @ Y22 ) ) ).
% option.rel_inject(2)
thf(fact_924_option_Orel__inject_I2_J,axiom,
! [R4: val > val > $o,X22: val,Y22: val] :
( ( rel_option_val_val @ R4 @ ( some_val @ X22 ) @ ( some_val @ Y22 ) )
= ( R4 @ X22 @ Y22 ) ) ).
% option.rel_inject(2)
thf(fact_925_option_Orel__intros_I2_J,axiom,
! [R4: state > state > $o,X22: state,Y22: state] :
( ( R4 @ X22 @ Y22 )
=> ( rel_op4316599310523903102_state @ R4 @ ( some_state @ X22 ) @ ( some_state @ Y22 ) ) ) ).
% option.rel_intros(2)
thf(fact_926_option_Orel__intros_I2_J,axiom,
! [R4: state > val > $o,X22: state,Y22: val] :
( ( R4 @ X22 @ Y22 )
=> ( rel_option_state_val @ R4 @ ( some_state @ X22 ) @ ( some_val @ Y22 ) ) ) ).
% option.rel_intros(2)
thf(fact_927_option_Orel__intros_I2_J,axiom,
! [R4: val > state > $o,X22: val,Y22: state] :
( ( R4 @ X22 @ Y22 )
=> ( rel_option_val_state @ R4 @ ( some_val @ X22 ) @ ( some_state @ Y22 ) ) ) ).
% option.rel_intros(2)
thf(fact_928_option_Orel__intros_I2_J,axiom,
! [R4: val > val > $o,X22: val,Y22: val] :
( ( R4 @ X22 @ Y22 )
=> ( rel_option_val_val @ R4 @ ( some_val @ X22 ) @ ( some_val @ Y22 ) ) ) ).
% option.rel_intros(2)
thf(fact_929_option__rel__Some1,axiom,
! [A5: state > state > $o,X: state,Y2: option_state] :
( ( rel_op4316599310523903102_state @ A5 @ ( some_state @ X ) @ Y2 )
= ( ? [Y4: state] :
( ( Y2
= ( some_state @ Y4 ) )
& ( A5 @ X @ Y4 ) ) ) ) ).
% option_rel_Some1
thf(fact_930_option__rel__Some1,axiom,
! [A5: state > val > $o,X: state,Y2: option_val] :
( ( rel_option_state_val @ A5 @ ( some_state @ X ) @ Y2 )
= ( ? [Y4: val] :
( ( Y2
= ( some_val @ Y4 ) )
& ( A5 @ X @ Y4 ) ) ) ) ).
% option_rel_Some1
thf(fact_931_option__rel__Some1,axiom,
! [A5: val > state > $o,X: val,Y2: option_state] :
( ( rel_option_val_state @ A5 @ ( some_val @ X ) @ Y2 )
= ( ? [Y4: state] :
( ( Y2
= ( some_state @ Y4 ) )
& ( A5 @ X @ Y4 ) ) ) ) ).
% option_rel_Some1
thf(fact_932_option__rel__Some1,axiom,
! [A5: val > val > $o,X: val,Y2: option_val] :
( ( rel_option_val_val @ A5 @ ( some_val @ X ) @ Y2 )
= ( ? [Y4: val] :
( ( Y2
= ( some_val @ Y4 ) )
& ( A5 @ X @ Y4 ) ) ) ) ).
% option_rel_Some1
thf(fact_933_option__rel__Some2,axiom,
! [A5: state > state > $o,X: option_state,Y2: state] :
( ( rel_op4316599310523903102_state @ A5 @ X @ ( some_state @ Y2 ) )
= ( ? [X6: state] :
( ( X
= ( some_state @ X6 ) )
& ( A5 @ X6 @ Y2 ) ) ) ) ).
% option_rel_Some2
thf(fact_934_option__rel__Some2,axiom,
! [A5: val > state > $o,X: option_val,Y2: state] :
( ( rel_option_val_state @ A5 @ X @ ( some_state @ Y2 ) )
= ( ? [X6: val] :
( ( X
= ( some_val @ X6 ) )
& ( A5 @ X6 @ Y2 ) ) ) ) ).
% option_rel_Some2
thf(fact_935_option__rel__Some2,axiom,
! [A5: state > val > $o,X: option_state,Y2: val] :
( ( rel_option_state_val @ A5 @ X @ ( some_val @ Y2 ) )
= ( ? [X6: state] :
( ( X
= ( some_state @ X6 ) )
& ( A5 @ X6 @ Y2 ) ) ) ) ).
% option_rel_Some2
thf(fact_936_option__rel__Some2,axiom,
! [A5: val > val > $o,X: option_val,Y2: val] :
( ( rel_option_val_val @ A5 @ X @ ( some_val @ Y2 ) )
= ( ? [X6: val] :
( ( X
= ( some_val @ X6 ) )
& ( A5 @ X6 @ Y2 ) ) ) ) ).
% option_rel_Some2
thf(fact_937_option_Octr__transfer_I1_J,axiom,
! [R4: state > state > $o] : ( rel_op4316599310523903102_state @ R4 @ none_state @ none_state ) ).
% option.ctr_transfer(1)
thf(fact_938_option_Octr__transfer_I1_J,axiom,
! [R4: state > val > $o] : ( rel_option_state_val @ R4 @ none_state @ none_val ) ).
% option.ctr_transfer(1)
thf(fact_939_option_Octr__transfer_I1_J,axiom,
! [R4: val > state > $o] : ( rel_option_val_state @ R4 @ none_val @ none_state ) ).
% option.ctr_transfer(1)
thf(fact_940_option_Octr__transfer_I1_J,axiom,
! [R4: val > val > $o] : ( rel_option_val_val @ R4 @ none_val @ none_val ) ).
% option.ctr_transfer(1)
thf(fact_941_rel__option__reflI,axiom,
! [Y2: option8887860577033306220on_val,P: produc9003781588162623004on_val > produc9003781588162623004on_val > $o] :
( ! [X2: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ X2 @ ( set_op9004752959087400718on_val @ Y2 ) )
=> ( P @ X2 @ X2 ) )
=> ( rel_op346525543737320258on_val @ P @ Y2 @ Y2 ) ) ).
% rel_option_reflI
thf(fact_942_option_Orel__refl__strong,axiom,
! [X: option8887860577033306220on_val,Ra: produc9003781588162623004on_val > produc9003781588162623004on_val > $o] :
( ! [Z2: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ Z2 @ ( set_op9004752959087400718on_val @ X ) )
=> ( Ra @ Z2 @ Z2 ) )
=> ( rel_op346525543737320258on_val @ Ra @ X @ X ) ) ).
% option.rel_refl_strong
thf(fact_943_option_Orel__mono__strong,axiom,
! [R4: produc9003781588162623004on_val > produc9003781588162623004on_val > $o,X: option8887860577033306220on_val,Y2: option8887860577033306220on_val,Ra: produc9003781588162623004on_val > produc9003781588162623004on_val > $o] :
( ( rel_op346525543737320258on_val @ R4 @ X @ Y2 )
=> ( ! [Z2: produc9003781588162623004on_val,Yb: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ Z2 @ ( set_op9004752959087400718on_val @ X ) )
=> ( ( member2879030624002546611on_val @ Yb @ ( set_op9004752959087400718on_val @ Y2 ) )
=> ( ( R4 @ Z2 @ Yb )
=> ( Ra @ Z2 @ Yb ) ) ) )
=> ( rel_op346525543737320258on_val @ Ra @ X @ Y2 ) ) ) ).
% option.rel_mono_strong
thf(fact_944_option_Orel__cong,axiom,
! [X: option8887860577033306220on_val,Ya: option8887860577033306220on_val,Y2: option8887860577033306220on_val,Xa: option8887860577033306220on_val,R4: produc9003781588162623004on_val > produc9003781588162623004on_val > $o,Ra: produc9003781588162623004on_val > produc9003781588162623004on_val > $o] :
( ( X = Ya )
=> ( ( Y2 = Xa )
=> ( ! [Z2: produc9003781588162623004on_val,Yb: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ Z2 @ ( set_op9004752959087400718on_val @ Ya ) )
=> ( ( member2879030624002546611on_val @ Yb @ ( set_op9004752959087400718on_val @ Xa ) )
=> ( ( R4 @ Z2 @ Yb )
= ( Ra @ Z2 @ Yb ) ) ) )
=> ( ( rel_op346525543737320258on_val @ R4 @ X @ Y2 )
= ( rel_op346525543737320258on_val @ Ra @ Ya @ Xa ) ) ) ) ) ).
% option.rel_cong
thf(fact_945_option_Orel__distinct_I2_J,axiom,
! [R4: state > state > $o,Y22: state] :
~ ( rel_op4316599310523903102_state @ R4 @ ( some_state @ Y22 ) @ none_state ) ).
% option.rel_distinct(2)
thf(fact_946_option_Orel__distinct_I2_J,axiom,
! [R4: state > val > $o,Y22: state] :
~ ( rel_option_state_val @ R4 @ ( some_state @ Y22 ) @ none_val ) ).
% option.rel_distinct(2)
thf(fact_947_option_Orel__distinct_I2_J,axiom,
! [R4: val > state > $o,Y22: val] :
~ ( rel_option_val_state @ R4 @ ( some_val @ Y22 ) @ none_state ) ).
% option.rel_distinct(2)
thf(fact_948_option_Orel__distinct_I2_J,axiom,
! [R4: val > val > $o,Y22: val] :
~ ( rel_option_val_val @ R4 @ ( some_val @ Y22 ) @ none_val ) ).
% option.rel_distinct(2)
thf(fact_949_option_Orel__distinct_I1_J,axiom,
! [R4: state > state > $o,Y22: state] :
~ ( rel_op4316599310523903102_state @ R4 @ none_state @ ( some_state @ Y22 ) ) ).
% option.rel_distinct(1)
thf(fact_950_option_Orel__distinct_I1_J,axiom,
! [R4: val > state > $o,Y22: state] :
~ ( rel_option_val_state @ R4 @ none_val @ ( some_state @ Y22 ) ) ).
% option.rel_distinct(1)
thf(fact_951_option_Orel__distinct_I1_J,axiom,
! [R4: state > val > $o,Y22: val] :
~ ( rel_option_state_val @ R4 @ none_state @ ( some_val @ Y22 ) ) ).
% option.rel_distinct(1)
thf(fact_952_option_Orel__distinct_I1_J,axiom,
! [R4: val > val > $o,Y22: val] :
~ ( rel_option_val_val @ R4 @ none_val @ ( some_val @ Y22 ) ) ).
% option.rel_distinct(1)
thf(fact_953_option_Orel__cases,axiom,
! [R4: state > state > $o,A2: option_state,B2: option_state] :
( ( rel_op4316599310523903102_state @ R4 @ A2 @ B2 )
=> ( ( ( A2 = none_state )
=> ( B2 != none_state ) )
=> ~ ! [X2: state] :
( ( A2
= ( some_state @ X2 ) )
=> ! [Y: state] :
( ( B2
= ( some_state @ Y ) )
=> ~ ( R4 @ X2 @ Y ) ) ) ) ) ).
% option.rel_cases
thf(fact_954_option_Orel__cases,axiom,
! [R4: state > val > $o,A2: option_state,B2: option_val] :
( ( rel_option_state_val @ R4 @ A2 @ B2 )
=> ( ( ( A2 = none_state )
=> ( B2 != none_val ) )
=> ~ ! [X2: state] :
( ( A2
= ( some_state @ X2 ) )
=> ! [Y: val] :
( ( B2
= ( some_val @ Y ) )
=> ~ ( R4 @ X2 @ Y ) ) ) ) ) ).
% option.rel_cases
thf(fact_955_option_Orel__cases,axiom,
! [R4: val > state > $o,A2: option_val,B2: option_state] :
( ( rel_option_val_state @ R4 @ A2 @ B2 )
=> ( ( ( A2 = none_val )
=> ( B2 != none_state ) )
=> ~ ! [X2: val] :
( ( A2
= ( some_val @ X2 ) )
=> ! [Y: state] :
( ( B2
= ( some_state @ Y ) )
=> ~ ( R4 @ X2 @ Y ) ) ) ) ) ).
% option.rel_cases
thf(fact_956_option_Orel__cases,axiom,
! [R4: val > val > $o,A2: option_val,B2: option_val] :
( ( rel_option_val_val @ R4 @ A2 @ B2 )
=> ( ( ( A2 = none_val )
=> ( B2 != none_val ) )
=> ~ ! [X2: val] :
( ( A2
= ( some_val @ X2 ) )
=> ! [Y: val] :
( ( B2
= ( some_val @ Y ) )
=> ~ ( R4 @ X2 @ Y ) ) ) ) ) ).
% option.rel_cases
thf(fact_957_option_Orel__induct,axiom,
! [R4: state > state > $o,X: option_state,Y2: option_state,Q: option_state > option_state > $o] :
( ( rel_op4316599310523903102_state @ R4 @ X @ Y2 )
=> ( ( Q @ none_state @ none_state )
=> ( ! [A22: state,B22: state] :
( ( R4 @ A22 @ B22 )
=> ( Q @ ( some_state @ A22 ) @ ( some_state @ B22 ) ) )
=> ( Q @ X @ Y2 ) ) ) ) ).
% option.rel_induct
thf(fact_958_option_Orel__induct,axiom,
! [R4: state > val > $o,X: option_state,Y2: option_val,Q: option_state > option_val > $o] :
( ( rel_option_state_val @ R4 @ X @ Y2 )
=> ( ( Q @ none_state @ none_val )
=> ( ! [A22: state,B22: val] :
( ( R4 @ A22 @ B22 )
=> ( Q @ ( some_state @ A22 ) @ ( some_val @ B22 ) ) )
=> ( Q @ X @ Y2 ) ) ) ) ).
% option.rel_induct
thf(fact_959_option_Orel__induct,axiom,
! [R4: val > state > $o,X: option_val,Y2: option_state,Q: option_val > option_state > $o] :
( ( rel_option_val_state @ R4 @ X @ Y2 )
=> ( ( Q @ none_val @ none_state )
=> ( ! [A22: val,B22: state] :
( ( R4 @ A22 @ B22 )
=> ( Q @ ( some_val @ A22 ) @ ( some_state @ B22 ) ) )
=> ( Q @ X @ Y2 ) ) ) ) ).
% option.rel_induct
thf(fact_960_option_Orel__induct,axiom,
! [R4: val > val > $o,X: option_val,Y2: option_val,Q: option_val > option_val > $o] :
( ( rel_option_val_val @ R4 @ X @ Y2 )
=> ( ( Q @ none_val @ none_val )
=> ( ! [A22: val,B22: val] :
( ( R4 @ A22 @ B22 )
=> ( Q @ ( some_val @ A22 ) @ ( some_val @ B22 ) ) )
=> ( Q @ X @ Y2 ) ) ) ) ).
% option.rel_induct
thf(fact_961_option_Orel__sel,axiom,
( rel_op4316599310523903102_state
= ( ^ [R3: state > state > $o,A: option_state,B: option_state] :
( ( ( A = none_state )
= ( B = none_state ) )
& ( ( A != none_state )
=> ( ( B != none_state )
=> ( R3 @ ( the_state @ A ) @ ( the_state @ B ) ) ) ) ) ) ) ).
% option.rel_sel
thf(fact_962_option_Orel__sel,axiom,
( rel_option_state_val
= ( ^ [R3: state > val > $o,A: option_state,B: option_val] :
( ( ( A = none_state )
= ( B = none_val ) )
& ( ( A != none_state )
=> ( ( B != none_val )
=> ( R3 @ ( the_state @ A ) @ ( the_val @ B ) ) ) ) ) ) ) ).
% option.rel_sel
thf(fact_963_option_Orel__sel,axiom,
( rel_option_val_state
= ( ^ [R3: val > state > $o,A: option_val,B: option_state] :
( ( ( A = none_val )
= ( B = none_state ) )
& ( ( A != none_val )
=> ( ( B != none_state )
=> ( R3 @ ( the_val @ A ) @ ( the_state @ B ) ) ) ) ) ) ) ).
% option.rel_sel
thf(fact_964_option_Orel__sel,axiom,
( rel_option_val_val
= ( ^ [R3: val > val > $o,A: option_val,B: option_val] :
( ( ( A = none_val )
= ( B = none_val ) )
& ( ( A != none_val )
=> ( ( B != none_val )
=> ( R3 @ ( the_val @ A ) @ ( the_val @ B ) ) ) ) ) ) ) ).
% option.rel_sel
thf(fact_965_Rep__state,axiom,
! [X: state] :
( member2879030624002546611on_val @ ( rep_state @ X )
@ ( collec7475294502966882545on_val
@ ^ [Uu3: produc9003781588162623004on_val] :
? [Phi3: produc9003781588162623004on_val] :
( ( Uu3 = Phi3 )
& ( valid_state @ Phi3 ) ) ) ) ).
% Rep_state
thf(fact_966_Rep__state__cases,axiom,
! [Y2: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ Y2 @ ( collec7475294502966882545on_val @ valid_state ) )
=> ~ ! [X2: state] :
( Y2
!= ( rep_state @ X2 ) ) ) ).
% Rep_state_cases
thf(fact_967_Rep__state__induct,axiom,
! [Y2: produc9003781588162623004on_val,P: produc9003781588162623004on_val > $o] :
( ( member2879030624002546611on_val @ Y2
@ ( collec7475294502966882545on_val
@ ^ [Uu3: produc9003781588162623004on_val] :
? [Phi3: produc9003781588162623004on_val] :
( ( Uu3 = Phi3 )
& ( valid_state @ Phi3 ) ) ) )
=> ( ! [X2: state] : ( P @ ( rep_state @ X2 ) )
=> ( P @ Y2 ) ) ) ).
% Rep_state_induct
thf(fact_968_Abs__state__cases,axiom,
! [X: state] :
~ ! [Y: produc9003781588162623004on_val] :
( ( X
= ( abs_state @ Y ) )
=> ~ ( member2879030624002546611on_val @ Y @ ( collec7475294502966882545on_val @ valid_state ) ) ) ).
% Abs_state_cases
thf(fact_969_Abs__state__induct,axiom,
! [P: state > $o,X: state] :
( ! [Y: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ Y
@ ( collec7475294502966882545on_val
@ ^ [Uu3: produc9003781588162623004on_val] :
? [Phi3: produc9003781588162623004on_val] :
( ( Uu3 = Phi3 )
& ( valid_state @ Phi3 ) ) ) )
=> ( P @ ( abs_state @ Y ) ) )
=> ( P @ X ) ) ).
% Abs_state_induct
thf(fact_970_Abs__state__inject,axiom,
! [X: produc9003781588162623004on_val,Y2: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ X
@ ( collec7475294502966882545on_val
@ ^ [Uu3: produc9003781588162623004on_val] :
? [Phi3: produc9003781588162623004on_val] :
( ( Uu3 = Phi3 )
& ( valid_state @ Phi3 ) ) ) )
=> ( ( member2879030624002546611on_val @ Y2
@ ( collec7475294502966882545on_val
@ ^ [Uu3: produc9003781588162623004on_val] :
? [Phi3: produc9003781588162623004on_val] :
( ( Uu3 = Phi3 )
& ( valid_state @ Phi3 ) ) ) )
=> ( ( ( abs_state @ X )
= ( abs_state @ Y2 ) )
= ( X = Y2 ) ) ) ) ).
% Abs_state_inject
thf(fact_971_type__definition__state,axiom,
( type_d7385716227342696708on_val @ rep_state @ abs_state
@ ( collec7475294502966882545on_val
@ ^ [Uu3: produc9003781588162623004on_val] :
? [Phi3: produc9003781588162623004on_val] :
( ( Uu3 = Phi3 )
& ( valid_state @ Phi3 ) ) ) ) ).
% type_definition_state
thf(fact_972_map__of__append,axiom,
! [Xs: list_P375024181684815772ar_val,Ys: list_P375024181684815772ar_val] :
( ( map_of6844234013878170066ar_val @ ( append2405376958821693873ar_val @ Xs @ Ys ) )
= ( map_ad2908576761495157028ar_val @ ( map_of6844234013878170066ar_val @ Ys ) @ ( map_of6844234013878170066ar_val @ Xs ) ) ) ).
% map_of_append
thf(fact_973_valid__maskI,axiom,
! [Pi: produc1457211279475724562t_char > prat] :
( ! [Hl: produc1457211279475724562t_char] : ( pgte @ pwrite @ ( Pi @ Hl ) )
=> ( ! [F4: list_char] :
( ( Pi @ ( produc120197956887798346t_char @ null_nat @ F4 ) )
= pnone )
=> ( valid_mask @ Pi ) ) ) ).
% valid_maskI
thf(fact_974_valid__mask_Osimps,axiom,
( valid_mask
= ( ^ [Pi4: produc1457211279475724562t_char > prat] :
( ! [Hl2: produc1457211279475724562t_char] : ( pgte @ pwrite @ ( Pi4 @ Hl2 ) )
& ! [F3: list_char] :
( ( Pi4 @ ( produc120197956887798346t_char @ null_nat @ F3 ) )
= pnone ) ) ) ) ).
% valid_mask.simps
thf(fact_975_valid__null__def,axiom,
( valid_null
= ( ^ [Pi4: produc1457211279475724562t_char > prat] :
! [F3: list_char] :
( ( Pi4 @ ( produc120197956887798346t_char @ null_nat @ F3 ) )
= pnone ) ) ) ).
% valid_null_def
thf(fact_976_ppos__eq__pnone,axiom,
( ppos
= ( ^ [P5: prat] : ( P5 != pnone ) ) ) ).
% ppos_eq_pnone
thf(fact_977_empty__mask_Osimps,axiom,
( empty_3446695950879338768t_char
= ( ^ [Hl2: produc1457211279475724562t_char] : pnone ) ) ).
% empty_mask.simps
thf(fact_978_empty__mask_Oelims,axiom,
! [X: produc1457211279475724562t_char,Y2: prat] :
( ( ( empty_3446695950879338768t_char @ X )
= Y2 )
=> ( Y2 = pnone ) ) ).
% empty_mask.elims
thf(fact_979_full__mask__def,axiom,
( full_mask
= ( ^ [Hl2: produc1457211279475724562t_char] :
( if_prat
@ ( ( produc6204653154488278070t_char @ Hl2 )
= null_nat )
@ pnone
@ pwrite ) ) ) ).
% full_mask_def
thf(fact_980_valid__mask_Oelims_I3_J,axiom,
! [X: produc1457211279475724562t_char > prat] :
( ~ ( valid_mask @ X )
=> ~ ( ! [Hl: produc1457211279475724562t_char] : ( pgte @ pwrite @ ( X @ Hl ) )
& ! [F4: list_char] :
( ( X @ ( produc120197956887798346t_char @ null_nat @ F4 ) )
= pnone ) ) ) ).
% valid_mask.elims(3)
thf(fact_981_valid__mask_Oelims_I2_J,axiom,
! [X: produc1457211279475724562t_char > prat] :
( ( valid_mask @ X )
=> ( ! [Hl4: produc1457211279475724562t_char] : ( pgte @ pwrite @ ( X @ Hl4 ) )
& ! [F5: list_char] :
( ( X @ ( produc120197956887798346t_char @ null_nat @ F5 ) )
= pnone ) ) ) ).
% valid_mask.elims(2)
thf(fact_982_valid__mask_Oelims_I1_J,axiom,
! [X: produc1457211279475724562t_char > prat,Y2: $o] :
( ( ( valid_mask @ X )
= Y2 )
=> ( Y2
= ( ! [Hl2: produc1457211279475724562t_char] : ( pgte @ pwrite @ ( X @ Hl2 ) )
& ! [F3: list_char] :
( ( X @ ( produc120197956887798346t_char @ null_nat @ F3 ) )
= pnone ) ) ) ) ).
% valid_mask.elims(1)
thf(fact_983_empty__mask_Opelims,axiom,
! [X: produc1457211279475724562t_char,Y2: prat] :
( ( ( empty_3446695950879338768t_char @ X )
= Y2 )
=> ( ( accp_P8892882183480857371t_char @ empty_8141283858255108185t_char @ X )
=> ~ ( ( Y2 = pnone )
=> ~ ( accp_P8892882183480857371t_char @ empty_8141283858255108185t_char @ X ) ) ) ) ).
% empty_mask.pelims
thf(fact_984_empty__mask_Opelims,axiom,
! [X: produc1317171644805857433on_val,Y2: prat] :
( ( ( empty_4129289814623480215on_val @ X )
= Y2 )
=> ( ( accp_P6797916352740768290on_val @ empty_1698368654852286560on_val @ X )
=> ~ ( ( Y2 = pnone )
=> ~ ( accp_P6797916352740768290on_val @ empty_1698368654852286560on_val @ X ) ) ) ) ).
% empty_mask.pelims
thf(fact_985_empty__mask_Opelims,axiom,
! [X: produc9003781588162623004on_val,Y2: prat] :
( ( ( empty_6102255041883331742on_val @ X )
= Y2 )
=> ( ( accp_P4405556307444930259on_val @ empty_5847456986941130773on_val @ X )
=> ~ ( ( Y2 = pnone )
=> ~ ( accp_P4405556307444930259on_val @ empty_5847456986941130773on_val @ X ) ) ) ) ).
% empty_mask.pelims
thf(fact_986_empty__mask_Opelims,axiom,
! [X: state,Y2: prat] :
( ( ( empty_mask_state @ X )
= Y2 )
=> ( ( accp_state @ empty_mask_rel_state @ X )
=> ~ ( ( Y2 = pnone )
=> ~ ( accp_state @ empty_mask_rel_state @ X ) ) ) ) ).
% empty_mask.pelims
thf(fact_987_empty__mask_Opelims,axiom,
! [X: produc1457211279475724562t_char > prat,Y2: prat] :
( ( ( empty_6616431780912394577r_prat @ X )
= Y2 )
=> ( ( accp_P4765339447491148764r_prat @ empty_3412554051312619034r_prat @ X )
=> ~ ( ( Y2 = pnone )
=> ~ ( accp_P4765339447491148764r_prat @ empty_3412554051312619034r_prat @ X ) ) ) ) ).
% empty_mask.pelims
thf(fact_988_valid__mask_Opelims_I3_J,axiom,
! [X: produc1457211279475724562t_char > prat] :
( ~ ( valid_mask @ X )
=> ( ( accp_P4765339447491148764r_prat @ valid_mask_rel @ X )
=> ~ ( ( accp_P4765339447491148764r_prat @ valid_mask_rel @ X )
=> ( ! [Hl: produc1457211279475724562t_char] : ( pgte @ pwrite @ ( X @ Hl ) )
& ! [F4: list_char] :
( ( X @ ( produc120197956887798346t_char @ null_nat @ F4 ) )
= pnone ) ) ) ) ) ).
% valid_mask.pelims(3)
thf(fact_989_valid__mask_Opelims_I2_J,axiom,
! [X: produc1457211279475724562t_char > prat] :
( ( valid_mask @ X )
=> ( ( accp_P4765339447491148764r_prat @ valid_mask_rel @ X )
=> ~ ( ( accp_P4765339447491148764r_prat @ valid_mask_rel @ X )
=> ~ ( ! [Hl4: produc1457211279475724562t_char] : ( pgte @ pwrite @ ( X @ Hl4 ) )
& ! [F5: list_char] :
( ( X @ ( produc120197956887798346t_char @ null_nat @ F5 ) )
= pnone ) ) ) ) ) ).
% valid_mask.pelims(2)
thf(fact_990_valid__mask_Opelims_I1_J,axiom,
! [X: produc1457211279475724562t_char > prat,Y2: $o] :
( ( ( valid_mask @ X )
= Y2 )
=> ( ( accp_P4765339447491148764r_prat @ valid_mask_rel @ X )
=> ~ ( ( Y2
= ( ! [Hl2: produc1457211279475724562t_char] : ( pgte @ pwrite @ ( X @ Hl2 ) )
& ! [F3: list_char] :
( ( X @ ( produc120197956887798346t_char @ null_nat @ F3 ) )
= pnone ) ) )
=> ~ ( accp_P4765339447491148764r_prat @ valid_mask_rel @ X ) ) ) ) ).
% valid_mask.pelims(1)
thf(fact_991_option_Orel__compp__Grp,axiom,
( rel_op2494113632589343803t_char
= ( ^ [R3: nat > list_char > $o] :
( relcom4704765297650120440t_char
@ ( conver779780868667509187on_nat
@ ( bNF_Gr8209631520120356778on_nat
@ ( collec3561702660602934339t_char
@ ^ [X3: option2736423997234022232t_char] : ( ord_le6315511645215477266t_char @ ( set_op7440730737645789856t_char @ X3 ) @ ( collec2458894688891239037t_char @ ( produc8526122873445342073char_o @ R3 ) ) ) )
@ ( map_op2304244586335077271ar_nat @ produc6204653154488278070t_char ) ) )
@ ( bNF_Gr8228872360220102203t_char
@ ( collec3561702660602934339t_char
@ ^ [X3: option2736423997234022232t_char] : ( ord_le6315511645215477266t_char @ ( set_op7440730737645789856t_char @ X3 ) @ ( collec2458894688891239037t_char @ ( produc8526122873445342073char_o @ R3 ) ) ) )
@ ( map_op1953669867509794472t_char @ produc1900778367047502200t_char ) ) ) ) ) ).
% option.rel_compp_Grp
thf(fact_992_option_Orel__compp__Grp,axiom,
( rel_op7555592896143267045on_val
= ( ^ [R3: ( produc1457211279475724562t_char > prat ) > ( produc1457211279475724562t_char > option_val ) > $o] :
( relcom6540676319459279872on_val
@ ( conver7264604305941033974r_prat
@ ( bNF_Gr4505501571886485853r_prat
@ ( collec6281439769543645121on_val
@ ^ [X3: option8887860577033306220on_val] : ( ord_le6900622908513426738on_val @ ( set_op9004752959087400718on_val @ X3 ) @ ( collec7475294502966882545on_val @ ( produc5248837549992124053_val_o @ R3 ) ) ) )
@ ( map_op457311912167326058r_prat @ produc5239619271231976746on_val ) ) )
@ ( bNF_Gr7204040508389623334on_val
@ ( collec6281439769543645121on_val
@ ^ [X3: option8887860577033306220on_val] : ( ord_le6900622908513426738on_val @ ( set_op9004752959087400718on_val @ X3 ) @ ( collec7475294502966882545on_val @ ( produc5248837549992124053_val_o @ R3 ) ) ) )
@ ( map_op5305211447164704579on_val @ produc2319605628138516840on_val ) ) ) ) ) ).
% option.rel_compp_Grp
thf(fact_993_find__Some__iff,axiom,
! [P: state > $o,Xs: list_state,X: state] :
( ( ( find_state @ P @ Xs )
= ( some_state @ X ) )
= ( ? [I: nat] :
( ( ord_less_nat @ I @ ( size_size_list_state @ Xs ) )
& ( P @ ( nth_state @ Xs @ I ) )
& ( X
= ( nth_state @ Xs @ I ) )
& ! [J: nat] :
( ( ord_less_nat @ J @ I )
=> ~ ( P @ ( nth_state @ Xs @ J ) ) ) ) ) ) ).
% find_Some_iff
thf(fact_994_find__Some__iff,axiom,
! [P: val > $o,Xs: list_val,X: val] :
( ( ( find_val @ P @ Xs )
= ( some_val @ X ) )
= ( ? [I: nat] :
( ( ord_less_nat @ I @ ( size_size_list_val @ Xs ) )
& ( P @ ( nth_val @ Xs @ I ) )
& ( X
= ( nth_val @ Xs @ I ) )
& ! [J: nat] :
( ( ord_less_nat @ J @ I )
=> ~ ( P @ ( nth_val @ Xs @ J ) ) ) ) ) ) ).
% find_Some_iff
thf(fact_995_find__Some__iff2,axiom,
! [X: state,P: state > $o,Xs: list_state] :
( ( ( some_state @ X )
= ( find_state @ P @ Xs ) )
= ( ? [I: nat] :
( ( ord_less_nat @ I @ ( size_size_list_state @ Xs ) )
& ( P @ ( nth_state @ Xs @ I ) )
& ( X
= ( nth_state @ Xs @ I ) )
& ! [J: nat] :
( ( ord_less_nat @ J @ I )
=> ~ ( P @ ( nth_state @ Xs @ J ) ) ) ) ) ) ).
% find_Some_iff2
thf(fact_996_find__Some__iff2,axiom,
! [X: val,P: val > $o,Xs: list_val] :
( ( ( some_val @ X )
= ( find_val @ P @ Xs ) )
= ( ? [I: nat] :
( ( ord_less_nat @ I @ ( size_size_list_val @ Xs ) )
& ( P @ ( nth_val @ Xs @ I ) )
& ( X
= ( nth_val @ Xs @ I ) )
& ! [J: nat] :
( ( ord_less_nat @ J @ I )
=> ~ ( P @ ( nth_val @ Xs @ J ) ) ) ) ) ) ).
% find_Some_iff2
thf(fact_997_map__add__map__of__foldr,axiom,
! [M: produc1457211279475724562t_char > option_val,Ps: list_P375024181684815772ar_val] :
( ( map_ad2908576761495157028ar_val @ M @ ( map_of6844234013878170066ar_val @ Ps ) )
= ( foldr_426452288693369417on_val
@ ( produc6541823961022407022on_val
@ ^ [K2: produc1457211279475724562t_char,V: val,M4: produc1457211279475724562t_char > option_val] : ( fun_up5735975307950539954on_val @ M4 @ K2 @ ( some_val @ V ) ) )
@ Ps
@ M ) ) ).
% map_add_map_of_foldr
thf(fact_998_semilattice__set_Oeq__fold_H,axiom,
! [F: state > state > state,A5: set_state] :
( ( lattic1830746154417612460_state @ F )
=> ( ( lattic8707496982837646688_state @ F @ A5 )
= ( the_state
@ ( finite8091670487289438734_state
@ ^ [X3: state,Y3: option_state] : ( some_state @ ( case_o2102410670496921089_state @ X3 @ ( F @ X3 ) @ Y3 ) )
@ none_state
@ A5 ) ) ) ) ).
% semilattice_set.eq_fold'
thf(fact_999_semilattice__set_Oeq__fold_H,axiom,
! [F: val > val > val,A5: set_val] :
( ( lattic1688671459694253327et_val @ F )
=> ( ( lattic7553830378228561755_F_val @ F @ A5 )
= ( the_val
@ ( finite4564359178381958990on_val
@ ^ [X3: val,Y3: option_val] : ( some_val @ ( case_option_val_val @ X3 @ ( F @ X3 ) @ Y3 ) )
@ none_val
@ A5 ) ) ) ) ).
% semilattice_set.eq_fold'
thf(fact_1000_semilattice__set_Oinfinite,axiom,
! [F: state > state > state,A5: set_state] :
( ( lattic1830746154417612460_state @ F )
=> ( ~ ( finite_finite_state @ A5 )
=> ( ( lattic8707496982837646688_state @ F @ A5 )
= ( the_state @ none_state ) ) ) ) ).
% semilattice_set.infinite
thf(fact_1001_semilattice__set_Oinfinite,axiom,
! [F: val > val > val,A5: set_val] :
( ( lattic1688671459694253327et_val @ F )
=> ( ~ ( finite_finite_val @ A5 )
=> ( ( lattic7553830378228561755_F_val @ F @ A5 )
= ( the_val @ none_val ) ) ) ) ).
% semilattice_set.infinite
thf(fact_1002_option_Odisc__transfer_I1_J,axiom,
! [R4: state > state > $o] :
( bNF_re6905797707481504115te_o_o @ ( rel_op4316599310523903102_state @ R4 )
@ ^ [Y5: $o,Z4: $o] : ( Y5 = Z4 )
@ ^ [Option3: option_state] : ( Option3 = none_state )
@ ^ [Option3: option_state] : ( Option3 = none_state ) ) ).
% option.disc_transfer(1)
thf(fact_1003_option_Odisc__transfer_I1_J,axiom,
! [R4: state > val > $o] :
( bNF_re3324221780734229534al_o_o @ ( rel_option_state_val @ R4 )
@ ^ [Y5: $o,Z4: $o] : ( Y5 = Z4 )
@ ^ [Option3: option_state] : ( Option3 = none_state )
@ ^ [Option3: option_val] : ( Option3 = none_val ) ) ).
% option.disc_transfer(1)
thf(fact_1004_option_Odisc__transfer_I1_J,axiom,
! [R4: val > state > $o] :
( bNF_re9208312572002657588te_o_o @ ( rel_option_val_state @ R4 )
@ ^ [Y5: $o,Z4: $o] : ( Y5 = Z4 )
@ ^ [Option3: option_val] : ( Option3 = none_val )
@ ^ [Option3: option_state] : ( Option3 = none_state ) ) ).
% option.disc_transfer(1)
thf(fact_1005_option_Odisc__transfer_I1_J,axiom,
! [R4: val > val > $o] :
( bNF_re8803170646668426653al_o_o @ ( rel_option_val_val @ R4 )
@ ^ [Y5: $o,Z4: $o] : ( Y5 = Z4 )
@ ^ [Option3: option_val] : ( Option3 = none_val )
@ ^ [Option3: option_val] : ( Option3 = none_val ) ) ).
% option.disc_transfer(1)
thf(fact_1006_option_Odisc__transfer_I2_J,axiom,
! [R4: state > state > $o] :
( bNF_re6905797707481504115te_o_o @ ( rel_op4316599310523903102_state @ R4 )
@ ^ [Y5: $o,Z4: $o] : ( Y5 = Z4 )
@ ^ [Option3: option_state] : ( Option3 != none_state )
@ ^ [Option3: option_state] : ( Option3 != none_state ) ) ).
% option.disc_transfer(2)
thf(fact_1007_option_Odisc__transfer_I2_J,axiom,
! [R4: state > val > $o] :
( bNF_re3324221780734229534al_o_o @ ( rel_option_state_val @ R4 )
@ ^ [Y5: $o,Z4: $o] : ( Y5 = Z4 )
@ ^ [Option3: option_state] : ( Option3 != none_state )
@ ^ [Option3: option_val] : ( Option3 != none_val ) ) ).
% option.disc_transfer(2)
thf(fact_1008_option_Odisc__transfer_I2_J,axiom,
! [R4: val > state > $o] :
( bNF_re9208312572002657588te_o_o @ ( rel_option_val_state @ R4 )
@ ^ [Y5: $o,Z4: $o] : ( Y5 = Z4 )
@ ^ [Option3: option_val] : ( Option3 != none_val )
@ ^ [Option3: option_state] : ( Option3 != none_state ) ) ).
% option.disc_transfer(2)
thf(fact_1009_option_Odisc__transfer_I2_J,axiom,
! [R4: val > val > $o] :
( bNF_re8803170646668426653al_o_o @ ( rel_option_val_val @ R4 )
@ ^ [Y5: $o,Z4: $o] : ( Y5 = Z4 )
@ ^ [Option3: option_val] : ( Option3 != none_val )
@ ^ [Option3: option_val] : ( Option3 != none_val ) ) ).
% option.disc_transfer(2)
thf(fact_1010_option_Octr__transfer_I2_J,axiom,
! [R4: state > state > $o] : ( bNF_re349789735553525609_state @ R4 @ ( rel_op4316599310523903102_state @ R4 ) @ some_state @ some_state ) ).
% option.ctr_transfer(2)
thf(fact_1011_option_Octr__transfer_I2_J,axiom,
! [R4: state > val > $o] : ( bNF_re3246193597797267091on_val @ R4 @ ( rel_option_state_val @ R4 ) @ some_state @ some_val ) ).
% option.ctr_transfer(2)
thf(fact_1012_option_Octr__transfer_I2_J,axiom,
! [R4: val > state > $o] : ( bNF_re724738890469284915_state @ R4 @ ( rel_option_val_state @ R4 ) @ some_val @ some_state ) ).
% option.ctr_transfer(2)
thf(fact_1013_option_Octr__transfer_I2_J,axiom,
! [R4: val > val > $o] : ( bNF_re7986259651653764189on_val @ R4 @ ( rel_option_val_val @ R4 ) @ some_val @ some_val ) ).
% option.ctr_transfer(2)
thf(fact_1014_option_Opred__inject_I2_J,axiom,
! [P: state > $o,A2: state] :
( ( pred_option_state @ P @ ( some_state @ A2 ) )
= ( P @ A2 ) ) ).
% option.pred_inject(2)
thf(fact_1015_option_Opred__inject_I2_J,axiom,
! [P: val > $o,A2: val] :
( ( pred_option_val @ P @ ( some_val @ A2 ) )
= ( P @ A2 ) ) ).
% option.pred_inject(2)
thf(fact_1016_option_Opred__inject_I1_J,axiom,
! [P: state > $o] : ( pred_option_state @ P @ none_state ) ).
% option.pred_inject(1)
thf(fact_1017_option_Opred__inject_I1_J,axiom,
! [P: val > $o] : ( pred_option_val @ P @ none_val ) ).
% option.pred_inject(1)
thf(fact_1018_option_Opred__mono__strong,axiom,
! [P: produc9003781588162623004on_val > $o,X: option8887860577033306220on_val,Pa: produc9003781588162623004on_val > $o] :
( ( pred_o6356550725404909017on_val @ P @ X )
=> ( ! [Z2: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ Z2 @ ( set_op9004752959087400718on_val @ X ) )
=> ( ( P @ Z2 )
=> ( Pa @ Z2 ) ) )
=> ( pred_o6356550725404909017on_val @ Pa @ X ) ) ) ).
% option.pred_mono_strong
thf(fact_1019_option_Opred__cong,axiom,
! [X: option8887860577033306220on_val,Ya: option8887860577033306220on_val,P: produc9003781588162623004on_val > $o,Pa: produc9003781588162623004on_val > $o] :
( ( X = Ya )
=> ( ! [Z2: produc9003781588162623004on_val] :
( ( member2879030624002546611on_val @ Z2 @ ( set_op9004752959087400718on_val @ Ya ) )
=> ( ( P @ Z2 )
= ( Pa @ Z2 ) ) )
=> ( ( pred_o6356550725404909017on_val @ P @ X )
= ( pred_o6356550725404909017on_val @ Pa @ Ya ) ) ) ) ).
% option.pred_cong
% Helper facts (15)
thf(help_If_2_1_If_001t__Mask__Oval_T,axiom,
! [X: val,Y2: val] :
( ( if_val @ $false @ X @ Y2 )
= Y2 ) ).
thf(help_If_1_1_If_001t__Mask__Oval_T,axiom,
! [X: val,Y2: val] :
( ( if_val @ $true @ X @ Y2 )
= X ) ).
thf(help_If_2_1_If_001t__PosRat__Oprat_T,axiom,
! [X: prat,Y2: prat] :
( ( if_prat @ $false @ X @ Y2 )
= Y2 ) ).
thf(help_If_1_1_If_001t__PosRat__Oprat_T,axiom,
! [X: prat,Y2: prat] :
( ( if_prat @ $true @ X @ Y2 )
= X ) ).
thf(help_If_2_1_If_001t__Option__Ooption_It__Mask__Oval_J_T,axiom,
! [X: option_val,Y2: option_val] :
( ( if_option_val @ $false @ X @ Y2 )
= Y2 ) ).
thf(help_If_1_1_If_001t__Option__Ooption_It__Mask__Oval_J_T,axiom,
! [X: option_val,Y2: option_val] :
( ( if_option_val @ $true @ X @ Y2 )
= X ) ).
thf(help_If_2_1_If_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_T,axiom,
! [X: option_state,Y2: option_state] :
( ( if_option_state @ $false @ X @ Y2 )
= Y2 ) ).
thf(help_If_1_1_If_001t__Option__Ooption_It__PartialHeapSA__Ostate_J_T,axiom,
! [X: option_state,Y2: option_state] :
( ( if_option_state @ $true @ X @ Y2 )
= X ) ).
thf(help_If_2_1_If_001t__Option__Ooption_It__List__Olist_It__String__Ochar_J_J_T,axiom,
! [X: option_list_char,Y2: option_list_char] :
( ( if_option_list_char @ $false @ X @ Y2 )
= Y2 ) ).
thf(help_If_1_1_If_001t__Option__Ooption_It__List__Olist_It__String__Ochar_J_J_T,axiom,
! [X: option_list_char,Y2: option_list_char] :
( ( if_option_list_char @ $true @ X @ Y2 )
= X ) ).
thf(help_If_2_1_If_001t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_T,axiom,
! [X: option5747939881698552298on_val,Y2: option5747939881698552298on_val] :
( ( if_opt6509584284076893604on_val @ $false @ X @ Y2 )
= Y2 ) ).
thf(help_If_1_1_If_001t__Option__Ooption_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_T,axiom,
! [X: option5747939881698552298on_val,Y2: option5747939881698552298on_val] :
( ( if_opt6509584284076893604on_val @ $true @ X @ Y2 )
= X ) ).
thf(help_If_3_1_If_001t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_T,axiom,
! [P: $o] :
( ( P = $true )
| ( P = $false ) ) ).
thf(help_If_2_1_If_001t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_T,axiom,
! [X: option8887860577033306220on_val,Y2: option8887860577033306220on_val] :
( ( if_opt2965748431298708774on_val @ $false @ X @ Y2 )
= Y2 ) ).
thf(help_If_1_1_If_001t__Option__Ooption_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__PosRat__Oprat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Mask__Oval_J_J_J_J_T,axiom,
! [X: option8887860577033306220on_val,Y2: option8887860577033306220on_val] :
( ( if_opt2965748431298708774on_val @ $true @ X @ Y2 )
= X ) ).
% Conjectures (1)
thf(conj_0,conjecture,
( ( plus @ ab @ c )
= ( plus @ a @ bc ) ) ).
%------------------------------------------------------------------------------