% TIMEFORMAT='%3R'; { time (exec 2>&1; /home/martin/bin/satallax -E /home/martin/.isabelle/contrib/e-2.5-1/x86_64-linux/eprover -p tstp -t 5 /home/martin/judgement-day/tptp-thf/tptp/NS_Shared/prob_414__5232344_1 ) ; }
% This file was generated by Isabelle (most likely Sledgehammer)
% 2020-12-16 14:24:43.733

% Could-be-implicit typings (7)
thf(ty_n_t__List__Olist_It__List__Olist_It__Event__Oevent_J_J, type,
    list_list_event : $tType).
thf(ty_n_t__Set__Oset_It__Message__Oagent_J, type,
    set_agent : $tType).
thf(ty_n_t__List__Olist_It__Event__Oevent_J, type,
    list_event : $tType).
thf(ty_n_t__Set__Oset_It__Message__Omsg_J, type,
    set_msg : $tType).
thf(ty_n_t__Message__Oagent, type,
    agent : $tType).
thf(ty_n_t__Message__Omsg, type,
    msg : $tType).
thf(ty_n_t__Event__Oevent, type,
    event : $tType).

% Explicit typings (35)
thf(sy_c_Event_Obad, type,
    bad : set_agent).
thf(sy_c_Event_Oevent_OGets, type,
    gets : agent > msg > event).
thf(sy_c_Event_Oevent_ONotes, type,
    notes : agent > msg > event).
thf(sy_c_Event_OinitState, type,
    initState : agent > set_msg).
thf(sy_c_Event_Oknows, type,
    knows : agent > list_event > set_msg).
thf(sy_c_List_Oappend_001t__Event__Oevent, type,
    append_event : list_event > list_event > list_event).
thf(sy_c_List_Olist_OCons_001t__Event__Oevent, type,
    cons_event : event > list_event > list_event).
thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Event__Oevent_J, type,
    cons_list_event : list_event > list_list_event > list_list_event).
thf(sy_c_List_Olist_ONil_001t__Event__Oevent, type,
    nil_event : list_event).
thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Event__Oevent_J, type,
    nil_list_event : list_list_event).
thf(sy_c_List_Olist__ex_001t__Event__Oevent, type,
    list_ex_event : (event > $o) > list_event > $o).
thf(sy_c_List_Oproduct__lists_001t__Event__Oevent, type,
    product_lists_event : list_list_event > list_list_event).
thf(sy_c_List_Orev_001t__Event__Oevent, type,
    rev_event : list_event > list_event).
thf(sy_c_List_Osubseqs_001t__Event__Oevent, type,
    subseqs_event : list_event > list_list_event).
thf(sy_c_List_OtakeWhile_001t__Event__Oevent, type,
    takeWhile_event : (event > $o) > list_event > list_event).
thf(sy_c_Message_Oagent_OSpy, type,
    spy : agent).
thf(sy_c_Message_Oparts, type,
    parts : set_msg > set_msg).
thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_I_Eo_Mt__Set__Oset_It__Message__Oagent_J_J, type,
    ord_le891349241_agent : ($o > set_agent) > ($o > set_agent) > $o).
thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_I_Eo_Mt__Set__Oset_It__Message__Omsg_J_J, type,
    ord_le1824574709et_msg : ($o > set_msg) > ($o > set_msg) > $o).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Message__Oagent_J, type,
    ord_le722097072_agent : set_agent > set_agent > $o).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Message__Omsg_J, type,
    ord_less_eq_set_msg : set_msg > set_msg > $o).
thf(sy_c_Orderings_Oorder__class_OGreatest_001t__Set__Oset_It__Message__Oagent_J, type,
    order_2090558135_agent : (set_agent > $o) > set_agent).
thf(sy_c_Orderings_Oorder__class_OGreatest_001t__Set__Oset_It__Message__Omsg_J, type,
    order_1537173811et_msg : (set_msg > $o) > set_msg).
thf(sy_c_Orderings_Oorder__class_Oantimono_001t__Set__Oset_It__Message__Oagent_J_001t__Set__Oset_It__Message__Oagent_J, type,
    order_393392468_agent : (set_agent > set_agent) > $o).
thf(sy_c_Orderings_Oorder__class_Oantimono_001t__Set__Oset_It__Message__Oagent_J_001t__Set__Oset_It__Message__Omsg_J, type,
    order_73758288et_msg : (set_agent > set_msg) > $o).
thf(sy_c_Orderings_Oorder__class_Oantimono_001t__Set__Oset_It__Message__Omsg_J_001t__Set__Oset_It__Message__Oagent_J, type,
    order_1738601424_agent : (set_msg > set_agent) > $o).
thf(sy_c_Orderings_Oorder__class_Oantimono_001t__Set__Oset_It__Message__Omsg_J_001t__Set__Oset_It__Message__Omsg_J, type,
    order_1793341132et_msg : (set_msg > set_msg) > $o).
thf(sy_c_Set_OCollect_001t__Message__Oagent, type,
    collect_agent : (agent > $o) > set_agent).
thf(sy_c_Set_OCollect_001t__Message__Omsg, type,
    collect_msg : (msg > $o) > set_msg).
thf(sy_c_Set_Oinsert_001t__Message__Oagent, type,
    insert_agent : agent > set_agent > set_agent).
thf(sy_c_Set_Oinsert_001t__Message__Omsg, type,
    insert_msg : msg > set_msg > set_msg).
thf(sy_c_member_001t__Message__Oagent, type,
    member_agent : agent > set_agent > $o).
thf(sy_c_member_001t__Message__Omsg, type,
    member_msg : msg > set_msg > $o).
thf(sy_v_P, type,
    p : event > $o).
thf(sy_v_evs, type,
    evs : list_event).

% Relevant facts (195)
thf(fact_0_takeWhile__idem, axiom,
    ((![P : event > $o, Xs : list_event]: ((takeWhile_event @ P @ (takeWhile_event @ P @ Xs)) = (takeWhile_event @ P @ Xs))))). % takeWhile_idem
thf(fact_1_subsetI, axiom,
    ((![A : set_agent, B : set_agent]: ((![X : agent]: ((member_agent @ X @ A) => (member_agent @ X @ B))) => (ord_le722097072_agent @ A @ B))))). % subsetI
thf(fact_2_subsetI, axiom,
    ((![A : set_msg, B : set_msg]: ((![X : msg]: ((member_msg @ X @ A) => (member_msg @ X @ B))) => (ord_less_eq_set_msg @ A @ B))))). % subsetI
thf(fact_3_subset__antisym, axiom,
    ((![A : set_agent, B : set_agent]: ((ord_le722097072_agent @ A @ B) => ((ord_le722097072_agent @ B @ A) => (A = B)))))). % subset_antisym
thf(fact_4_subset__antisym, axiom,
    ((![A : set_msg, B : set_msg]: ((ord_less_eq_set_msg @ A @ B) => ((ord_less_eq_set_msg @ B @ A) => (A = B)))))). % subset_antisym
thf(fact_5_order__refl, axiom,
    ((![X2 : set_agent]: (ord_le722097072_agent @ X2 @ X2)))). % order_refl
thf(fact_6_order__refl, axiom,
    ((![X2 : set_msg]: (ord_less_eq_set_msg @ X2 @ X2)))). % order_refl
thf(fact_7_in__mono, axiom,
    ((![A : set_agent, B : set_agent, X2 : agent]: ((ord_le722097072_agent @ A @ B) => ((member_agent @ X2 @ A) => (member_agent @ X2 @ B)))))). % in_mono
thf(fact_8_in__mono, axiom,
    ((![A : set_msg, B : set_msg, X2 : msg]: ((ord_less_eq_set_msg @ A @ B) => ((member_msg @ X2 @ A) => (member_msg @ X2 @ B)))))). % in_mono
thf(fact_9_subsetD, axiom,
    ((![A : set_agent, B : set_agent, C : agent]: ((ord_le722097072_agent @ A @ B) => ((member_agent @ C @ A) => (member_agent @ C @ B)))))). % subsetD
thf(fact_10_subsetD, axiom,
    ((![A : set_msg, B : set_msg, C : msg]: ((ord_less_eq_set_msg @ A @ B) => ((member_msg @ C @ A) => (member_msg @ C @ B)))))). % subsetD
thf(fact_11_equalityE, axiom,
    ((![A : set_agent, B : set_agent]: ((A = B) => (~ (((ord_le722097072_agent @ A @ B) => (~ ((ord_le722097072_agent @ B @ A)))))))))). % equalityE
thf(fact_12_equalityE, axiom,
    ((![A : set_msg, B : set_msg]: ((A = B) => (~ (((ord_less_eq_set_msg @ A @ B) => (~ ((ord_less_eq_set_msg @ B @ A)))))))))). % equalityE
thf(fact_13_subset__eq, axiom,
    ((ord_le722097072_agent = (^[A2 : set_agent]: (^[B2 : set_agent]: (![X3 : agent]: (((member_agent @ X3 @ A2)) => ((member_agent @ X3 @ B2))))))))). % subset_eq
thf(fact_14_subset__eq, axiom,
    ((ord_less_eq_set_msg = (^[A2 : set_msg]: (^[B2 : set_msg]: (![X3 : msg]: (((member_msg @ X3 @ A2)) => ((member_msg @ X3 @ B2))))))))). % subset_eq
thf(fact_15_equalityD1, axiom,
    ((![A : set_agent, B : set_agent]: ((A = B) => (ord_le722097072_agent @ A @ B))))). % equalityD1
thf(fact_16_equalityD1, axiom,
    ((![A : set_msg, B : set_msg]: ((A = B) => (ord_less_eq_set_msg @ A @ B))))). % equalityD1
thf(fact_17_equalityD2, axiom,
    ((![A : set_agent, B : set_agent]: ((A = B) => (ord_le722097072_agent @ B @ A))))). % equalityD2
thf(fact_18_equalityD2, axiom,
    ((![A : set_msg, B : set_msg]: ((A = B) => (ord_less_eq_set_msg @ B @ A))))). % equalityD2
thf(fact_19_subset__iff, axiom,
    ((ord_less_eq_set_msg = (^[A2 : set_msg]: (^[B2 : set_msg]: (![T : msg]: (((member_msg @ T @ A2)) => ((member_msg @ T @ B2))))))))). % subset_iff
thf(fact_20_subset__iff, axiom,
    ((ord_le722097072_agent = (^[A2 : set_agent]: (^[B2 : set_agent]: (![T : agent]: (((member_agent @ T @ A2)) => ((member_agent @ T @ B2))))))))). % subset_iff
thf(fact_21_subset__refl, axiom,
    ((![A : set_msg]: (ord_less_eq_set_msg @ A @ A)))). % subset_refl
thf(fact_22_subset__refl, axiom,
    ((![A : set_agent]: (ord_le722097072_agent @ A @ A)))). % subset_refl
thf(fact_23_dual__order_Oantisym, axiom,
    ((![B3 : set_msg, A3 : set_msg]: ((ord_less_eq_set_msg @ B3 @ A3) => ((ord_less_eq_set_msg @ A3 @ B3) => (A3 = B3)))))). % dual_order.antisym
thf(fact_24_dual__order_Oantisym, axiom,
    ((![B3 : set_agent, A3 : set_agent]: ((ord_le722097072_agent @ B3 @ A3) => ((ord_le722097072_agent @ A3 @ B3) => (A3 = B3)))))). % dual_order.antisym
thf(fact_25_dual__order_Oeq__iff, axiom,
    (((^[Y : set_msg]: (^[Z : set_msg]: (Y = Z))) = (^[A4 : set_msg]: (^[B4 : set_msg]: (((ord_less_eq_set_msg @ B4 @ A4)) & ((ord_less_eq_set_msg @ A4 @ B4)))))))). % dual_order.eq_iff
thf(fact_26_dual__order_Oeq__iff, axiom,
    (((^[Y : set_agent]: (^[Z : set_agent]: (Y = Z))) = (^[A4 : set_agent]: (^[B4 : set_agent]: (((ord_le722097072_agent @ B4 @ A4)) & ((ord_le722097072_agent @ A4 @ B4)))))))). % dual_order.eq_iff
thf(fact_27_dual__order_Otrans, axiom,
    ((![B3 : set_msg, A3 : set_msg, C : set_msg]: ((ord_less_eq_set_msg @ B3 @ A3) => ((ord_less_eq_set_msg @ C @ B3) => (ord_less_eq_set_msg @ C @ A3)))))). % dual_order.trans
thf(fact_28_dual__order_Otrans, axiom,
    ((![B3 : set_agent, A3 : set_agent, C : set_agent]: ((ord_le722097072_agent @ B3 @ A3) => ((ord_le722097072_agent @ C @ B3) => (ord_le722097072_agent @ C @ A3)))))). % dual_order.trans
thf(fact_29_dual__order_Orefl, axiom,
    ((![A3 : set_msg]: (ord_less_eq_set_msg @ A3 @ A3)))). % dual_order.refl
thf(fact_30_dual__order_Orefl, axiom,
    ((![A3 : set_agent]: (ord_le722097072_agent @ A3 @ A3)))). % dual_order.refl
thf(fact_31_order__trans, axiom,
    ((![X2 : set_msg, Y2 : set_msg, Z2 : set_msg]: ((ord_less_eq_set_msg @ X2 @ Y2) => ((ord_less_eq_set_msg @ Y2 @ Z2) => (ord_less_eq_set_msg @ X2 @ Z2)))))). % order_trans
thf(fact_32_order__trans, axiom,
    ((![X2 : set_agent, Y2 : set_agent, Z2 : set_agent]: ((ord_le722097072_agent @ X2 @ Y2) => ((ord_le722097072_agent @ Y2 @ Z2) => (ord_le722097072_agent @ X2 @ Z2)))))). % order_trans
thf(fact_33_order__class_Oorder_Oantisym, axiom,
    ((![A3 : set_msg, B3 : set_msg]: ((ord_less_eq_set_msg @ A3 @ B3) => ((ord_less_eq_set_msg @ B3 @ A3) => (A3 = B3)))))). % order_class.order.antisym
thf(fact_34_order__class_Oorder_Oantisym, axiom,
    ((![A3 : set_agent, B3 : set_agent]: ((ord_le722097072_agent @ A3 @ B3) => ((ord_le722097072_agent @ B3 @ A3) => (A3 = B3)))))). % order_class.order.antisym
thf(fact_35_ord__le__eq__trans, axiom,
    ((![A3 : set_msg, B3 : set_msg, C : set_msg]: ((ord_less_eq_set_msg @ A3 @ B3) => ((B3 = C) => (ord_less_eq_set_msg @ A3 @ C)))))). % ord_le_eq_trans
thf(fact_36_ord__le__eq__trans, axiom,
    ((![A3 : set_agent, B3 : set_agent, C : set_agent]: ((ord_le722097072_agent @ A3 @ B3) => ((B3 = C) => (ord_le722097072_agent @ A3 @ C)))))). % ord_le_eq_trans
thf(fact_37_ord__eq__le__trans, axiom,
    ((![A3 : set_msg, B3 : set_msg, C : set_msg]: ((A3 = B3) => ((ord_less_eq_set_msg @ B3 @ C) => (ord_less_eq_set_msg @ A3 @ C)))))). % ord_eq_le_trans
thf(fact_38_ord__eq__le__trans, axiom,
    ((![A3 : set_agent, B3 : set_agent, C : set_agent]: ((A3 = B3) => ((ord_le722097072_agent @ B3 @ C) => (ord_le722097072_agent @ A3 @ C)))))). % ord_eq_le_trans
thf(fact_39_order__class_Oorder_Oeq__iff, axiom,
    (((^[Y : set_msg]: (^[Z : set_msg]: (Y = Z))) = (^[A4 : set_msg]: (^[B4 : set_msg]: (((ord_less_eq_set_msg @ A4 @ B4)) & ((ord_less_eq_set_msg @ B4 @ A4)))))))). % order_class.order.eq_iff
thf(fact_40_order__class_Oorder_Oeq__iff, axiom,
    (((^[Y : set_agent]: (^[Z : set_agent]: (Y = Z))) = (^[A4 : set_agent]: (^[B4 : set_agent]: (((ord_le722097072_agent @ A4 @ B4)) & ((ord_le722097072_agent @ B4 @ A4)))))))). % order_class.order.eq_iff
thf(fact_41_antisym__conv, axiom,
    ((![Y2 : set_msg, X2 : set_msg]: ((ord_less_eq_set_msg @ Y2 @ X2) => ((ord_less_eq_set_msg @ X2 @ Y2) = (X2 = Y2)))))). % antisym_conv
thf(fact_42_antisym__conv, axiom,
    ((![Y2 : set_agent, X2 : set_agent]: ((ord_le722097072_agent @ Y2 @ X2) => ((ord_le722097072_agent @ X2 @ Y2) = (X2 = Y2)))))). % antisym_conv
thf(fact_43_order_Otrans, axiom,
    ((![A3 : set_msg, B3 : set_msg, C : set_msg]: ((ord_less_eq_set_msg @ A3 @ B3) => ((ord_less_eq_set_msg @ B3 @ C) => (ord_less_eq_set_msg @ A3 @ C)))))). % order.trans
thf(fact_44_order_Otrans, axiom,
    ((![A3 : set_agent, B3 : set_agent, C : set_agent]: ((ord_le722097072_agent @ A3 @ B3) => ((ord_le722097072_agent @ B3 @ C) => (ord_le722097072_agent @ A3 @ C)))))). % order.trans
thf(fact_45_eq__refl, axiom,
    ((![X2 : set_msg, Y2 : set_msg]: ((X2 = Y2) => (ord_less_eq_set_msg @ X2 @ Y2))))). % eq_refl
thf(fact_46_eq__refl, axiom,
    ((![X2 : set_agent, Y2 : set_agent]: ((X2 = Y2) => (ord_le722097072_agent @ X2 @ Y2))))). % eq_refl
thf(fact_47_antisym, axiom,
    ((![X2 : set_msg, Y2 : set_msg]: ((ord_less_eq_set_msg @ X2 @ Y2) => ((ord_less_eq_set_msg @ Y2 @ X2) => (X2 = Y2)))))). % antisym
thf(fact_48_antisym, axiom,
    ((![X2 : set_agent, Y2 : set_agent]: ((ord_le722097072_agent @ X2 @ Y2) => ((ord_le722097072_agent @ Y2 @ X2) => (X2 = Y2)))))). % antisym
thf(fact_49_eq__iff, axiom,
    (((^[Y : set_msg]: (^[Z : set_msg]: (Y = Z))) = (^[X3 : set_msg]: (^[Y3 : set_msg]: (((ord_less_eq_set_msg @ X3 @ Y3)) & ((ord_less_eq_set_msg @ Y3 @ X3)))))))). % eq_iff
thf(fact_50_eq__iff, axiom,
    (((^[Y : set_agent]: (^[Z : set_agent]: (Y = Z))) = (^[X3 : set_agent]: (^[Y3 : set_agent]: (((ord_le722097072_agent @ X3 @ Y3)) & ((ord_le722097072_agent @ Y3 @ X3)))))))). % eq_iff
thf(fact_51_ord__le__eq__subst, axiom,
    ((![A3 : set_msg, B3 : set_msg, F : set_msg > set_msg, C : set_msg]: ((ord_less_eq_set_msg @ A3 @ B3) => (((F @ B3) = C) => ((![X : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X @ Y4) => (ord_less_eq_set_msg @ (F @ X) @ (F @ Y4)))) => (ord_less_eq_set_msg @ (F @ A3) @ C))))))). % ord_le_eq_subst
thf(fact_52_ord__le__eq__subst, axiom,
    ((![A3 : set_msg, B3 : set_msg, F : set_msg > set_agent, C : set_agent]: ((ord_less_eq_set_msg @ A3 @ B3) => (((F @ B3) = C) => ((![X : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X @ Y4) => (ord_le722097072_agent @ (F @ X) @ (F @ Y4)))) => (ord_le722097072_agent @ (F @ A3) @ C))))))). % ord_le_eq_subst
thf(fact_53_ord__le__eq__subst, axiom,
    ((![A3 : set_agent, B3 : set_agent, F : set_agent > set_msg, C : set_msg]: ((ord_le722097072_agent @ A3 @ B3) => (((F @ B3) = C) => ((![X : set_agent, Y4 : set_agent]: ((ord_le722097072_agent @ X @ Y4) => (ord_less_eq_set_msg @ (F @ X) @ (F @ Y4)))) => (ord_less_eq_set_msg @ (F @ A3) @ C))))))). % ord_le_eq_subst
thf(fact_54_ord__le__eq__subst, axiom,
    ((![A3 : set_agent, B3 : set_agent, F : set_agent > set_agent, C : set_agent]: ((ord_le722097072_agent @ A3 @ B3) => (((F @ B3) = C) => ((![X : set_agent, Y4 : set_agent]: ((ord_le722097072_agent @ X @ Y4) => (ord_le722097072_agent @ (F @ X) @ (F @ Y4)))) => (ord_le722097072_agent @ (F @ A3) @ C))))))). % ord_le_eq_subst
thf(fact_55_ord__eq__le__subst, axiom,
    ((![A3 : set_msg, F : set_msg > set_msg, B3 : set_msg, C : set_msg]: ((A3 = (F @ B3)) => ((ord_less_eq_set_msg @ B3 @ C) => ((![X : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X @ Y4) => (ord_less_eq_set_msg @ (F @ X) @ (F @ Y4)))) => (ord_less_eq_set_msg @ A3 @ (F @ C)))))))). % ord_eq_le_subst
thf(fact_56_ord__eq__le__subst, axiom,
    ((![A3 : set_agent, F : set_msg > set_agent, B3 : set_msg, C : set_msg]: ((A3 = (F @ B3)) => ((ord_less_eq_set_msg @ B3 @ C) => ((![X : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X @ Y4) => (ord_le722097072_agent @ (F @ X) @ (F @ Y4)))) => (ord_le722097072_agent @ A3 @ (F @ C)))))))). % ord_eq_le_subst
thf(fact_57_ord__eq__le__subst, axiom,
    ((![A3 : set_msg, F : set_agent > set_msg, B3 : set_agent, C : set_agent]: ((A3 = (F @ B3)) => ((ord_le722097072_agent @ B3 @ C) => ((![X : set_agent, Y4 : set_agent]: ((ord_le722097072_agent @ X @ Y4) => (ord_less_eq_set_msg @ (F @ X) @ (F @ Y4)))) => (ord_less_eq_set_msg @ A3 @ (F @ C)))))))). % ord_eq_le_subst
thf(fact_58_ord__eq__le__subst, axiom,
    ((![A3 : set_agent, F : set_agent > set_agent, B3 : set_agent, C : set_agent]: ((A3 = (F @ B3)) => ((ord_le722097072_agent @ B3 @ C) => ((![X : set_agent, Y4 : set_agent]: ((ord_le722097072_agent @ X @ Y4) => (ord_le722097072_agent @ (F @ X) @ (F @ Y4)))) => (ord_le722097072_agent @ A3 @ (F @ C)))))))). % ord_eq_le_subst
thf(fact_59_order__subst2, axiom,
    ((![A3 : set_msg, B3 : set_msg, F : set_msg > set_msg, C : set_msg]: ((ord_less_eq_set_msg @ A3 @ B3) => ((ord_less_eq_set_msg @ (F @ B3) @ C) => ((![X : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X @ Y4) => (ord_less_eq_set_msg @ (F @ X) @ (F @ Y4)))) => (ord_less_eq_set_msg @ (F @ A3) @ C))))))). % order_subst2
thf(fact_60_order__subst2, axiom,
    ((![A3 : set_msg, B3 : set_msg, F : set_msg > set_agent, C : set_agent]: ((ord_less_eq_set_msg @ A3 @ B3) => ((ord_le722097072_agent @ (F @ B3) @ C) => ((![X : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X @ Y4) => (ord_le722097072_agent @ (F @ X) @ (F @ Y4)))) => (ord_le722097072_agent @ (F @ A3) @ C))))))). % order_subst2
thf(fact_61_order__subst2, axiom,
    ((![A3 : set_agent, B3 : set_agent, F : set_agent > set_msg, C : set_msg]: ((ord_le722097072_agent @ A3 @ B3) => ((ord_less_eq_set_msg @ (F @ B3) @ C) => ((![X : set_agent, Y4 : set_agent]: ((ord_le722097072_agent @ X @ Y4) => (ord_less_eq_set_msg @ (F @ X) @ (F @ Y4)))) => (ord_less_eq_set_msg @ (F @ A3) @ C))))))). % order_subst2
thf(fact_62_order__subst2, axiom,
    ((![A3 : set_agent, B3 : set_agent, F : set_agent > set_agent, C : set_agent]: ((ord_le722097072_agent @ A3 @ B3) => ((ord_le722097072_agent @ (F @ B3) @ C) => ((![X : set_agent, Y4 : set_agent]: ((ord_le722097072_agent @ X @ Y4) => (ord_le722097072_agent @ (F @ X) @ (F @ Y4)))) => (ord_le722097072_agent @ (F @ A3) @ C))))))). % order_subst2
thf(fact_63_order__subst1, axiom,
    ((![A3 : set_msg, F : set_msg > set_msg, B3 : set_msg, C : set_msg]: ((ord_less_eq_set_msg @ A3 @ (F @ B3)) => ((ord_less_eq_set_msg @ B3 @ C) => ((![X : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X @ Y4) => (ord_less_eq_set_msg @ (F @ X) @ (F @ Y4)))) => (ord_less_eq_set_msg @ A3 @ (F @ C)))))))). % order_subst1
thf(fact_64_order__subst1, axiom,
    ((![A3 : set_msg, F : set_agent > set_msg, B3 : set_agent, C : set_agent]: ((ord_less_eq_set_msg @ A3 @ (F @ B3)) => ((ord_le722097072_agent @ B3 @ C) => ((![X : set_agent, Y4 : set_agent]: ((ord_le722097072_agent @ X @ Y4) => (ord_less_eq_set_msg @ (F @ X) @ (F @ Y4)))) => (ord_less_eq_set_msg @ A3 @ (F @ C)))))))). % order_subst1
thf(fact_65_order__subst1, axiom,
    ((![A3 : set_agent, F : set_msg > set_agent, B3 : set_msg, C : set_msg]: ((ord_le722097072_agent @ A3 @ (F @ B3)) => ((ord_less_eq_set_msg @ B3 @ C) => ((![X : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X @ Y4) => (ord_le722097072_agent @ (F @ X) @ (F @ Y4)))) => (ord_le722097072_agent @ A3 @ (F @ C)))))))). % order_subst1
thf(fact_66_order__subst1, axiom,
    ((![A3 : set_agent, F : set_agent > set_agent, B3 : set_agent, C : set_agent]: ((ord_le722097072_agent @ A3 @ (F @ B3)) => ((ord_le722097072_agent @ B3 @ C) => ((![X : set_agent, Y4 : set_agent]: ((ord_le722097072_agent @ X @ Y4) => (ord_le722097072_agent @ (F @ X) @ (F @ Y4)))) => (ord_le722097072_agent @ A3 @ (F @ C)))))))). % order_subst1
thf(fact_67_Collect__mono__iff, axiom,
    ((![P : msg > $o, Q : msg > $o]: ((ord_less_eq_set_msg @ (collect_msg @ P) @ (collect_msg @ Q)) = (![X3 : msg]: (((P @ X3)) => ((Q @ X3)))))))). % Collect_mono_iff
thf(fact_68_Collect__mono__iff, axiom,
    ((![P : agent > $o, Q : agent > $o]: ((ord_le722097072_agent @ (collect_agent @ P) @ (collect_agent @ Q)) = (![X3 : agent]: (((P @ X3)) => ((Q @ X3)))))))). % Collect_mono_iff
thf(fact_69_set__eq__subset, axiom,
    (((^[Y : set_msg]: (^[Z : set_msg]: (Y = Z))) = (^[A2 : set_msg]: (^[B2 : set_msg]: (((ord_less_eq_set_msg @ A2 @ B2)) & ((ord_less_eq_set_msg @ B2 @ A2)))))))). % set_eq_subset
thf(fact_70_set__eq__subset, axiom,
    (((^[Y : set_agent]: (^[Z : set_agent]: (Y = Z))) = (^[A2 : set_agent]: (^[B2 : set_agent]: (((ord_le722097072_agent @ A2 @ B2)) & ((ord_le722097072_agent @ B2 @ A2)))))))). % set_eq_subset
thf(fact_71_subset__trans, axiom,
    ((![A : set_msg, B : set_msg, C2 : set_msg]: ((ord_less_eq_set_msg @ A @ B) => ((ord_less_eq_set_msg @ B @ C2) => (ord_less_eq_set_msg @ A @ C2)))))). % subset_trans
thf(fact_72_subset__trans, axiom,
    ((![A : set_agent, B : set_agent, C2 : set_agent]: ((ord_le722097072_agent @ A @ B) => ((ord_le722097072_agent @ B @ C2) => (ord_le722097072_agent @ A @ C2)))))). % subset_trans
thf(fact_73_Collect__mono, axiom,
    ((![P : msg > $o, Q : msg > $o]: ((![X : msg]: ((P @ X) => (Q @ X))) => (ord_less_eq_set_msg @ (collect_msg @ P) @ (collect_msg @ Q)))))). % Collect_mono
thf(fact_74_Collect__mono, axiom,
    ((![P : agent > $o, Q : agent > $o]: ((![X : agent]: ((P @ X) => (Q @ X))) => (ord_le722097072_agent @ (collect_agent @ P) @ (collect_agent @ Q)))))). % Collect_mono
thf(fact_75_Greatest__equality, axiom,
    ((![P : set_msg > $o, X2 : set_msg]: ((P @ X2) => ((![Y4 : set_msg]: ((P @ Y4) => (ord_less_eq_set_msg @ Y4 @ X2))) => ((order_1537173811et_msg @ P) = X2)))))). % Greatest_equality
thf(fact_76_Greatest__equality, axiom,
    ((![P : set_agent > $o, X2 : set_agent]: ((P @ X2) => ((![Y4 : set_agent]: ((P @ Y4) => (ord_le722097072_agent @ Y4 @ X2))) => ((order_2090558135_agent @ P) = X2)))))). % Greatest_equality
thf(fact_77_GreatestI2__order, axiom,
    ((![P : set_msg > $o, X2 : set_msg, Q : set_msg > $o]: ((P @ X2) => ((![Y4 : set_msg]: ((P @ Y4) => (ord_less_eq_set_msg @ Y4 @ X2))) => ((![X : set_msg]: ((P @ X) => ((![Y5 : set_msg]: ((P @ Y5) => (ord_less_eq_set_msg @ Y5 @ X))) => (Q @ X)))) => (Q @ (order_1537173811et_msg @ P)))))))). % GreatestI2_order
thf(fact_78_GreatestI2__order, axiom,
    ((![P : set_agent > $o, X2 : set_agent, Q : set_agent > $o]: ((P @ X2) => ((![Y4 : set_agent]: ((P @ Y4) => (ord_le722097072_agent @ Y4 @ X2))) => ((![X : set_agent]: ((P @ X) => ((![Y5 : set_agent]: ((P @ Y5) => (ord_le722097072_agent @ Y5 @ X))) => (Q @ X)))) => (Q @ (order_2090558135_agent @ P)))))))). % GreatestI2_order
thf(fact_79_le__rel__bool__arg__iff, axiom,
    ((ord_le1824574709et_msg = (^[X4 : $o > set_msg]: (^[Y6 : $o > set_msg]: (((ord_less_eq_set_msg @ (X4 @ $false) @ (Y6 @ $false))) & ((ord_less_eq_set_msg @ (X4 @ $true) @ (Y6 @ $true))))))))). % le_rel_bool_arg_iff
thf(fact_80_le__rel__bool__arg__iff, axiom,
    ((ord_le891349241_agent = (^[X4 : $o > set_agent]: (^[Y6 : $o > set_agent]: (((ord_le722097072_agent @ (X4 @ $false) @ (Y6 @ $false))) & ((ord_le722097072_agent @ (X4 @ $true) @ (Y6 @ $true))))))))). % le_rel_bool_arg_iff
thf(fact_81_mem__Collect__eq, axiom,
    ((![A3 : agent, P : agent > $o]: ((member_agent @ A3 @ (collect_agent @ P)) = (P @ A3))))). % mem_Collect_eq
thf(fact_82_mem__Collect__eq, axiom,
    ((![A3 : msg, P : msg > $o]: ((member_msg @ A3 @ (collect_msg @ P)) = (P @ A3))))). % mem_Collect_eq
thf(fact_83_Collect__mem__eq, axiom,
    ((![A : set_agent]: ((collect_agent @ (^[X3 : agent]: (member_agent @ X3 @ A))) = A)))). % Collect_mem_eq
thf(fact_84_Collect__mem__eq, axiom,
    ((![A : set_msg]: ((collect_msg @ (^[X3 : msg]: (member_msg @ X3 @ A))) = A)))). % Collect_mem_eq
thf(fact_85_spies__evs__rev, axiom,
    ((![Evs : list_event]: ((knows @ spy @ Evs) = (knows @ spy @ (rev_event @ Evs)))))). % spies_evs_rev
thf(fact_86_antimono__def, axiom,
    ((order_1793341132et_msg = (^[F2 : set_msg > set_msg]: (![X3 : set_msg]: (![Y3 : set_msg]: (((ord_less_eq_set_msg @ X3 @ Y3)) => ((ord_less_eq_set_msg @ (F2 @ Y3) @ (F2 @ X3)))))))))). % antimono_def
thf(fact_87_antimono__def, axiom,
    ((order_1738601424_agent = (^[F2 : set_msg > set_agent]: (![X3 : set_msg]: (![Y3 : set_msg]: (((ord_less_eq_set_msg @ X3 @ Y3)) => ((ord_le722097072_agent @ (F2 @ Y3) @ (F2 @ X3)))))))))). % antimono_def
thf(fact_88_antimono__def, axiom,
    ((order_73758288et_msg = (^[F2 : set_agent > set_msg]: (![X3 : set_agent]: (![Y3 : set_agent]: (((ord_le722097072_agent @ X3 @ Y3)) => ((ord_less_eq_set_msg @ (F2 @ Y3) @ (F2 @ X3)))))))))). % antimono_def
thf(fact_89_antimono__def, axiom,
    ((order_393392468_agent = (^[F2 : set_agent > set_agent]: (![X3 : set_agent]: (![Y3 : set_agent]: (((ord_le722097072_agent @ X3 @ Y3)) => ((ord_le722097072_agent @ (F2 @ Y3) @ (F2 @ X3)))))))))). % antimono_def
thf(fact_90_antimonoI, axiom,
    ((![F : set_msg > set_msg]: ((![X : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X @ Y4) => (ord_less_eq_set_msg @ (F @ Y4) @ (F @ X)))) => (order_1793341132et_msg @ F))))). % antimonoI
thf(fact_91_antimonoI, axiom,
    ((![F : set_msg > set_agent]: ((![X : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X @ Y4) => (ord_le722097072_agent @ (F @ Y4) @ (F @ X)))) => (order_1738601424_agent @ F))))). % antimonoI
thf(fact_92_antimonoI, axiom,
    ((![F : set_agent > set_msg]: ((![X : set_agent, Y4 : set_agent]: ((ord_le722097072_agent @ X @ Y4) => (ord_less_eq_set_msg @ (F @ Y4) @ (F @ X)))) => (order_73758288et_msg @ F))))). % antimonoI
thf(fact_93_antimonoI, axiom,
    ((![F : set_agent > set_agent]: ((![X : set_agent, Y4 : set_agent]: ((ord_le722097072_agent @ X @ Y4) => (ord_le722097072_agent @ (F @ Y4) @ (F @ X)))) => (order_393392468_agent @ F))))). % antimonoI
thf(fact_94_antimonoE, axiom,
    ((![F : set_msg > set_msg, X2 : set_msg, Y2 : set_msg]: ((order_1793341132et_msg @ F) => ((ord_less_eq_set_msg @ X2 @ Y2) => (ord_less_eq_set_msg @ (F @ Y2) @ (F @ X2))))))). % antimonoE
thf(fact_95_antimonoE, axiom,
    ((![F : set_msg > set_agent, X2 : set_msg, Y2 : set_msg]: ((order_1738601424_agent @ F) => ((ord_less_eq_set_msg @ X2 @ Y2) => (ord_le722097072_agent @ (F @ Y2) @ (F @ X2))))))). % antimonoE
thf(fact_96_antimonoE, axiom,
    ((![F : set_agent > set_msg, X2 : set_agent, Y2 : set_agent]: ((order_73758288et_msg @ F) => ((ord_le722097072_agent @ X2 @ Y2) => (ord_less_eq_set_msg @ (F @ Y2) @ (F @ X2))))))). % antimonoE
thf(fact_97_antimonoE, axiom,
    ((![F : set_agent > set_agent, X2 : set_agent, Y2 : set_agent]: ((order_393392468_agent @ F) => ((ord_le722097072_agent @ X2 @ Y2) => (ord_le722097072_agent @ (F @ Y2) @ (F @ X2))))))). % antimonoE
thf(fact_98_antimonoD, axiom,
    ((![F : set_msg > set_msg, X2 : set_msg, Y2 : set_msg]: ((order_1793341132et_msg @ F) => ((ord_less_eq_set_msg @ X2 @ Y2) => (ord_less_eq_set_msg @ (F @ Y2) @ (F @ X2))))))). % antimonoD
thf(fact_99_antimonoD, axiom,
    ((![F : set_msg > set_agent, X2 : set_msg, Y2 : set_msg]: ((order_1738601424_agent @ F) => ((ord_less_eq_set_msg @ X2 @ Y2) => (ord_le722097072_agent @ (F @ Y2) @ (F @ X2))))))). % antimonoD
thf(fact_100_antimonoD, axiom,
    ((![F : set_agent > set_msg, X2 : set_agent, Y2 : set_agent]: ((order_73758288et_msg @ F) => ((ord_le722097072_agent @ X2 @ Y2) => (ord_less_eq_set_msg @ (F @ Y2) @ (F @ X2))))))). % antimonoD
thf(fact_101_antimonoD, axiom,
    ((![F : set_agent > set_agent, X2 : set_agent, Y2 : set_agent]: ((order_393392468_agent @ F) => ((ord_le722097072_agent @ X2 @ Y2) => (ord_le722097072_agent @ (F @ Y2) @ (F @ X2))))))). % antimonoD
thf(fact_102_initState__subset__knows, axiom,
    ((![A : agent, Evs : list_event]: (ord_less_eq_set_msg @ (initState @ A) @ (knows @ A @ Evs))))). % initState_subset_knows
thf(fact_103_rev__rev__ident, axiom,
    ((![Xs : list_event]: ((rev_event @ (rev_event @ Xs)) = Xs)))). % rev_rev_ident
thf(fact_104_rev__is__rev__conv, axiom,
    ((![Xs : list_event, Ys : list_event]: (((rev_event @ Xs) = (rev_event @ Ys)) = (Xs = Ys))))). % rev_is_rev_conv
thf(fact_105_rev__swap, axiom,
    ((![Xs : list_event, Ys : list_event]: (((rev_event @ Xs) = Ys) = (Xs = (rev_event @ Ys)))))). % rev_swap
thf(fact_106_parts__spies__evs__revD2, axiom,
    ((![Evs : list_event]: (ord_less_eq_set_msg @ (parts @ (knows @ spy @ (rev_event @ Evs))) @ (parts @ (knows @ spy @ Evs)))))). % parts_spies_evs_revD2
thf(fact_107_knows__Nil, axiom,
    ((![A : agent]: ((knows @ A @ nil_event) = (initState @ A))))). % knows_Nil
thf(fact_108_list__ex__rev, axiom,
    ((![P : event > $o, Xs : list_event]: ((list_ex_event @ P @ (rev_event @ Xs)) = (list_ex_event @ P @ Xs))))). % list_ex_rev
thf(fact_109_knows__subset__knows__Cons, axiom,
    ((![A : agent, Evs : list_event, E : event]: (ord_less_eq_set_msg @ (knows @ A @ Evs) @ (knows @ A @ (cons_event @ E @ Evs)))))). % knows_subset_knows_Cons
thf(fact_110_Spy__in__bad, axiom,
    ((member_agent @ spy @ bad))). % Spy_in_bad
thf(fact_111_list_Oinject, axiom,
    ((![X21 : event, X22 : list_event, Y21 : event, Y22 : list_event]: (((cons_event @ X21 @ X22) = (cons_event @ Y21 @ Y22)) = (((X21 = Y21)) & ((X22 = Y22))))))). % list.inject
thf(fact_112_rev__is__Nil__conv, axiom,
    ((![Xs : list_event]: (((rev_event @ Xs) = nil_event) = (Xs = nil_event))))). % rev_is_Nil_conv
thf(fact_113_Nil__is__rev__conv, axiom,
    ((![Xs : list_event]: ((nil_event = (rev_event @ Xs)) = (Xs = nil_event))))). % Nil_is_rev_conv
thf(fact_114_list__ex__simps_I1_J, axiom,
    ((![P : event > $o, X2 : event, Xs : list_event]: ((list_ex_event @ P @ (cons_event @ X2 @ Xs)) = (((P @ X2)) | ((list_ex_event @ P @ Xs))))))). % list_ex_simps(1)
thf(fact_115_list__ex__simps_I2_J, axiom,
    ((![P : event > $o]: (~ ((list_ex_event @ P @ nil_event)))))). % list_ex_simps(2)
thf(fact_116_rev__singleton__conv, axiom,
    ((![Xs : list_event, X2 : event]: (((rev_event @ Xs) = (cons_event @ X2 @ nil_event)) = (Xs = (cons_event @ X2 @ nil_event)))))). % rev_singleton_conv
thf(fact_117_singleton__rev__conv, axiom,
    ((![X2 : event, Xs : list_event]: (((cons_event @ X2 @ nil_event) = (rev_event @ Xs)) = (Xs = (cons_event @ X2 @ nil_event)))))). % singleton_rev_conv
thf(fact_118_takeWhile_Osimps_I2_J, axiom,
    ((![P : event > $o, X2 : event, Xs : list_event]: (((P @ X2) => ((takeWhile_event @ P @ (cons_event @ X2 @ Xs)) = (cons_event @ X2 @ (takeWhile_event @ P @ Xs)))) & ((~ ((P @ X2))) => ((takeWhile_event @ P @ (cons_event @ X2 @ Xs)) = nil_event)))))). % takeWhile.simps(2)
thf(fact_119_map__tailrec__rev_Oinduct, axiom,
    ((![P : (event > event) > list_event > list_event > $o, A0 : event > event, A1 : list_event, A22 : list_event]: ((![F3 : event > event, X_1 : list_event]: (P @ F3 @ nil_event @ X_1)) => ((![F3 : event > event, A5 : event, As : list_event, Bs : list_event]: ((P @ F3 @ As @ (cons_event @ (F3 @ A5) @ Bs)) => (P @ F3 @ (cons_event @ A5 @ As) @ Bs))) => (P @ A0 @ A1 @ A22)))))). % map_tailrec_rev.induct
thf(fact_120_list__nonempty__induct, axiom,
    ((![Xs : list_event, P : list_event > $o]: ((~ ((Xs = nil_event))) => ((![X : event]: (P @ (cons_event @ X @ nil_event))) => ((![X : event, Xs2 : list_event]: ((~ ((Xs2 = nil_event))) => ((P @ Xs2) => (P @ (cons_event @ X @ Xs2))))) => (P @ Xs))))))). % list_nonempty_induct
thf(fact_121_successively_Oinduct, axiom,
    ((![P : (event > event > $o) > list_event > $o, A0 : event > event > $o, A1 : list_event]: ((![P2 : event > event > $o]: (P @ P2 @ nil_event)) => ((![P2 : event > event > $o, X : event]: (P @ P2 @ (cons_event @ X @ nil_event))) => ((![P2 : event > event > $o, X : event, Y4 : event, Xs2 : list_event]: ((P @ P2 @ (cons_event @ Y4 @ Xs2)) => (P @ P2 @ (cons_event @ X @ (cons_event @ Y4 @ Xs2))))) => (P @ A0 @ A1))))))). % successively.induct
thf(fact_122_remdups__adj_Oinduct, axiom,
    ((![P : list_event > $o, A0 : list_event]: ((P @ nil_event) => ((![X : event]: (P @ (cons_event @ X @ nil_event))) => ((![X : event, Y4 : event, Xs2 : list_event]: (((X = Y4) => (P @ (cons_event @ X @ Xs2))) => (((~ ((X = Y4))) => (P @ (cons_event @ Y4 @ Xs2))) => (P @ (cons_event @ X @ (cons_event @ Y4 @ Xs2)))))) => (P @ A0))))))). % remdups_adj.induct
thf(fact_123_sorted__wrt_Oinduct, axiom,
    ((![P : (event > event > $o) > list_event > $o, A0 : event > event > $o, A1 : list_event]: ((![P2 : event > event > $o]: (P @ P2 @ nil_event)) => ((![P2 : event > event > $o, X : event, Ys2 : list_event]: ((P @ P2 @ Ys2) => (P @ P2 @ (cons_event @ X @ Ys2)))) => (P @ A0 @ A1)))))). % sorted_wrt.induct
thf(fact_124_remdups__adj_Ocases, axiom,
    ((![X2 : list_event]: ((~ ((X2 = nil_event))) => ((![X : event]: (~ ((X2 = (cons_event @ X @ nil_event))))) => (~ ((![X : event, Y4 : event, Xs2 : list_event]: (~ ((X2 = (cons_event @ X @ (cons_event @ Y4 @ Xs2))))))))))))). % remdups_adj.cases
thf(fact_125_transpose_Ocases, axiom,
    ((![X2 : list_list_event]: ((~ ((X2 = nil_list_event))) => ((![Xss : list_list_event]: (~ ((X2 = (cons_list_event @ nil_event @ Xss))))) => (~ ((![X : event, Xs2 : list_event, Xss : list_list_event]: (~ ((X2 = (cons_list_event @ (cons_event @ X @ Xs2) @ Xss)))))))))))). % transpose.cases
thf(fact_126_shuffles_Oinduct, axiom,
    ((![P : list_event > list_event > $o, A0 : list_event, A1 : list_event]: ((![X_1 : list_event]: (P @ nil_event @ X_1)) => ((![Xs2 : list_event]: (P @ Xs2 @ nil_event)) => ((![X : event, Xs2 : list_event, Y4 : event, Ys2 : list_event]: ((P @ Xs2 @ (cons_event @ Y4 @ Ys2)) => ((P @ (cons_event @ X @ Xs2) @ Ys2) => (P @ (cons_event @ X @ Xs2) @ (cons_event @ Y4 @ Ys2))))) => (P @ A0 @ A1))))))). % shuffles.induct
thf(fact_127_not__Cons__self2, axiom,
    ((![X2 : event, Xs : list_event]: (~ (((cons_event @ X2 @ Xs) = Xs)))))). % not_Cons_self2
thf(fact_128_induct__list012, axiom,
    ((![P : list_event > $o, Xs : list_event]: ((P @ nil_event) => ((![X : event]: (P @ (cons_event @ X @ nil_event))) => ((![X : event, Y4 : event, Zs : list_event]: ((P @ Zs) => ((P @ (cons_event @ Y4 @ Zs)) => (P @ (cons_event @ X @ (cons_event @ Y4 @ Zs)))))) => (P @ Xs))))))). % induct_list012
thf(fact_129_splice_Oinduct, axiom,
    ((![P : list_event > list_event > $o, A0 : list_event, A1 : list_event]: ((![X_1 : list_event]: (P @ nil_event @ X_1)) => ((![X : event, Xs2 : list_event, Ys2 : list_event]: ((P @ Ys2 @ Xs2) => (P @ (cons_event @ X @ Xs2) @ Ys2))) => (P @ A0 @ A1)))))). % splice.induct
thf(fact_130_list__induct2_H, axiom,
    ((![P : list_event > list_event > $o, Xs : list_event, Ys : list_event]: ((P @ nil_event @ nil_event) => ((![X : event, Xs2 : list_event]: (P @ (cons_event @ X @ Xs2) @ nil_event)) => ((![Y4 : event, Ys2 : list_event]: (P @ nil_event @ (cons_event @ Y4 @ Ys2))) => ((![X : event, Xs2 : list_event, Y4 : event, Ys2 : list_event]: ((P @ Xs2 @ Ys2) => (P @ (cons_event @ X @ Xs2) @ (cons_event @ Y4 @ Ys2)))) => (P @ Xs @ Ys)))))))). % list_induct2'
thf(fact_131_neq__Nil__conv, axiom,
    ((![Xs : list_event]: ((~ ((Xs = nil_event))) = (?[Y3 : event]: (?[Ys3 : list_event]: (Xs = (cons_event @ Y3 @ Ys3)))))))). % neq_Nil_conv
thf(fact_132_list_Oinducts, axiom,
    ((![P : list_event > $o, List : list_event]: ((P @ nil_event) => ((![X1 : event, X23 : list_event]: ((P @ X23) => (P @ (cons_event @ X1 @ X23)))) => (P @ List)))))). % list.inducts
thf(fact_133_list_Oexhaust, axiom,
    ((![Y2 : list_event]: ((~ ((Y2 = nil_event))) => (~ ((![X212 : event, X222 : list_event]: (~ ((Y2 = (cons_event @ X212 @ X222))))))))))). % list.exhaust
thf(fact_134_list_OdiscI, axiom,
    ((![List : list_event, X21 : event, X22 : list_event]: ((List = (cons_event @ X21 @ X22)) => (~ ((List = nil_event))))))). % list.discI
thf(fact_135_list_Odistinct_I1_J, axiom,
    ((![X21 : event, X22 : list_event]: (~ ((nil_event = (cons_event @ X21 @ X22))))))). % list.distinct(1)
thf(fact_136_rev_Osimps_I1_J, axiom,
    (((rev_event @ nil_event) = nil_event))). % rev.simps(1)
thf(fact_137_takeWhile_Osimps_I1_J, axiom,
    ((![P : event > $o]: ((takeWhile_event @ P @ nil_event) = nil_event)))). % takeWhile.simps(1)
thf(fact_138_parts__subset__iff, axiom,
    ((![G : set_msg, H : set_msg]: ((ord_less_eq_set_msg @ (parts @ G) @ (parts @ H)) = (ord_less_eq_set_msg @ G @ (parts @ H)))))). % parts_subset_iff
thf(fact_139_parts__idem, axiom,
    ((![H : set_msg]: ((parts @ (parts @ H)) = (parts @ H))))). % parts_idem
thf(fact_140_parts__mono, axiom,
    ((![G : set_msg, H : set_msg]: ((ord_less_eq_set_msg @ G @ H) => (ord_less_eq_set_msg @ (parts @ G) @ (parts @ H)))))). % parts_mono
thf(fact_141_parts__trans, axiom,
    ((![X5 : msg, G : set_msg, H : set_msg]: ((member_msg @ X5 @ (parts @ G)) => ((ord_less_eq_set_msg @ G @ (parts @ H)) => (member_msg @ X5 @ (parts @ H))))))). % parts_trans
thf(fact_142_parts__increasing, axiom,
    ((![H : set_msg]: (ord_less_eq_set_msg @ H @ (parts @ H))))). % parts_increasing
thf(fact_143_parts__partsD, axiom,
    ((![X5 : msg, H : set_msg]: ((member_msg @ X5 @ (parts @ (parts @ H))) => (member_msg @ X5 @ (parts @ H)))))). % parts_partsD
thf(fact_144_parts_OInj, axiom,
    ((![X5 : msg, H : set_msg]: ((member_msg @ X5 @ H) => (member_msg @ X5 @ (parts @ H)))))). % parts.Inj
thf(fact_145_knows__Spy__Gets, axiom,
    ((![A : agent, X5 : msg, Evs : list_event]: ((knows @ spy @ (cons_event @ (gets @ A @ X5) @ Evs)) = (knows @ spy @ Evs))))). % knows_Spy_Gets
thf(fact_146_knows__Spy__subset__knows__Spy__Gets, axiom,
    ((![Evs : list_event, A : agent, X5 : msg]: (ord_less_eq_set_msg @ (knows @ spy @ Evs) @ (knows @ spy @ (cons_event @ (gets @ A @ X5) @ Evs)))))). % knows_Spy_subset_knows_Spy_Gets
thf(fact_147_product__lists_Osimps_I1_J, axiom,
    (((product_lists_event @ nil_list_event) = (cons_list_event @ nil_event @ nil_list_event)))). % product_lists.simps(1)
thf(fact_148_event_Oinject_I2_J, axiom,
    ((![X21 : agent, X22 : msg, Y21 : agent, Y22 : msg]: (((gets @ X21 @ X22) = (gets @ Y21 @ Y22)) = (((X21 = Y21)) & ((X22 = Y22))))))). % event.inject(2)
thf(fact_149_knows__subset__knows__Gets, axiom,
    ((![A : agent, Evs : list_event, A6 : agent, X5 : msg]: (ord_less_eq_set_msg @ (knows @ A @ Evs) @ (knows @ A @ (cons_event @ (gets @ A6 @ X5) @ Evs)))))). % knows_subset_knows_Gets
thf(fact_150_spies__Gets__rev, axiom,
    ((![Evs : list_event, A : agent, X5 : msg]: ((knows @ spy @ (append_event @ Evs @ (cons_event @ (gets @ A @ X5) @ nil_event))) = (knows @ spy @ Evs))))). % spies_Gets_rev
thf(fact_151_knows__Spy__subset__knows__Spy__Notes, axiom,
    ((![Evs : list_event, A : agent, X5 : msg]: (ord_less_eq_set_msg @ (knows @ spy @ Evs) @ (knows @ spy @ (cons_event @ (notes @ A @ X5) @ Evs)))))). % knows_Spy_subset_knows_Spy_Notes
thf(fact_152_subseqs_Osimps_I1_J, axiom,
    (((subseqs_event @ nil_event) = (cons_list_event @ nil_event @ nil_list_event)))). % subseqs.simps(1)
thf(fact_153_append_Oassoc, axiom,
    ((![A3 : list_event, B3 : list_event, C : list_event]: ((append_event @ (append_event @ A3 @ B3) @ C) = (append_event @ A3 @ (append_event @ B3 @ C)))))). % append.assoc
thf(fact_154_append__assoc, axiom,
    ((![Xs : list_event, Ys : list_event, Zs2 : list_event]: ((append_event @ (append_event @ Xs @ Ys) @ Zs2) = (append_event @ Xs @ (append_event @ Ys @ Zs2)))))). % append_assoc
thf(fact_155_append__same__eq, axiom,
    ((![Ys : list_event, Xs : list_event, Zs2 : list_event]: (((append_event @ Ys @ Xs) = (append_event @ Zs2 @ Xs)) = (Ys = Zs2))))). % append_same_eq
thf(fact_156_same__append__eq, axiom,
    ((![Xs : list_event, Ys : list_event, Zs2 : list_event]: (((append_event @ Xs @ Ys) = (append_event @ Xs @ Zs2)) = (Ys = Zs2))))). % same_append_eq
thf(fact_157_event_Oinject_I3_J, axiom,
    ((![X31 : agent, X32 : msg, Y31 : agent, Y32 : msg]: (((notes @ X31 @ X32) = (notes @ Y31 @ Y32)) = (((X31 = Y31)) & ((X32 = Y32))))))). % event.inject(3)
thf(fact_158_append_Oright__neutral, axiom,
    ((![A3 : list_event]: ((append_event @ A3 @ nil_event) = A3)))). % append.right_neutral
thf(fact_159_append__is__Nil__conv, axiom,
    ((![Xs : list_event, Ys : list_event]: (((append_event @ Xs @ Ys) = nil_event) = (((Xs = nil_event)) & ((Ys = nil_event))))))). % append_is_Nil_conv
thf(fact_160_Nil__is__append__conv, axiom,
    ((![Xs : list_event, Ys : list_event]: ((nil_event = (append_event @ Xs @ Ys)) = (((Xs = nil_event)) & ((Ys = nil_event))))))). % Nil_is_append_conv
thf(fact_161_self__append__conv2, axiom,
    ((![Ys : list_event, Xs : list_event]: ((Ys = (append_event @ Xs @ Ys)) = (Xs = nil_event))))). % self_append_conv2
thf(fact_162_append__self__conv2, axiom,
    ((![Xs : list_event, Ys : list_event]: (((append_event @ Xs @ Ys) = Ys) = (Xs = nil_event))))). % append_self_conv2
thf(fact_163_self__append__conv, axiom,
    ((![Xs : list_event, Ys : list_event]: ((Xs = (append_event @ Xs @ Ys)) = (Ys = nil_event))))). % self_append_conv
thf(fact_164_append__self__conv, axiom,
    ((![Xs : list_event, Ys : list_event]: (((append_event @ Xs @ Ys) = Xs) = (Ys = nil_event))))). % append_self_conv
thf(fact_165_append__Nil2, axiom,
    ((![Xs : list_event]: ((append_event @ Xs @ nil_event) = Xs)))). % append_Nil2
thf(fact_166_rev__append, axiom,
    ((![Xs : list_event, Ys : list_event]: ((rev_event @ (append_event @ Xs @ Ys)) = (append_event @ (rev_event @ Ys) @ (rev_event @ Xs)))))). % rev_append
thf(fact_167_list__ex__append, axiom,
    ((![P : event > $o, Xs : list_event, Ys : list_event]: ((list_ex_event @ P @ (append_event @ Xs @ Ys)) = (((list_ex_event @ P @ Xs)) | ((list_ex_event @ P @ Ys))))))). % list_ex_append
thf(fact_168_append1__eq__conv, axiom,
    ((![Xs : list_event, X2 : event, Ys : list_event, Y2 : event]: (((append_event @ Xs @ (cons_event @ X2 @ nil_event)) = (append_event @ Ys @ (cons_event @ Y2 @ nil_event))) = (((Xs = Ys)) & ((X2 = Y2))))))). % append1_eq_conv
thf(fact_169_rev__eq__Cons__iff, axiom,
    ((![Xs : list_event, Y2 : event, Ys : list_event]: (((rev_event @ Xs) = (cons_event @ Y2 @ Ys)) = (Xs = (append_event @ (rev_event @ Ys) @ (cons_event @ Y2 @ nil_event))))))). % rev_eq_Cons_iff
thf(fact_170_event_Odistinct_I5_J, axiom,
    ((![X21 : agent, X22 : msg, X31 : agent, X32 : msg]: (~ (((gets @ X21 @ X22) = (notes @ X31 @ X32))))))). % event.distinct(5)
thf(fact_171_rev__nonempty__induct, axiom,
    ((![Xs : list_event, P : list_event > $o]: ((~ ((Xs = nil_event))) => ((![X : event]: (P @ (cons_event @ X @ nil_event))) => ((![X : event, Xs2 : list_event]: ((~ ((Xs2 = nil_event))) => ((P @ Xs2) => (P @ (append_event @ Xs2 @ (cons_event @ X @ nil_event)))))) => (P @ Xs))))))). % rev_nonempty_induct
thf(fact_172_append__eq__Cons__conv, axiom,
    ((![Ys : list_event, Zs2 : list_event, X2 : event, Xs : list_event]: (((append_event @ Ys @ Zs2) = (cons_event @ X2 @ Xs)) = (((((Ys = nil_event)) & ((Zs2 = (cons_event @ X2 @ Xs))))) | ((?[Ys4 : list_event]: (((Ys = (cons_event @ X2 @ Ys4))) & (((append_event @ Ys4 @ Zs2) = Xs)))))))))). % append_eq_Cons_conv
thf(fact_173_Cons__eq__append__conv, axiom,
    ((![X2 : event, Xs : list_event, Ys : list_event, Zs2 : list_event]: (((cons_event @ X2 @ Xs) = (append_event @ Ys @ Zs2)) = (((((Ys = nil_event)) & (((cons_event @ X2 @ Xs) = Zs2)))) | ((?[Ys4 : list_event]: ((((cons_event @ X2 @ Ys4) = Ys)) & ((Xs = (append_event @ Ys4 @ Zs2))))))))))). % Cons_eq_append_conv
thf(fact_174_rev__exhaust, axiom,
    ((![Xs : list_event]: ((~ ((Xs = nil_event))) => (~ ((![Ys2 : list_event, Y4 : event]: (~ ((Xs = (append_event @ Ys2 @ (cons_event @ Y4 @ nil_event)))))))))))). % rev_exhaust
thf(fact_175_rev__induct, axiom,
    ((![P : list_event > $o, Xs : list_event]: ((P @ nil_event) => ((![X : event, Xs2 : list_event]: ((P @ Xs2) => (P @ (append_event @ Xs2 @ (cons_event @ X @ nil_event))))) => (P @ Xs)))))). % rev_induct
thf(fact_176_append__eq__appendI, axiom,
    ((![Xs : list_event, Xs1 : list_event, Zs2 : list_event, Ys : list_event, Us : list_event]: (((append_event @ Xs @ Xs1) = Zs2) => ((Ys = (append_event @ Xs1 @ Us)) => ((append_event @ Xs @ Ys) = (append_event @ Zs2 @ Us))))))). % append_eq_appendI
thf(fact_177_append__eq__append__conv2, axiom,
    ((![Xs : list_event, Ys : list_event, Zs2 : list_event, Ts : list_event]: (((append_event @ Xs @ Ys) = (append_event @ Zs2 @ Ts)) = (?[Us2 : list_event]: (((((Xs = (append_event @ Zs2 @ Us2))) & (((append_event @ Us2 @ Ys) = Ts)))) | (((((append_event @ Xs @ Us2) = Zs2)) & ((Ys = (append_event @ Us2 @ Ts))))))))))). % append_eq_append_conv2
thf(fact_178_eq__Nil__appendI, axiom,
    ((![Xs : list_event, Ys : list_event]: ((Xs = Ys) => (Xs = (append_event @ nil_event @ Ys)))))). % eq_Nil_appendI
thf(fact_179_Cons__eq__appendI, axiom,
    ((![X2 : event, Xs1 : list_event, Ys : list_event, Xs : list_event, Zs2 : list_event]: (((cons_event @ X2 @ Xs1) = Ys) => ((Xs = (append_event @ Xs1 @ Zs2)) => ((cons_event @ X2 @ Xs) = (append_event @ Ys @ Zs2))))))). % Cons_eq_appendI
thf(fact_180_append__Nil, axiom,
    ((![Ys : list_event]: ((append_event @ nil_event @ Ys) = Ys)))). % append_Nil
thf(fact_181_append__Cons, axiom,
    ((![X2 : event, Xs : list_event, Ys : list_event]: ((append_event @ (cons_event @ X2 @ Xs) @ Ys) = (cons_event @ X2 @ (append_event @ Xs @ Ys)))))). % append_Cons
thf(fact_182_append_Oleft__neutral, axiom,
    ((![A3 : list_event]: ((append_event @ nil_event @ A3) = A3)))). % append.left_neutral
thf(fact_183_takeWhile__tail, axiom,
    ((![P : event > $o, X2 : event, Xs : list_event, L : list_event]: ((~ ((P @ X2))) => ((takeWhile_event @ P @ (append_event @ Xs @ (cons_event @ X2 @ L))) = (takeWhile_event @ P @ Xs)))))). % takeWhile_tail
thf(fact_184_rev_Osimps_I2_J, axiom,
    ((![X2 : event, Xs : list_event]: ((rev_event @ (cons_event @ X2 @ Xs)) = (append_event @ (rev_event @ Xs) @ (cons_event @ X2 @ nil_event)))))). % rev.simps(2)
thf(fact_185_knows__subset__knows__Notes, axiom,
    ((![A : agent, Evs : list_event, A6 : agent, X5 : msg]: (ord_less_eq_set_msg @ (knows @ A @ Evs) @ (knows @ A @ (cons_event @ (notes @ A6 @ X5) @ Evs)))))). % knows_subset_knows_Notes
thf(fact_186_spies__Notes__rev, axiom,
    ((![A : agent, Evs : list_event, X5 : msg]: (((member_agent @ A @ bad) => ((knows @ spy @ (append_event @ Evs @ (cons_event @ (notes @ A @ X5) @ nil_event))) = (insert_msg @ X5 @ (knows @ spy @ Evs)))) & ((~ ((member_agent @ A @ bad))) => ((knows @ spy @ (append_event @ Evs @ (cons_event @ (notes @ A @ X5) @ nil_event))) = (knows @ spy @ Evs))))))). % spies_Notes_rev
thf(fact_187_knows__Spy__Notes, axiom,
    ((![A : agent, X5 : msg, Evs : list_event]: (((member_agent @ A @ bad) => ((knows @ spy @ (cons_event @ (notes @ A @ X5) @ Evs)) = (insert_msg @ X5 @ (knows @ spy @ Evs)))) & ((~ ((member_agent @ A @ bad))) => ((knows @ spy @ (cons_event @ (notes @ A @ X5) @ Evs)) = (knows @ spy @ Evs))))))). % knows_Spy_Notes
thf(fact_188_insert__absorb2, axiom,
    ((![X2 : msg, A : set_msg]: ((insert_msg @ X2 @ (insert_msg @ X2 @ A)) = (insert_msg @ X2 @ A))))). % insert_absorb2
thf(fact_189_insert__iff, axiom,
    ((![A3 : agent, B3 : agent, A : set_agent]: ((member_agent @ A3 @ (insert_agent @ B3 @ A)) = (((A3 = B3)) | ((member_agent @ A3 @ A))))))). % insert_iff
thf(fact_190_insert__iff, axiom,
    ((![A3 : msg, B3 : msg, A : set_msg]: ((member_msg @ A3 @ (insert_msg @ B3 @ A)) = (((A3 = B3)) | ((member_msg @ A3 @ A))))))). % insert_iff
thf(fact_191_insertCI, axiom,
    ((![A3 : agent, B : set_agent, B3 : agent]: (((~ ((member_agent @ A3 @ B))) => (A3 = B3)) => (member_agent @ A3 @ (insert_agent @ B3 @ B)))))). % insertCI
thf(fact_192_insertCI, axiom,
    ((![A3 : msg, B : set_msg, B3 : msg]: (((~ ((member_msg @ A3 @ B))) => (A3 = B3)) => (member_msg @ A3 @ (insert_msg @ B3 @ B)))))). % insertCI
thf(fact_193_insert__subset, axiom,
    ((![X2 : msg, A : set_msg, B : set_msg]: ((ord_less_eq_set_msg @ (insert_msg @ X2 @ A) @ B) = (((member_msg @ X2 @ B)) & ((ord_less_eq_set_msg @ A @ B))))))). % insert_subset
thf(fact_194_insert__subset, axiom,
    ((![X2 : agent, A : set_agent, B : set_agent]: ((ord_le722097072_agent @ (insert_agent @ X2 @ A) @ B) = (((member_agent @ X2 @ B)) & ((ord_le722097072_agent @ A @ B))))))). % insert_subset

% Conjectures (1)
thf(conj_0, conjecture,
    ((ord_less_eq_set_msg @ (knows @ spy @ (takeWhile_event @ p @ evs)) @ (knows @ spy @ evs)))).
