% 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_405__5232226_1 ) ; }
% This file was generated by Isabelle (most likely Sledgehammer)
% 2020-12-16 14:24:39.902

% Could-be-implicit typings (10)
thf(ty_n_t__List__Olist_It__Message__Oagent_J, type,
    list_agent : $tType).
thf(ty_n_t__Set__Oset_It__Message__Oagent_J, type,
    set_agent : $tType).
thf(ty_n_t__List__Olist_It__Message__Omsg_J, type,
    list_msg : $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__Set__Oset_It__Event__Oevent_J, type,
    set_event : $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).
thf(ty_n_t__Nat__Onat, type,
    nat : $tType).

% Explicit typings (40)
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_Oevent_OSays, type,
    says : agent > 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_Event_Oused, type,
    used : list_event > set_msg).
thf(sy_c_List_Odistinct__adj_001t__Event__Oevent, type,
    distinct_adj_event : list_event > $o).
thf(sy_c_List_Oinsert_001t__Event__Oevent, type,
    insert_event : event > list_event > list_event).
thf(sy_c_List_Oinsert_001t__Message__Omsg, type,
    insert_msg : msg > list_msg > list_msg).
thf(sy_c_List_Olist_OCons_001t__Event__Oevent, type,
    cons_event : event > list_event > list_event).
thf(sy_c_List_Olist_OCons_001t__Message__Oagent, type,
    cons_agent : agent > list_agent > list_agent).
thf(sy_c_List_Olist_OCons_001t__Message__Omsg, type,
    cons_msg : msg > list_msg > list_msg).
thf(sy_c_List_Olist_Oset_001t__Event__Oevent, type,
    set_event2 : list_event > set_event).
thf(sy_c_List_Olist_Oset_001t__Message__Oagent, type,
    set_agent2 : list_agent > set_agent).
thf(sy_c_List_Olist_Oset_001t__Message__Omsg, type,
    set_msg2 : list_msg > set_msg).
thf(sy_c_List_Olist__ex_001t__Event__Oevent, type,
    list_ex_event : (event > $o) > list_event > $o).
thf(sy_c_List_Olist__ex_001t__Message__Oagent, type,
    list_ex_agent : (agent > $o) > list_agent > $o).
thf(sy_c_List_Olist__ex_001t__Message__Omsg, type,
    list_ex_msg : (msg > $o) > list_msg > $o).
thf(sy_c_List_Omember_001t__Event__Oevent, type,
    member_event : list_event > event > $o).
thf(sy_c_List_Omember_001t__Message__Oagent, type,
    member_agent : list_agent > agent > $o).
thf(sy_c_List_Omember_001t__Message__Omsg, type,
    member_msg : list_msg > msg > $o).
thf(sy_c_List_Orev_001t__Event__Oevent, type,
    rev_event : list_event > list_event).
thf(sy_c_Message_Oagent_OFriend, type,
    friend : nat > agent).
thf(sy_c_Message_Oagent_OServer, type,
    server : agent).
thf(sy_c_Message_Oagent_OSpy, type,
    spy : agent).
thf(sy_c_Message_Oanalz, type,
    analz : set_msg > set_msg).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Event__Oevent_J, type,
    ord_le152226328_event : set_event > set_event > $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_Set_OCollect_001t__Event__Oevent, type,
    collect_event : (event > $o) > set_event).
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__Event__Oevent, type,
    insert_event2 : event > set_event > set_event).
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_msg2 : msg > set_msg > set_msg).
thf(sy_c_member_001t__Event__Oevent, type,
    member_event2 : event > set_event > $o).
thf(sy_c_member_001t__Message__Oagent, type,
    member_agent2 : agent > set_agent > $o).
thf(sy_c_member_001t__Message__Omsg, type,
    member_msg2 : msg > set_msg > $o).
thf(sy_v_evs, type,
    evs : list_event).

% Relevant facts (188)
thf(fact_0_rev__rev__ident, axiom,
    ((![Xs : list_event]: ((rev_event @ (rev_event @ Xs)) = Xs)))). % rev_rev_ident
thf(fact_1_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_2_rev__swap, axiom,
    ((![Xs : list_event, Ys : list_event]: (((rev_event @ Xs) = Ys) = (Xs = (rev_event @ Ys)))))). % rev_swap
thf(fact_3_analz__impI, axiom,
    ((![Y : msg, Evs : list_event, Q : $o]: (((~ ((member_msg2 @ Y @ (analz @ (knows @ spy @ Evs))))) => Q) => ((~ ((member_msg2 @ Y @ (analz @ (knows @ spy @ Evs))))) => Q))))). % analz_impI
thf(fact_4_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_5_Spy__in__bad, axiom,
    ((member_agent2 @ spy @ bad))). % Spy_in_bad
thf(fact_6_knows__Spy__Gets, axiom,
    ((![A : agent, X : msg, Evs : list_event]: ((knows @ spy @ (cons_event @ (gets @ A @ X) @ Evs)) = (knows @ spy @ Evs))))). % knows_Spy_Gets
thf(fact_7_distinct__adj__rev, axiom,
    ((![Xs : list_event]: ((distinct_adj_event @ (rev_event @ Xs)) = (distinct_adj_event @ Xs))))). % distinct_adj_rev
thf(fact_8_agent_Odistinct_I5_J, axiom,
    ((![X2 : nat]: (~ (((friend @ X2) = spy)))))). % agent.distinct(5)
thf(fact_9_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_10_analz__idem, axiom,
    ((![H : set_msg]: ((analz @ (analz @ H)) = (analz @ H))))). % analz_idem
thf(fact_11_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_12_agent_Oinject, axiom,
    ((![X2 : nat, Y2 : nat]: (((friend @ X2) = (friend @ Y2)) = (X2 = Y2))))). % agent.inject
thf(fact_13_distinct__adj__Cons__Cons, axiom,
    ((![X3 : event, Y3 : event, Xs : list_event]: ((distinct_adj_event @ (cons_event @ X3 @ (cons_event @ Y3 @ Xs))) = (((~ ((X3 = Y3)))) & ((distinct_adj_event @ (cons_event @ Y3 @ Xs)))))))). % distinct_adj_Cons_Cons
thf(fact_14_list__ex__simps_I1_J, axiom,
    ((![P : event > $o, X3 : event, Xs : list_event]: ((list_ex_event @ P @ (cons_event @ X3 @ Xs)) = (((P @ X3)) | ((list_ex_event @ P @ Xs))))))). % list_ex_simps(1)
thf(fact_15_analz_OInj, axiom,
    ((![X : msg, H : set_msg]: ((member_msg2 @ X @ H) => (member_msg2 @ X @ (analz @ H)))))). % analz.Inj
thf(fact_16_not__Cons__self2, axiom,
    ((![X3 : event, Xs : list_event]: (~ (((cons_event @ X3 @ Xs) = Xs)))))). % not_Cons_self2
thf(fact_17_analz__analzD, axiom,
    ((![X : msg, H : set_msg]: ((member_msg2 @ X @ (analz @ (analz @ H))) => (member_msg2 @ X @ (analz @ H)))))). % analz_analzD
thf(fact_18_distinct__adj__ConsD, axiom,
    ((![X3 : event, Xs : list_event]: ((distinct_adj_event @ (cons_event @ X3 @ Xs)) => (distinct_adj_event @ Xs))))). % distinct_adj_ConsD
thf(fact_19_analz__mono__contra_I3_J, axiom,
    ((![C : msg, A : agent, X : msg, Evs : list_event]: ((~ ((member_msg2 @ C @ (analz @ (knows @ spy @ (cons_event @ (gets @ A @ X) @ Evs)))))) => (~ ((member_msg2 @ C @ (analz @ (knows @ spy @ Evs))))))))). % analz_mono_contra(3)
thf(fact_20_analz__mono__contra_I2_J, axiom,
    ((![C : msg, A : agent, X : msg, Evs : list_event]: ((~ ((member_msg2 @ C @ (analz @ (knows @ spy @ (cons_event @ (notes @ A @ X) @ Evs)))))) => (~ ((member_msg2 @ C @ (analz @ (knows @ spy @ Evs))))))))). % analz_mono_contra(2)
thf(fact_21_knows__Spy__subset__knows__Spy__Gets, axiom,
    ((![Evs : list_event, A : agent, X : msg]: (ord_less_eq_set_msg @ (knows @ spy @ Evs) @ (knows @ spy @ (cons_event @ (gets @ A @ X) @ Evs)))))). % knows_Spy_subset_knows_Spy_Gets
thf(fact_22_analz__mono__contra_I1_J, axiom,
    ((![C : msg, A : agent, B : agent, X : msg, Evs : list_event]: ((~ ((member_msg2 @ C @ (analz @ (knows @ spy @ (cons_event @ (says @ A @ B @ X) @ Evs)))))) => (~ ((member_msg2 @ C @ (analz @ (knows @ spy @ Evs))))))))). % analz_mono_contra(1)
thf(fact_23_knows__subset__knows__Gets, axiom,
    ((![A : agent, Evs : list_event, A2 : agent, X : msg]: (ord_less_eq_set_msg @ (knows @ A @ Evs) @ (knows @ A @ (cons_event @ (gets @ A2 @ X) @ Evs)))))). % knows_subset_knows_Gets
thf(fact_24_Gets__imp__knows__agents, axiom,
    ((![A : agent, X : msg, Evs : list_event]: ((~ ((A = spy))) => ((member_event2 @ (gets @ A @ X) @ (set_event2 @ Evs)) => (member_msg2 @ X @ (knows @ A @ Evs))))))). % Gets_imp_knows_agents
thf(fact_25_used__Gets, axiom,
    ((![A : agent, X : msg, Evs : list_event]: ((used @ (cons_event @ (gets @ A @ X) @ Evs)) = (used @ Evs))))). % used_Gets
thf(fact_26_member__rec_I1_J, axiom,
    ((![X3 : event, Xs : list_event, Y3 : event]: ((member_event @ (cons_event @ X3 @ Xs) @ Y3) = (((X3 = Y3)) | ((member_event @ Xs @ Y3))))))). % member_rec(1)
thf(fact_27_agent_Oexhaust, axiom,
    ((![Y3 : agent]: ((~ ((Y3 = server))) => ((![X23 : nat]: (~ ((Y3 = (friend @ X23))))) => (Y3 = spy)))))). % agent.exhaust
thf(fact_28_agent_Oinduct, axiom,
    ((![P : agent > $o, Agent : agent]: ((P @ server) => ((![X4 : nat]: (P @ (friend @ X4))) => ((P @ spy) => (P @ Agent))))))). % agent.induct
thf(fact_29_event_Oinject_I1_J, axiom,
    ((![X11 : agent, X12 : agent, X13 : msg, Y11 : agent, Y12 : agent, Y13 : msg]: (((says @ X11 @ X12 @ X13) = (says @ Y11 @ Y12 @ Y13)) = (((X11 = Y11)) & ((((X12 = Y12)) & ((X13 = Y13))))))))). % event.inject(1)
thf(fact_30_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_31_set__rev, axiom,
    ((![Xs : list_event]: ((set_event2 @ (rev_event @ Xs)) = (set_event2 @ Xs))))). % set_rev
thf(fact_32_analz__subset__iff, axiom,
    ((![G : set_msg, H : set_msg]: ((ord_less_eq_set_msg @ (analz @ G) @ (analz @ H)) = (ord_less_eq_set_msg @ G @ (analz @ H)))))). % analz_subset_iff
thf(fact_33_subset__code_I1_J, axiom,
    ((![Xs : list_agent, B : set_agent]: ((ord_le722097072_agent @ (set_agent2 @ Xs) @ B) = (![X5 : agent]: (((member_agent2 @ X5 @ (set_agent2 @ Xs))) => ((member_agent2 @ X5 @ B)))))))). % subset_code(1)
thf(fact_34_subset__code_I1_J, axiom,
    ((![Xs : list_event, B : set_event]: ((ord_le152226328_event @ (set_event2 @ Xs) @ B) = (![X5 : event]: (((member_event2 @ X5 @ (set_event2 @ Xs))) => ((member_event2 @ X5 @ B)))))))). % subset_code(1)
thf(fact_35_subset__code_I1_J, axiom,
    ((![Xs : list_msg, B : set_msg]: ((ord_less_eq_set_msg @ (set_msg2 @ Xs) @ B) = (![X5 : msg]: (((member_msg2 @ X5 @ (set_msg2 @ Xs))) => ((member_msg2 @ X5 @ B)))))))). % subset_code(1)
thf(fact_36_event_Odistinct_I3_J, axiom,
    ((![X11 : agent, X12 : agent, X13 : msg, X31 : agent, X32 : msg]: (~ (((says @ X11 @ X12 @ X13) = (notes @ X31 @ X32))))))). % event.distinct(3)
thf(fact_37_in__set__member, axiom,
    ((![X3 : msg, Xs : list_msg]: ((member_msg2 @ X3 @ (set_msg2 @ Xs)) = (member_msg @ Xs @ X3))))). % in_set_member
thf(fact_38_in__set__member, axiom,
    ((![X3 : agent, Xs : list_agent]: ((member_agent2 @ X3 @ (set_agent2 @ Xs)) = (member_agent @ Xs @ X3))))). % in_set_member
thf(fact_39_in__set__member, axiom,
    ((![X3 : event, Xs : list_event]: ((member_event2 @ X3 @ (set_event2 @ Xs)) = (member_event @ Xs @ X3))))). % in_set_member
thf(fact_40_Says__imp__used, axiom,
    ((![A : agent, B : agent, X : msg, Evs : list_event]: ((member_event2 @ (says @ A @ B @ X) @ (set_event2 @ Evs)) => (member_msg2 @ X @ (used @ Evs)))))). % Says_imp_used
thf(fact_41_mem__Collect__eq, axiom,
    ((![A3 : msg, P : msg > $o]: ((member_msg2 @ A3 @ (collect_msg @ P)) = (P @ A3))))). % mem_Collect_eq
thf(fact_42_mem__Collect__eq, axiom,
    ((![A3 : agent, P : agent > $o]: ((member_agent2 @ A3 @ (collect_agent @ P)) = (P @ A3))))). % mem_Collect_eq
thf(fact_43_mem__Collect__eq, axiom,
    ((![A3 : event, P : event > $o]: ((member_event2 @ A3 @ (collect_event @ P)) = (P @ A3))))). % mem_Collect_eq
thf(fact_44_Collect__mem__eq, axiom,
    ((![A : set_msg]: ((collect_msg @ (^[X5 : msg]: (member_msg2 @ X5 @ A))) = A)))). % Collect_mem_eq
thf(fact_45_Collect__mem__eq, axiom,
    ((![A : set_agent]: ((collect_agent @ (^[X5 : agent]: (member_agent2 @ X5 @ A))) = A)))). % Collect_mem_eq
thf(fact_46_Collect__mem__eq, axiom,
    ((![A : set_event]: ((collect_event @ (^[X5 : event]: (member_event2 @ X5 @ A))) = A)))). % Collect_mem_eq
thf(fact_47_Notes__imp__used, axiom,
    ((![A : agent, X : msg, Evs : list_event]: ((member_event2 @ (notes @ A @ X) @ (set_event2 @ Evs)) => (member_msg2 @ X @ (used @ Evs)))))). % Notes_imp_used
thf(fact_48_set__subset__Cons, axiom,
    ((![Xs : list_event, X3 : event]: (ord_le152226328_event @ (set_event2 @ Xs) @ (set_event2 @ (cons_event @ X3 @ Xs)))))). % set_subset_Cons
thf(fact_49_set__subset__Cons, axiom,
    ((![Xs : list_msg, X3 : msg]: (ord_less_eq_set_msg @ (set_msg2 @ Xs) @ (set_msg2 @ (cons_msg @ X3 @ Xs)))))). % set_subset_Cons
thf(fact_50_Says__imp__knows, axiom,
    ((![A : agent, B : agent, X : msg, Evs : list_event]: ((member_event2 @ (says @ A @ B @ X) @ (set_event2 @ Evs)) => (member_msg2 @ X @ (knows @ A @ Evs)))))). % Says_imp_knows
thf(fact_51_Notes__imp__knows, axiom,
    ((![A : agent, X : msg, Evs : list_event]: ((member_event2 @ (notes @ A @ X) @ (set_event2 @ Evs)) => (member_msg2 @ X @ (knows @ A @ Evs)))))). % Notes_imp_knows
thf(fact_52_event_Oexhaust, axiom,
    ((![Y3 : event]: ((![X112 : agent, X122 : agent, X132 : msg]: (~ ((Y3 = (says @ X112 @ X122 @ X132))))) => ((![X212 : agent, X222 : msg]: (~ ((Y3 = (gets @ X212 @ X222))))) => (~ ((![X312 : agent, X322 : msg]: (~ ((Y3 = (notes @ X312 @ X322)))))))))))). % event.exhaust
thf(fact_53_event_Oinduct, axiom,
    ((![P : event > $o, Event : event]: ((![X1 : agent, X23 : agent, X33 : msg]: (P @ (says @ X1 @ X23 @ X33))) => ((![X1 : agent, X23 : msg]: (P @ (gets @ X1 @ X23))) => ((![X1 : agent, X23 : msg]: (P @ (notes @ X1 @ X23))) => (P @ Event))))))). % event.induct
thf(fact_54_Says__imp__knows__Spy, axiom,
    ((![A : agent, B : agent, X : msg, Evs : list_event]: ((member_event2 @ (says @ A @ B @ X) @ (set_event2 @ Evs)) => (member_msg2 @ X @ (knows @ spy @ Evs)))))). % Says_imp_knows_Spy
thf(fact_55_knows__subset__knows__Says, axiom,
    ((![A : agent, Evs : list_event, A2 : agent, B : agent, X : msg]: (ord_less_eq_set_msg @ (knows @ A @ Evs) @ (knows @ A @ (cons_event @ (says @ A2 @ B @ X) @ Evs)))))). % knows_subset_knows_Says
thf(fact_56_list_Oset__cases, axiom,
    ((![E : msg, A3 : list_msg]: ((member_msg2 @ E @ (set_msg2 @ A3)) => ((![Z2 : list_msg]: (~ ((A3 = (cons_msg @ E @ Z2))))) => (~ ((![Z1 : msg, Z2 : list_msg]: ((A3 = (cons_msg @ Z1 @ Z2)) => (~ ((member_msg2 @ E @ (set_msg2 @ Z2))))))))))))). % list.set_cases
thf(fact_57_list_Oset__cases, axiom,
    ((![E : agent, A3 : list_agent]: ((member_agent2 @ E @ (set_agent2 @ A3)) => ((![Z2 : list_agent]: (~ ((A3 = (cons_agent @ E @ Z2))))) => (~ ((![Z1 : agent, Z2 : list_agent]: ((A3 = (cons_agent @ Z1 @ Z2)) => (~ ((member_agent2 @ E @ (set_agent2 @ Z2))))))))))))). % list.set_cases
thf(fact_58_list_Oset__cases, axiom,
    ((![E : event, A3 : list_event]: ((member_event2 @ E @ (set_event2 @ A3)) => ((![Z2 : list_event]: (~ ((A3 = (cons_event @ E @ Z2))))) => (~ ((![Z1 : event, Z2 : list_event]: ((A3 = (cons_event @ Z1 @ Z2)) => (~ ((member_event2 @ E @ (set_event2 @ Z2))))))))))))). % list.set_cases
thf(fact_59_set__ConsD, axiom,
    ((![Y3 : msg, X3 : msg, Xs : list_msg]: ((member_msg2 @ Y3 @ (set_msg2 @ (cons_msg @ X3 @ Xs))) => ((Y3 = X3) | (member_msg2 @ Y3 @ (set_msg2 @ Xs))))))). % set_ConsD
thf(fact_60_set__ConsD, axiom,
    ((![Y3 : agent, X3 : agent, Xs : list_agent]: ((member_agent2 @ Y3 @ (set_agent2 @ (cons_agent @ X3 @ Xs))) => ((Y3 = X3) | (member_agent2 @ Y3 @ (set_agent2 @ Xs))))))). % set_ConsD
thf(fact_61_set__ConsD, axiom,
    ((![Y3 : event, X3 : event, Xs : list_event]: ((member_event2 @ Y3 @ (set_event2 @ (cons_event @ X3 @ Xs))) => ((Y3 = X3) | (member_event2 @ Y3 @ (set_event2 @ Xs))))))). % set_ConsD
thf(fact_62_list_Oset__intros_I1_J, axiom,
    ((![X21 : msg, X22 : list_msg]: (member_msg2 @ X21 @ (set_msg2 @ (cons_msg @ X21 @ X22)))))). % list.set_intros(1)
thf(fact_63_list_Oset__intros_I1_J, axiom,
    ((![X21 : agent, X22 : list_agent]: (member_agent2 @ X21 @ (set_agent2 @ (cons_agent @ X21 @ X22)))))). % list.set_intros(1)
thf(fact_64_list_Oset__intros_I1_J, axiom,
    ((![X21 : event, X22 : list_event]: (member_event2 @ X21 @ (set_event2 @ (cons_event @ X21 @ X22)))))). % list.set_intros(1)
thf(fact_65_list_Oset__intros_I2_J, axiom,
    ((![Y3 : msg, X22 : list_msg, X21 : msg]: ((member_msg2 @ Y3 @ (set_msg2 @ X22)) => (member_msg2 @ Y3 @ (set_msg2 @ (cons_msg @ X21 @ X22))))))). % list.set_intros(2)
thf(fact_66_list_Oset__intros_I2_J, axiom,
    ((![Y3 : agent, X22 : list_agent, X21 : agent]: ((member_agent2 @ Y3 @ (set_agent2 @ X22)) => (member_agent2 @ Y3 @ (set_agent2 @ (cons_agent @ X21 @ X22))))))). % list.set_intros(2)
thf(fact_67_list_Oset__intros_I2_J, axiom,
    ((![Y3 : event, X22 : list_event, X21 : event]: ((member_event2 @ Y3 @ (set_event2 @ X22)) => (member_event2 @ Y3 @ (set_event2 @ (cons_event @ X21 @ X22))))))). % list.set_intros(2)
thf(fact_68_analz__increasing, axiom,
    ((![H : set_msg]: (ord_less_eq_set_msg @ H @ (analz @ H))))). % analz_increasing
thf(fact_69_analz__trans, axiom,
    ((![X : msg, G : set_msg, H : set_msg]: ((member_msg2 @ X @ (analz @ G)) => ((ord_less_eq_set_msg @ G @ (analz @ H)) => (member_msg2 @ X @ (analz @ H))))))). % analz_trans
thf(fact_70_analz__mono, axiom,
    ((![G : set_msg, H : set_msg]: ((ord_less_eq_set_msg @ G @ H) => (ord_less_eq_set_msg @ (analz @ G) @ (analz @ H)))))). % analz_mono
thf(fact_71_knows__subset__knows__Notes, axiom,
    ((![A : agent, Evs : list_event, A2 : agent, X : msg]: (ord_less_eq_set_msg @ (knows @ A @ Evs) @ (knows @ A @ (cons_event @ (notes @ A2 @ X) @ Evs)))))). % knows_subset_knows_Notes
thf(fact_72_event_Odistinct_I1_J, axiom,
    ((![X11 : agent, X12 : agent, X13 : msg, X21 : agent, X22 : msg]: (~ (((says @ X11 @ X12 @ X13) = (gets @ X21 @ X22))))))). % event.distinct(1)
thf(fact_73_list__ex__cong, axiom,
    ((![Xs : list_msg, Ys : list_msg, F : msg > $o, G2 : msg > $o]: ((Xs = Ys) => ((![X4 : msg]: ((member_msg2 @ X4 @ (set_msg2 @ Ys)) => ((F @ X4) = (G2 @ X4)))) => ((list_ex_msg @ F @ Xs) = (list_ex_msg @ G2 @ Ys))))))). % list_ex_cong
thf(fact_74_list__ex__cong, axiom,
    ((![Xs : list_agent, Ys : list_agent, F : agent > $o, G2 : agent > $o]: ((Xs = Ys) => ((![X4 : agent]: ((member_agent2 @ X4 @ (set_agent2 @ Ys)) => ((F @ X4) = (G2 @ X4)))) => ((list_ex_agent @ F @ Xs) = (list_ex_agent @ G2 @ Ys))))))). % list_ex_cong
thf(fact_75_list__ex__cong, axiom,
    ((![Xs : list_event, Ys : list_event, F : event > $o, G2 : event > $o]: ((Xs = Ys) => ((![X4 : event]: ((member_event2 @ X4 @ (set_event2 @ Ys)) => ((F @ X4) = (G2 @ X4)))) => ((list_ex_event @ F @ Xs) = (list_ex_event @ G2 @ Ys))))))). % list_ex_cong
thf(fact_76_Says__imp__analz__Spy, axiom,
    ((![A : agent, B : agent, X : msg, Evs : list_event]: ((member_event2 @ (says @ A @ B @ X) @ (set_event2 @ Evs)) => (member_msg2 @ X @ (analz @ (knows @ spy @ Evs))))))). % Says_imp_analz_Spy
thf(fact_77_agent_Odistinct_I3_J, axiom,
    ((~ ((server = spy))))). % agent.distinct(3)
thf(fact_78_knows__Spy__subset__knows__Spy__Says, axiom,
    ((![Evs : list_event, A : agent, B : agent, X : msg]: (ord_less_eq_set_msg @ (knows @ spy @ Evs) @ (knows @ spy @ (cons_event @ (says @ A @ B @ X) @ Evs)))))). % knows_Spy_subset_knows_Spy_Says
thf(fact_79_Server__not__bad, axiom,
    ((~ ((member_agent2 @ server @ bad))))). % Server_not_bad
thf(fact_80_agent_Odistinct_I1_J, axiom,
    ((![X2 : nat]: (~ ((server = (friend @ X2))))))). % agent.distinct(1)
thf(fact_81_event_Odistinct_I5_J, axiom,
    ((![X21 : agent, X22 : msg, X31 : agent, X32 : msg]: (~ (((gets @ X21 @ X22) = (notes @ X31 @ X32))))))). % event.distinct(5)
thf(fact_82_Notes__imp__knows__Spy, axiom,
    ((![A : agent, X : msg, Evs : list_event]: ((member_event2 @ (notes @ A @ X) @ (set_event2 @ Evs)) => ((member_agent2 @ A @ bad) => (member_msg2 @ X @ (knows @ spy @ Evs))))))). % Notes_imp_knows_Spy
thf(fact_83_knows__Spy__subset__knows__Spy__Notes, axiom,
    ((![Evs : list_event, A : agent, X : msg]: (ord_less_eq_set_msg @ (knows @ spy @ Evs) @ (knows @ spy @ (cons_event @ (notes @ A @ X) @ Evs)))))). % knows_Spy_subset_knows_Spy_Notes
thf(fact_84_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_85_knows__imp__Says__Gets__Notes__initState, axiom,
    ((![X : msg, A : agent, Evs : list_event]: ((member_msg2 @ X @ (knows @ A @ Evs)) => ((~ ((A = spy))) => (?[B2 : agent]: ((member_event2 @ (says @ A @ B2 @ X) @ (set_event2 @ Evs)) | ((member_event2 @ (gets @ A @ X) @ (set_event2 @ Evs)) | ((member_event2 @ (notes @ A @ X) @ (set_event2 @ Evs)) | (member_msg2 @ X @ (initState @ A))))))))))). % knows_imp_Says_Gets_Notes_initState
thf(fact_86_knows__Spy__imp__Says__Notes__initState, axiom,
    ((![X : msg, Evs : list_event]: ((member_msg2 @ X @ (knows @ spy @ Evs)) => (?[A4 : agent, B2 : agent]: ((member_event2 @ (says @ A4 @ B2 @ X) @ (set_event2 @ Evs)) | ((member_event2 @ (notes @ A4 @ X) @ (set_event2 @ Evs)) | (member_msg2 @ X @ (initState @ spy))))))))). % knows_Spy_imp_Says_Notes_initState
thf(fact_87_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_88_subsetI, axiom,
    ((![A : set_agent, B : set_agent]: ((![X4 : agent]: ((member_agent2 @ X4 @ A) => (member_agent2 @ X4 @ B))) => (ord_le722097072_agent @ A @ B))))). % subsetI
thf(fact_89_subsetI, axiom,
    ((![A : set_event, B : set_event]: ((![X4 : event]: ((member_event2 @ X4 @ A) => (member_event2 @ X4 @ B))) => (ord_le152226328_event @ A @ B))))). % subsetI
thf(fact_90_subsetI, axiom,
    ((![A : set_msg, B : set_msg]: ((![X4 : msg]: ((member_msg2 @ X4 @ A) => (member_msg2 @ X4 @ B))) => (ord_less_eq_set_msg @ A @ B))))). % subsetI
thf(fact_91_order__refl, axiom,
    ((![X3 : set_msg]: (ord_less_eq_set_msg @ X3 @ X3)))). % order_refl
thf(fact_92_knows__Spy__Notes, axiom,
    ((![A : agent, X : msg, Evs : list_event]: (((member_agent2 @ A @ bad) => ((knows @ spy @ (cons_event @ (notes @ A @ X) @ Evs)) = (insert_msg2 @ X @ (knows @ spy @ Evs)))) & ((~ ((member_agent2 @ A @ bad))) => ((knows @ spy @ (cons_event @ (notes @ A @ X) @ Evs)) = (knows @ spy @ Evs))))))). % knows_Spy_Notes
thf(fact_93_knows__Spy__Says, axiom,
    ((![A : agent, B : agent, X : msg, Evs : list_event]: ((knows @ spy @ (cons_event @ (says @ A @ B @ X) @ Evs)) = (insert_msg2 @ X @ (knows @ spy @ Evs)))))). % knows_Spy_Says
thf(fact_94_insertCI, axiom,
    ((![A3 : msg, B : set_msg, B3 : msg]: (((~ ((member_msg2 @ A3 @ B))) => (A3 = B3)) => (member_msg2 @ A3 @ (insert_msg2 @ B3 @ B)))))). % insertCI
thf(fact_95_insertCI, axiom,
    ((![A3 : agent, B : set_agent, B3 : agent]: (((~ ((member_agent2 @ A3 @ B))) => (A3 = B3)) => (member_agent2 @ A3 @ (insert_agent @ B3 @ B)))))). % insertCI
thf(fact_96_insertCI, axiom,
    ((![A3 : event, B : set_event, B3 : event]: (((~ ((member_event2 @ A3 @ B))) => (A3 = B3)) => (member_event2 @ A3 @ (insert_event2 @ B3 @ B)))))). % insertCI
thf(fact_97_insert__iff, axiom,
    ((![A3 : msg, B3 : msg, A : set_msg]: ((member_msg2 @ A3 @ (insert_msg2 @ B3 @ A)) = (((A3 = B3)) | ((member_msg2 @ A3 @ A))))))). % insert_iff
thf(fact_98_insert__iff, axiom,
    ((![A3 : agent, B3 : agent, A : set_agent]: ((member_agent2 @ A3 @ (insert_agent @ B3 @ A)) = (((A3 = B3)) | ((member_agent2 @ A3 @ A))))))). % insert_iff
thf(fact_99_insert__iff, axiom,
    ((![A3 : event, B3 : event, A : set_event]: ((member_event2 @ A3 @ (insert_event2 @ B3 @ A)) = (((A3 = B3)) | ((member_event2 @ A3 @ A))))))). % insert_iff
thf(fact_100_insert__absorb2, axiom,
    ((![X3 : msg, A : set_msg]: ((insert_msg2 @ X3 @ (insert_msg2 @ X3 @ A)) = (insert_msg2 @ X3 @ A))))). % insert_absorb2
thf(fact_101_insert__subset, axiom,
    ((![X3 : agent, A : set_agent, B : set_agent]: ((ord_le722097072_agent @ (insert_agent @ X3 @ A) @ B) = (((member_agent2 @ X3 @ B)) & ((ord_le722097072_agent @ A @ B))))))). % insert_subset
thf(fact_102_insert__subset, axiom,
    ((![X3 : event, A : set_event, B : set_event]: ((ord_le152226328_event @ (insert_event2 @ X3 @ A) @ B) = (((member_event2 @ X3 @ B)) & ((ord_le152226328_event @ A @ B))))))). % insert_subset
thf(fact_103_insert__subset, axiom,
    ((![X3 : msg, A : set_msg, B : set_msg]: ((ord_less_eq_set_msg @ (insert_msg2 @ X3 @ A) @ B) = (((member_msg2 @ X3 @ B)) & ((ord_less_eq_set_msg @ A @ B))))))). % insert_subset
thf(fact_104_list_Osimps_I15_J, axiom,
    ((![X21 : msg, X22 : list_msg]: ((set_msg2 @ (cons_msg @ X21 @ X22)) = (insert_msg2 @ X21 @ (set_msg2 @ X22)))))). % list.simps(15)
thf(fact_105_list_Osimps_I15_J, axiom,
    ((![X21 : event, X22 : list_event]: ((set_event2 @ (cons_event @ X21 @ X22)) = (insert_event2 @ X21 @ (set_event2 @ X22)))))). % list.simps(15)
thf(fact_106_subset__insertI2, axiom,
    ((![A : set_msg, B : set_msg, B3 : msg]: ((ord_less_eq_set_msg @ A @ B) => (ord_less_eq_set_msg @ A @ (insert_msg2 @ B3 @ B)))))). % subset_insertI2
thf(fact_107_subset__insertI, axiom,
    ((![B : set_msg, A3 : msg]: (ord_less_eq_set_msg @ B @ (insert_msg2 @ A3 @ B))))). % subset_insertI
thf(fact_108_subset__insert, axiom,
    ((![X3 : agent, A : set_agent, B : set_agent]: ((~ ((member_agent2 @ X3 @ A))) => ((ord_le722097072_agent @ A @ (insert_agent @ X3 @ B)) = (ord_le722097072_agent @ A @ B)))))). % subset_insert
thf(fact_109_subset__insert, axiom,
    ((![X3 : event, A : set_event, B : set_event]: ((~ ((member_event2 @ X3 @ A))) => ((ord_le152226328_event @ A @ (insert_event2 @ X3 @ B)) = (ord_le152226328_event @ A @ B)))))). % subset_insert
thf(fact_110_subset__insert, axiom,
    ((![X3 : msg, A : set_msg, B : set_msg]: ((~ ((member_msg2 @ X3 @ A))) => ((ord_less_eq_set_msg @ A @ (insert_msg2 @ X3 @ B)) = (ord_less_eq_set_msg @ A @ B)))))). % subset_insert
thf(fact_111_insert__mono, axiom,
    ((![C2 : set_msg, D : set_msg, A3 : msg]: ((ord_less_eq_set_msg @ C2 @ D) => (ord_less_eq_set_msg @ (insert_msg2 @ A3 @ C2) @ (insert_msg2 @ A3 @ D)))))). % insert_mono
thf(fact_112_insertE, axiom,
    ((![A3 : msg, B3 : msg, A : set_msg]: ((member_msg2 @ A3 @ (insert_msg2 @ B3 @ A)) => ((~ ((A3 = B3))) => (member_msg2 @ A3 @ A)))))). % insertE
thf(fact_113_insertE, axiom,
    ((![A3 : agent, B3 : agent, A : set_agent]: ((member_agent2 @ A3 @ (insert_agent @ B3 @ A)) => ((~ ((A3 = B3))) => (member_agent2 @ A3 @ A)))))). % insertE
thf(fact_114_insertE, axiom,
    ((![A3 : event, B3 : event, A : set_event]: ((member_event2 @ A3 @ (insert_event2 @ B3 @ A)) => ((~ ((A3 = B3))) => (member_event2 @ A3 @ A)))))). % insertE
thf(fact_115_insertI1, axiom,
    ((![A3 : msg, B : set_msg]: (member_msg2 @ A3 @ (insert_msg2 @ A3 @ B))))). % insertI1
thf(fact_116_insertI1, axiom,
    ((![A3 : agent, B : set_agent]: (member_agent2 @ A3 @ (insert_agent @ A3 @ B))))). % insertI1
thf(fact_117_insertI1, axiom,
    ((![A3 : event, B : set_event]: (member_event2 @ A3 @ (insert_event2 @ A3 @ B))))). % insertI1
thf(fact_118_insertI2, axiom,
    ((![A3 : msg, B : set_msg, B3 : msg]: ((member_msg2 @ A3 @ B) => (member_msg2 @ A3 @ (insert_msg2 @ B3 @ B)))))). % insertI2
thf(fact_119_insertI2, axiom,
    ((![A3 : agent, B : set_agent, B3 : agent]: ((member_agent2 @ A3 @ B) => (member_agent2 @ A3 @ (insert_agent @ B3 @ B)))))). % insertI2
thf(fact_120_insertI2, axiom,
    ((![A3 : event, B : set_event, B3 : event]: ((member_event2 @ A3 @ B) => (member_event2 @ A3 @ (insert_event2 @ B3 @ B)))))). % insertI2
thf(fact_121_Set_Oset__insert, axiom,
    ((![X3 : msg, A : set_msg]: ((member_msg2 @ X3 @ A) => (~ ((![B2 : set_msg]: ((A = (insert_msg2 @ X3 @ B2)) => (member_msg2 @ X3 @ B2))))))))). % Set.set_insert
thf(fact_122_Set_Oset__insert, axiom,
    ((![X3 : agent, A : set_agent]: ((member_agent2 @ X3 @ A) => (~ ((![B2 : set_agent]: ((A = (insert_agent @ X3 @ B2)) => (member_agent2 @ X3 @ B2))))))))). % Set.set_insert
thf(fact_123_Set_Oset__insert, axiom,
    ((![X3 : event, A : set_event]: ((member_event2 @ X3 @ A) => (~ ((![B2 : set_event]: ((A = (insert_event2 @ X3 @ B2)) => (member_event2 @ X3 @ B2))))))))). % Set.set_insert
thf(fact_124_insert__ident, axiom,
    ((![X3 : msg, A : set_msg, B : set_msg]: ((~ ((member_msg2 @ X3 @ A))) => ((~ ((member_msg2 @ X3 @ B))) => (((insert_msg2 @ X3 @ A) = (insert_msg2 @ X3 @ B)) = (A = B))))))). % insert_ident
thf(fact_125_insert__ident, axiom,
    ((![X3 : agent, A : set_agent, B : set_agent]: ((~ ((member_agent2 @ X3 @ A))) => ((~ ((member_agent2 @ X3 @ B))) => (((insert_agent @ X3 @ A) = (insert_agent @ X3 @ B)) = (A = B))))))). % insert_ident
thf(fact_126_insert__ident, axiom,
    ((![X3 : event, A : set_event, B : set_event]: ((~ ((member_event2 @ X3 @ A))) => ((~ ((member_event2 @ X3 @ B))) => (((insert_event2 @ X3 @ A) = (insert_event2 @ X3 @ B)) = (A = B))))))). % insert_ident
thf(fact_127_insert__absorb, axiom,
    ((![A3 : msg, A : set_msg]: ((member_msg2 @ A3 @ A) => ((insert_msg2 @ A3 @ A) = A))))). % insert_absorb
thf(fact_128_insert__absorb, axiom,
    ((![A3 : agent, A : set_agent]: ((member_agent2 @ A3 @ A) => ((insert_agent @ A3 @ A) = A))))). % insert_absorb
thf(fact_129_insert__absorb, axiom,
    ((![A3 : event, A : set_event]: ((member_event2 @ A3 @ A) => ((insert_event2 @ A3 @ A) = A))))). % insert_absorb
thf(fact_130_insert__eq__iff, axiom,
    ((![A3 : msg, A : set_msg, B3 : msg, B : set_msg]: ((~ ((member_msg2 @ A3 @ A))) => ((~ ((member_msg2 @ B3 @ B))) => (((insert_msg2 @ A3 @ A) = (insert_msg2 @ B3 @ B)) = (((((A3 = B3)) => ((A = B)))) & ((((~ ((A3 = B3)))) => ((?[C3 : set_msg]: (((A = (insert_msg2 @ B3 @ C3))) & ((((~ ((member_msg2 @ B3 @ C3)))) & ((((B = (insert_msg2 @ A3 @ C3))) & ((~ ((member_msg2 @ A3 @ C3)))))))))))))))))))). % insert_eq_iff
thf(fact_131_insert__eq__iff, axiom,
    ((![A3 : agent, A : set_agent, B3 : agent, B : set_agent]: ((~ ((member_agent2 @ A3 @ A))) => ((~ ((member_agent2 @ B3 @ B))) => (((insert_agent @ A3 @ A) = (insert_agent @ B3 @ B)) = (((((A3 = B3)) => ((A = B)))) & ((((~ ((A3 = B3)))) => ((?[C3 : set_agent]: (((A = (insert_agent @ B3 @ C3))) & ((((~ ((member_agent2 @ B3 @ C3)))) & ((((B = (insert_agent @ A3 @ C3))) & ((~ ((member_agent2 @ A3 @ C3)))))))))))))))))))). % insert_eq_iff
thf(fact_132_insert__eq__iff, axiom,
    ((![A3 : event, A : set_event, B3 : event, B : set_event]: ((~ ((member_event2 @ A3 @ A))) => ((~ ((member_event2 @ B3 @ B))) => (((insert_event2 @ A3 @ A) = (insert_event2 @ B3 @ B)) = (((((A3 = B3)) => ((A = B)))) & ((((~ ((A3 = B3)))) => ((?[C3 : set_event]: (((A = (insert_event2 @ B3 @ C3))) & ((((~ ((member_event2 @ B3 @ C3)))) & ((((B = (insert_event2 @ A3 @ C3))) & ((~ ((member_event2 @ A3 @ C3)))))))))))))))))))). % insert_eq_iff
thf(fact_133_insert__commute, axiom,
    ((![X3 : msg, Y3 : msg, A : set_msg]: ((insert_msg2 @ X3 @ (insert_msg2 @ Y3 @ A)) = (insert_msg2 @ Y3 @ (insert_msg2 @ X3 @ A)))))). % insert_commute
thf(fact_134_mk__disjoint__insert, axiom,
    ((![A3 : msg, A : set_msg]: ((member_msg2 @ A3 @ A) => (?[B2 : set_msg]: ((A = (insert_msg2 @ A3 @ B2)) & (~ ((member_msg2 @ A3 @ B2))))))))). % mk_disjoint_insert
thf(fact_135_mk__disjoint__insert, axiom,
    ((![A3 : agent, A : set_agent]: ((member_agent2 @ A3 @ A) => (?[B2 : set_agent]: ((A = (insert_agent @ A3 @ B2)) & (~ ((member_agent2 @ A3 @ B2))))))))). % mk_disjoint_insert
thf(fact_136_mk__disjoint__insert, axiom,
    ((![A3 : event, A : set_event]: ((member_event2 @ A3 @ A) => (?[B2 : set_event]: ((A = (insert_event2 @ A3 @ B2)) & (~ ((member_event2 @ A3 @ B2))))))))). % mk_disjoint_insert
thf(fact_137_analz__cut, axiom,
    ((![Y : msg, X : msg, H : set_msg]: ((member_msg2 @ Y @ (analz @ (insert_msg2 @ X @ H))) => ((member_msg2 @ X @ (analz @ H)) => (member_msg2 @ Y @ (analz @ H))))))). % analz_cut
thf(fact_138_analz__insertI, axiom,
    ((![C : msg, G : set_msg, A3 : msg]: ((member_msg2 @ C @ (analz @ G)) => (member_msg2 @ C @ (analz @ (insert_msg2 @ A3 @ G))))))). % analz_insertI
thf(fact_139_analz__insert__eq, axiom,
    ((![X : msg, H : set_msg]: ((member_msg2 @ X @ (analz @ H)) => ((analz @ (insert_msg2 @ X @ H)) = (analz @ H)))))). % analz_insert_eq
thf(fact_140_analz__insert__cong, axiom,
    ((![H : set_msg, H2 : set_msg, X : msg]: (((analz @ H) = (analz @ H2)) => ((analz @ (insert_msg2 @ X @ H)) = (analz @ (insert_msg2 @ X @ H2))))))). % analz_insert_cong
thf(fact_141_analz__insert__eq__I, axiom,
    ((![X : msg, H : set_msg]: ((![X4 : msg]: ((member_msg2 @ X4 @ (analz @ (insert_msg2 @ X @ H))) => (member_msg2 @ X4 @ (insert_msg2 @ X @ (analz @ H))))) => ((analz @ (insert_msg2 @ X @ H)) = (insert_msg2 @ X @ (analz @ H))))))). % analz_insert_eq_I
thf(fact_142_analz__insert, axiom,
    ((![X : msg, H : set_msg]: (ord_less_eq_set_msg @ (insert_msg2 @ X @ (analz @ H)) @ (analz @ (insert_msg2 @ X @ H)))))). % analz_insert
thf(fact_143_gen__analz__insert__eq, axiom,
    ((![X : msg, H : set_msg, G : set_msg]: ((member_msg2 @ X @ (analz @ H)) => ((ord_less_eq_set_msg @ H @ G) => ((analz @ (insert_msg2 @ X @ G)) = (analz @ G))))))). % gen_analz_insert_eq
thf(fact_144_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) => ((![X4 : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X4 @ Y4) => (ord_less_eq_set_msg @ (F @ X4) @ (F @ Y4)))) => (ord_less_eq_set_msg @ A3 @ (F @ C)))))))). % order_subst1
thf(fact_145_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) => ((![X4 : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X4 @ Y4) => (ord_less_eq_set_msg @ (F @ X4) @ (F @ Y4)))) => (ord_less_eq_set_msg @ (F @ A3) @ C))))))). % order_subst2
thf(fact_146_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) => ((![X4 : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X4 @ Y4) => (ord_less_eq_set_msg @ (F @ X4) @ (F @ Y4)))) => (ord_less_eq_set_msg @ A3 @ (F @ C)))))))). % ord_eq_le_subst
thf(fact_147_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) => ((![X4 : set_msg, Y4 : set_msg]: ((ord_less_eq_set_msg @ X4 @ Y4) => (ord_less_eq_set_msg @ (F @ X4) @ (F @ Y4)))) => (ord_less_eq_set_msg @ (F @ A3) @ C))))))). % ord_le_eq_subst
thf(fact_148_eq__iff, axiom,
    (((^[Y5 : set_msg]: (^[Z : set_msg]: (Y5 = Z))) = (^[X5 : set_msg]: (^[Y6 : set_msg]: (((ord_less_eq_set_msg @ X5 @ Y6)) & ((ord_less_eq_set_msg @ Y6 @ X5)))))))). % eq_iff
thf(fact_149_antisym, axiom,
    ((![X3 : set_msg, Y3 : set_msg]: ((ord_less_eq_set_msg @ X3 @ Y3) => ((ord_less_eq_set_msg @ Y3 @ X3) => (X3 = Y3)))))). % antisym
thf(fact_150_eq__refl, axiom,
    ((![X3 : set_msg, Y3 : set_msg]: ((X3 = Y3) => (ord_less_eq_set_msg @ X3 @ Y3))))). % eq_refl
thf(fact_151_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_152_antisym__conv, axiom,
    ((![Y3 : set_msg, X3 : set_msg]: ((ord_less_eq_set_msg @ Y3 @ X3) => ((ord_less_eq_set_msg @ X3 @ Y3) = (X3 = Y3)))))). % antisym_conv
thf(fact_153_order__class_Oorder_Oeq__iff, axiom,
    (((^[Y5 : set_msg]: (^[Z : set_msg]: (Y5 = Z))) = (^[A5 : set_msg]: (^[B4 : set_msg]: (((ord_less_eq_set_msg @ A5 @ B4)) & ((ord_less_eq_set_msg @ B4 @ A5)))))))). % order_class.order.eq_iff
thf(fact_154_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_155_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_156_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_157_order__trans, axiom,
    ((![X3 : set_msg, Y3 : set_msg, Z3 : set_msg]: ((ord_less_eq_set_msg @ X3 @ Y3) => ((ord_less_eq_set_msg @ Y3 @ Z3) => (ord_less_eq_set_msg @ X3 @ Z3)))))). % order_trans
thf(fact_158_dual__order_Orefl, axiom,
    ((![A3 : set_msg]: (ord_less_eq_set_msg @ A3 @ A3)))). % dual_order.refl
thf(fact_159_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_160_dual__order_Oeq__iff, axiom,
    (((^[Y5 : set_msg]: (^[Z : set_msg]: (Y5 = Z))) = (^[A5 : set_msg]: (^[B4 : set_msg]: (((ord_less_eq_set_msg @ B4 @ A5)) & ((ord_less_eq_set_msg @ A5 @ B4)))))))). % dual_order.eq_iff
thf(fact_161_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_162_in__mono, axiom,
    ((![A : set_agent, B : set_agent, X3 : agent]: ((ord_le722097072_agent @ A @ B) => ((member_agent2 @ X3 @ A) => (member_agent2 @ X3 @ B)))))). % in_mono
thf(fact_163_in__mono, axiom,
    ((![A : set_event, B : set_event, X3 : event]: ((ord_le152226328_event @ A @ B) => ((member_event2 @ X3 @ A) => (member_event2 @ X3 @ B)))))). % in_mono
thf(fact_164_in__mono, axiom,
    ((![A : set_msg, B : set_msg, X3 : msg]: ((ord_less_eq_set_msg @ A @ B) => ((member_msg2 @ X3 @ A) => (member_msg2 @ X3 @ B)))))). % in_mono
thf(fact_165_subsetD, axiom,
    ((![A : set_agent, B : set_agent, C : agent]: ((ord_le722097072_agent @ A @ B) => ((member_agent2 @ C @ A) => (member_agent2 @ C @ B)))))). % subsetD
thf(fact_166_subsetD, axiom,
    ((![A : set_event, B : set_event, C : event]: ((ord_le152226328_event @ A @ B) => ((member_event2 @ C @ A) => (member_event2 @ C @ B)))))). % subsetD
thf(fact_167_subsetD, axiom,
    ((![A : set_msg, B : set_msg, C : msg]: ((ord_less_eq_set_msg @ A @ B) => ((member_msg2 @ C @ A) => (member_msg2 @ C @ B)))))). % subsetD
thf(fact_168_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_169_subset__eq, axiom,
    ((ord_le722097072_agent = (^[A6 : set_agent]: (^[B5 : set_agent]: (![X5 : agent]: (((member_agent2 @ X5 @ A6)) => ((member_agent2 @ X5 @ B5))))))))). % subset_eq
thf(fact_170_subset__eq, axiom,
    ((ord_le152226328_event = (^[A6 : set_event]: (^[B5 : set_event]: (![X5 : event]: (((member_event2 @ X5 @ A6)) => ((member_event2 @ X5 @ B5))))))))). % subset_eq
thf(fact_171_subset__eq, axiom,
    ((ord_less_eq_set_msg = (^[A6 : set_msg]: (^[B5 : set_msg]: (![X5 : msg]: (((member_msg2 @ X5 @ A6)) => ((member_msg2 @ X5 @ B5))))))))). % subset_eq
thf(fact_172_equalityD1, axiom,
    ((![A : set_msg, B : set_msg]: ((A = B) => (ord_less_eq_set_msg @ A @ B))))). % equalityD1
thf(fact_173_equalityD2, axiom,
    ((![A : set_msg, B : set_msg]: ((A = B) => (ord_less_eq_set_msg @ B @ A))))). % equalityD2
thf(fact_174_subset__iff, axiom,
    ((ord_le722097072_agent = (^[A6 : set_agent]: (^[B5 : set_agent]: (![T : agent]: (((member_agent2 @ T @ A6)) => ((member_agent2 @ T @ B5))))))))). % subset_iff
thf(fact_175_subset__iff, axiom,
    ((ord_le152226328_event = (^[A6 : set_event]: (^[B5 : set_event]: (![T : event]: (((member_event2 @ T @ A6)) => ((member_event2 @ T @ B5))))))))). % subset_iff
thf(fact_176_subset__iff, axiom,
    ((ord_less_eq_set_msg = (^[A6 : set_msg]: (^[B5 : set_msg]: (![T : msg]: (((member_msg2 @ T @ A6)) => ((member_msg2 @ T @ B5))))))))). % subset_iff
thf(fact_177_subset__refl, axiom,
    ((![A : set_msg]: (ord_less_eq_set_msg @ A @ A)))). % subset_refl
thf(fact_178_Collect__mono, axiom,
    ((![P : msg > $o, Q : msg > $o]: ((![X4 : msg]: ((P @ X4) => (Q @ X4))) => (ord_less_eq_set_msg @ (collect_msg @ P) @ (collect_msg @ Q)))))). % Collect_mono
thf(fact_179_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_180_set__eq__subset, axiom,
    (((^[Y5 : set_msg]: (^[Z : set_msg]: (Y5 = Z))) = (^[A6 : set_msg]: (^[B5 : set_msg]: (((ord_less_eq_set_msg @ A6 @ B5)) & ((ord_less_eq_set_msg @ B5 @ A6)))))))). % set_eq_subset
thf(fact_181_Collect__mono__iff, axiom,
    ((![P : msg > $o, Q : msg > $o]: ((ord_less_eq_set_msg @ (collect_msg @ P) @ (collect_msg @ Q)) = (![X5 : msg]: (((P @ X5)) => ((Q @ X5)))))))). % Collect_mono_iff
thf(fact_182_initState__subset__knows, axiom,
    ((![A : agent, Evs : list_event]: (ord_less_eq_set_msg @ (initState @ A) @ (knows @ A @ Evs))))). % initState_subset_knows
thf(fact_183_insert__subsetI, axiom,
    ((![X3 : agent, A : set_agent, X : set_agent]: ((member_agent2 @ X3 @ A) => ((ord_le722097072_agent @ X @ A) => (ord_le722097072_agent @ (insert_agent @ X3 @ X) @ A)))))). % insert_subsetI
thf(fact_184_insert__subsetI, axiom,
    ((![X3 : event, A : set_event, X : set_event]: ((member_event2 @ X3 @ A) => ((ord_le152226328_event @ X @ A) => (ord_le152226328_event @ (insert_event2 @ X3 @ X) @ A)))))). % insert_subsetI
thf(fact_185_insert__subsetI, axiom,
    ((![X3 : msg, A : set_msg, X : set_msg]: ((member_msg2 @ X3 @ A) => ((ord_less_eq_set_msg @ X @ A) => (ord_less_eq_set_msg @ (insert_msg2 @ X3 @ X) @ A)))))). % insert_subsetI
thf(fact_186_List_Oset__insert, axiom,
    ((![X3 : msg, Xs : list_msg]: ((set_msg2 @ (insert_msg @ X3 @ Xs)) = (insert_msg2 @ X3 @ (set_msg2 @ Xs)))))). % List.set_insert
thf(fact_187_List_Oset__insert, axiom,
    ((![X3 : event, Xs : list_event]: ((set_event2 @ (insert_event @ X3 @ Xs)) = (insert_event2 @ X3 @ (set_event2 @ Xs)))))). % List.set_insert

% Conjectures (1)
thf(conj_0, conjecture,
    (((knows @ spy @ evs) = (knows @ spy @ (rev_event @ evs))))).
