TPTP Problem File: ITP046^1.p
View Solutions
- Solve Problem
%------------------------------------------------------------------------------
% File : ITP046^1 : TPTP v9.0.0. Released v7.5.0.
% Domain : Interactive Theorem Proving
% Problem : Sledgehammer Determinacy problem prob_599__3354110_1
% Version : Especial.
% English :
% Refs : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
% : [Des21] Desharnais (2021), Email to Geoff Sutcliffe
% Source : [Des21]
% Names : Determinacy/prob_599__3354110_1 [Des21]
% Status : Theorem
% Rating : 0.25 v9.0.0, 0.20 v8.2.0, 0.23 v8.1.0, 0.27 v7.5.0
% Syntax : Number of formulae : 522 ( 135 unt; 164 typ; 0 def)
% Number of atoms : 1192 ( 510 equ; 0 cnn)
% Maximal formula atoms : 13 ( 3 avg)
% Number of connectives : 4899 ( 166 ~; 69 |; 115 &;4020 @)
% ( 0 <=>; 529 =>; 0 <=; 0 <~>)
% Maximal formula depth : 35 ( 8 avg)
% Number of types : 36 ( 35 usr)
% Number of type conns : 1017 (1017 >; 0 *; 0 +; 0 <<)
% Number of symbols : 132 ( 129 usr; 30 con; 0-4 aty)
% Number of variables : 1423 ( 107 ^;1215 !; 101 ?;1423 :)
% SPC : TH0_THM_EQU_NAR
% Comments : This file was generated by Sledgehammer 2021-02-23 15:33:14.777
%------------------------------------------------------------------------------
% Could-be-implicit typings (35)
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_M_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_J_J,type,
set_Pr1409704485_r_l_v: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_M_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_J,type,
produc1389397445_r_l_v: $tType ).
thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J,type,
option1457017436_r_l_v: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J,type,
produc1156025366_r_l_v: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J,type,
produc1164766533_r_l_v: $tType ).
thf(ty_n_t__Set__Oset_It__Set__Oset_It__Sum____Type__Osum_Itf__r_Mtf__l_J_J_J,type,
set_set_Sum_sum_r_l: $tType ).
thf(ty_n_t__Set__Oset_It__Set__Oset_It__Sum____Type__Osum_Itf__l_Mtf__r_J_J_J,type,
set_set_Sum_sum_l_r: $tType ).
thf(ty_n_t__Set__Oset_It__Set__Oset_It__Sum____Type__Osum_Itf__l_Mtf__l_J_J_J,type,
set_set_Sum_sum_l_l: $tType ).
thf(ty_n_t__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J,type,
option_val_r_l_v: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__r_Mtf__r_J_J,type,
set_Product_prod_r_r: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__r_Mtf__l_J_J,type,
set_Product_prod_r_l: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__l_Mtf__r_J_J,type,
set_Product_prod_l_r: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__l_Mtf__l_J_J,type,
set_Product_prod_l_l: $tType ).
thf(ty_n_t__Set__Oset_It__Set__Oset_It__Set__Oset_Itf__r_J_J_J,type,
set_set_set_r: $tType ).
thf(ty_n_t__Set__Oset_It__Set__Oset_It__Set__Oset_Itf__l_J_J_J,type,
set_set_set_l: $tType ).
thf(ty_n_t__Set__Oset_It__Sum____Type__Osum_Itf__r_Mtf__r_J_J,type,
set_Sum_sum_r_r: $tType ).
thf(ty_n_t__Set__Oset_It__Sum____Type__Osum_Itf__r_Mtf__l_J_J,type,
set_Sum_sum_r_l: $tType ).
thf(ty_n_t__Set__Oset_It__Sum____Type__Osum_Itf__l_Mtf__r_J_J,type,
set_Sum_sum_l_r: $tType ).
thf(ty_n_t__Set__Oset_It__Sum____Type__Osum_Itf__l_Mtf__l_J_J,type,
set_Sum_sum_l_l: $tType ).
thf(ty_n_t__Set__Oset_It__Option__Ooption_Itf__r_J_J,type,
set_option_r: $tType ).
thf(ty_n_t__Set__Oset_It__Option__Ooption_Itf__l_J_J,type,
set_option_l: $tType ).
thf(ty_n_t__Data__Ocntxt_Itf__r_Mtf__l_Mtf__v_J,type,
cntxt_r_l_v: $tType ).
thf(ty_n_t__Set__Oset_It__Set__Oset_Itf__r_J_J,type,
set_set_r: $tType ).
thf(ty_n_t__Set__Oset_It__Set__Oset_Itf__l_J_J,type,
set_set_l: $tType ).
thf(ty_n_t__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J,type,
expr_r_l_v: $tType ).
thf(ty_n_t__Sum____Type__Osum_Itf__r_Mtf__l_J,type,
sum_sum_r_l: $tType ).
thf(ty_n_t__Sum____Type__Osum_Itf__l_Mtf__r_J,type,
sum_sum_l_r: $tType ).
thf(ty_n_t__Sum____Type__Osum_Itf__l_Mtf__l_J,type,
sum_sum_l_l: $tType ).
thf(ty_n_t__Data__Oval_Itf__r_Mtf__l_Mtf__v_J,type,
val_r_l_v: $tType ).
thf(ty_n_t__Set__Oset_Itf__r_J,type,
set_r: $tType ).
thf(ty_n_t__Set__Oset_Itf__l_J,type,
set_l: $tType ).
thf(ty_n_t__Data__Oconst,type,
const: $tType ).
thf(ty_n_tf__v,type,
v: $tType ).
thf(ty_n_tf__r,type,
r: $tType ).
thf(ty_n_tf__l,type,
l: $tType ).
% Explicit typings (129)
thf(sy_c_Data_Ocombine_001tf__l_001t__Data__Oval_Itf__r_Mtf__l_Mtf__v_J,type,
combine_l_val_r_l_v: ( l > option_val_r_l_v ) > ( l > option_val_r_l_v ) > l > option_val_r_l_v ).
thf(sy_c_Data_Oconst_OF,type,
f: const ).
thf(sy_c_Data_Oconst_OT,type,
t: const ).
thf(sy_c_Data_Oconst_OUnit,type,
unit: const ).
thf(sy_c_Data_Odoms_001tf__l_001tf__r_001tf__v,type,
doms_l_r_v: produc1156025366_r_l_v > set_l ).
thf(sy_c_Data_Oexpr_OAssign_001tf__r_001tf__l_001tf__v,type,
assign_r_l_v: expr_r_l_v > expr_r_l_v > expr_r_l_v ).
thf(sy_c_Data_Oexpr_OIte_001tf__r_001tf__l_001tf__v,type,
ite_r_l_v: expr_r_l_v > expr_r_l_v > expr_r_l_v > expr_r_l_v ).
thf(sy_c_Data_Oexpr_ORead_001tf__r_001tf__l_001tf__v,type,
read_r_l_v: expr_r_l_v > expr_r_l_v ).
thf(sy_c_Data_Oexpr_ORef_001tf__r_001tf__l_001tf__v,type,
ref_r_l_v: expr_r_l_v > expr_r_l_v ).
thf(sy_c_Data_Oexpr_ORfork_001tf__r_001tf__l_001tf__v,type,
rfork_r_l_v: expr_r_l_v > expr_r_l_v ).
thf(sy_c_Data_Oexpr_ORjoin_001tf__r_001tf__l_001tf__v,type,
rjoin_r_l_v: expr_r_l_v > expr_r_l_v ).
thf(sy_c_Data_Oexpr_OVE_001tf__r_001tf__l_001tf__v,type,
vE_r_l_v: val_r_l_v > expr_r_l_v ).
thf(sy_c_Data_Oplug_001tf__r_001tf__l_001tf__v,type,
plug_r_l_v: cntxt_r_l_v > expr_r_l_v > expr_r_l_v ).
thf(sy_c_Data_Oval_OCV_001tf__r_001tf__l_001tf__v,type,
cV_r_l_v: const > val_r_l_v ).
thf(sy_c_Data_Oval_OLoc_001tf__l_001tf__r_001tf__v,type,
loc_l_r_v: l > val_r_l_v ).
thf(sy_c_Data_Oval_ORid_001tf__r_001tf__l_001tf__v,type,
rid_r_l_v: r > val_r_l_v ).
thf(sy_c_Executions_Osubstitution_Oexecution_001tf__r_001tf__l_001tf__v,type,
execution_r_l_v: ( expr_r_l_v > v > expr_r_l_v > expr_r_l_v ) > expr_r_l_v > ( r > option1457017436_r_l_v ) > ( r > option1457017436_r_l_v ) > $o ).
thf(sy_c_Executions_Osubstitution_Oinductive__invariant_001tf__r_001tf__l_001tf__v,type,
induct1670415253_r_l_v: ( expr_r_l_v > v > expr_r_l_v > expr_r_l_v ) > ( ( r > option1457017436_r_l_v ) > $o ) > $o ).
thf(sy_c_Executions_Osubstitution_Omaximal__execution_001tf__r_001tf__l_001tf__v,type,
maxima311842975_r_l_v: ( expr_r_l_v > v > expr_r_l_v > expr_r_l_v ) > expr_r_l_v > ( r > option1457017436_r_l_v ) > ( r > option1457017436_r_l_v ) > $o ).
thf(sy_c_Executions_Osubstitution_Oreachable_001tf__r_001tf__l_001tf__v,type,
reachable_r_l_v: ( expr_r_l_v > v > expr_r_l_v > expr_r_l_v ) > ( r > option1457017436_r_l_v ) > $o ).
thf(sy_c_Executions_Osubstitution_Osteps_001tf__r_001tf__l_001tf__v,type,
steps_r_l_v: ( expr_r_l_v > v > expr_r_l_v > expr_r_l_v ) > set_Pr1409704485_r_l_v ).
thf(sy_c_Executions_Osubstitution_Oterminates__in_001tf__r_001tf__l_001tf__v,type,
terminates_in_r_l_v: ( expr_r_l_v > v > expr_r_l_v > expr_r_l_v ) > expr_r_l_v > ( r > option1457017436_r_l_v ) > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Option__Ooption_Itf__l_J,type,
finite2114249848tion_l: set_option_l > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Option__Ooption_Itf__r_J,type,
finite16335230tion_r: set_option_r > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Product____Type__Oprod_I_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_M_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_J,type,
finite1853159534_r_l_v: set_Pr1409704485_r_l_v > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Product____Type__Oprod_Itf__l_Mtf__l_J,type,
finite785973648od_l_l: set_Product_prod_l_l > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Product____Type__Oprod_Itf__l_Mtf__r_J,type,
finite835542678od_l_r: set_Product_prod_l_r > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Product____Type__Oprod_Itf__r_Mtf__l_J,type,
finite1457622794od_r_l: set_Product_prod_r_l > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Product____Type__Oprod_Itf__r_Mtf__r_J,type,
finite1507191824od_r_r: set_Product_prod_r_r > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_It__Set__Oset_Itf__l_J_J,type,
finite1256628466_set_l: set_set_set_l > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_It__Set__Oset_Itf__r_J_J,type,
finite1651563256_set_r: set_set_set_r > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_It__Sum____Type__Osum_Itf__l_Mtf__l_J_J,type,
finite88277554um_l_l: set_set_Sum_sum_l_l > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_It__Sum____Type__Osum_Itf__l_Mtf__r_J_J,type,
finite483212344um_l_r: set_set_Sum_sum_l_r > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_It__Sum____Type__Osum_Itf__r_Mtf__l_J_J,type,
finite1407742636um_r_l: set_set_Sum_sum_r_l > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_Itf__l_J,type,
finite_finite_set_l: set_set_l > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_Itf__r_J,type,
finite_finite_set_r: set_set_r > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Sum____Type__Osum_Itf__l_Mtf__l_J,type,
finite1541484284um_l_l: set_Sum_sum_l_l > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Sum____Type__Osum_Itf__l_Mtf__r_J,type,
finite1591053314um_l_r: set_Sum_sum_l_r > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Sum____Type__Osum_Itf__r_Mtf__l_J,type,
finite65649782um_r_l: set_Sum_sum_r_l > $o ).
thf(sy_c_Finite__Set_Ofinite_001t__Sum____Type__Osum_Itf__r_Mtf__r_J,type,
finite115218812um_r_r: set_Sum_sum_r_r > $o ).
thf(sy_c_Finite__Set_Ofinite_001tf__l,type,
finite_finite_l: set_l > $o ).
thf(sy_c_Finite__Set_Ofinite_001tf__r,type,
finite_finite_r: set_r > $o ).
thf(sy_c_Fun_Ofun__upd_001tf__l_001t__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J,type,
fun_up1835647912_r_l_v: ( l > option_val_r_l_v ) > l > option_val_r_l_v > l > option_val_r_l_v ).
thf(sy_c_Fun_Ofun__upd_001tf__r_001t__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J,type,
fun_up709272714_r_l_v: ( r > option1457017436_r_l_v ) > r > option1457017436_r_l_v > r > option1457017436_r_l_v ).
thf(sy_c_If_001t__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J,type,
if_option_val_r_l_v: $o > option_val_r_l_v > option_val_r_l_v > option_val_r_l_v ).
thf(sy_c_If_001t__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J,type,
if_opt1153928738_r_l_v: $o > option1457017436_r_l_v > option1457017436_r_l_v > option1457017436_r_l_v ).
thf(sy_c_Map_Odom_001t__Product____Type__Oprod_I_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_M_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_J_001t__Data__Oval_Itf__r_Mtf__l_Mtf__v_J,type,
dom_Pr939617279_r_l_v: ( produc1389397445_r_l_v > option_val_r_l_v ) > set_Pr1409704485_r_l_v ).
thf(sy_c_Map_Odom_001t__Product____Type__Oprod_I_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_M_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_J_001t__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J,type,
dom_Pr1162080227_r_l_v: ( produc1389397445_r_l_v > option1457017436_r_l_v ) > set_Pr1409704485_r_l_v ).
thf(sy_c_Map_Odom_001tf__l_001t__Data__Oval_Itf__r_Mtf__l_Mtf__v_J,type,
dom_l_val_r_l_v: ( l > option_val_r_l_v ) > set_l ).
thf(sy_c_Map_Odom_001tf__l_001t__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J,type,
dom_l_45837855_r_l_v: ( l > option1457017436_r_l_v ) > set_l ).
thf(sy_c_Map_Odom_001tf__r_001t__Data__Oval_Itf__r_Mtf__l_Mtf__v_J,type,
dom_r_val_r_l_v: ( r > option_val_r_l_v ) > set_r ).
thf(sy_c_Map_Odom_001tf__r_001t__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J,type,
dom_r_259548057_r_l_v: ( r > option1457017436_r_l_v ) > set_r ).
thf(sy_c_Occurrences_OLID_092_060_094sub_062G_001tf__r_001tf__l_001tf__v,type,
lID_G_r_l_v: ( r > option1457017436_r_l_v ) > set_l ).
thf(sy_c_Occurrences_OLID_092_060_094sub_062L_001tf__l_001tf__r_001tf__v,type,
lID_L_l_r_v: produc1156025366_r_l_v > set_l ).
thf(sy_c_Occurrences_ORID_092_060_094sub_062G_001tf__r_001tf__l_001tf__v,type,
rID_G_r_l_v: ( r > option1457017436_r_l_v ) > set_r ).
thf(sy_c_Occurrences_ORID_092_060_094sub_062L_001tf__l_001tf__r_001tf__v,type,
rID_L_l_r_v: produc1156025366_r_l_v > set_r ).
thf(sy_c_OperationalSemantics_Osubstitution_Odomains__subsume_001tf__l_001tf__r_001tf__v,type,
domain87684397_l_r_v: produc1156025366_r_l_v > $o ).
thf(sy_c_OperationalSemantics_Osubstitution_Odomains__subsume__globally_001tf__r_001tf__l_001tf__v,type,
domain1547879849_r_l_v: ( r > option1457017436_r_l_v ) > $o ).
thf(sy_c_OperationalSemantics_Osubstitution_Orevision__step_001tf__r_001tf__l_001tf__v,type,
revision_step_r_l_v: ( expr_r_l_v > v > expr_r_l_v > expr_r_l_v ) > r > ( r > option1457017436_r_l_v ) > ( r > option1457017436_r_l_v ) > $o ).
thf(sy_c_OperationalSemantics_Osubstitution_Orevision__step__relaxed_001tf__r_001tf__l_001tf__v,type,
revisi1291188644_r_l_v: ( expr_r_l_v > v > expr_r_l_v > expr_r_l_v ) > r > ( r > option1457017436_r_l_v ) > ( r > option1457017436_r_l_v ) > $o ).
thf(sy_c_OperationalSemantics_Osubstitution_Osubsumes__accessible_001tf__r_001tf__l_001tf__v,type,
subsum148050133_r_l_v: r > r > ( r > option1457017436_r_l_v ) > $o ).
thf(sy_c_OperationalSemantics_Osubstitution_Osubsumes__accessible__globally_001tf__r_001tf__l_001tf__v,type,
subsum680764357_r_l_v: ( r > option1457017436_r_l_v ) > $o ).
thf(sy_c_Option_Ooption_ONone_001t__Data__Oval_Itf__r_Mtf__l_Mtf__v_J,type,
none_val_r_l_v: option_val_r_l_v ).
thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J,type,
none_P277133687_r_l_v: option1457017436_r_l_v ).
thf(sy_c_Option_Ooption_OSome_001t__Data__Oval_Itf__r_Mtf__l_Mtf__v_J,type,
some_val_r_l_v: val_r_l_v > option_val_r_l_v ).
thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J,type,
some_P1807977723_r_l_v: produc1156025366_r_l_v > option1457017436_r_l_v ).
thf(sy_c_Option_Ooption_Othe_001t__Data__Oval_Itf__r_Mtf__l_Mtf__v_J,type,
the_val_r_l_v: option_val_r_l_v > val_r_l_v ).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Set__Oset_Itf__l_J_J,type,
ord_le2116509289_set_l: set_set_l > set_set_l > $o ).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Set__Oset_Itf__r_J_J,type,
ord_le363960431_set_r: set_set_r > set_set_r > $o ).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Sum____Type__Osum_Itf__l_Mtf__l_J_J,type,
ord_le1122554619um_l_l: set_Sum_sum_l_l > set_Sum_sum_l_l > $o ).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Sum____Type__Osum_Itf__l_Mtf__r_J_J,type,
ord_le1517489409um_l_r: set_Sum_sum_l_r > set_Sum_sum_l_r > $o ).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Sum____Type__Osum_Itf__r_Mtf__l_J_J,type,
ord_le294536053um_r_l: set_Sum_sum_r_l > set_Sum_sum_r_l > $o ).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_Itf__l_J,type,
ord_less_eq_set_l: set_l > set_l > $o ).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_Itf__r_J,type,
ord_less_eq_set_r: set_r > set_r > $o ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Option__Ooption_Itf__l_J_J,type,
top_top_set_option_l: set_option_l ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Option__Ooption_Itf__r_J_J,type,
top_top_set_option_r: set_option_r ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Product____Type__Oprod_I_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_M_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_J_J,type,
top_to1238153077_r_l_v: set_Pr1409704485_r_l_v ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Product____Type__Oprod_Itf__l_Mtf__l_J_J,type,
top_to320296343od_l_l: set_Product_prod_l_l ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Product____Type__Oprod_Itf__l_Mtf__r_J_J,type,
top_to715231133od_l_r: set_Product_prod_l_r ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Product____Type__Oprod_Itf__r_Mtf__l_J_J,type,
top_to1639761425od_r_l: set_Product_prod_r_l ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Product____Type__Oprod_Itf__r_Mtf__r_J_J,type,
top_to2034696215od_r_r: set_Product_prod_r_r ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Set__Oset_Itf__l_J_J,type,
top_top_set_set_l: set_set_l ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Set__Oset_Itf__r_J_J,type,
top_top_set_set_r: set_set_r ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Sum____Type__Osum_Itf__l_Mtf__l_J_J,type,
top_to1010946379um_l_l: set_Sum_sum_l_l ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Sum____Type__Osum_Itf__l_Mtf__r_J_J,type,
top_to1405881169um_l_r: set_Sum_sum_l_r ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Sum____Type__Osum_Itf__r_Mtf__l_J_J,type,
top_to182927813um_r_l: set_Sum_sum_r_l ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Sum____Type__Osum_Itf__r_Mtf__r_J_J,type,
top_to577862603um_r_r: set_Sum_sum_r_r ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_Itf__l_J,type,
top_top_set_l: set_l ).
thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_Itf__r_J,type,
top_top_set_r: set_r ).
thf(sy_c_Product__Type_OPair_001_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_001t__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J,type,
produc1834103605_r_l_v: ( l > option_val_r_l_v ) > expr_r_l_v > produc1164766533_r_l_v ).
thf(sy_c_Product__Type_OPair_001_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_001t__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J,type,
produc297528454_r_l_v: ( l > option_val_r_l_v ) > produc1164766533_r_l_v > produc1156025366_r_l_v ).
thf(sy_c_Product__Type_OPair_001_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_001_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J,type,
produc1175464189_r_l_v: ( r > option1457017436_r_l_v ) > ( r > option1457017436_r_l_v ) > produc1389397445_r_l_v ).
thf(sy_c_Renaming_Oeq__states_001tf__r_001tf__l_001tf__v,type,
eq_states_r_l_v: ( r > option1457017436_r_l_v ) > ( r > option1457017436_r_l_v ) > $o ).
thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_I_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_M_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_J,type,
collec1978425008_r_l_v: ( produc1389397445_r_l_v > $o ) > set_Pr1409704485_r_l_v ).
thf(sy_c_Set_OCollect_001t__Set__Oset_It__Set__Oset_Itf__l_J_J,type,
collect_set_set_l: ( set_set_l > $o ) > set_set_set_l ).
thf(sy_c_Set_OCollect_001t__Set__Oset_It__Set__Oset_Itf__r_J_J,type,
collect_set_set_r: ( set_set_r > $o ) > set_set_set_r ).
thf(sy_c_Set_OCollect_001t__Set__Oset_It__Sum____Type__Osum_Itf__l_Mtf__l_J_J,type,
collec1593187440um_l_l: ( set_Sum_sum_l_l > $o ) > set_set_Sum_sum_l_l ).
thf(sy_c_Set_OCollect_001t__Set__Oset_It__Sum____Type__Osum_Itf__l_Mtf__r_J_J,type,
collec1988122230um_l_r: ( set_Sum_sum_l_r > $o ) > set_set_Sum_sum_l_r ).
thf(sy_c_Set_OCollect_001t__Set__Oset_It__Sum____Type__Osum_Itf__r_Mtf__l_J_J,type,
collec765168874um_r_l: ( set_Sum_sum_r_l > $o ) > set_set_Sum_sum_r_l ).
thf(sy_c_Set_OCollect_001t__Set__Oset_Itf__l_J,type,
collect_set_l: ( set_l > $o ) > set_set_l ).
thf(sy_c_Set_OCollect_001t__Set__Oset_Itf__r_J,type,
collect_set_r: ( set_r > $o ) > set_set_r ).
thf(sy_c_Set_OCollect_001t__Sum____Type__Osum_Itf__l_Mtf__l_J,type,
collect_Sum_sum_l_l: ( sum_sum_l_l > $o ) > set_Sum_sum_l_l ).
thf(sy_c_Set_OCollect_001t__Sum____Type__Osum_Itf__l_Mtf__r_J,type,
collect_Sum_sum_l_r: ( sum_sum_l_r > $o ) > set_Sum_sum_l_r ).
thf(sy_c_Set_OCollect_001t__Sum____Type__Osum_Itf__r_Mtf__l_J,type,
collect_Sum_sum_r_l: ( sum_sum_r_l > $o ) > set_Sum_sum_r_l ).
thf(sy_c_Set_OCollect_001tf__l,type,
collect_l: ( l > $o ) > set_l ).
thf(sy_c_Set_OCollect_001tf__r,type,
collect_r: ( r > $o ) > set_r ).
thf(sy_c_Substitution_Osubstitution_001tf__r_001tf__l_001tf__v,type,
substitution_r_l_v: ( expr_r_l_v > v > expr_r_l_v > expr_r_l_v ) > $o ).
thf(sy_c_Transitive__Closure_Ortrancl_001_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J,type,
transi1323086383_r_l_v: set_Pr1409704485_r_l_v > set_Pr1409704485_r_l_v ).
thf(sy_c_member_001t__Product____Type__Oprod_I_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_M_062_Itf__r_Mt__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_J_J,type,
member1522896238_r_l_v: produc1389397445_r_l_v > set_Pr1409704485_r_l_v > $o ).
thf(sy_c_member_001t__Set__Oset_Itf__l_J,type,
member_set_l: set_l > set_set_l > $o ).
thf(sy_c_member_001t__Set__Oset_Itf__r_J,type,
member_set_r: set_r > set_set_r > $o ).
thf(sy_c_member_001tf__l,type,
member_l: l > set_l > $o ).
thf(sy_c_member_001tf__r,type,
member_r: r > set_r > $o ).
thf(sy_v__092_060E_062,type,
e: cntxt_r_l_v ).
thf(sy_v__092_060E_062_H____,type,
e2: cntxt_r_l_v ).
thf(sy_v__092_060sigma_062,type,
sigma: l > option_val_r_l_v ).
thf(sy_v__092_060sigma_062_H____,type,
sigma2: l > option_val_r_l_v ).
thf(sy_v__092_060tau_062,type,
tau: l > option_val_r_l_v ).
thf(sy_v__092_060tau_062_H____,type,
tau2: l > option_val_r_l_v ).
thf(sy_v_e,type,
e3: expr_r_l_v ).
thf(sy_v_e_H____,type,
e4: expr_r_l_v ).
thf(sy_v_left__forkee,type,
left_forkee: r ).
thf(sy_v_r,type,
r2: r ).
thf(sy_v_r_H,type,
r3: r ).
thf(sy_v_right__forkee____,type,
right_forkee: r ).
thf(sy_v_s_092_060_094sub_0621,type,
s_1: r > option1457017436_r_l_v ).
thf(sy_v_s_092_060_094sub_0622,type,
s_2: r > option1457017436_r_l_v ).
thf(sy_v_s_092_060_094sub_0622_H,type,
s_22: r > option1457017436_r_l_v ).
thf(sy_v_subst,type,
subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v ).
% Relevant facts (352)
thf(fact_0_local_Ofork_I3_J,axiom,
~ ( member_r @ right_forkee @ ( rID_G_r_l_v @ s_1 ) ) ).
% local.fork(3)
thf(fact_1_side,axiom,
~ ( member_r @ left_forkee @ ( rID_G_r_l_v @ s_1 ) ) ).
% side
thf(fact_2_neq,axiom,
r2 != r3 ).
% neq
thf(fact_3__092_060open_062r_H_A_092_060noteq_062_Aleft__forkee_092_060close_062,axiom,
r3 != left_forkee ).
% \<open>r' \<noteq> left_forkee\<close>
thf(fact_4_r_H__unchanged__left,axiom,
( ( s_2 @ r3 )
= ( s_1 @ r3 ) ) ).
% r'_unchanged_left
thf(fact_5__092_060open_062r_A_092_060noteq_062_Aright__forkee_092_060close_062,axiom,
r2 != right_forkee ).
% \<open>r \<noteq> right_forkee\<close>
thf(fact_6_local_Ofork_I2_J,axiom,
( ( s_1 @ r3 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ sigma2 @ ( produc1834103605_r_l_v @ tau2 @ ( plug_r_l_v @ e2 @ ( rfork_r_l_v @ e4 ) ) ) ) ) ) ).
% local.fork(2)
thf(fact_7_right,axiom,
revision_step_r_l_v @ subst @ r3 @ s_1 @ s_22 ).
% right
thf(fact_8_local_Ofork_I1_J,axiom,
( s_22
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ s_1 @ r3 @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ sigma2 @ ( produc1834103605_r_l_v @ tau2 @ ( plug_r_l_v @ e2 @ ( vE_r_l_v @ ( rid_r_l_v @ right_forkee ) ) ) ) ) ) ) @ right_forkee
@ ( some_P1807977723_r_l_v
@ ( produc297528454_r_l_v @ ( combine_l_val_r_l_v @ sigma2 @ tau2 )
@ ( produc1834103605_r_l_v
@ ^ [X: l] : none_val_r_l_v
@ e4 ) ) ) ) ) ).
% local.fork(1)
thf(fact_9__092_060open_062r_A_092_060noteq_062_Aleft__forkee_092_060close_062,axiom,
r2 != left_forkee ).
% \<open>r \<noteq> left_forkee\<close>
thf(fact_10_r__unchanged__right,axiom,
( ( s_22 @ r2 )
= ( s_1 @ r2 ) ) ).
% r_unchanged_right
thf(fact_11_reach,axiom,
reachable_r_l_v @ subst @ s_1 ).
% reach
thf(fact_12_left__step,axiom,
revision_step_r_l_v @ subst @ r2 @ s_1 @ s_2 ).
% left_step
thf(fact_13_only__fork__introduces__rids_H,axiom,
! [R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v,R2: r] :
( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
=> ( ! [Sigma: l > option_val_r_l_v,Tau: l > option_val_r_l_v,E: cntxt_r_l_v,E2: expr_r_l_v] :
( ( S @ R )
!= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ ( plug_r_l_v @ E @ ( rfork_r_l_v @ E2 ) ) ) ) ) )
=> ( ~ ( member_r @ R2 @ ( rID_G_r_l_v @ S ) )
=> ~ ( member_r @ R2 @ ( rID_G_r_l_v @ S2 ) ) ) ) ) ).
% only_fork_introduces_rids'
thf(fact_14_revision__step_Ofork,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E4: expr_r_l_v,R2: r] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rfork_r_l_v @ E4 ) ) ) ) ) )
=> ( ~ ( member_r @ R2 @ ( rID_G_r_l_v @ S ) )
=> ( revision_step_r_l_v @ subst @ R @ S
@ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) @ R2
@ ( some_P1807977723_r_l_v
@ ( produc297528454_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 )
@ ( produc1834103605_r_l_v
@ ^ [X: l] : none_val_r_l_v
@ E4 ) ) ) ) ) ) ) ).
% revision_step.fork
thf(fact_15_fork__pseudodeterministic,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E4: expr_r_l_v,S2: r > option1457017436_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rfork_r_l_v @ E4 ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
= ( ? [R3: r] :
( ~ ( member_r @ R3 @ ( rID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rfork_r_l_v @ E4 ) ) ) ) ) ) ) )
& ( S2
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( rid_r_l_v @ R3 ) ) ) ) ) ) ) @ R3
@ ( some_P1807977723_r_l_v
@ ( produc297528454_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 )
@ ( produc1834103605_r_l_v
@ ^ [X: l] : none_val_r_l_v
@ E4 ) ) ) ) ) ) ) ) ) ).
% fork_pseudodeterministic
thf(fact_16_substitution__axioms,axiom,
substitution_r_l_v @ subst ).
% substitution_axioms
thf(fact_17_revision__step__relaxed_Ofork,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E4: expr_r_l_v,R2: r] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rfork_r_l_v @ E4 ) ) ) ) ) )
=> ( ~ ( member_r @ R2 @ ( rID_G_r_l_v @ S ) )
=> ( revisi1291188644_r_l_v @ subst @ R @ S
@ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) @ R2
@ ( some_P1807977723_r_l_v
@ ( produc297528454_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 )
@ ( produc1834103605_r_l_v
@ ^ [X: l] : none_val_r_l_v
@ E4 ) ) ) ) ) ) ) ).
% revision_step_relaxed.fork
thf(fact_18_local__and__fork__commute,axiom,
! [S_2: r > option1457017436_r_l_v,S_1: r > option1457017436_r_l_v,R: r,X2: produc1156025366_r_l_v,S_22: r > option1457017436_r_l_v,R2: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R4: r,E4: expr_r_l_v] :
( ( S_2
= ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ X2 ) ) )
=> ( ( S_22
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R2 @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( rid_r_l_v @ R4 ) ) ) ) ) ) ) @ R4
@ ( some_P1807977723_r_l_v
@ ( produc297528454_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 )
@ ( produc1834103605_r_l_v
@ ^ [X: l] : none_val_r_l_v
@ E4 ) ) ) ) )
=> ( ( ( S_2 @ R2 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rfork_r_l_v @ E4 ) ) ) ) ) )
=> ( ~ ( member_r @ R4 @ ( rID_G_r_l_v @ S_2 ) )
=> ( ( revision_step_r_l_v @ subst @ R @ S_22
@ ( fun_up709272714_r_l_v
@ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R2 @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( rid_r_l_v @ R4 ) ) ) ) ) ) ) @ R4
@ ( some_P1807977723_r_l_v
@ ( produc297528454_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 )
@ ( produc1834103605_r_l_v
@ ^ [X: l] : none_val_r_l_v
@ E4 ) ) ) )
@ R
@ ( some_P1807977723_r_l_v @ X2 ) ) )
=> ( ( R != R2 )
=> ( ( R != R4 )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ) ) ).
% local_and_fork_commute
thf(fact_19_s_092_060_094sub_0622,axiom,
( s_2
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ s_1 @ r2 @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ sigma @ ( produc1834103605_r_l_v @ tau @ ( plug_r_l_v @ e @ ( vE_r_l_v @ ( rid_r_l_v @ left_forkee ) ) ) ) ) ) ) @ left_forkee
@ ( some_P1807977723_r_l_v
@ ( produc297528454_r_l_v @ ( combine_l_val_r_l_v @ sigma @ tau )
@ ( produc1834103605_r_l_v
@ ^ [X: l] : none_val_r_l_v
@ e3 ) ) ) ) ) ).
% s\<^sub>2
thf(fact_20_restrictions__inwards,axiom,
! [X2: r,X3: r,F: r > option1457017436_r_l_v,Y: produc1156025366_r_l_v] :
( ( X2 != X3 )
=> ( ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ F @ X2 @ ( some_P1807977723_r_l_v @ Y ) ) @ X3 @ none_P277133687_r_l_v )
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ F @ X3 @ none_P277133687_r_l_v ) @ X2 @ ( some_P1807977723_r_l_v @ Y ) ) ) ) ).
% restrictions_inwards
thf(fact_21_restrictions__inwards,axiom,
! [X2: l,X3: l,F: l > option_val_r_l_v,Y: val_r_l_v] :
( ( X2 != X3 )
=> ( ( fun_up1835647912_r_l_v @ ( fun_up1835647912_r_l_v @ F @ X2 @ ( some_val_r_l_v @ Y ) ) @ X3 @ none_val_r_l_v )
= ( fun_up1835647912_r_l_v @ ( fun_up1835647912_r_l_v @ F @ X3 @ none_val_r_l_v ) @ X2 @ ( some_val_r_l_v @ Y ) ) ) ) ).
% restrictions_inwards
thf(fact_22_empty__upd__none,axiom,
! [X2: l] :
( ( fun_up1835647912_r_l_v
@ ^ [X: l] : none_val_r_l_v
@ X2
@ none_val_r_l_v )
= ( ^ [X: l] : none_val_r_l_v ) ) ).
% empty_upd_none
thf(fact_23_empty__upd__none,axiom,
! [X2: r] :
( ( fun_up709272714_r_l_v
@ ^ [X: r] : none_P277133687_r_l_v
@ X2
@ none_P277133687_r_l_v )
= ( ^ [X: r] : none_P277133687_r_l_v ) ) ).
% empty_upd_none
thf(fact_24_RID_092_060_094sub_062GI_I1_J,axiom,
! [S: r > option1457017436_r_l_v,R: r,V: produc1156025366_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ V ) )
=> ( member_r @ R @ ( rID_G_r_l_v @ S ) ) ) ).
% RID\<^sub>GI(1)
thf(fact_25_not__None__eq,axiom,
! [X2: option1457017436_r_l_v] :
( ( X2 != none_P277133687_r_l_v )
= ( ? [Y2: produc1156025366_r_l_v] :
( X2
= ( some_P1807977723_r_l_v @ Y2 ) ) ) ) ).
% not_None_eq
thf(fact_26_not__None__eq,axiom,
! [X2: option_val_r_l_v] :
( ( X2 != none_val_r_l_v )
= ( ? [Y2: val_r_l_v] :
( X2
= ( some_val_r_l_v @ Y2 ) ) ) ) ).
% not_None_eq
thf(fact_27_not__Some__eq,axiom,
! [X2: option1457017436_r_l_v] :
( ( ! [Y2: produc1156025366_r_l_v] :
( X2
!= ( some_P1807977723_r_l_v @ Y2 ) ) )
= ( X2 = none_P277133687_r_l_v ) ) ).
% not_Some_eq
thf(fact_28_not__Some__eq,axiom,
! [X2: option_val_r_l_v] :
( ( ! [Y2: val_r_l_v] :
( X2
!= ( some_val_r_l_v @ Y2 ) ) )
= ( X2 = none_val_r_l_v ) ) ).
% not_Some_eq
thf(fact_29_s_092_060_094sub_0621__r,axiom,
( ( s_1 @ r2 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ sigma @ ( produc1834103605_r_l_v @ tau @ ( plug_r_l_v @ e @ ( rfork_r_l_v @ e3 ) ) ) ) ) ) ).
% s\<^sub>1_r
thf(fact_30_local__steps__commute,axiom,
! [S_2: r > option1457017436_r_l_v,S_1: r > option1457017436_r_l_v,R: r,X2: produc1156025366_r_l_v,S_22: r > option1457017436_r_l_v,R2: r,Y: produc1156025366_r_l_v] :
( ( S_2
= ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ X2 ) ) )
=> ( ( S_22
= ( fun_up709272714_r_l_v @ S_1 @ R2 @ ( some_P1807977723_r_l_v @ Y ) ) )
=> ( ( revision_step_r_l_v @ subst @ R2 @ ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ X2 ) ) @ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ X2 ) ) @ R2 @ ( some_P1807977723_r_l_v @ Y ) ) )
=> ( ( revision_step_r_l_v @ subst @ R @ ( fun_up709272714_r_l_v @ S_1 @ R2 @ ( some_P1807977723_r_l_v @ Y ) ) @ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R2 @ ( some_P1807977723_r_l_v @ Y ) ) @ R @ ( some_P1807977723_r_l_v @ X2 ) ) )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ).
% local_steps_commute
thf(fact_31_only__fork__introduces__rids,axiom,
! [R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
=> ( ! [Sigma: l > option_val_r_l_v,Tau: l > option_val_r_l_v,E: cntxt_r_l_v,E2: expr_r_l_v] :
( ( S @ R )
!= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ ( plug_r_l_v @ E @ ( rfork_r_l_v @ E2 ) ) ) ) ) )
=> ( ord_less_eq_set_r @ ( rID_G_r_l_v @ S2 ) @ ( rID_G_r_l_v @ S ) ) ) ) ).
% only_fork_introduces_rids
thf(fact_32_local__determinism,axiom,
! [R: r,S_1: r > option1457017436_r_l_v,S_2: r > option1457017436_r_l_v,S_22: r > option1457017436_r_l_v] :
( ( revision_step_r_l_v @ subst @ R @ S_1 @ S_2 )
=> ( ( revision_step_r_l_v @ subst @ R @ S_1 @ S_22 )
=> ( eq_states_r_l_v @ S_2 @ S_22 ) ) ) ).
% local_determinism
thf(fact_33_SLC__sym,axiom,
! [R2: r,S_2: r > option1457017436_r_l_v,R: r,S_22: r > option1457017436_r_l_v] :
( ? [S_33: r > option1457017436_r_l_v,S_34: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_33 @ S_34 )
& ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_33 )
| ( S_2 = S_33 ) )
& ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_34 )
| ( S_22 = S_34 ) ) )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_3 )
| ( S_22 = S_3 ) )
& ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_32 )
| ( S_2 = S_32 ) ) ) ) ).
% SLC_sym
thf(fact_34_SLC__commute,axiom,
! [S_35: r > option1457017436_r_l_v,S_36: r > option1457017436_r_l_v,R2: r,S_2: r > option1457017436_r_l_v,R: r,S_22: r > option1457017436_r_l_v] :
( ( S_35 = S_36 )
=> ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_35 )
=> ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_36 )
=> ( ( eq_states_r_l_v @ S_35 @ S_36 )
& ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_35 )
| ( S_2 = S_35 ) )
& ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_36 )
| ( S_22 = S_36 ) ) ) ) ) ) ).
% SLC_commute
thf(fact_35_reachability__closed__under__execution__step,axiom,
! [S: r > option1457017436_r_l_v,R: r,S2: r > option1457017436_r_l_v] :
( ( reachable_r_l_v @ subst @ S )
=> ( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
=> ( reachable_r_l_v @ subst @ S2 ) ) ) ).
% reachability_closed_under_execution_step
thf(fact_36_option_Oinject,axiom,
! [X22: produc1156025366_r_l_v,Y22: produc1156025366_r_l_v] :
( ( ( some_P1807977723_r_l_v @ X22 )
= ( some_P1807977723_r_l_v @ Y22 ) )
= ( X22 = Y22 ) ) ).
% option.inject
thf(fact_37_option_Oinject,axiom,
! [X22: val_r_l_v,Y22: val_r_l_v] :
( ( ( some_val_r_l_v @ X22 )
= ( some_val_r_l_v @ Y22 ) )
= ( X22 = Y22 ) ) ).
% option.inject
thf(fact_38_transition__relations__equivalent,axiom,
! [S: r > option1457017436_r_l_v,R: r,S2: r > option1457017436_r_l_v] :
( ( reachable_r_l_v @ subst @ S )
=> ( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
= ( revisi1291188644_r_l_v @ subst @ R @ S @ S2 ) ) ) ).
% transition_relations_equivalent
thf(fact_39_in__restricted__global__in__unrestricted__global_I1_J,axiom,
! [R2: r,S: r > option1457017436_r_l_v,R: r] :
( ( member_r @ R2 @ ( rID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) )
=> ( member_r @ R2 @ ( rID_G_r_l_v @ S ) ) ) ).
% in_restricted_global_in_unrestricted_global(1)
thf(fact_40_in__restricted__global__in__updated__global_I1_J,axiom,
! [R2: r,S: r > option1457017436_r_l_v,R: r,Ls: produc1156025366_r_l_v] :
( ( member_r @ R2 @ ( rID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) )
=> ( member_r @ R2 @ ( rID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ Ls ) ) ) ) ) ).
% in_restricted_global_in_updated_global(1)
thf(fact_41_reachable__def,axiom,
! [S: r > option1457017436_r_l_v] :
( ( reachable_r_l_v @ subst @ S )
= ( ? [E5: expr_r_l_v,S3: r > option1457017436_r_l_v] : ( execution_r_l_v @ subst @ E5 @ S3 @ S ) ) ) ).
% reachable_def
thf(fact_42_substitution_Olocal__determinism,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,R: r,S_1: r > option1457017436_r_l_v,S_2: r > option1457017436_r_l_v,S_22: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( revision_step_r_l_v @ Subst @ R @ S_1 @ S_2 )
=> ( ( revision_step_r_l_v @ Subst @ R @ S_1 @ S_22 )
=> ( eq_states_r_l_v @ S_2 @ S_22 ) ) ) ) ).
% substitution.local_determinism
thf(fact_43_substitution_OSLC__commute,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S_35: r > option1457017436_r_l_v,S_36: r > option1457017436_r_l_v,R2: r,S_2: r > option1457017436_r_l_v,R: r,S_22: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( S_35 = S_36 )
=> ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ S_35 )
=> ( ( revision_step_r_l_v @ Subst @ R @ S_22 @ S_36 )
=> ( ( eq_states_r_l_v @ S_35 @ S_36 )
& ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ S_35 )
| ( S_2 = S_35 ) )
& ( ( revision_step_r_l_v @ Subst @ R @ S_22 @ S_36 )
| ( S_22 = S_36 ) ) ) ) ) ) ) ).
% substitution.SLC_commute
thf(fact_44_substitution_OSLC__sym,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,R2: r,S_2: r > option1457017436_r_l_v,R: r,S_22: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ? [S_33: r > option1457017436_r_l_v,S_34: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_33 @ S_34 )
& ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ S_33 )
| ( S_2 = S_33 ) )
& ( ( revision_step_r_l_v @ Subst @ R @ S_22 @ S_34 )
| ( S_22 = S_34 ) ) )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ Subst @ R @ S_22 @ S_3 )
| ( S_22 = S_3 ) )
& ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ S_32 )
| ( S_2 = S_32 ) ) ) ) ) ).
% substitution.SLC_sym
thf(fact_45_ID__restricted__global__subset__unrestricted_I2_J,axiom,
! [S: r > option1457017436_r_l_v,R: r] : ( ord_less_eq_set_r @ ( rID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) @ ( rID_G_r_l_v @ S ) ) ).
% ID_restricted_global_subset_unrestricted(2)
thf(fact_46_substitution_Olocal__steps__commute,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S_2: r > option1457017436_r_l_v,S_1: r > option1457017436_r_l_v,R: r,X2: produc1156025366_r_l_v,S_22: r > option1457017436_r_l_v,R2: r,Y: produc1156025366_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ X2 ) ) )
=> ( ( S_22
= ( fun_up709272714_r_l_v @ S_1 @ R2 @ ( some_P1807977723_r_l_v @ Y ) ) )
=> ( ( revision_step_r_l_v @ Subst @ R2 @ ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ X2 ) ) @ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ X2 ) ) @ R2 @ ( some_P1807977723_r_l_v @ Y ) ) )
=> ( ( revision_step_r_l_v @ Subst @ R @ ( fun_up709272714_r_l_v @ S_1 @ R2 @ ( some_P1807977723_r_l_v @ Y ) ) @ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R2 @ ( some_P1807977723_r_l_v @ Y ) ) @ R @ ( some_P1807977723_r_l_v @ X2 ) ) )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ Subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ).
% substitution.local_steps_commute
thf(fact_47_substitution_Olocal__and__fork__commute,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S_2: r > option1457017436_r_l_v,S_1: r > option1457017436_r_l_v,R: r,X2: produc1156025366_r_l_v,S_22: r > option1457017436_r_l_v,R2: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R4: r,E4: expr_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ X2 ) ) )
=> ( ( S_22
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R2 @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( rid_r_l_v @ R4 ) ) ) ) ) ) ) @ R4
@ ( some_P1807977723_r_l_v
@ ( produc297528454_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 )
@ ( produc1834103605_r_l_v
@ ^ [X: l] : none_val_r_l_v
@ E4 ) ) ) ) )
=> ( ( ( S_2 @ R2 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rfork_r_l_v @ E4 ) ) ) ) ) )
=> ( ~ ( member_r @ R4 @ ( rID_G_r_l_v @ S_2 ) )
=> ( ( revision_step_r_l_v @ Subst @ R @ S_22
@ ( fun_up709272714_r_l_v
@ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R2 @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( rid_r_l_v @ R4 ) ) ) ) ) ) ) @ R4
@ ( some_P1807977723_r_l_v
@ ( produc297528454_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 )
@ ( produc1834103605_r_l_v
@ ^ [X: l] : none_val_r_l_v
@ E4 ) ) ) )
@ R
@ ( some_P1807977723_r_l_v @ X2 ) ) )
=> ( ( R != R2 )
=> ( ( R != R4 )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ Subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ) ) ) ).
% substitution.local_and_fork_commute
thf(fact_48_combine__options__cases,axiom,
! [X2: option1457017436_r_l_v,P: option1457017436_r_l_v > option1457017436_r_l_v > $o,Y: option1457017436_r_l_v] :
( ( ( X2 = none_P277133687_r_l_v )
=> ( P @ X2 @ Y ) )
=> ( ( ( Y = none_P277133687_r_l_v )
=> ( P @ X2 @ Y ) )
=> ( ! [A: produc1156025366_r_l_v,B: produc1156025366_r_l_v] :
( ( X2
= ( some_P1807977723_r_l_v @ A ) )
=> ( ( Y
= ( some_P1807977723_r_l_v @ B ) )
=> ( P @ X2 @ Y ) ) )
=> ( P @ X2 @ Y ) ) ) ) ).
% combine_options_cases
thf(fact_49_combine__options__cases,axiom,
! [X2: option1457017436_r_l_v,P: option1457017436_r_l_v > option_val_r_l_v > $o,Y: option_val_r_l_v] :
( ( ( X2 = none_P277133687_r_l_v )
=> ( P @ X2 @ Y ) )
=> ( ( ( Y = none_val_r_l_v )
=> ( P @ X2 @ Y ) )
=> ( ! [A: produc1156025366_r_l_v,B: val_r_l_v] :
( ( X2
= ( some_P1807977723_r_l_v @ A ) )
=> ( ( Y
= ( some_val_r_l_v @ B ) )
=> ( P @ X2 @ Y ) ) )
=> ( P @ X2 @ Y ) ) ) ) ).
% combine_options_cases
thf(fact_50_combine__options__cases,axiom,
! [X2: option_val_r_l_v,P: option_val_r_l_v > option1457017436_r_l_v > $o,Y: option1457017436_r_l_v] :
( ( ( X2 = none_val_r_l_v )
=> ( P @ X2 @ Y ) )
=> ( ( ( Y = none_P277133687_r_l_v )
=> ( P @ X2 @ Y ) )
=> ( ! [A: val_r_l_v,B: produc1156025366_r_l_v] :
( ( X2
= ( some_val_r_l_v @ A ) )
=> ( ( Y
= ( some_P1807977723_r_l_v @ B ) )
=> ( P @ X2 @ Y ) ) )
=> ( P @ X2 @ Y ) ) ) ) ).
% combine_options_cases
thf(fact_51_combine__options__cases,axiom,
! [X2: option_val_r_l_v,P: option_val_r_l_v > option_val_r_l_v > $o,Y: option_val_r_l_v] :
( ( ( X2 = none_val_r_l_v )
=> ( P @ X2 @ Y ) )
=> ( ( ( Y = none_val_r_l_v )
=> ( P @ X2 @ Y ) )
=> ( ! [A: val_r_l_v,B: val_r_l_v] :
( ( X2
= ( some_val_r_l_v @ A ) )
=> ( ( Y
= ( some_val_r_l_v @ B ) )
=> ( P @ X2 @ Y ) ) )
=> ( P @ X2 @ Y ) ) ) ) ).
% combine_options_cases
thf(fact_52_mem__Collect__eq,axiom,
! [A2: set_l,P: set_l > $o] :
( ( member_set_l @ A2 @ ( collect_set_l @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_53_mem__Collect__eq,axiom,
! [A2: set_r,P: set_r > $o] :
( ( member_set_r @ A2 @ ( collect_set_r @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_54_mem__Collect__eq,axiom,
! [A2: r,P: r > $o] :
( ( member_r @ A2 @ ( collect_r @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_55_mem__Collect__eq,axiom,
! [A2: l,P: l > $o] :
( ( member_l @ A2 @ ( collect_l @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_56_mem__Collect__eq,axiom,
! [A2: produc1389397445_r_l_v,P: produc1389397445_r_l_v > $o] :
( ( member1522896238_r_l_v @ A2 @ ( collec1978425008_r_l_v @ P ) )
= ( P @ A2 ) ) ).
% mem_Collect_eq
thf(fact_57_Collect__mem__eq,axiom,
! [A3: set_set_l] :
( ( collect_set_l
@ ^ [X: set_l] : ( member_set_l @ X @ A3 ) )
= A3 ) ).
% Collect_mem_eq
thf(fact_58_Collect__mem__eq,axiom,
! [A3: set_set_r] :
( ( collect_set_r
@ ^ [X: set_r] : ( member_set_r @ X @ A3 ) )
= A3 ) ).
% Collect_mem_eq
thf(fact_59_Collect__mem__eq,axiom,
! [A3: set_r] :
( ( collect_r
@ ^ [X: r] : ( member_r @ X @ A3 ) )
= A3 ) ).
% Collect_mem_eq
thf(fact_60_Collect__mem__eq,axiom,
! [A3: set_l] :
( ( collect_l
@ ^ [X: l] : ( member_l @ X @ A3 ) )
= A3 ) ).
% Collect_mem_eq
thf(fact_61_Collect__mem__eq,axiom,
! [A3: set_Pr1409704485_r_l_v] :
( ( collec1978425008_r_l_v
@ ^ [X: produc1389397445_r_l_v] : ( member1522896238_r_l_v @ X @ A3 ) )
= A3 ) ).
% Collect_mem_eq
thf(fact_62_Collect__cong,axiom,
! [P: produc1389397445_r_l_v > $o,Q: produc1389397445_r_l_v > $o] :
( ! [X4: produc1389397445_r_l_v] :
( ( P @ X4 )
= ( Q @ X4 ) )
=> ( ( collec1978425008_r_l_v @ P )
= ( collec1978425008_r_l_v @ Q ) ) ) ).
% Collect_cong
thf(fact_63_Collect__cong,axiom,
! [P: l > $o,Q: l > $o] :
( ! [X4: l] :
( ( P @ X4 )
= ( Q @ X4 ) )
=> ( ( collect_l @ P )
= ( collect_l @ Q ) ) ) ).
% Collect_cong
thf(fact_64_Collect__cong,axiom,
! [P: r > $o,Q: r > $o] :
( ! [X4: r] :
( ( P @ X4 )
= ( Q @ X4 ) )
=> ( ( collect_r @ P )
= ( collect_r @ Q ) ) ) ).
% Collect_cong
thf(fact_65_Collect__cong,axiom,
! [P: set_l > $o,Q: set_l > $o] :
( ! [X4: set_l] :
( ( P @ X4 )
= ( Q @ X4 ) )
=> ( ( collect_set_l @ P )
= ( collect_set_l @ Q ) ) ) ).
% Collect_cong
thf(fact_66_Collect__cong,axiom,
! [P: set_r > $o,Q: set_r > $o] :
( ! [X4: set_r] :
( ( P @ X4 )
= ( Q @ X4 ) )
=> ( ( collect_set_r @ P )
= ( collect_set_r @ Q ) ) ) ).
% Collect_cong
thf(fact_67_split__option__all,axiom,
( ( ^ [P2: option1457017436_r_l_v > $o] :
! [X5: option1457017436_r_l_v] : ( P2 @ X5 ) )
= ( ^ [P3: option1457017436_r_l_v > $o] :
( ( P3 @ none_P277133687_r_l_v )
& ! [X: produc1156025366_r_l_v] : ( P3 @ ( some_P1807977723_r_l_v @ X ) ) ) ) ) ).
% split_option_all
thf(fact_68_split__option__all,axiom,
( ( ^ [P2: option_val_r_l_v > $o] :
! [X5: option_val_r_l_v] : ( P2 @ X5 ) )
= ( ^ [P3: option_val_r_l_v > $o] :
( ( P3 @ none_val_r_l_v )
& ! [X: val_r_l_v] : ( P3 @ ( some_val_r_l_v @ X ) ) ) ) ) ).
% split_option_all
thf(fact_69_split__option__ex,axiom,
( ( ^ [P2: option1457017436_r_l_v > $o] :
? [X5: option1457017436_r_l_v] : ( P2 @ X5 ) )
= ( ^ [P3: option1457017436_r_l_v > $o] :
( ( P3 @ none_P277133687_r_l_v )
| ? [X: produc1156025366_r_l_v] : ( P3 @ ( some_P1807977723_r_l_v @ X ) ) ) ) ) ).
% split_option_ex
thf(fact_70_split__option__ex,axiom,
( ( ^ [P2: option_val_r_l_v > $o] :
? [X5: option_val_r_l_v] : ( P2 @ X5 ) )
= ( ^ [P3: option_val_r_l_v > $o] :
( ( P3 @ none_val_r_l_v )
| ? [X: val_r_l_v] : ( P3 @ ( some_val_r_l_v @ X ) ) ) ) ) ).
% split_option_ex
thf(fact_71_option_Oinducts,axiom,
! [P: option1457017436_r_l_v > $o,Option: option1457017436_r_l_v] :
( ( P @ none_P277133687_r_l_v )
=> ( ! [X4: produc1156025366_r_l_v] : ( P @ ( some_P1807977723_r_l_v @ X4 ) )
=> ( P @ Option ) ) ) ).
% option.inducts
thf(fact_72_option_Oinducts,axiom,
! [P: option_val_r_l_v > $o,Option: option_val_r_l_v] :
( ( P @ none_val_r_l_v )
=> ( ! [X4: val_r_l_v] : ( P @ ( some_val_r_l_v @ X4 ) )
=> ( P @ Option ) ) ) ).
% option.inducts
thf(fact_73_option_Oexhaust,axiom,
! [Y: option1457017436_r_l_v] :
( ( Y != none_P277133687_r_l_v )
=> ~ ! [X23: produc1156025366_r_l_v] :
( Y
!= ( some_P1807977723_r_l_v @ X23 ) ) ) ).
% option.exhaust
thf(fact_74_option_Oexhaust,axiom,
! [Y: option_val_r_l_v] :
( ( Y != none_val_r_l_v )
=> ~ ! [X23: val_r_l_v] :
( Y
!= ( some_val_r_l_v @ X23 ) ) ) ).
% option.exhaust
thf(fact_75_option_OdiscI,axiom,
! [Option: option1457017436_r_l_v,X22: produc1156025366_r_l_v] :
( ( Option
= ( some_P1807977723_r_l_v @ X22 ) )
=> ( Option != none_P277133687_r_l_v ) ) ).
% option.discI
thf(fact_76_option_OdiscI,axiom,
! [Option: option_val_r_l_v,X22: val_r_l_v] :
( ( Option
= ( some_val_r_l_v @ X22 ) )
=> ( Option != none_val_r_l_v ) ) ).
% option.discI
thf(fact_77_option_Odistinct_I1_J,axiom,
! [X22: produc1156025366_r_l_v] :
( none_P277133687_r_l_v
!= ( some_P1807977723_r_l_v @ X22 ) ) ).
% option.distinct(1)
thf(fact_78_option_Odistinct_I1_J,axiom,
! [X22: val_r_l_v] :
( none_val_r_l_v
!= ( some_val_r_l_v @ X22 ) ) ).
% option.distinct(1)
thf(fact_79_map__upd__Some__unfold,axiom,
! [M: r > option1457017436_r_l_v,A2: r,B2: produc1156025366_r_l_v,X2: r,Y: produc1156025366_r_l_v] :
( ( ( fun_up709272714_r_l_v @ M @ A2 @ ( some_P1807977723_r_l_v @ B2 ) @ X2 )
= ( some_P1807977723_r_l_v @ Y ) )
= ( ( ( X2 = A2 )
& ( B2 = Y ) )
| ( ( X2 != A2 )
& ( ( M @ X2 )
= ( some_P1807977723_r_l_v @ Y ) ) ) ) ) ).
% map_upd_Some_unfold
thf(fact_80_map__upd__Some__unfold,axiom,
! [M: l > option_val_r_l_v,A2: l,B2: val_r_l_v,X2: l,Y: val_r_l_v] :
( ( ( fun_up1835647912_r_l_v @ M @ A2 @ ( some_val_r_l_v @ B2 ) @ X2 )
= ( some_val_r_l_v @ Y ) )
= ( ( ( X2 = A2 )
& ( B2 = Y ) )
| ( ( X2 != A2 )
& ( ( M @ X2 )
= ( some_val_r_l_v @ Y ) ) ) ) ) ).
% map_upd_Some_unfold
thf(fact_81_map__upd__triv,axiom,
! [T: r > option1457017436_r_l_v,K: r,X2: produc1156025366_r_l_v] :
( ( ( T @ K )
= ( some_P1807977723_r_l_v @ X2 ) )
=> ( ( fun_up709272714_r_l_v @ T @ K @ ( some_P1807977723_r_l_v @ X2 ) )
= T ) ) ).
% map_upd_triv
thf(fact_82_map__upd__triv,axiom,
! [T: l > option_val_r_l_v,K: l,X2: val_r_l_v] :
( ( ( T @ K )
= ( some_val_r_l_v @ X2 ) )
=> ( ( fun_up1835647912_r_l_v @ T @ K @ ( some_val_r_l_v @ X2 ) )
= T ) ) ).
% map_upd_triv
thf(fact_83_map__upd__eqD1,axiom,
! [M: r > option1457017436_r_l_v,A2: r,X2: produc1156025366_r_l_v,N: r > option1457017436_r_l_v,Y: produc1156025366_r_l_v] :
( ( ( fun_up709272714_r_l_v @ M @ A2 @ ( some_P1807977723_r_l_v @ X2 ) )
= ( fun_up709272714_r_l_v @ N @ A2 @ ( some_P1807977723_r_l_v @ Y ) ) )
=> ( X2 = Y ) ) ).
% map_upd_eqD1
thf(fact_84_map__upd__eqD1,axiom,
! [M: l > option_val_r_l_v,A2: l,X2: val_r_l_v,N: l > option_val_r_l_v,Y: val_r_l_v] :
( ( ( fun_up1835647912_r_l_v @ M @ A2 @ ( some_val_r_l_v @ X2 ) )
= ( fun_up1835647912_r_l_v @ N @ A2 @ ( some_val_r_l_v @ Y ) ) )
=> ( X2 = Y ) ) ).
% map_upd_eqD1
thf(fact_85_map__upd__nonempty,axiom,
! [T: r > option1457017436_r_l_v,K: r,X2: produc1156025366_r_l_v] :
( ( fun_up709272714_r_l_v @ T @ K @ ( some_P1807977723_r_l_v @ X2 ) )
!= ( ^ [X: r] : none_P277133687_r_l_v ) ) ).
% map_upd_nonempty
thf(fact_86_map__upd__nonempty,axiom,
! [T: l > option_val_r_l_v,K: l,X2: val_r_l_v] :
( ( fun_up1835647912_r_l_v @ T @ K @ ( some_val_r_l_v @ X2 ) )
!= ( ^ [X: l] : none_val_r_l_v ) ) ).
% map_upd_nonempty
thf(fact_87_substitution_Ofork__pseudodeterministic,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E4: expr_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rfork_r_l_v @ E4 ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
= ( ? [R3: r] :
( ~ ( member_r @ R3 @ ( rID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rfork_r_l_v @ E4 ) ) ) ) ) ) ) )
& ( S2
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( rid_r_l_v @ R3 ) ) ) ) ) ) ) @ R3
@ ( some_P1807977723_r_l_v
@ ( produc297528454_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 )
@ ( produc1834103605_r_l_v
@ ^ [X: l] : none_val_r_l_v
@ E4 ) ) ) ) ) ) ) ) ) ) ).
% substitution.fork_pseudodeterministic
thf(fact_88_inductive__invariant__is__execution__invariant,axiom,
! [S: r > option1457017436_r_l_v,P: ( r > option1457017436_r_l_v ) > $o] :
( ( reachable_r_l_v @ subst @ S )
=> ( ( induct1670415253_r_l_v @ subst @ P )
=> ( P @ S ) ) ) ).
% inductive_invariant_is_execution_invariant
thf(fact_89_substitution_Orevision__step__relaxed_Ofork,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E4: expr_r_l_v,R2: r] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rfork_r_l_v @ E4 ) ) ) ) ) )
=> ( ~ ( member_r @ R2 @ ( rID_G_r_l_v @ S ) )
=> ( revisi1291188644_r_l_v @ Subst @ R @ S
@ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) @ R2
@ ( some_P1807977723_r_l_v
@ ( produc297528454_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 )
@ ( produc1834103605_r_l_v
@ ^ [X: l] : none_val_r_l_v
@ E4 ) ) ) ) ) ) ) ) ).
% substitution.revision_step_relaxed.fork
thf(fact_90_substitution_Orevision__step_Ofork,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E4: expr_r_l_v,R2: r] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rfork_r_l_v @ E4 ) ) ) ) ) )
=> ( ~ ( member_r @ R2 @ ( rID_G_r_l_v @ S ) )
=> ( revision_step_r_l_v @ Subst @ R @ S
@ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) @ R2
@ ( some_P1807977723_r_l_v
@ ( produc297528454_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 )
@ ( produc1834103605_r_l_v
@ ^ [X: l] : none_val_r_l_v
@ E4 ) ) ) ) ) ) ) ) ).
% substitution.revision_step.fork
thf(fact_91_substitution_Oonly__fork__introduces__rids,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
=> ( ! [Sigma: l > option_val_r_l_v,Tau: l > option_val_r_l_v,E: cntxt_r_l_v,E2: expr_r_l_v] :
( ( S @ R )
!= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ ( plug_r_l_v @ E @ ( rfork_r_l_v @ E2 ) ) ) ) ) )
=> ( ord_less_eq_set_r @ ( rID_G_r_l_v @ S2 ) @ ( rID_G_r_l_v @ S ) ) ) ) ) ).
% substitution.only_fork_introduces_rids
thf(fact_92_reachable__imp___092_060S_062_092_060_094sub_062G,axiom,
! [S: r > option1457017436_r_l_v] :
( ( reachable_r_l_v @ subst @ S )
=> ( domain1547879849_r_l_v @ S ) ) ).
% reachable_imp_\<S>\<^sub>G
thf(fact_93_substitution_Oonly__fork__introduces__rids_H,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v,R2: r] :
( ( substitution_r_l_v @ Subst )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
=> ( ! [Sigma: l > option_val_r_l_v,Tau: l > option_val_r_l_v,E: cntxt_r_l_v,E2: expr_r_l_v] :
( ( S @ R )
!= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ ( plug_r_l_v @ E @ ( rfork_r_l_v @ E2 ) ) ) ) ) )
=> ( ~ ( member_r @ R2 @ ( rID_G_r_l_v @ S ) )
=> ~ ( member_r @ R2 @ ( rID_G_r_l_v @ S2 ) ) ) ) ) ) ).
% substitution.only_fork_introduces_rids'
thf(fact_94_SLC__join_092_060_094sub_062_092_060epsilon_062,axiom,
! [S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R4: r,S_2: r > option1457017436_r_l_v,R2: r,S_22: r > option1457017436_r_l_v] :
( ( ( S_1 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R4 ) ) ) ) ) ) ) )
=> ( ( S_2
= ( ^ [X: r] : none_P277133687_r_l_v ) )
=> ( ( ( S_1 @ R4 )
= none_P277133687_r_l_v )
=> ( ( revision_step_r_l_v @ subst @ R2 @ S_1 @ S_22 )
=> ( ( R != R2 )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ).
% SLC_join\<^sub>\<epsilon>
thf(fact_95_revision__step__relaxed_Ojoin_092_060_094sub_062_092_060epsilon_062,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R2: r] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) )
=> ( ( ( S @ R2 )
= none_P277133687_r_l_v )
=> ( revisi1291188644_r_l_v @ subst @ R @ S
@ ^ [X: r] : none_P277133687_r_l_v ) ) ) ).
% revision_step_relaxed.join\<^sub>\<epsilon>
thf(fact_96_revision__step_Ojoin_092_060_094sub_062_092_060epsilon_062,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R2: r] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) )
=> ( ( ( S @ R2 )
= none_P277133687_r_l_v )
=> ( revision_step_r_l_v @ subst @ R @ S
@ ^ [X: r] : none_P277133687_r_l_v ) ) ) ).
% revision_step.join\<^sub>\<epsilon>
thf(fact_97_domains__subsume__globally__def,axiom,
( domain1547879849_r_l_v
= ( ^ [S4: r > option1457017436_r_l_v] :
! [R5: r,Ls2: produc1156025366_r_l_v] :
( ( ( S4 @ R5 )
= ( some_P1807977723_r_l_v @ Ls2 ) )
=> ( domain87684397_l_r_v @ Ls2 ) ) ) ) ).
% domains_subsume_globally_def
thf(fact_98_rjoin_092_060_094sub_062_092_060epsilon_062__deterministic,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R2: r,S2: r > option1457017436_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) )
=> ( ( ( S @ R2 )
= none_P277133687_r_l_v )
=> ( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
= ( S2
= ( ^ [X: r] : none_P277133687_r_l_v ) ) ) ) ) ).
% rjoin\<^sub>\<epsilon>_deterministic
thf(fact_99_substitution_Orevision__step_Ocong,axiom,
revision_step_r_l_v = revision_step_r_l_v ).
% substitution.revision_step.cong
thf(fact_100_substitution_Orevision__step__relaxed_Ocong,axiom,
revisi1291188644_r_l_v = revisi1291188644_r_l_v ).
% substitution.revision_step_relaxed.cong
thf(fact_101_substitution_Orevision__step_Ojoin_092_060_094sub_062_092_060epsilon_062,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R2: r] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) )
=> ( ( ( S @ R2 )
= none_P277133687_r_l_v )
=> ( revision_step_r_l_v @ Subst @ R @ S
@ ^ [X: r] : none_P277133687_r_l_v ) ) ) ) ).
% substitution.revision_step.join\<^sub>\<epsilon>
thf(fact_102_substitution_Orevision__step__relaxed_Ojoin_092_060_094sub_062_092_060epsilon_062,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R2: r] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) )
=> ( ( ( S @ R2 )
= none_P277133687_r_l_v )
=> ( revisi1291188644_r_l_v @ Subst @ R @ S
@ ^ [X: r] : none_P277133687_r_l_v ) ) ) ) ).
% substitution.revision_step_relaxed.join\<^sub>\<epsilon>
thf(fact_103_substitution_Orjoin_092_060_094sub_062_092_060epsilon_062__deterministic,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R2: r,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) )
=> ( ( ( S @ R2 )
= none_P277133687_r_l_v )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
= ( S2
= ( ^ [X: r] : none_P277133687_r_l_v ) ) ) ) ) ) ).
% substitution.rjoin\<^sub>\<epsilon>_deterministic
thf(fact_104_substitution_OSLC__join_092_060_094sub_062_092_060epsilon_062,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R4: r,S_2: r > option1457017436_r_l_v,R2: r,S_22: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S_1 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R4 ) ) ) ) ) ) ) )
=> ( ( S_2
= ( ^ [X: r] : none_P277133687_r_l_v ) )
=> ( ( ( S_1 @ R4 )
= none_P277133687_r_l_v )
=> ( ( revision_step_r_l_v @ Subst @ R2 @ S_1 @ S_22 )
=> ( ( R != R2 )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ Subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ) ).
% substitution.SLC_join\<^sub>\<epsilon>
thf(fact_105_nice__ind__inv__is__inductive__invariant,axiom,
( induct1670415253_r_l_v @ subst
@ ^ [S4: r > option1457017436_r_l_v] :
( ( domain1547879849_r_l_v @ S4 )
& ( subsum680764357_r_l_v @ S4 ) ) ) ).
% nice_ind_inv_is_inductive_invariant
thf(fact_106_step__preserves___092_060S_062_092_060_094sub_062G__and___092_060A_062_092_060_094sub_062G_I2_J,axiom,
! [R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
=> ( ( domain1547879849_r_l_v @ S )
=> ( ( subsum680764357_r_l_v @ S )
=> ( subsum680764357_r_l_v @ S2 ) ) ) ) ).
% step_preserves_\<S>\<^sub>G_and_\<A>\<^sub>G(2)
thf(fact_107_step__preserves___092_060S_062_092_060_094sub_062G__and___092_060A_062_092_060_094sub_062G_I1_J,axiom,
! [R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
=> ( ( domain1547879849_r_l_v @ S )
=> ( ( subsum680764357_r_l_v @ S )
=> ( domain1547879849_r_l_v @ S2 ) ) ) ) ).
% step_preserves_\<S>\<^sub>G_and_\<A>\<^sub>G(1)
thf(fact_108_substitution_Odomains__subsume__globallyI,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ! [R6: r,Sigma: l > option_val_r_l_v,Tau: l > option_val_r_l_v,E2: expr_r_l_v] :
( ( ( S @ R6 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ E2 ) ) ) )
=> ( domain87684397_l_r_v @ ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ E2 ) ) ) )
=> ( domain1547879849_r_l_v @ S ) ) ) ).
% substitution.domains_subsume_globallyI
thf(fact_109_substitution_Otransition__relations__equivalent,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( reachable_r_l_v @ Subst @ S )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
= ( revisi1291188644_r_l_v @ Subst @ R @ S @ S2 ) ) ) ) ).
% substitution.transition_relations_equivalent
thf(fact_110_domains__subsume__globallyI,axiom,
! [S: r > option1457017436_r_l_v] :
( ! [R6: r,Sigma: l > option_val_r_l_v,Tau: l > option_val_r_l_v,E2: expr_r_l_v] :
( ( ( S @ R6 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ E2 ) ) ) )
=> ( domain87684397_l_r_v @ ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ E2 ) ) ) )
=> ( domain1547879849_r_l_v @ S ) ) ).
% domains_subsume_globallyI
thf(fact_111_substitution_Oreachable__def,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( reachable_r_l_v @ Subst @ S )
= ( ? [E5: expr_r_l_v,S3: r > option1457017436_r_l_v] : ( execution_r_l_v @ Subst @ E5 @ S3 @ S ) ) ) ) ).
% substitution.reachable_def
thf(fact_112_substitution_Oreachable_Ocong,axiom,
reachable_r_l_v = reachable_r_l_v ).
% substitution.reachable.cong
thf(fact_113_substitution_Oinductive__invariant_Ocong,axiom,
induct1670415253_r_l_v = induct1670415253_r_l_v ).
% substitution.inductive_invariant.cong
thf(fact_114_substitution_Oexecution_Ocong,axiom,
execution_r_l_v = execution_r_l_v ).
% substitution.execution.cong
thf(fact_115_substitution_Onice__ind__inv__is__inductive__invariant,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( induct1670415253_r_l_v @ Subst
@ ^ [S4: r > option1457017436_r_l_v] :
( ( domain1547879849_r_l_v @ S4 )
& ( subsum680764357_r_l_v @ S4 ) ) ) ) ).
% substitution.nice_ind_inv_is_inductive_invariant
thf(fact_116_substitution_Ostep__preserves___092_060S_062_092_060_094sub_062G__and___092_060A_062_092_060_094sub_062G_I2_J,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
=> ( ( domain1547879849_r_l_v @ S )
=> ( ( subsum680764357_r_l_v @ S )
=> ( subsum680764357_r_l_v @ S2 ) ) ) ) ) ).
% substitution.step_preserves_\<S>\<^sub>G_and_\<A>\<^sub>G(2)
thf(fact_117_substitution_Ostep__preserves___092_060S_062_092_060_094sub_062G__and___092_060A_062_092_060_094sub_062G_I1_J,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
=> ( ( domain1547879849_r_l_v @ S )
=> ( ( subsum680764357_r_l_v @ S )
=> ( domain1547879849_r_l_v @ S2 ) ) ) ) ) ).
% substitution.step_preserves_\<S>\<^sub>G_and_\<A>\<^sub>G(1)
thf(fact_118_substitution_Odomains__subsume__globally__def,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( domain1547879849_r_l_v @ S )
= ( ! [R5: r,Ls2: produc1156025366_r_l_v] :
( ( ( S @ R5 )
= ( some_P1807977723_r_l_v @ Ls2 ) )
=> ( domain87684397_l_r_v @ Ls2 ) ) ) ) ) ).
% substitution.domains_subsume_globally_def
thf(fact_119_substitution_Oreachability__closed__under__execution__step,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( reachable_r_l_v @ Subst @ S )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
=> ( reachable_r_l_v @ Subst @ S2 ) ) ) ) ).
% substitution.reachability_closed_under_execution_step
thf(fact_120_substitution_Oreachable__imp___092_060S_062_092_060_094sub_062G,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( reachable_r_l_v @ Subst @ S )
=> ( domain1547879849_r_l_v @ S ) ) ) ).
% substitution.reachable_imp_\<S>\<^sub>G
thf(fact_121_substitution_Oinductive__invariant__is__execution__invariant,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,P: ( r > option1457017436_r_l_v ) > $o] :
( ( substitution_r_l_v @ Subst )
=> ( ( reachable_r_l_v @ Subst @ S )
=> ( ( induct1670415253_r_l_v @ Subst @ P )
=> ( P @ S ) ) ) ) ).
% substitution.inductive_invariant_is_execution_invariant
thf(fact_122_substitution_Osubsumes__accessible__globallyI,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ! [R_1: r,Sigma_1: l > option_val_r_l_v,Tau_1: l > option_val_r_l_v,E_1: expr_r_l_v,R_2: r,Sigma_2: l > option_val_r_l_v,Tau_2: l > option_val_r_l_v,E_2: expr_r_l_v] :
( ( ( S @ R_1 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma_1 @ ( produc1834103605_r_l_v @ Tau_1 @ E_1 ) ) ) )
=> ( ( ( S @ R_2 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma_2 @ ( produc1834103605_r_l_v @ Tau_2 @ E_2 ) ) ) )
=> ( subsum148050133_r_l_v @ R_1 @ R_2 @ S ) ) )
=> ( subsum680764357_r_l_v @ S ) ) ) ).
% substitution.subsumes_accessible_globallyI
thf(fact_123_join__and__local__commute,axiom,
! [S_2: r > option1457017436_r_l_v,S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,Tau3: l > option_val_r_l_v,E3: cntxt_r_l_v,R4: r,S_22: r > option1457017436_r_l_v,R2: r,Ls: produc1156025366_r_l_v,Sigma3: l > option_val_r_l_v,V: val_r_l_v] :
( ( S_2
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( combine_l_val_r_l_v @ Tau2 @ Tau3 ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) @ R4 @ none_P277133687_r_l_v ) )
=> ( ( S_22
= ( fun_up709272714_r_l_v @ S_1 @ R2 @ ( some_P1807977723_r_l_v @ Ls ) ) )
=> ( ( R != R2 )
=> ( ( R2 != R4 )
=> ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( combine_l_val_r_l_v @ Tau2 @ Tau3 ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) @ R4 @ none_P277133687_r_l_v ) @ R2 @ ( some_P1807977723_r_l_v @ Ls ) ) )
=> ( ( ( S_22 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R4 ) ) ) ) ) ) ) )
=> ( ( ( S_22 @ R4 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma3 @ ( produc1834103605_r_l_v @ Tau3 @ ( vE_r_l_v @ V ) ) ) ) )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ) ) ).
% join_and_local_commute
thf(fact_124_SLC__join,axiom,
! [S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R4: r,S_2: r > option1457017436_r_l_v,Tau3: l > option_val_r_l_v,Sigma3: l > option_val_r_l_v,V: val_r_l_v,R2: r,S_22: r > option1457017436_r_l_v] :
( ( ( S_1 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R4 ) ) ) ) ) ) ) )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( combine_l_val_r_l_v @ Tau2 @ Tau3 ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) @ R4 @ none_P277133687_r_l_v ) )
=> ( ( ( S_1 @ R4 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma3 @ ( produc1834103605_r_l_v @ Tau3 @ ( vE_r_l_v @ V ) ) ) ) )
=> ( ( revision_step_r_l_v @ subst @ R2 @ S_1 @ S_22 )
=> ( ( R != R2 )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ).
% SLC_join
thf(fact_125_revision__step__relaxed_Ojoin,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R2: r,Sigma3: l > option_val_r_l_v,Tau3: l > option_val_r_l_v,V: val_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) )
=> ( ( ( S @ R2 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma3 @ ( produc1834103605_r_l_v @ Tau3 @ ( vE_r_l_v @ V ) ) ) ) )
=> ( revisi1291188644_r_l_v @ subst @ R @ S @ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( combine_l_val_r_l_v @ Tau2 @ Tau3 ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) @ R2 @ none_P277133687_r_l_v ) ) ) ) ).
% revision_step_relaxed.join
thf(fact_126_reachable__imp__identifiers__finite_I1_J,axiom,
! [S: r > option1457017436_r_l_v] :
( ( reachable_r_l_v @ subst @ S )
=> ( finite_finite_r @ ( rID_G_r_l_v @ S ) ) ) ).
% reachable_imp_identifiers_finite(1)
thf(fact_127_revision__step_Ojoin,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R2: r,Sigma3: l > option_val_r_l_v,Tau3: l > option_val_r_l_v,V: val_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) )
=> ( ( ( S @ R2 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma3 @ ( produc1834103605_r_l_v @ Tau3 @ ( vE_r_l_v @ V ) ) ) ) )
=> ( revision_step_r_l_v @ subst @ R @ S @ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( combine_l_val_r_l_v @ Tau2 @ Tau3 ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) @ R2 @ none_P277133687_r_l_v ) ) ) ) ).
% revision_step.join
thf(fact_128_empty__map__finite_I3_J,axiom,
( finite_finite_r
@ ( rID_G_r_l_v
@ ^ [X: r] : none_P277133687_r_l_v ) ) ).
% empty_map_finite(3)
thf(fact_129_rid__inf,axiom,
~ ( finite_finite_r @ top_top_set_r ) ).
% rid_inf
thf(fact_130_RID_092_060_094sub_062G__finite__invariant,axiom,
! [R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
=> ( ( finite_finite_r @ ( rID_G_r_l_v @ S ) )
=> ( finite_finite_r @ ( rID_G_r_l_v @ S2 ) ) ) ) ).
% RID\<^sub>G_finite_invariant
thf(fact_131_finite__state__imp__restriction__finite_I1_J,axiom,
! [S: r > option1457017436_r_l_v,R: r] :
( ( finite_finite_r @ ( rID_G_r_l_v @ S ) )
=> ( finite_finite_r @ ( rID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) ) ) ).
% finite_state_imp_restriction_finite(1)
thf(fact_132_subsumes__accessible__globallyI,axiom,
! [S: r > option1457017436_r_l_v] :
( ! [R_1: r,Sigma_1: l > option_val_r_l_v,Tau_1: l > option_val_r_l_v,E_1: expr_r_l_v,R_2: r,Sigma_2: l > option_val_r_l_v,Tau_2: l > option_val_r_l_v,E_2: expr_r_l_v] :
( ( ( S @ R_1 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma_1 @ ( produc1834103605_r_l_v @ Tau_1 @ E_1 ) ) ) )
=> ( ( ( S @ R_2 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma_2 @ ( produc1834103605_r_l_v @ Tau_2 @ E_2 ) ) ) )
=> ( subsum148050133_r_l_v @ R_1 @ R_2 @ S ) ) )
=> ( subsum680764357_r_l_v @ S ) ) ).
% subsumes_accessible_globallyI
thf(fact_133_rjoin__deterministic,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R2: r,Sigma3: l > option_val_r_l_v,Tau3: l > option_val_r_l_v,V: val_r_l_v,S2: r > option1457017436_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) )
=> ( ( ( S @ R2 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma3 @ ( produc1834103605_r_l_v @ Tau3 @ ( vE_r_l_v @ V ) ) ) ) )
=> ( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
= ( S2
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( combine_l_val_r_l_v @ Tau2 @ Tau3 ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) @ R2 @ none_P277133687_r_l_v ) ) ) ) ) ).
% rjoin_deterministic
thf(fact_134_substitution_ORID_092_060_094sub_062G__finite__invariant,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
=> ( ( finite_finite_r @ ( rID_G_r_l_v @ S ) )
=> ( finite_finite_r @ ( rID_G_r_l_v @ S2 ) ) ) ) ) ).
% substitution.RID\<^sub>G_finite_invariant
thf(fact_135_substitution_Oreachable__imp__identifiers__finite_I1_J,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( reachable_r_l_v @ Subst @ S )
=> ( finite_finite_r @ ( rID_G_r_l_v @ S ) ) ) ) ).
% substitution.reachable_imp_identifiers_finite(1)
thf(fact_136_substitution_Oempty__map__finite_I3_J,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( finite_finite_r
@ ( rID_G_r_l_v
@ ^ [X: r] : none_P277133687_r_l_v ) ) ) ).
% substitution.empty_map_finite(3)
thf(fact_137_substitution_Ofinite__state__imp__restriction__finite_I1_J,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r] :
( ( substitution_r_l_v @ Subst )
=> ( ( finite_finite_r @ ( rID_G_r_l_v @ S ) )
=> ( finite_finite_r @ ( rID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) ) ) ) ).
% substitution.finite_state_imp_restriction_finite(1)
thf(fact_138_substitution_Orevision__step_Ojoin,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R2: r,Sigma3: l > option_val_r_l_v,Tau3: l > option_val_r_l_v,V: val_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) )
=> ( ( ( S @ R2 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma3 @ ( produc1834103605_r_l_v @ Tau3 @ ( vE_r_l_v @ V ) ) ) ) )
=> ( revision_step_r_l_v @ Subst @ R @ S @ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( combine_l_val_r_l_v @ Tau2 @ Tau3 ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) @ R2 @ none_P277133687_r_l_v ) ) ) ) ) ).
% substitution.revision_step.join
thf(fact_139_substitution_Orjoin__deterministic,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R2: r,Sigma3: l > option_val_r_l_v,Tau3: l > option_val_r_l_v,V: val_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) )
=> ( ( ( S @ R2 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma3 @ ( produc1834103605_r_l_v @ Tau3 @ ( vE_r_l_v @ V ) ) ) ) )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
= ( S2
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( combine_l_val_r_l_v @ Tau2 @ Tau3 ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) @ R2 @ none_P277133687_r_l_v ) ) ) ) ) ) ).
% substitution.rjoin_deterministic
thf(fact_140_substitution_Orevision__step__relaxed_Ojoin,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R2: r,Sigma3: l > option_val_r_l_v,Tau3: l > option_val_r_l_v,V: val_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R2 ) ) ) ) ) ) ) )
=> ( ( ( S @ R2 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma3 @ ( produc1834103605_r_l_v @ Tau3 @ ( vE_r_l_v @ V ) ) ) ) )
=> ( revisi1291188644_r_l_v @ Subst @ R @ S @ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( combine_l_val_r_l_v @ Tau2 @ Tau3 ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) @ R2 @ none_P277133687_r_l_v ) ) ) ) ) ).
% substitution.revision_step_relaxed.join
thf(fact_141_substitution_OSLC__join,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,R4: r,S_2: r > option1457017436_r_l_v,Tau3: l > option_val_r_l_v,Sigma3: l > option_val_r_l_v,V: val_r_l_v,R2: r,S_22: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S_1 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R4 ) ) ) ) ) ) ) )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( combine_l_val_r_l_v @ Tau2 @ Tau3 ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) @ R4 @ none_P277133687_r_l_v ) )
=> ( ( ( S_1 @ R4 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma3 @ ( produc1834103605_r_l_v @ Tau3 @ ( vE_r_l_v @ V ) ) ) ) )
=> ( ( revision_step_r_l_v @ Subst @ R2 @ S_1 @ S_22 )
=> ( ( R != R2 )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ Subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ) ).
% substitution.SLC_join
thf(fact_142_substitution_Ojoin__and__local__commute,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S_2: r > option1457017436_r_l_v,S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,Tau3: l > option_val_r_l_v,E3: cntxt_r_l_v,R4: r,S_22: r > option1457017436_r_l_v,R2: r,Ls: produc1156025366_r_l_v,Sigma3: l > option_val_r_l_v,V: val_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( combine_l_val_r_l_v @ Tau2 @ Tau3 ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) @ R4 @ none_P277133687_r_l_v ) )
=> ( ( S_22
= ( fun_up709272714_r_l_v @ S_1 @ R2 @ ( some_P1807977723_r_l_v @ Ls ) ) )
=> ( ( R != R2 )
=> ( ( R2 != R4 )
=> ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( combine_l_val_r_l_v @ Tau2 @ Tau3 ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) @ R4 @ none_P277133687_r_l_v ) @ R2 @ ( some_P1807977723_r_l_v @ Ls ) ) )
=> ( ( ( S_22 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( rjoin_r_l_v @ ( vE_r_l_v @ ( rid_r_l_v @ R4 ) ) ) ) ) ) ) )
=> ( ( ( S_22 @ R4 )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma3 @ ( produc1834103605_r_l_v @ Tau3 @ ( vE_r_l_v @ V ) ) ) ) )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ Subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ) ) ) ).
% substitution.join_and_local_commute
thf(fact_143_finite__Collect__subsets,axiom,
! [A3: set_Sum_sum_r_l] :
( ( finite65649782um_r_l @ A3 )
=> ( finite1407742636um_r_l
@ ( collec765168874um_r_l
@ ^ [B3: set_Sum_sum_r_l] : ( ord_le294536053um_r_l @ B3 @ A3 ) ) ) ) ).
% finite_Collect_subsets
thf(fact_144_finite__Collect__subsets,axiom,
! [A3: set_Sum_sum_l_r] :
( ( finite1591053314um_l_r @ A3 )
=> ( finite483212344um_l_r
@ ( collec1988122230um_l_r
@ ^ [B3: set_Sum_sum_l_r] : ( ord_le1517489409um_l_r @ B3 @ A3 ) ) ) ) ).
% finite_Collect_subsets
thf(fact_145_finite__Collect__subsets,axiom,
! [A3: set_Sum_sum_l_l] :
( ( finite1541484284um_l_l @ A3 )
=> ( finite88277554um_l_l
@ ( collec1593187440um_l_l
@ ^ [B3: set_Sum_sum_l_l] : ( ord_le1122554619um_l_l @ B3 @ A3 ) ) ) ) ).
% finite_Collect_subsets
thf(fact_146_finite__Collect__subsets,axiom,
! [A3: set_set_r] :
( ( finite_finite_set_r @ A3 )
=> ( finite1651563256_set_r
@ ( collect_set_set_r
@ ^ [B3: set_set_r] : ( ord_le363960431_set_r @ B3 @ A3 ) ) ) ) ).
% finite_Collect_subsets
thf(fact_147_finite__Collect__subsets,axiom,
! [A3: set_set_l] :
( ( finite_finite_set_l @ A3 )
=> ( finite1256628466_set_l
@ ( collect_set_set_l
@ ^ [B3: set_set_l] : ( ord_le2116509289_set_l @ B3 @ A3 ) ) ) ) ).
% finite_Collect_subsets
thf(fact_148_finite__Collect__subsets,axiom,
! [A3: set_r] :
( ( finite_finite_r @ A3 )
=> ( finite_finite_set_r
@ ( collect_set_r
@ ^ [B3: set_r] : ( ord_less_eq_set_r @ B3 @ A3 ) ) ) ) ).
% finite_Collect_subsets
thf(fact_149_finite__Collect__subsets,axiom,
! [A3: set_l] :
( ( finite_finite_l @ A3 )
=> ( finite_finite_set_l
@ ( collect_set_l
@ ^ [B3: set_l] : ( ord_less_eq_set_l @ B3 @ A3 ) ) ) ) ).
% finite_Collect_subsets
thf(fact_150_reachable__imp__identifiers__available_I1_J,axiom,
! [S: r > option1457017436_r_l_v] :
( ( reachable_r_l_v @ subst @ S )
=> ( ~ ( finite_finite_r @ top_top_set_r )
=> ? [R6: r] :
~ ( member_r @ R6 @ ( rID_G_r_l_v @ S ) ) ) ) ).
% reachable_imp_identifiers_available(1)
thf(fact_151_finite__Collect__conjI,axiom,
! [P: produc1389397445_r_l_v > $o,Q: produc1389397445_r_l_v > $o] :
( ( ( finite1853159534_r_l_v @ ( collec1978425008_r_l_v @ P ) )
| ( finite1853159534_r_l_v @ ( collec1978425008_r_l_v @ Q ) ) )
=> ( finite1853159534_r_l_v
@ ( collec1978425008_r_l_v
@ ^ [X: produc1389397445_r_l_v] :
( ( P @ X )
& ( Q @ X ) ) ) ) ) ).
% finite_Collect_conjI
thf(fact_152_finite__Collect__conjI,axiom,
! [P: sum_sum_r_l > $o,Q: sum_sum_r_l > $o] :
( ( ( finite65649782um_r_l @ ( collect_Sum_sum_r_l @ P ) )
| ( finite65649782um_r_l @ ( collect_Sum_sum_r_l @ Q ) ) )
=> ( finite65649782um_r_l
@ ( collect_Sum_sum_r_l
@ ^ [X: sum_sum_r_l] :
( ( P @ X )
& ( Q @ X ) ) ) ) ) ).
% finite_Collect_conjI
thf(fact_153_finite__Collect__conjI,axiom,
! [P: sum_sum_l_r > $o,Q: sum_sum_l_r > $o] :
( ( ( finite1591053314um_l_r @ ( collect_Sum_sum_l_r @ P ) )
| ( finite1591053314um_l_r @ ( collect_Sum_sum_l_r @ Q ) ) )
=> ( finite1591053314um_l_r
@ ( collect_Sum_sum_l_r
@ ^ [X: sum_sum_l_r] :
( ( P @ X )
& ( Q @ X ) ) ) ) ) ).
% finite_Collect_conjI
thf(fact_154_finite__Collect__conjI,axiom,
! [P: sum_sum_l_l > $o,Q: sum_sum_l_l > $o] :
( ( ( finite1541484284um_l_l @ ( collect_Sum_sum_l_l @ P ) )
| ( finite1541484284um_l_l @ ( collect_Sum_sum_l_l @ Q ) ) )
=> ( finite1541484284um_l_l
@ ( collect_Sum_sum_l_l
@ ^ [X: sum_sum_l_l] :
( ( P @ X )
& ( Q @ X ) ) ) ) ) ).
% finite_Collect_conjI
thf(fact_155_finite__Collect__conjI,axiom,
! [P: set_r > $o,Q: set_r > $o] :
( ( ( finite_finite_set_r @ ( collect_set_r @ P ) )
| ( finite_finite_set_r @ ( collect_set_r @ Q ) ) )
=> ( finite_finite_set_r
@ ( collect_set_r
@ ^ [X: set_r] :
( ( P @ X )
& ( Q @ X ) ) ) ) ) ).
% finite_Collect_conjI
thf(fact_156_finite__Collect__conjI,axiom,
! [P: set_l > $o,Q: set_l > $o] :
( ( ( finite_finite_set_l @ ( collect_set_l @ P ) )
| ( finite_finite_set_l @ ( collect_set_l @ Q ) ) )
=> ( finite_finite_set_l
@ ( collect_set_l
@ ^ [X: set_l] :
( ( P @ X )
& ( Q @ X ) ) ) ) ) ).
% finite_Collect_conjI
thf(fact_157_finite__Collect__conjI,axiom,
! [P: r > $o,Q: r > $o] :
( ( ( finite_finite_r @ ( collect_r @ P ) )
| ( finite_finite_r @ ( collect_r @ Q ) ) )
=> ( finite_finite_r
@ ( collect_r
@ ^ [X: r] :
( ( P @ X )
& ( Q @ X ) ) ) ) ) ).
% finite_Collect_conjI
thf(fact_158_finite__Collect__conjI,axiom,
! [P: l > $o,Q: l > $o] :
( ( ( finite_finite_l @ ( collect_l @ P ) )
| ( finite_finite_l @ ( collect_l @ Q ) ) )
=> ( finite_finite_l
@ ( collect_l
@ ^ [X: l] :
( ( P @ X )
& ( Q @ X ) ) ) ) ) ).
% finite_Collect_conjI
thf(fact_159_finite__Collect__disjI,axiom,
! [P: sum_sum_l_r > $o,Q: sum_sum_l_r > $o] :
( ( finite1591053314um_l_r
@ ( collect_Sum_sum_l_r
@ ^ [X: sum_sum_l_r] :
( ( P @ X )
| ( Q @ X ) ) ) )
= ( ( finite1591053314um_l_r @ ( collect_Sum_sum_l_r @ P ) )
& ( finite1591053314um_l_r @ ( collect_Sum_sum_l_r @ Q ) ) ) ) ).
% finite_Collect_disjI
thf(fact_160_finite__Collect__disjI,axiom,
! [P: sum_sum_l_l > $o,Q: sum_sum_l_l > $o] :
( ( finite1541484284um_l_l
@ ( collect_Sum_sum_l_l
@ ^ [X: sum_sum_l_l] :
( ( P @ X )
| ( Q @ X ) ) ) )
= ( ( finite1541484284um_l_l @ ( collect_Sum_sum_l_l @ P ) )
& ( finite1541484284um_l_l @ ( collect_Sum_sum_l_l @ Q ) ) ) ) ).
% finite_Collect_disjI
thf(fact_161_finite__Collect__disjI,axiom,
! [P: set_r > $o,Q: set_r > $o] :
( ( finite_finite_set_r
@ ( collect_set_r
@ ^ [X: set_r] :
( ( P @ X )
| ( Q @ X ) ) ) )
= ( ( finite_finite_set_r @ ( collect_set_r @ P ) )
& ( finite_finite_set_r @ ( collect_set_r @ Q ) ) ) ) ).
% finite_Collect_disjI
thf(fact_162_finite__Collect__disjI,axiom,
! [P: set_l > $o,Q: set_l > $o] :
( ( finite_finite_set_l
@ ( collect_set_l
@ ^ [X: set_l] :
( ( P @ X )
| ( Q @ X ) ) ) )
= ( ( finite_finite_set_l @ ( collect_set_l @ P ) )
& ( finite_finite_set_l @ ( collect_set_l @ Q ) ) ) ) ).
% finite_Collect_disjI
thf(fact_163_finite__Collect__disjI,axiom,
! [P: r > $o,Q: r > $o] :
( ( finite_finite_r
@ ( collect_r
@ ^ [X: r] :
( ( P @ X )
| ( Q @ X ) ) ) )
= ( ( finite_finite_r @ ( collect_r @ P ) )
& ( finite_finite_r @ ( collect_r @ Q ) ) ) ) ).
% finite_Collect_disjI
thf(fact_164_finite__Collect__disjI,axiom,
! [P: l > $o,Q: l > $o] :
( ( finite_finite_l
@ ( collect_l
@ ^ [X: l] :
( ( P @ X )
| ( Q @ X ) ) ) )
= ( ( finite_finite_l @ ( collect_l @ P ) )
& ( finite_finite_l @ ( collect_l @ Q ) ) ) ) ).
% finite_Collect_disjI
thf(fact_165_local__state__of__finite__restricted__global__state__is__finite_I1_J,axiom,
! [S: r > option1457017436_r_l_v,R2: r,Ls: produc1156025366_r_l_v,R: r] :
( ( ( S @ R2 )
= ( some_P1807977723_r_l_v @ Ls ) )
=> ( ( finite_finite_r @ ( rID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) )
=> ( ( R != R2 )
=> ( finite_finite_r @ ( rID_L_l_r_v @ Ls ) ) ) ) ) ).
% local_state_of_finite_restricted_global_state_is_finite(1)
thf(fact_166_finite__option__UNIV,axiom,
( ( finite16335230tion_r @ top_top_set_option_r )
= ( finite_finite_r @ top_top_set_r ) ) ).
% finite_option_UNIV
thf(fact_167_finite__option__UNIV,axiom,
( ( finite2114249848tion_l @ top_top_set_option_l )
= ( finite_finite_l @ top_top_set_l ) ) ).
% finite_option_UNIV
thf(fact_168_finite__Plus__UNIV__iff,axiom,
( ( finite115218812um_r_r @ top_to577862603um_r_r )
= ( ( finite_finite_r @ top_top_set_r )
& ( finite_finite_r @ top_top_set_r ) ) ) ).
% finite_Plus_UNIV_iff
thf(fact_169_finite__Plus__UNIV__iff,axiom,
( ( finite65649782um_r_l @ top_to182927813um_r_l )
= ( ( finite_finite_r @ top_top_set_r )
& ( finite_finite_l @ top_top_set_l ) ) ) ).
% finite_Plus_UNIV_iff
thf(fact_170_finite__Plus__UNIV__iff,axiom,
( ( finite1591053314um_l_r @ top_to1405881169um_l_r )
= ( ( finite_finite_l @ top_top_set_l )
& ( finite_finite_r @ top_top_set_r ) ) ) ).
% finite_Plus_UNIV_iff
thf(fact_171_finite__Plus__UNIV__iff,axiom,
( ( finite1541484284um_l_l @ top_to1010946379um_l_l )
= ( ( finite_finite_l @ top_top_set_l )
& ( finite_finite_l @ top_top_set_l ) ) ) ).
% finite_Plus_UNIV_iff
thf(fact_172_finite__Collect__not,axiom,
! [P: r > $o] :
( ( finite_finite_r @ ( collect_r @ P ) )
=> ( ( finite_finite_r
@ ( collect_r
@ ^ [X: r] :
~ ( P @ X ) ) )
= ( finite_finite_r @ top_top_set_r ) ) ) ).
% finite_Collect_not
thf(fact_173_finite__Collect__not,axiom,
! [P: l > $o] :
( ( finite_finite_l @ ( collect_l @ P ) )
=> ( ( finite_finite_l
@ ( collect_l
@ ^ [X: l] :
~ ( P @ X ) ) )
= ( finite_finite_l @ top_top_set_l ) ) ) ).
% finite_Collect_not
thf(fact_174_RID_092_060_094sub_062GI_I2_J,axiom,
! [S: r > option1457017436_r_l_v,R2: r,Ls: produc1156025366_r_l_v,R: r] :
( ( ( S @ R2 )
= ( some_P1807977723_r_l_v @ Ls ) )
=> ( ( member_r @ R @ ( rID_L_l_r_v @ Ls ) )
=> ( member_r @ R @ ( rID_G_r_l_v @ S ) ) ) ) ).
% RID\<^sub>GI(2)
thf(fact_175_Finite__Set_Ofinite__set,axiom,
( ( finite_finite_set_r @ top_top_set_set_r )
= ( finite_finite_r @ top_top_set_r ) ) ).
% Finite_Set.finite_set
thf(fact_176_Finite__Set_Ofinite__set,axiom,
( ( finite_finite_set_l @ top_top_set_set_l )
= ( finite_finite_l @ top_top_set_l ) ) ).
% Finite_Set.finite_set
thf(fact_177_finite__prod,axiom,
( ( finite1507191824od_r_r @ top_to2034696215od_r_r )
= ( ( finite_finite_r @ top_top_set_r )
& ( finite_finite_r @ top_top_set_r ) ) ) ).
% finite_prod
thf(fact_178_finite__prod,axiom,
( ( finite1457622794od_r_l @ top_to1639761425od_r_l )
= ( ( finite_finite_r @ top_top_set_r )
& ( finite_finite_l @ top_top_set_l ) ) ) ).
% finite_prod
thf(fact_179_finite__prod,axiom,
( ( finite835542678od_l_r @ top_to715231133od_l_r )
= ( ( finite_finite_l @ top_top_set_l )
& ( finite_finite_r @ top_top_set_r ) ) ) ).
% finite_prod
thf(fact_180_finite__prod,axiom,
( ( finite785973648od_l_l @ top_to320296343od_l_l )
= ( ( finite_finite_l @ top_top_set_l )
& ( finite_finite_l @ top_top_set_l ) ) ) ).
% finite_prod
thf(fact_181_ex__new__if__finite,axiom,
! [A3: set_Pr1409704485_r_l_v] :
( ~ ( finite1853159534_r_l_v @ top_to1238153077_r_l_v )
=> ( ( finite1853159534_r_l_v @ A3 )
=> ? [A: produc1389397445_r_l_v] :
~ ( member1522896238_r_l_v @ A @ A3 ) ) ) ).
% ex_new_if_finite
thf(fact_182_ex__new__if__finite,axiom,
! [A3: set_r] :
( ~ ( finite_finite_r @ top_top_set_r )
=> ( ( finite_finite_r @ A3 )
=> ? [A: r] :
~ ( member_r @ A @ A3 ) ) ) ).
% ex_new_if_finite
thf(fact_183_ex__new__if__finite,axiom,
! [A3: set_l] :
( ~ ( finite_finite_l @ top_top_set_l )
=> ( ( finite_finite_l @ A3 )
=> ? [A: l] :
~ ( member_l @ A @ A3 ) ) ) ).
% ex_new_if_finite
thf(fact_184_finite__Prod__UNIV,axiom,
( ( finite_finite_r @ top_top_set_r )
=> ( ( finite_finite_r @ top_top_set_r )
=> ( finite1507191824od_r_r @ top_to2034696215od_r_r ) ) ) ).
% finite_Prod_UNIV
thf(fact_185_finite__Prod__UNIV,axiom,
( ( finite_finite_r @ top_top_set_r )
=> ( ( finite_finite_l @ top_top_set_l )
=> ( finite1457622794od_r_l @ top_to1639761425od_r_l ) ) ) ).
% finite_Prod_UNIV
thf(fact_186_finite__Prod__UNIV,axiom,
( ( finite_finite_l @ top_top_set_l )
=> ( ( finite_finite_r @ top_top_set_r )
=> ( finite835542678od_l_r @ top_to715231133od_l_r ) ) ) ).
% finite_Prod_UNIV
thf(fact_187_finite__Prod__UNIV,axiom,
( ( finite_finite_l @ top_top_set_l )
=> ( ( finite_finite_l @ top_top_set_l )
=> ( finite785973648od_l_l @ top_to320296343od_l_l ) ) ) ).
% finite_Prod_UNIV
thf(fact_188_pigeonhole__infinite__rel,axiom,
! [A3: set_Pr1409704485_r_l_v,B4: set_r,R7: produc1389397445_r_l_v > r > $o] :
( ~ ( finite1853159534_r_l_v @ A3 )
=> ( ( finite_finite_r @ B4 )
=> ( ! [X4: produc1389397445_r_l_v] :
( ( member1522896238_r_l_v @ X4 @ A3 )
=> ? [Xa: r] :
( ( member_r @ Xa @ B4 )
& ( R7 @ X4 @ Xa ) ) )
=> ? [X4: r] :
( ( member_r @ X4 @ B4 )
& ~ ( finite1853159534_r_l_v
@ ( collec1978425008_r_l_v
@ ^ [A4: produc1389397445_r_l_v] :
( ( member1522896238_r_l_v @ A4 @ A3 )
& ( R7 @ A4 @ X4 ) ) ) ) ) ) ) ) ).
% pigeonhole_infinite_rel
thf(fact_189_pigeonhole__infinite__rel,axiom,
! [A3: set_Pr1409704485_r_l_v,B4: set_l,R7: produc1389397445_r_l_v > l > $o] :
( ~ ( finite1853159534_r_l_v @ A3 )
=> ( ( finite_finite_l @ B4 )
=> ( ! [X4: produc1389397445_r_l_v] :
( ( member1522896238_r_l_v @ X4 @ A3 )
=> ? [Xa: l] :
( ( member_l @ Xa @ B4 )
& ( R7 @ X4 @ Xa ) ) )
=> ? [X4: l] :
( ( member_l @ X4 @ B4 )
& ~ ( finite1853159534_r_l_v
@ ( collec1978425008_r_l_v
@ ^ [A4: produc1389397445_r_l_v] :
( ( member1522896238_r_l_v @ A4 @ A3 )
& ( R7 @ A4 @ X4 ) ) ) ) ) ) ) ) ).
% pigeonhole_infinite_rel
thf(fact_190_pigeonhole__infinite__rel,axiom,
! [A3: set_r,B4: set_r,R7: r > r > $o] :
( ~ ( finite_finite_r @ A3 )
=> ( ( finite_finite_r @ B4 )
=> ( ! [X4: r] :
( ( member_r @ X4 @ A3 )
=> ? [Xa: r] :
( ( member_r @ Xa @ B4 )
& ( R7 @ X4 @ Xa ) ) )
=> ? [X4: r] :
( ( member_r @ X4 @ B4 )
& ~ ( finite_finite_r
@ ( collect_r
@ ^ [A4: r] :
( ( member_r @ A4 @ A3 )
& ( R7 @ A4 @ X4 ) ) ) ) ) ) ) ) ).
% pigeonhole_infinite_rel
thf(fact_191_pigeonhole__infinite__rel,axiom,
! [A3: set_r,B4: set_l,R7: r > l > $o] :
( ~ ( finite_finite_r @ A3 )
=> ( ( finite_finite_l @ B4 )
=> ( ! [X4: r] :
( ( member_r @ X4 @ A3 )
=> ? [Xa: l] :
( ( member_l @ Xa @ B4 )
& ( R7 @ X4 @ Xa ) ) )
=> ? [X4: l] :
( ( member_l @ X4 @ B4 )
& ~ ( finite_finite_r
@ ( collect_r
@ ^ [A4: r] :
( ( member_r @ A4 @ A3 )
& ( R7 @ A4 @ X4 ) ) ) ) ) ) ) ) ).
% pigeonhole_infinite_rel
thf(fact_192_pigeonhole__infinite__rel,axiom,
! [A3: set_l,B4: set_r,R7: l > r > $o] :
( ~ ( finite_finite_l @ A3 )
=> ( ( finite_finite_r @ B4 )
=> ( ! [X4: l] :
( ( member_l @ X4 @ A3 )
=> ? [Xa: r] :
( ( member_r @ Xa @ B4 )
& ( R7 @ X4 @ Xa ) ) )
=> ? [X4: r] :
( ( member_r @ X4 @ B4 )
& ~ ( finite_finite_l
@ ( collect_l
@ ^ [A4: l] :
( ( member_l @ A4 @ A3 )
& ( R7 @ A4 @ X4 ) ) ) ) ) ) ) ) ).
% pigeonhole_infinite_rel
thf(fact_193_pigeonhole__infinite__rel,axiom,
! [A3: set_l,B4: set_l,R7: l > l > $o] :
( ~ ( finite_finite_l @ A3 )
=> ( ( finite_finite_l @ B4 )
=> ( ! [X4: l] :
( ( member_l @ X4 @ A3 )
=> ? [Xa: l] :
( ( member_l @ Xa @ B4 )
& ( R7 @ X4 @ Xa ) ) )
=> ? [X4: l] :
( ( member_l @ X4 @ B4 )
& ~ ( finite_finite_l
@ ( collect_l
@ ^ [A4: l] :
( ( member_l @ A4 @ A3 )
& ( R7 @ A4 @ X4 ) ) ) ) ) ) ) ) ).
% pigeonhole_infinite_rel
thf(fact_194_not__finite__existsD,axiom,
! [P: r > $o] :
( ~ ( finite_finite_r @ ( collect_r @ P ) )
=> ? [X_1: r] : ( P @ X_1 ) ) ).
% not_finite_existsD
thf(fact_195_not__finite__existsD,axiom,
! [P: l > $o] :
( ~ ( finite_finite_l @ ( collect_l @ P ) )
=> ? [X_1: l] : ( P @ X_1 ) ) ).
% not_finite_existsD
thf(fact_196_substitution_Oreachable__imp__identifiers__available_I1_J,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( reachable_r_l_v @ Subst @ S )
=> ( ~ ( finite_finite_r @ top_top_set_r )
=> ? [R6: r] :
~ ( member_r @ R6 @ ( rID_G_r_l_v @ S ) ) ) ) ) ).
% substitution.reachable_imp_identifiers_available(1)
thf(fact_197_finite__has__minimal2,axiom,
! [A3: set_set_r,A2: set_r] :
( ( finite_finite_set_r @ A3 )
=> ( ( member_set_r @ A2 @ A3 )
=> ? [X4: set_r] :
( ( member_set_r @ X4 @ A3 )
& ( ord_less_eq_set_r @ X4 @ A2 )
& ! [Xa: set_r] :
( ( member_set_r @ Xa @ A3 )
=> ( ( ord_less_eq_set_r @ Xa @ X4 )
=> ( X4 = Xa ) ) ) ) ) ) ).
% finite_has_minimal2
thf(fact_198_finite__has__minimal2,axiom,
! [A3: set_set_l,A2: set_l] :
( ( finite_finite_set_l @ A3 )
=> ( ( member_set_l @ A2 @ A3 )
=> ? [X4: set_l] :
( ( member_set_l @ X4 @ A3 )
& ( ord_less_eq_set_l @ X4 @ A2 )
& ! [Xa: set_l] :
( ( member_set_l @ Xa @ A3 )
=> ( ( ord_less_eq_set_l @ Xa @ X4 )
=> ( X4 = Xa ) ) ) ) ) ) ).
% finite_has_minimal2
thf(fact_199_finite__has__maximal2,axiom,
! [A3: set_set_r,A2: set_r] :
( ( finite_finite_set_r @ A3 )
=> ( ( member_set_r @ A2 @ A3 )
=> ? [X4: set_r] :
( ( member_set_r @ X4 @ A3 )
& ( ord_less_eq_set_r @ A2 @ X4 )
& ! [Xa: set_r] :
( ( member_set_r @ Xa @ A3 )
=> ( ( ord_less_eq_set_r @ X4 @ Xa )
=> ( X4 = Xa ) ) ) ) ) ) ).
% finite_has_maximal2
thf(fact_200_finite__has__maximal2,axiom,
! [A3: set_set_l,A2: set_l] :
( ( finite_finite_set_l @ A3 )
=> ( ( member_set_l @ A2 @ A3 )
=> ? [X4: set_l] :
( ( member_set_l @ X4 @ A3 )
& ( ord_less_eq_set_l @ A2 @ X4 )
& ! [Xa: set_l] :
( ( member_set_l @ Xa @ A3 )
=> ( ( ord_less_eq_set_l @ X4 @ Xa )
=> ( X4 = Xa ) ) ) ) ) ) ).
% finite_has_maximal2
thf(fact_201_finite__subset,axiom,
! [A3: set_r,B4: set_r] :
( ( ord_less_eq_set_r @ A3 @ B4 )
=> ( ( finite_finite_r @ B4 )
=> ( finite_finite_r @ A3 ) ) ) ).
% finite_subset
thf(fact_202_finite__subset,axiom,
! [A3: set_l,B4: set_l] :
( ( ord_less_eq_set_l @ A3 @ B4 )
=> ( ( finite_finite_l @ B4 )
=> ( finite_finite_l @ A3 ) ) ) ).
% finite_subset
thf(fact_203_infinite__super,axiom,
! [S5: set_r,T2: set_r] :
( ( ord_less_eq_set_r @ S5 @ T2 )
=> ( ~ ( finite_finite_r @ S5 )
=> ~ ( finite_finite_r @ T2 ) ) ) ).
% infinite_super
thf(fact_204_infinite__super,axiom,
! [S5: set_l,T2: set_l] :
( ( ord_less_eq_set_l @ S5 @ T2 )
=> ( ~ ( finite_finite_l @ S5 )
=> ~ ( finite_finite_l @ T2 ) ) ) ).
% infinite_super
thf(fact_205_rev__finite__subset,axiom,
! [B4: set_r,A3: set_r] :
( ( finite_finite_r @ B4 )
=> ( ( ord_less_eq_set_r @ A3 @ B4 )
=> ( finite_finite_r @ A3 ) ) ) ).
% rev_finite_subset
thf(fact_206_rev__finite__subset,axiom,
! [B4: set_l,A3: set_l] :
( ( finite_finite_l @ B4 )
=> ( ( ord_less_eq_set_l @ A3 @ B4 )
=> ( finite_finite_l @ A3 ) ) ) ).
% rev_finite_subset
thf(fact_207_finite__update__induct,axiom,
! [F: r > option1457017436_r_l_v,C: option1457017436_r_l_v,P: ( r > option1457017436_r_l_v ) > $o] :
( ( finite_finite_r
@ ( collect_r
@ ^ [A4: r] :
( ( F @ A4 )
!= C ) ) )
=> ( ( P
@ ^ [A4: r] : C )
=> ( ! [A: r,B: option1457017436_r_l_v,F2: r > option1457017436_r_l_v] :
( ( finite_finite_r
@ ( collect_r
@ ^ [C2: r] :
( ( F2 @ C2 )
!= C ) ) )
=> ( ( ( F2 @ A )
= C )
=> ( ( B != C )
=> ( ( P @ F2 )
=> ( P @ ( fun_up709272714_r_l_v @ F2 @ A @ B ) ) ) ) ) )
=> ( P @ F ) ) ) ) ).
% finite_update_induct
thf(fact_208_finite__update__induct,axiom,
! [F: l > option_val_r_l_v,C: option_val_r_l_v,P: ( l > option_val_r_l_v ) > $o] :
( ( finite_finite_l
@ ( collect_l
@ ^ [A4: l] :
( ( F @ A4 )
!= C ) ) )
=> ( ( P
@ ^ [A4: l] : C )
=> ( ! [A: l,B: option_val_r_l_v,F2: l > option_val_r_l_v] :
( ( finite_finite_l
@ ( collect_l
@ ^ [C2: l] :
( ( F2 @ C2 )
!= C ) ) )
=> ( ( ( F2 @ A )
= C )
=> ( ( B != C )
=> ( ( P @ F2 )
=> ( P @ ( fun_up1835647912_r_l_v @ F2 @ A @ B ) ) ) ) ) )
=> ( P @ F ) ) ) ) ).
% finite_update_induct
thf(fact_209_substitution_Olocal__state__of__finite__restricted__global__state__is__finite_I1_J,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R2: r,Ls: produc1156025366_r_l_v,R: r] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R2 )
= ( some_P1807977723_r_l_v @ Ls ) )
=> ( ( finite_finite_r @ ( rID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) )
=> ( ( R != R2 )
=> ( finite_finite_r @ ( rID_L_l_r_v @ Ls ) ) ) ) ) ) ).
% substitution.local_state_of_finite_restricted_global_state_is_finite(1)
thf(fact_210_SLC__ifTrue,axiom,
! [S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v,S_2: r > option1457017436_r_l_v,R2: r,S_22: r > option1457017436_r_l_v] :
( ( ( S_1 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ t ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E1 ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ subst @ R2 @ S_1 @ S_22 )
=> ( ( R != R2 )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ).
% SLC_ifTrue
thf(fact_211_SLC__ifFalse,axiom,
! [S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v,S_2: r > option1457017436_r_l_v,R2: r,S_22: r > option1457017436_r_l_v] :
( ( ( S_1 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ f ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E22 ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ subst @ R2 @ S_1 @ S_22 )
=> ( ( R != R2 )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ).
% SLC_ifFalse
thf(fact_212_expr_Oinject_I7_J,axiom,
! [X7: expr_r_l_v,Y7: expr_r_l_v] :
( ( ( rfork_r_l_v @ X7 )
= ( rfork_r_l_v @ Y7 ) )
= ( X7 = Y7 ) ) ).
% expr.inject(7)
thf(fact_213_val_Oinject_I4_J,axiom,
! [X42: r,Y4: r] :
( ( ( rid_r_l_v @ X42 )
= ( rid_r_l_v @ Y4 ) )
= ( X42 = Y4 ) ) ).
% val.inject(4)
thf(fact_214_expr_Oinject_I1_J,axiom,
! [X1: val_r_l_v,Y1: val_r_l_v] :
( ( ( vE_r_l_v @ X1 )
= ( vE_r_l_v @ Y1 ) )
= ( X1 = Y1 ) ) ).
% expr.inject(1)
thf(fact_215_injective__cntxt,axiom,
! [E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v] :
( ( ( plug_r_l_v @ E3 @ E1 )
= ( plug_r_l_v @ E3 @ E22 ) )
= ( E1 = E22 ) ) ).
% injective_cntxt
thf(fact_216_val_Oinject_I1_J,axiom,
! [X1: const,Y1: const] :
( ( ( cV_r_l_v @ X1 )
= ( cV_r_l_v @ Y1 ) )
= ( X1 = Y1 ) ) ).
% val.inject(1)
thf(fact_217_expr_Oinject_I8_J,axiom,
! [X8: expr_r_l_v,Y8: expr_r_l_v] :
( ( ( rjoin_r_l_v @ X8 )
= ( rjoin_r_l_v @ Y8 ) )
= ( X8 = Y8 ) ) ).
% expr.inject(8)
thf(fact_218_revision__step_OifFalse,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ f ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( revision_step_r_l_v @ subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E22 ) ) ) ) ) ) ) ).
% revision_step.ifFalse
thf(fact_219_revision__step_OifTrue,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ t ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( revision_step_r_l_v @ subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E1 ) ) ) ) ) ) ) ).
% revision_step.ifTrue
thf(fact_220_revision__step__relaxed_OifFalse,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ f ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( revisi1291188644_r_l_v @ subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E22 ) ) ) ) ) ) ) ).
% revision_step_relaxed.ifFalse
thf(fact_221_revision__step__relaxed_OifTrue,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ t ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( revisi1291188644_r_l_v @ subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E1 ) ) ) ) ) ) ) ).
% revision_step_relaxed.ifTrue
thf(fact_222_ifFalse__deterministic,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v,S2: r > option1457017436_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ f ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
= ( S2
= ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E22 ) ) ) ) ) ) ) ) ).
% ifFalse_deterministic
thf(fact_223_ifTrue__deterministic,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v,S2: r > option1457017436_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ t ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
= ( S2
= ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E1 ) ) ) ) ) ) ) ) ).
% ifTrue_deterministic
thf(fact_224_expr_Odistinct_I35_J,axiom,
! [X31: expr_r_l_v,X32: expr_r_l_v,X33: expr_r_l_v,X8: expr_r_l_v] :
( ( ite_r_l_v @ X31 @ X32 @ X33 )
!= ( rjoin_r_l_v @ X8 ) ) ).
% expr.distinct(35)
thf(fact_225_expr_Odistinct_I33_J,axiom,
! [X31: expr_r_l_v,X32: expr_r_l_v,X33: expr_r_l_v,X7: expr_r_l_v] :
( ( ite_r_l_v @ X31 @ X32 @ X33 )
!= ( rfork_r_l_v @ X7 ) ) ).
% expr.distinct(33)
thf(fact_226_expr_Odistinct_I3_J,axiom,
! [X1: val_r_l_v,X31: expr_r_l_v,X32: expr_r_l_v,X33: expr_r_l_v] :
( ( vE_r_l_v @ X1 )
!= ( ite_r_l_v @ X31 @ X32 @ X33 ) ) ).
% expr.distinct(3)
thf(fact_227_const_Oexhaust,axiom,
! [Y: const] :
( ( Y != unit )
=> ( ( Y != f )
=> ( Y = t ) ) ) ).
% const.exhaust
thf(fact_228_const_Oinduct,axiom,
! [P: const > $o,Const: const] :
( ( P @ unit )
=> ( ( P @ f )
=> ( ( P @ t )
=> ( P @ Const ) ) ) ) ).
% const.induct
thf(fact_229_const_Odistinct_I1_J,axiom,
unit != f ).
% const.distinct(1)
thf(fact_230_const_Odistinct_I3_J,axiom,
unit != t ).
% const.distinct(3)
thf(fact_231_substitution_Orevision__step_OifTrue,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ t ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( revision_step_r_l_v @ Subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E1 ) ) ) ) ) ) ) ) ).
% substitution.revision_step.ifTrue
thf(fact_232_substitution_Orevision__step_OifFalse,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ f ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( revision_step_r_l_v @ Subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E22 ) ) ) ) ) ) ) ) ).
% substitution.revision_step.ifFalse
thf(fact_233_substitution_OifTrue__deterministic,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ t ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
= ( S2
= ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E1 ) ) ) ) ) ) ) ) ) ).
% substitution.ifTrue_deterministic
thf(fact_234_substitution_OifFalse__deterministic,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ f ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
= ( S2
= ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E22 ) ) ) ) ) ) ) ) ) ).
% substitution.ifFalse_deterministic
thf(fact_235_substitution_Orevision__step__relaxed_OifTrue,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ t ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( revisi1291188644_r_l_v @ Subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E1 ) ) ) ) ) ) ) ) ).
% substitution.revision_step_relaxed.ifTrue
thf(fact_236_substitution_Orevision__step__relaxed_OifFalse,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ f ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( revisi1291188644_r_l_v @ Subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E22 ) ) ) ) ) ) ) ) ).
% substitution.revision_step_relaxed.ifFalse
thf(fact_237_substitution_OSLC__ifTrue,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v,S_2: r > option1457017436_r_l_v,R2: r,S_22: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S_1 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ t ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E1 ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ Subst @ R2 @ S_1 @ S_22 )
=> ( ( R != R2 )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ Subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ).
% substitution.SLC_ifTrue
thf(fact_238_substitution_OSLC__ifFalse,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,E1: expr_r_l_v,E22: expr_r_l_v,S_2: r > option1457017436_r_l_v,R2: r,S_22: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S_1 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ite_r_l_v @ ( vE_r_l_v @ ( cV_r_l_v @ f ) ) @ E1 @ E22 ) ) ) ) ) )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ E22 ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ Subst @ R2 @ S_1 @ S_22 )
=> ( ( R != R2 )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ Subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ).
% substitution.SLC_ifFalse
thf(fact_239_LID__local__store_Ocases,axiom,
! [X2: produc1156025366_r_l_v] :
~ ! [Sigma: l > option_val_r_l_v,Tau: l > option_val_r_l_v,E2: expr_r_l_v] :
( X2
!= ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ E2 ) ) ) ).
% LID_local_store.cases
thf(fact_240_LID__local__store_Oinduct,axiom,
! [P: produc1156025366_r_l_v > $o,A0: produc1156025366_r_l_v] :
( ! [Sigma: l > option_val_r_l_v,Tau: l > option_val_r_l_v,E2: expr_r_l_v] : ( P @ ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ E2 ) ) )
=> ( P @ A0 ) ) ).
% LID_local_store.induct
thf(fact_241_expr_Odistinct_I13_J,axiom,
! [X1: val_r_l_v,X8: expr_r_l_v] :
( ( vE_r_l_v @ X1 )
!= ( rjoin_r_l_v @ X8 ) ) ).
% expr.distinct(13)
thf(fact_242_expr_Odistinct_I11_J,axiom,
! [X1: val_r_l_v,X7: expr_r_l_v] :
( ( vE_r_l_v @ X1 )
!= ( rfork_r_l_v @ X7 ) ) ).
% expr.distinct(11)
thf(fact_243_combine_Oelims,axiom,
! [X2: l > option_val_r_l_v,Xa2: l > option_val_r_l_v,Xb: l,Y: option_val_r_l_v] :
( ( ( combine_l_val_r_l_v @ X2 @ Xa2 @ Xb )
= Y )
=> ( ( ( ( Xa2 @ Xb )
= none_val_r_l_v )
=> ( Y
= ( X2 @ Xb ) ) )
& ( ( ( Xa2 @ Xb )
!= none_val_r_l_v )
=> ( Y
= ( Xa2 @ Xb ) ) ) ) ) ).
% combine.elims
thf(fact_244_combine_Osimps,axiom,
( combine_l_val_r_l_v
= ( ^ [F3: l > option_val_r_l_v,G: l > option_val_r_l_v,X: l] :
( if_option_val_r_l_v
@ ( ( G @ X )
= none_val_r_l_v )
@ ( F3 @ X )
@ ( G @ X ) ) ) ) ).
% combine.simps
thf(fact_245_val_Odistinct_I5_J,axiom,
! [X1: const,X42: r] :
( ( cV_r_l_v @ X1 )
!= ( rid_r_l_v @ X42 ) ) ).
% val.distinct(5)
thf(fact_246_expr_Odistinct_I55_J,axiom,
! [X7: expr_r_l_v,X8: expr_r_l_v] :
( ( rfork_r_l_v @ X7 )
!= ( rjoin_r_l_v @ X8 ) ) ).
% expr.distinct(55)
thf(fact_247_empty__map__finite_I4_J,axiom,
( finite_finite_l
@ ( lID_G_r_l_v
@ ^ [X: r] : none_P277133687_r_l_v ) ) ).
% empty_map_finite(4)
thf(fact_248_fun__upd__upd,axiom,
! [F: r > option1457017436_r_l_v,X2: r,Y: option1457017436_r_l_v,Z: option1457017436_r_l_v] :
( ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ F @ X2 @ Y ) @ X2 @ Z )
= ( fun_up709272714_r_l_v @ F @ X2 @ Z ) ) ).
% fun_upd_upd
thf(fact_249_fun__upd__upd,axiom,
! [F: l > option_val_r_l_v,X2: l,Y: option_val_r_l_v,Z: option_val_r_l_v] :
( ( fun_up1835647912_r_l_v @ ( fun_up1835647912_r_l_v @ F @ X2 @ Y ) @ X2 @ Z )
= ( fun_up1835647912_r_l_v @ F @ X2 @ Z ) ) ).
% fun_upd_upd
thf(fact_250_fun__upd__triv,axiom,
! [F: r > option1457017436_r_l_v,X2: r] :
( ( fun_up709272714_r_l_v @ F @ X2 @ ( F @ X2 ) )
= F ) ).
% fun_upd_triv
thf(fact_251_fun__upd__triv,axiom,
! [F: l > option_val_r_l_v,X2: l] :
( ( fun_up1835647912_r_l_v @ F @ X2 @ ( F @ X2 ) )
= F ) ).
% fun_upd_triv
thf(fact_252_RID_092_060_094sub_062L__finite__invariant,axiom,
! [R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
=> ( ( finite_finite_l @ ( lID_G_r_l_v @ S ) )
=> ( finite_finite_l @ ( lID_G_r_l_v @ S2 ) ) ) ) ).
% RID\<^sub>L_finite_invariant
thf(fact_253_reachable__imp__identifiers__finite_I2_J,axiom,
! [S: r > option1457017436_r_l_v] :
( ( reachable_r_l_v @ subst @ S )
=> ( finite_finite_l @ ( lID_G_r_l_v @ S ) ) ) ).
% reachable_imp_identifiers_finite(2)
thf(fact_254_reachable__imp__identifiers__available_I2_J,axiom,
! [S: r > option1457017436_r_l_v] :
( ( reachable_r_l_v @ subst @ S )
=> ( ~ ( finite_finite_l @ top_top_set_l )
=> ? [L: l] :
~ ( member_l @ L @ ( lID_G_r_l_v @ S ) ) ) ) ).
% reachable_imp_identifiers_available(2)
thf(fact_255_fun__upd__apply,axiom,
( fun_up709272714_r_l_v
= ( ^ [F3: r > option1457017436_r_l_v,X: r,Y2: option1457017436_r_l_v,Z2: r] : ( if_opt1153928738_r_l_v @ ( Z2 = X ) @ Y2 @ ( F3 @ Z2 ) ) ) ) ).
% fun_upd_apply
thf(fact_256_fun__upd__apply,axiom,
( fun_up1835647912_r_l_v
= ( ^ [F3: l > option_val_r_l_v,X: l,Y2: option_val_r_l_v,Z2: l] : ( if_option_val_r_l_v @ ( Z2 = X ) @ Y2 @ ( F3 @ Z2 ) ) ) ) ).
% fun_upd_apply
thf(fact_257_in__restricted__global__in__unrestricted__global_I2_J,axiom,
! [L2: l,S: r > option1457017436_r_l_v,R: r] :
( ( member_l @ L2 @ ( lID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) )
=> ( member_l @ L2 @ ( lID_G_r_l_v @ S ) ) ) ).
% in_restricted_global_in_unrestricted_global(2)
thf(fact_258_finite__state__imp__restriction__finite_I2_J,axiom,
! [S: r > option1457017436_r_l_v,R: r] :
( ( finite_finite_l @ ( lID_G_r_l_v @ S ) )
=> ( finite_finite_l @ ( lID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) ) ) ).
% finite_state_imp_restriction_finite(2)
thf(fact_259_in__restricted__global__in__updated__global_I2_J,axiom,
! [L2: l,S: r > option1457017436_r_l_v,R: r,Ls: produc1156025366_r_l_v] :
( ( member_l @ L2 @ ( lID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) )
=> ( member_l @ L2 @ ( lID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ Ls ) ) ) ) ) ).
% in_restricted_global_in_updated_global(2)
thf(fact_260_fun__upd__idem__iff,axiom,
! [F: r > option1457017436_r_l_v,X2: r,Y: option1457017436_r_l_v] :
( ( ( fun_up709272714_r_l_v @ F @ X2 @ Y )
= F )
= ( ( F @ X2 )
= Y ) ) ).
% fun_upd_idem_iff
thf(fact_261_fun__upd__idem__iff,axiom,
! [F: l > option_val_r_l_v,X2: l,Y: option_val_r_l_v] :
( ( ( fun_up1835647912_r_l_v @ F @ X2 @ Y )
= F )
= ( ( F @ X2 )
= Y ) ) ).
% fun_upd_idem_iff
thf(fact_262_fun__upd__twist,axiom,
! [A2: r,C: r,M: r > option1457017436_r_l_v,B2: option1457017436_r_l_v,D: option1457017436_r_l_v] :
( ( A2 != C )
=> ( ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ M @ A2 @ B2 ) @ C @ D )
= ( fun_up709272714_r_l_v @ ( fun_up709272714_r_l_v @ M @ C @ D ) @ A2 @ B2 ) ) ) ).
% fun_upd_twist
thf(fact_263_fun__upd__twist,axiom,
! [A2: l,C: l,M: l > option_val_r_l_v,B2: option_val_r_l_v,D: option_val_r_l_v] :
( ( A2 != C )
=> ( ( fun_up1835647912_r_l_v @ ( fun_up1835647912_r_l_v @ M @ A2 @ B2 ) @ C @ D )
= ( fun_up1835647912_r_l_v @ ( fun_up1835647912_r_l_v @ M @ C @ D ) @ A2 @ B2 ) ) ) ).
% fun_upd_twist
thf(fact_264_fun__upd__other,axiom,
! [Z: r,X2: r,F: r > option1457017436_r_l_v,Y: option1457017436_r_l_v] :
( ( Z != X2 )
=> ( ( fun_up709272714_r_l_v @ F @ X2 @ Y @ Z )
= ( F @ Z ) ) ) ).
% fun_upd_other
thf(fact_265_fun__upd__other,axiom,
! [Z: l,X2: l,F: l > option_val_r_l_v,Y: option_val_r_l_v] :
( ( Z != X2 )
=> ( ( fun_up1835647912_r_l_v @ F @ X2 @ Y @ Z )
= ( F @ Z ) ) ) ).
% fun_upd_other
thf(fact_266_fun__upd__same,axiom,
! [F: r > option1457017436_r_l_v,X2: r,Y: option1457017436_r_l_v] :
( ( fun_up709272714_r_l_v @ F @ X2 @ Y @ X2 )
= Y ) ).
% fun_upd_same
thf(fact_267_fun__upd__same,axiom,
! [F: l > option_val_r_l_v,X2: l,Y: option_val_r_l_v] :
( ( fun_up1835647912_r_l_v @ F @ X2 @ Y @ X2 )
= Y ) ).
% fun_upd_same
thf(fact_268_fun__upd__idem,axiom,
! [F: r > option1457017436_r_l_v,X2: r,Y: option1457017436_r_l_v] :
( ( ( F @ X2 )
= Y )
=> ( ( fun_up709272714_r_l_v @ F @ X2 @ Y )
= F ) ) ).
% fun_upd_idem
thf(fact_269_fun__upd__idem,axiom,
! [F: l > option_val_r_l_v,X2: l,Y: option_val_r_l_v] :
( ( ( F @ X2 )
= Y )
=> ( ( fun_up1835647912_r_l_v @ F @ X2 @ Y )
= F ) ) ).
% fun_upd_idem
thf(fact_270_fun__upd__eqD,axiom,
! [F: r > option1457017436_r_l_v,X2: r,Y: option1457017436_r_l_v,G2: r > option1457017436_r_l_v,Z: option1457017436_r_l_v] :
( ( ( fun_up709272714_r_l_v @ F @ X2 @ Y )
= ( fun_up709272714_r_l_v @ G2 @ X2 @ Z ) )
=> ( Y = Z ) ) ).
% fun_upd_eqD
thf(fact_271_fun__upd__eqD,axiom,
! [F: l > option_val_r_l_v,X2: l,Y: option_val_r_l_v,G2: l > option_val_r_l_v,Z: option_val_r_l_v] :
( ( ( fun_up1835647912_r_l_v @ F @ X2 @ Y )
= ( fun_up1835647912_r_l_v @ G2 @ X2 @ Z ) )
=> ( Y = Z ) ) ).
% fun_upd_eqD
thf(fact_272_fun__upd__def,axiom,
( fun_up709272714_r_l_v
= ( ^ [F3: r > option1457017436_r_l_v,A4: r,B5: option1457017436_r_l_v,X: r] : ( if_opt1153928738_r_l_v @ ( X = A4 ) @ B5 @ ( F3 @ X ) ) ) ) ).
% fun_upd_def
thf(fact_273_fun__upd__def,axiom,
( fun_up1835647912_r_l_v
= ( ^ [F3: l > option_val_r_l_v,A4: l,B5: option_val_r_l_v,X: l] : ( if_option_val_r_l_v @ ( X = A4 ) @ B5 @ ( F3 @ X ) ) ) ) ).
% fun_upd_def
thf(fact_274_substitution_ORID_092_060_094sub_062L__finite__invariant,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
=> ( ( finite_finite_l @ ( lID_G_r_l_v @ S ) )
=> ( finite_finite_l @ ( lID_G_r_l_v @ S2 ) ) ) ) ) ).
% substitution.RID\<^sub>L_finite_invariant
thf(fact_275_ID__restricted__global__subset__unrestricted_I1_J,axiom,
! [S: r > option1457017436_r_l_v,R: r] : ( ord_less_eq_set_l @ ( lID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) @ ( lID_G_r_l_v @ S ) ) ).
% ID_restricted_global_subset_unrestricted(1)
thf(fact_276_substitution_Oreachable__imp__identifiers__finite_I2_J,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( reachable_r_l_v @ Subst @ S )
=> ( finite_finite_l @ ( lID_G_r_l_v @ S ) ) ) ) ).
% substitution.reachable_imp_identifiers_finite(2)
thf(fact_277_substitution_Oempty__map__finite_I4_J,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( finite_finite_l
@ ( lID_G_r_l_v
@ ^ [X: r] : none_P277133687_r_l_v ) ) ) ).
% substitution.empty_map_finite(4)
thf(fact_278_substitution_Ofinite__state__imp__restriction__finite_I2_J,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r] :
( ( substitution_r_l_v @ Subst )
=> ( ( finite_finite_l @ ( lID_G_r_l_v @ S ) )
=> ( finite_finite_l @ ( lID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) ) ) ) ).
% substitution.finite_state_imp_restriction_finite(2)
thf(fact_279_substitution_Oreachable__imp__identifiers__available_I2_J,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( reachable_r_l_v @ Subst @ S )
=> ( ~ ( finite_finite_l @ top_top_set_l )
=> ? [L: l] :
~ ( member_l @ L @ ( lID_G_r_l_v @ S ) ) ) ) ) ).
% substitution.reachable_imp_identifiers_available(2)
thf(fact_280_only__new__introduces__lids_H,axiom,
! [R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v,L2: l] :
( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
=> ( ! [Sigma: l > option_val_r_l_v,Tau: l > option_val_r_l_v,E: cntxt_r_l_v,V2: val_r_l_v] :
( ( S @ R )
!= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ ( plug_r_l_v @ E @ ( ref_r_l_v @ ( vE_r_l_v @ V2 ) ) ) ) ) ) )
=> ( ~ ( member_l @ L2 @ ( lID_G_r_l_v @ S ) )
=> ~ ( member_l @ L2 @ ( lID_G_r_l_v @ S2 ) ) ) ) ) ).
% only_new_introduces_lids'
thf(fact_281_valid__stepE,axiom,
! [S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( member1522896238_r_l_v @ ( produc1175464189_r_l_v @ S @ S2 ) @ ( steps_r_l_v @ subst ) )
=> ? [R6: r] : ( revision_step_r_l_v @ subst @ R6 @ S @ S2 ) ) ).
% valid_stepE
thf(fact_282_local__state__of__finite__restricted__global__state__is__finite_I2_J,axiom,
! [S: r > option1457017436_r_l_v,R2: r,Ls: produc1156025366_r_l_v,R: r] :
( ( ( S @ R2 )
= ( some_P1807977723_r_l_v @ Ls ) )
=> ( ( finite_finite_l @ ( lID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) )
=> ( ( R != R2 )
=> ( finite_finite_l @ ( lID_L_l_r_v @ Ls ) ) ) ) ) ).
% local_state_of_finite_restricted_global_state_is_finite(2)
thf(fact_283_LID_092_060_094sub_062GI,axiom,
! [S: r > option1457017436_r_l_v,R: r,Ls: produc1156025366_r_l_v,L2: l] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ Ls ) )
=> ( ( member_l @ L2 @ ( lID_L_l_r_v @ Ls ) )
=> ( member_l @ L2 @ ( lID_G_r_l_v @ S ) ) ) ) ).
% LID\<^sub>GI
thf(fact_284_valid__stepI,axiom,
! [R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
=> ( member1522896238_r_l_v @ ( produc1175464189_r_l_v @ S @ S2 ) @ ( steps_r_l_v @ subst ) ) ) ).
% valid_stepI
thf(fact_285_maximal__execution__def,axiom,
! [E4: expr_r_l_v,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( maxima311842975_r_l_v @ subst @ E4 @ S @ S2 )
= ( ( execution_r_l_v @ subst @ E4 @ S @ S2 )
& ~ ? [S6: r > option1457017436_r_l_v] : ( member1522896238_r_l_v @ ( produc1175464189_r_l_v @ S2 @ S6 ) @ ( steps_r_l_v @ subst ) ) ) ) ).
% maximal_execution_def
thf(fact_286_only__new__introduces__lids,axiom,
! [R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
=> ( ! [Sigma: l > option_val_r_l_v,Tau: l > option_val_r_l_v,E: cntxt_r_l_v,V2: val_r_l_v] :
( ( S @ R )
!= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ ( plug_r_l_v @ E @ ( ref_r_l_v @ ( vE_r_l_v @ V2 ) ) ) ) ) ) )
=> ( ord_less_eq_set_l @ ( lID_G_r_l_v @ S2 ) @ ( lID_G_r_l_v @ S ) ) ) ) ).
% only_new_introduces_lids
thf(fact_287_substitution_Osteps_Ocong,axiom,
steps_r_l_v = steps_r_l_v ).
% substitution.steps.cong
thf(fact_288_expr_Odistinct_I5_J,axiom,
! [X1: val_r_l_v,X42: expr_r_l_v] :
( ( vE_r_l_v @ X1 )
!= ( ref_r_l_v @ X42 ) ) ).
% expr.distinct(5)
thf(fact_289_expr_Odistinct_I41_J,axiom,
! [X42: expr_r_l_v,X7: expr_r_l_v] :
( ( ref_r_l_v @ X42 )
!= ( rfork_r_l_v @ X7 ) ) ).
% expr.distinct(41)
thf(fact_290_expr_Odistinct_I43_J,axiom,
! [X42: expr_r_l_v,X8: expr_r_l_v] :
( ( ref_r_l_v @ X42 )
!= ( rjoin_r_l_v @ X8 ) ) ).
% expr.distinct(43)
thf(fact_291_LID_092_060_094sub_062GE,axiom,
! [L2: l,S: r > option1457017436_r_l_v] :
( ( member_l @ L2 @ ( lID_G_r_l_v @ S ) )
=> ~ ! [R6: r,Ls3: produc1156025366_r_l_v] :
( ( ( S @ R6 )
= ( some_P1807977723_r_l_v @ Ls3 ) )
=> ~ ( member_l @ L2 @ ( lID_L_l_r_v @ Ls3 ) ) ) ) ).
% LID\<^sub>GE
thf(fact_292_substitution_Ovalid__stepE,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( member1522896238_r_l_v @ ( produc1175464189_r_l_v @ S @ S2 ) @ ( steps_r_l_v @ Subst ) )
=> ? [R6: r] : ( revision_step_r_l_v @ Subst @ R6 @ S @ S2 ) ) ) ).
% substitution.valid_stepE
thf(fact_293_substitution_Ovalid__stepI,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
=> ( member1522896238_r_l_v @ ( produc1175464189_r_l_v @ S @ S2 ) @ ( steps_r_l_v @ Subst ) ) ) ) ).
% substitution.valid_stepI
thf(fact_294_substitution_Oonly__new__introduces__lids_H,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v,L2: l] :
( ( substitution_r_l_v @ Subst )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
=> ( ! [Sigma: l > option_val_r_l_v,Tau: l > option_val_r_l_v,E: cntxt_r_l_v,V2: val_r_l_v] :
( ( S @ R )
!= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ ( plug_r_l_v @ E @ ( ref_r_l_v @ ( vE_r_l_v @ V2 ) ) ) ) ) ) )
=> ( ~ ( member_l @ L2 @ ( lID_G_r_l_v @ S ) )
=> ~ ( member_l @ L2 @ ( lID_G_r_l_v @ S2 ) ) ) ) ) ) ).
% substitution.only_new_introduces_lids'
thf(fact_295_substitution_Oonly__new__introduces__lids,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,R: r,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
=> ( ! [Sigma: l > option_val_r_l_v,Tau: l > option_val_r_l_v,E: cntxt_r_l_v,V2: val_r_l_v] :
( ( S @ R )
!= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma @ ( produc1834103605_r_l_v @ Tau @ ( plug_r_l_v @ E @ ( ref_r_l_v @ ( vE_r_l_v @ V2 ) ) ) ) ) ) )
=> ( ord_less_eq_set_l @ ( lID_G_r_l_v @ S2 ) @ ( lID_G_r_l_v @ S ) ) ) ) ) ).
% substitution.only_new_introduces_lids
thf(fact_296_substitution_Olocal__state__of__finite__restricted__global__state__is__finite_I2_J,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R2: r,Ls: produc1156025366_r_l_v,R: r] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R2 )
= ( some_P1807977723_r_l_v @ Ls ) )
=> ( ( finite_finite_l @ ( lID_G_r_l_v @ ( fun_up709272714_r_l_v @ S @ R @ none_P277133687_r_l_v ) ) )
=> ( ( R != R2 )
=> ( finite_finite_l @ ( lID_L_l_r_v @ Ls ) ) ) ) ) ) ).
% substitution.local_state_of_finite_restricted_global_state_is_finite(2)
thf(fact_297_domains__subsume__def,axiom,
( domain87684397_l_r_v
= ( ^ [Ls2: produc1156025366_r_l_v] : ( ord_less_eq_set_l @ ( lID_L_l_r_v @ Ls2 ) @ ( doms_l_r_v @ Ls2 ) ) ) ) ).
% domains_subsume_def
thf(fact_298_SLC__new,axiom,
! [S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,V: val_r_l_v,S_2: r > option1457017436_r_l_v,L2: l,R2: r,S_22: r > option1457017436_r_l_v] :
( ( ( S_1 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ref_r_l_v @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L2 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( loc_l_r_v @ L2 ) ) ) ) ) ) ) )
=> ( ~ ( member_l @ L2 @ ( lID_G_r_l_v @ S_1 ) )
=> ( ( revision_step_r_l_v @ subst @ R2 @ S_1 @ S_22 )
=> ( ( R != R2 )
=> ( ( reachable_r_l_v @ subst @ S_1 )
=> ( ~ ( finite_finite_l @ top_top_set_l )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ) ) ).
% SLC_new
thf(fact_299_terminates__in__def,axiom,
! [E4: expr_r_l_v,S2: r > option1457017436_r_l_v] :
( ( terminates_in_r_l_v @ subst @ E4 @ S2 )
= ( ? [S4: r > option1457017436_r_l_v] : ( maxima311842975_r_l_v @ subst @ E4 @ S4 @ S2 ) ) ) ).
% terminates_in_def
thf(fact_300_revision__step_Onew,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,V: val_r_l_v,L2: l] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ref_r_l_v @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( ~ ( member_l @ L2 @ ( lID_G_r_l_v @ S ) )
=> ( revision_step_r_l_v @ subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L2 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( loc_l_r_v @ L2 ) ) ) ) ) ) ) ) ) ) ).
% revision_step.new
thf(fact_301_new__pseudodeterministic,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,V: val_r_l_v,S2: r > option1457017436_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ref_r_l_v @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
= ( ? [L3: l] :
( ~ ( member_l @ L3 @ ( lID_G_r_l_v @ S ) )
& ( S2
= ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L3 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( loc_l_r_v @ L3 ) ) ) ) ) ) ) ) ) ) ) ) ).
% new_pseudodeterministic
thf(fact_302_val_Odistinct_I3_J,axiom,
! [X1: const,X34: l] :
( ( cV_r_l_v @ X1 )
!= ( loc_l_r_v @ X34 ) ) ).
% val.distinct(3)
thf(fact_303_val_Odistinct_I15_J,axiom,
! [X34: l,X42: r] :
( ( loc_l_r_v @ X34 )
!= ( rid_r_l_v @ X42 ) ) ).
% val.distinct(15)
thf(fact_304_substitution_Omaximal__execution_Ocong,axiom,
maxima311842975_r_l_v = maxima311842975_r_l_v ).
% substitution.maximal_execution.cong
thf(fact_305_substitution_Odomains__subsume__def,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,Ls: produc1156025366_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( domain87684397_l_r_v @ Ls )
= ( ord_less_eq_set_l @ ( lID_L_l_r_v @ Ls ) @ ( doms_l_r_v @ Ls ) ) ) ) ).
% substitution.domains_subsume_def
thf(fact_306_substitution_Onew__pseudodeterministic,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,V: val_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ref_r_l_v @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
= ( ? [L3: l] :
( ~ ( member_l @ L3 @ ( lID_G_r_l_v @ S ) )
& ( S2
= ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L3 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( loc_l_r_v @ L3 ) ) ) ) ) ) ) ) ) ) ) ) ) ).
% substitution.new_pseudodeterministic
thf(fact_307_substitution_Orevision__step_Onew,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,V: val_r_l_v,L2: l] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ref_r_l_v @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( ~ ( member_l @ L2 @ ( lID_G_r_l_v @ S ) )
=> ( revision_step_r_l_v @ Subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L2 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( loc_l_r_v @ L2 ) ) ) ) ) ) ) ) ) ) ) ).
% substitution.revision_step.new
thf(fact_308_substitution_Omaximal__execution__def,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,E4: expr_r_l_v,S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( maxima311842975_r_l_v @ Subst @ E4 @ S @ S2 )
= ( ( execution_r_l_v @ Subst @ E4 @ S @ S2 )
& ~ ? [S6: r > option1457017436_r_l_v] : ( member1522896238_r_l_v @ ( produc1175464189_r_l_v @ S2 @ S6 ) @ ( steps_r_l_v @ Subst ) ) ) ) ) ).
% substitution.maximal_execution_def
thf(fact_309_substitution_OSLC__new,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,V: val_r_l_v,S_2: r > option1457017436_r_l_v,L2: l,R2: r,S_22: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S_1 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( ref_r_l_v @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L2 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( loc_l_r_v @ L2 ) ) ) ) ) ) ) )
=> ( ~ ( member_l @ L2 @ ( lID_G_r_l_v @ S_1 ) )
=> ( ( revision_step_r_l_v @ Subst @ R2 @ S_1 @ S_22 )
=> ( ( R != R2 )
=> ( ( reachable_r_l_v @ Subst @ S_1 )
=> ( ~ ( finite_finite_l @ top_top_set_l )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ Subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ) ) ) ).
% substitution.SLC_new
thf(fact_310_revision__step__relaxed_Oset,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,L2: l,V: val_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( assign_r_l_v @ ( vE_r_l_v @ ( loc_l_r_v @ L2 ) ) @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( revisi1291188644_r_l_v @ subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L2 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) ) ) ).
% revision_step_relaxed.set
thf(fact_311_substitution_Orevision__step__relaxed_Oset,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,L2: l,V: val_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( assign_r_l_v @ ( vE_r_l_v @ ( loc_l_r_v @ L2 ) ) @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( revisi1291188644_r_l_v @ Subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L2 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) ) ) ) ).
% substitution.revision_step_relaxed.set
thf(fact_312_substitution_Oterminates__in_Ocong,axiom,
terminates_in_r_l_v = terminates_in_r_l_v ).
% substitution.terminates_in.cong
thf(fact_313_expr_Odistinct_I9_J,axiom,
! [X1: val_r_l_v,X61: expr_r_l_v,X62: expr_r_l_v] :
( ( vE_r_l_v @ X1 )
!= ( assign_r_l_v @ X61 @ X62 ) ) ).
% expr.distinct(9)
thf(fact_314_expr_Odistinct_I51_J,axiom,
! [X61: expr_r_l_v,X62: expr_r_l_v,X7: expr_r_l_v] :
( ( assign_r_l_v @ X61 @ X62 )
!= ( rfork_r_l_v @ X7 ) ) ).
% expr.distinct(51)
thf(fact_315_expr_Odistinct_I53_J,axiom,
! [X61: expr_r_l_v,X62: expr_r_l_v,X8: expr_r_l_v] :
( ( assign_r_l_v @ X61 @ X62 )
!= ( rjoin_r_l_v @ X8 ) ) ).
% expr.distinct(53)
thf(fact_316_substitution_Oterminates__in__def,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,E4: expr_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( terminates_in_r_l_v @ Subst @ E4 @ S2 )
= ( ? [S4: r > option1457017436_r_l_v] : ( maxima311842975_r_l_v @ Subst @ E4 @ S4 @ S2 ) ) ) ) ).
% substitution.terminates_in_def
thf(fact_317_SLC__set,axiom,
! [S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,L2: l,V: val_r_l_v,S_2: r > option1457017436_r_l_v,R2: r,S_22: r > option1457017436_r_l_v] :
( ( ( S_1 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( assign_r_l_v @ ( vE_r_l_v @ ( loc_l_r_v @ L2 ) ) @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L2 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) )
=> ( ( member_l @ L2 @ ( dom_l_val_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 ) ) )
=> ( ( revision_step_r_l_v @ subst @ R2 @ S_1 @ S_22 )
=> ( ( R != R2 )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ).
% SLC_set
thf(fact_318_revision__step_Oset,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,L2: l,V: val_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( assign_r_l_v @ ( vE_r_l_v @ ( loc_l_r_v @ L2 ) ) @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( ( member_l @ L2 @ ( dom_l_val_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 ) ) )
=> ( revision_step_r_l_v @ subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L2 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) ) ) ) ).
% revision_step.set
thf(fact_319_dom__const,axiom,
! [F: r > produc1156025366_r_l_v] :
( ( dom_r_259548057_r_l_v
@ ^ [X: r] : ( some_P1807977723_r_l_v @ ( F @ X ) ) )
= top_top_set_r ) ).
% dom_const
thf(fact_320_dom__const,axiom,
! [F: r > val_r_l_v] :
( ( dom_r_val_r_l_v
@ ^ [X: r] : ( some_val_r_l_v @ ( F @ X ) ) )
= top_top_set_r ) ).
% dom_const
thf(fact_321_dom__const,axiom,
! [F: l > produc1156025366_r_l_v] :
( ( dom_l_45837855_r_l_v
@ ^ [X: l] : ( some_P1807977723_r_l_v @ ( F @ X ) ) )
= top_top_set_l ) ).
% dom_const
thf(fact_322_dom__const,axiom,
! [F: l > val_r_l_v] :
( ( dom_l_val_r_l_v
@ ^ [X: l] : ( some_val_r_l_v @ ( F @ X ) ) )
= top_top_set_l ) ).
% dom_const
thf(fact_323_set__deterministic,axiom,
! [S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,L2: l,V: val_r_l_v,S2: r > option1457017436_r_l_v] :
( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( assign_r_l_v @ ( vE_r_l_v @ ( loc_l_r_v @ L2 ) ) @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ subst @ R @ S @ S2 )
= ( ( member_l @ L2 @ ( dom_l_val_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 ) ) )
& ( S2
= ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L2 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) ) ) ) ) ).
% set_deterministic
thf(fact_324_domD,axiom,
! [A2: r,M: r > option1457017436_r_l_v] :
( ( member_r @ A2 @ ( dom_r_259548057_r_l_v @ M ) )
=> ? [B: produc1156025366_r_l_v] :
( ( M @ A2 )
= ( some_P1807977723_r_l_v @ B ) ) ) ).
% domD
thf(fact_325_domD,axiom,
! [A2: l,M: l > option1457017436_r_l_v] :
( ( member_l @ A2 @ ( dom_l_45837855_r_l_v @ M ) )
=> ? [B: produc1156025366_r_l_v] :
( ( M @ A2 )
= ( some_P1807977723_r_l_v @ B ) ) ) ).
% domD
thf(fact_326_domD,axiom,
! [A2: produc1389397445_r_l_v,M: produc1389397445_r_l_v > option1457017436_r_l_v] :
( ( member1522896238_r_l_v @ A2 @ ( dom_Pr1162080227_r_l_v @ M ) )
=> ? [B: produc1156025366_r_l_v] :
( ( M @ A2 )
= ( some_P1807977723_r_l_v @ B ) ) ) ).
% domD
thf(fact_327_domD,axiom,
! [A2: r,M: r > option_val_r_l_v] :
( ( member_r @ A2 @ ( dom_r_val_r_l_v @ M ) )
=> ? [B: val_r_l_v] :
( ( M @ A2 )
= ( some_val_r_l_v @ B ) ) ) ).
% domD
thf(fact_328_domD,axiom,
! [A2: l,M: l > option_val_r_l_v] :
( ( member_l @ A2 @ ( dom_l_val_r_l_v @ M ) )
=> ? [B: val_r_l_v] :
( ( M @ A2 )
= ( some_val_r_l_v @ B ) ) ) ).
% domD
thf(fact_329_domD,axiom,
! [A2: produc1389397445_r_l_v,M: produc1389397445_r_l_v > option_val_r_l_v] :
( ( member1522896238_r_l_v @ A2 @ ( dom_Pr939617279_r_l_v @ M ) )
=> ? [B: val_r_l_v] :
( ( M @ A2 )
= ( some_val_r_l_v @ B ) ) ) ).
% domD
thf(fact_330_domI,axiom,
! [M: r > option1457017436_r_l_v,A2: r,B2: produc1156025366_r_l_v] :
( ( ( M @ A2 )
= ( some_P1807977723_r_l_v @ B2 ) )
=> ( member_r @ A2 @ ( dom_r_259548057_r_l_v @ M ) ) ) ).
% domI
thf(fact_331_domI,axiom,
! [M: l > option1457017436_r_l_v,A2: l,B2: produc1156025366_r_l_v] :
( ( ( M @ A2 )
= ( some_P1807977723_r_l_v @ B2 ) )
=> ( member_l @ A2 @ ( dom_l_45837855_r_l_v @ M ) ) ) ).
% domI
thf(fact_332_domI,axiom,
! [M: produc1389397445_r_l_v > option1457017436_r_l_v,A2: produc1389397445_r_l_v,B2: produc1156025366_r_l_v] :
( ( ( M @ A2 )
= ( some_P1807977723_r_l_v @ B2 ) )
=> ( member1522896238_r_l_v @ A2 @ ( dom_Pr1162080227_r_l_v @ M ) ) ) ).
% domI
thf(fact_333_domI,axiom,
! [M: r > option_val_r_l_v,A2: r,B2: val_r_l_v] :
( ( ( M @ A2 )
= ( some_val_r_l_v @ B2 ) )
=> ( member_r @ A2 @ ( dom_r_val_r_l_v @ M ) ) ) ).
% domI
thf(fact_334_domI,axiom,
! [M: l > option_val_r_l_v,A2: l,B2: val_r_l_v] :
( ( ( M @ A2 )
= ( some_val_r_l_v @ B2 ) )
=> ( member_l @ A2 @ ( dom_l_val_r_l_v @ M ) ) ) ).
% domI
thf(fact_335_domI,axiom,
! [M: produc1389397445_r_l_v > option_val_r_l_v,A2: produc1389397445_r_l_v,B2: val_r_l_v] :
( ( ( M @ A2 )
= ( some_val_r_l_v @ B2 ) )
=> ( member1522896238_r_l_v @ A2 @ ( dom_Pr939617279_r_l_v @ M ) ) ) ).
% domI
thf(fact_336_finite__map__freshness,axiom,
! [F: r > option_val_r_l_v] :
( ( finite_finite_r @ ( dom_r_val_r_l_v @ F ) )
=> ( ~ ( finite_finite_r @ top_top_set_r )
=> ? [X4: r] :
( ( F @ X4 )
= none_val_r_l_v ) ) ) ).
% finite_map_freshness
thf(fact_337_finite__map__freshness,axiom,
! [F: r > option1457017436_r_l_v] :
( ( finite_finite_r @ ( dom_r_259548057_r_l_v @ F ) )
=> ( ~ ( finite_finite_r @ top_top_set_r )
=> ? [X4: r] :
( ( F @ X4 )
= none_P277133687_r_l_v ) ) ) ).
% finite_map_freshness
thf(fact_338_finite__map__freshness,axiom,
! [F: l > option_val_r_l_v] :
( ( finite_finite_l @ ( dom_l_val_r_l_v @ F ) )
=> ( ~ ( finite_finite_l @ top_top_set_l )
=> ? [X4: l] :
( ( F @ X4 )
= none_val_r_l_v ) ) ) ).
% finite_map_freshness
thf(fact_339_finite__map__freshness,axiom,
! [F: l > option1457017436_r_l_v] :
( ( finite_finite_l @ ( dom_l_45837855_r_l_v @ F ) )
=> ( ~ ( finite_finite_l @ top_top_set_l )
=> ? [X4: l] :
( ( F @ X4 )
= none_P277133687_r_l_v ) ) ) ).
% finite_map_freshness
thf(fact_340_dom__def,axiom,
( dom_l_val_r_l_v
= ( ^ [M2: l > option_val_r_l_v] :
( collect_l
@ ^ [A4: l] :
( ( M2 @ A4 )
!= none_val_r_l_v ) ) ) ) ).
% dom_def
thf(fact_341_domIff,axiom,
! [A2: r,M: r > option_val_r_l_v] :
( ( member_r @ A2 @ ( dom_r_val_r_l_v @ M ) )
= ( ( M @ A2 )
!= none_val_r_l_v ) ) ).
% domIff
thf(fact_342_domIff,axiom,
! [A2: l,M: l > option_val_r_l_v] :
( ( member_l @ A2 @ ( dom_l_val_r_l_v @ M ) )
= ( ( M @ A2 )
!= none_val_r_l_v ) ) ).
% domIff
thf(fact_343_domIff,axiom,
! [A2: produc1389397445_r_l_v,M: produc1389397445_r_l_v > option_val_r_l_v] :
( ( member1522896238_r_l_v @ A2 @ ( dom_Pr939617279_r_l_v @ M ) )
= ( ( M @ A2 )
!= none_val_r_l_v ) ) ).
% domIff
thf(fact_344_domIff,axiom,
! [A2: r,M: r > option1457017436_r_l_v] :
( ( member_r @ A2 @ ( dom_r_259548057_r_l_v @ M ) )
= ( ( M @ A2 )
!= none_P277133687_r_l_v ) ) ).
% domIff
thf(fact_345_domIff,axiom,
! [A2: l,M: l > option1457017436_r_l_v] :
( ( member_l @ A2 @ ( dom_l_45837855_r_l_v @ M ) )
= ( ( M @ A2 )
!= none_P277133687_r_l_v ) ) ).
% domIff
thf(fact_346_domIff,axiom,
! [A2: produc1389397445_r_l_v,M: produc1389397445_r_l_v > option1457017436_r_l_v] :
( ( member1522896238_r_l_v @ A2 @ ( dom_Pr1162080227_r_l_v @ M ) )
= ( ( M @ A2 )
!= none_P277133687_r_l_v ) ) ).
% domIff
thf(fact_347_substitution_Oset__deterministic,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,L2: l,V: val_r_l_v,S2: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( assign_r_l_v @ ( vE_r_l_v @ ( loc_l_r_v @ L2 ) ) @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( ( revision_step_r_l_v @ Subst @ R @ S @ S2 )
= ( ( member_l @ L2 @ ( dom_l_val_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 ) ) )
& ( S2
= ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L2 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) ) ) ) ) ) ).
% substitution.set_deterministic
thf(fact_348_substitution_Orevision__step_Oset,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,L2: l,V: val_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( assign_r_l_v @ ( vE_r_l_v @ ( loc_l_r_v @ L2 ) ) @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( ( member_l @ L2 @ ( dom_l_val_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 ) ) )
=> ( revision_step_r_l_v @ Subst @ R @ S @ ( fun_up709272714_r_l_v @ S @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L2 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) ) ) ) ) ).
% substitution.revision_step.set
thf(fact_349_substitution_OSLC__set,axiom,
! [Subst: expr_r_l_v > v > expr_r_l_v > expr_r_l_v,S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,L2: l,V: val_r_l_v,S_2: r > option1457017436_r_l_v,R2: r,S_22: r > option1457017436_r_l_v] :
( ( substitution_r_l_v @ Subst )
=> ( ( ( S_1 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( assign_r_l_v @ ( vE_r_l_v @ ( loc_l_r_v @ L2 ) ) @ ( vE_r_l_v @ V ) ) ) ) ) ) )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ ( fun_up1835647912_r_l_v @ Tau2 @ L2 @ ( some_val_r_l_v @ V ) ) @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( cV_r_l_v @ unit ) ) ) ) ) ) ) )
=> ( ( member_l @ L2 @ ( dom_l_val_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 ) ) )
=> ( ( revision_step_r_l_v @ Subst @ R2 @ S_1 @ S_22 )
=> ( ( R != R2 )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ Subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ Subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ) ).
% substitution.SLC_set
thf(fact_350_reachability__closed__under__execution,axiom,
! [S: r > option1457017436_r_l_v,S2: r > option1457017436_r_l_v] :
( ( reachable_r_l_v @ subst @ S )
=> ( ( member1522896238_r_l_v @ ( produc1175464189_r_l_v @ S @ S2 ) @ ( transi1323086383_r_l_v @ ( steps_r_l_v @ subst ) ) )
=> ( reachable_r_l_v @ subst @ S2 ) ) ) ).
% reachability_closed_under_execution
thf(fact_351_SLC__get,axiom,
! [S_1: r > option1457017436_r_l_v,R: r,Sigma2: l > option_val_r_l_v,Tau2: l > option_val_r_l_v,E3: cntxt_r_l_v,L2: l,S_2: r > option1457017436_r_l_v,R2: r,S_22: r > option1457017436_r_l_v] :
( ( ( S_1 @ R )
= ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( read_r_l_v @ ( vE_r_l_v @ ( loc_l_r_v @ L2 ) ) ) ) ) ) ) )
=> ( ( S_2
= ( fun_up709272714_r_l_v @ S_1 @ R @ ( some_P1807977723_r_l_v @ ( produc297528454_r_l_v @ Sigma2 @ ( produc1834103605_r_l_v @ Tau2 @ ( plug_r_l_v @ E3 @ ( vE_r_l_v @ ( the_val_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 @ L2 ) ) ) ) ) ) ) ) )
=> ( ( member_l @ L2 @ ( dom_l_val_r_l_v @ ( combine_l_val_r_l_v @ Sigma2 @ Tau2 ) ) )
=> ( ( revision_step_r_l_v @ subst @ R2 @ S_1 @ S_22 )
=> ( ( R != R2 )
=> ? [S_3: r > option1457017436_r_l_v,S_32: r > option1457017436_r_l_v] :
( ( eq_states_r_l_v @ S_3 @ S_32 )
& ( ( revision_step_r_l_v @ subst @ R2 @ S_2 @ S_3 )
| ( S_2 = S_3 ) )
& ( ( revision_step_r_l_v @ subst @ R @ S_22 @ S_32 )
| ( S_22 = S_32 ) ) ) ) ) ) ) ) ).
% SLC_get
% Helper facts (5)
thf(help_If_2_1_If_001t__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_T,axiom,
! [X2: option_val_r_l_v,Y: option_val_r_l_v] :
( ( if_option_val_r_l_v @ $false @ X2 @ Y )
= Y ) ).
thf(help_If_1_1_If_001t__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_T,axiom,
! [X2: option_val_r_l_v,Y: option_val_r_l_v] :
( ( if_option_val_r_l_v @ $true @ X2 @ Y )
= X2 ) ).
thf(help_If_3_1_If_001t__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_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_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_T,axiom,
! [X2: option1457017436_r_l_v,Y: option1457017436_r_l_v] :
( ( if_opt1153928738_r_l_v @ $false @ X2 @ Y )
= Y ) ).
thf(help_If_1_1_If_001t__Option__Ooption_It__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Product____Type__Oprod_I_062_Itf__l_Mt__Option__Ooption_It__Data__Oval_Itf__r_Mtf__l_Mtf__v_J_J_J_Mt__Data__Oexpr_Itf__r_Mtf__l_Mtf__v_J_J_J_J_T,axiom,
! [X2: option1457017436_r_l_v,Y: option1457017436_r_l_v] :
( ( if_opt1153928738_r_l_v @ $true @ X2 @ Y )
= X2 ) ).
% Conjectures (1)
thf(conj_0,conjecture,
r3 != right_forkee ).
%------------------------------------------------------------------------------