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

% 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_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_Message_Oagent_OSpy, type,
    spy : agent).
thf(sy_c_Message_Oanalz, type,
    analz : set_msg > set_msg).
thf(sy_c_Message_Omsg_OCrypt, type,
    crypt : nat > msg > msg).
thf(sy_c_Message_Omsg_OMPair, type,
    mPair : msg > msg > msg).
thf(sy_c_Message_Oparts, type,
    parts : set_msg > set_msg).
thf(sy_c_Message_Opartsp, type,
    partsp : (msg > $o) > msg > $o).
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_Public_OshrK, type,
    shrK : agent > nat).
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_event : 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_msg : msg > set_msg > set_msg).
thf(sy_c_member_001t__Event__Oevent, type,
    member_event : event > set_event > $o).
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_A, type,
    a : agent).
thf(sy_v_B, type,
    b : msg).
thf(sy_v_K, type,
    k : msg).
thf(sy_v_KA, type,
    ka : nat).
thf(sy_v_N, type,
    n : msg).
thf(sy_v_S, type,
    s : agent).
thf(sy_v_X, type,
    x : msg).
thf(sy_v_evs, type,
    evs : list_event).

% Relevant facts (193)
thf(fact_0_Says__imp__knows__Spy, axiom,
    ((![A : agent, B : agent, X : msg, Evs : list_event]: ((member_event @ (says @ A @ B @ X) @ (set_event2 @ Evs)) => (member_msg @ X @ (knows @ spy @ Evs)))))). % Says_imp_knows_Spy
thf(fact_1_Says__imp__knows, axiom,
    ((![A : agent, B : agent, X : msg, Evs : list_event]: ((member_event @ (says @ A @ B @ X) @ (set_event2 @ Evs)) => (member_msg @ X @ (knows @ A @ Evs)))))). % Says_imp_knows
thf(fact_2_parts_Ocases, axiom,
    ((![A2 : msg, H : set_msg]: ((member_msg @ A2 @ (parts @ H)) => ((~ ((member_msg @ A2 @ H))) => ((![Y : msg]: (~ ((member_msg @ (mPair @ A2 @ Y) @ (parts @ H))))) => ((![X2 : msg]: (~ ((member_msg @ (mPair @ X2 @ A2) @ (parts @ H))))) => (~ ((![K : nat]: (~ ((member_msg @ (crypt @ K @ A2) @ (parts @ H)))))))))))))). % parts.cases
thf(fact_3_parts_Osimps, axiom,
    ((![A2 : msg, H : set_msg]: ((member_msg @ A2 @ (parts @ H)) = (((?[X3 : msg]: (((A2 = X3)) & ((member_msg @ X3 @ H))))) | ((((?[X3 : msg]: (?[Y2 : msg]: (((A2 = X3)) & ((member_msg @ (mPair @ X3 @ Y2) @ (parts @ H))))))) | ((((?[X3 : msg]: (?[Y2 : msg]: (((A2 = Y2)) & ((member_msg @ (mPair @ X3 @ Y2) @ (parts @ H))))))) | ((?[K2 : nat]: (?[X3 : msg]: (((A2 = X3)) & ((member_msg @ (crypt @ K2 @ X3) @ (parts @ H)))))))))))))))). % parts.simps
thf(fact_4_parts_Oinducts, axiom,
    ((![X4 : msg, H : set_msg, P : msg > $o]: ((member_msg @ X4 @ (parts @ H)) => ((![X2 : msg]: ((member_msg @ X2 @ H) => (P @ X2))) => ((![X2 : msg, Y : msg]: ((member_msg @ (mPair @ X2 @ Y) @ (parts @ H)) => ((P @ (mPair @ X2 @ Y)) => (P @ X2)))) => ((![X2 : msg, Y : msg]: ((member_msg @ (mPair @ X2 @ Y) @ (parts @ H)) => ((P @ (mPair @ X2 @ Y)) => (P @ Y)))) => ((![K : nat, X2 : msg]: ((member_msg @ (crypt @ K @ X2) @ (parts @ H)) => ((P @ (crypt @ K @ X2)) => (P @ X2)))) => (P @ X4))))))))). % parts.inducts
thf(fact_5_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_6_msg_Oinject_I7_J, axiom,
    ((![X71 : nat, X72 : msg, Y71 : nat, Y72 : msg]: (((crypt @ X71 @ X72) = (crypt @ Y71 @ Y72)) = (((X71 = Y71)) & ((X72 = Y72))))))). % msg.inject(7)
thf(fact_7_msg_Oinject_I6_J, axiom,
    ((![X61 : msg, X62 : msg, Y61 : msg, Y62 : msg]: (((mPair @ X61 @ X62) = (mPair @ Y61 @ Y62)) = (((X61 = Y61)) & ((X62 = Y62))))))). % msg.inject(6)
thf(fact_8_parts__idem, axiom,
    ((![H : set_msg]: ((parts @ (parts @ H)) = (parts @ H))))). % parts_idem
thf(fact_9_msg_Odistinct_I41_J, axiom,
    ((![X61 : msg, X62 : msg, X71 : nat, X72 : msg]: (~ (((mPair @ X61 @ X62) = (crypt @ X71 @ X72))))))). % msg.distinct(41)
thf(fact_10_parts_OBody, axiom,
    ((![K3 : nat, X : msg, H : set_msg]: ((member_msg @ (crypt @ K3 @ X) @ (parts @ H)) => (member_msg @ X @ (parts @ H)))))). % parts.Body
thf(fact_11_parts_OFst, axiom,
    ((![X : msg, Y3 : msg, H : set_msg]: ((member_msg @ (mPair @ X @ Y3) @ (parts @ H)) => (member_msg @ X @ (parts @ H)))))). % parts.Fst
thf(fact_12_parts__partsD, axiom,
    ((![X : msg, H : set_msg]: ((member_msg @ X @ (parts @ (parts @ H))) => (member_msg @ X @ (parts @ H)))))). % parts_partsD
thf(fact_13_parts_OInj, axiom,
    ((![X : msg, H : set_msg]: ((member_msg @ X @ H) => (member_msg @ X @ (parts @ H)))))). % parts.Inj
thf(fact_14_MPair__parts, axiom,
    ((![X : msg, Y3 : msg, H : set_msg]: ((member_msg @ (mPair @ X @ Y3) @ (parts @ H)) => (~ (((member_msg @ X @ (parts @ H)) => (~ ((member_msg @ Y3 @ (parts @ H))))))))))). % MPair_parts
thf(fact_15_parts_OSnd, axiom,
    ((![X : msg, Y3 : msg, H : set_msg]: ((member_msg @ (mPair @ X @ Y3) @ (parts @ H)) => (member_msg @ Y3 @ (parts @ H)))))). % parts.Snd
thf(fact_16_Gets__imp__knows__agents, axiom,
    ((![A : agent, X : msg, Evs : list_event]: ((~ ((A = spy))) => ((member_event @ (gets @ A @ X) @ (set_event2 @ Evs)) => (member_msg @ X @ (knows @ A @ Evs))))))). % Gets_imp_knows_agents
thf(fact_17_usedI, axiom,
    ((![C : msg, Evs : list_event]: ((member_msg @ C @ (parts @ (knows @ spy @ Evs))) => (member_msg @ C @ (used @ Evs)))))). % usedI
thf(fact_18_Says__imp__analz__Spy, axiom,
    ((![A : agent, B : agent, X : msg, Evs : list_event]: ((member_event @ (says @ A @ B @ X) @ (set_event2 @ Evs)) => (member_msg @ X @ (analz @ (knows @ spy @ Evs))))))). % Says_imp_analz_Spy
thf(fact_19_Notes__imp__knows, axiom,
    ((![A : agent, X : msg, Evs : list_event]: ((member_event @ (notes @ A @ X) @ (set_event2 @ Evs)) => (member_msg @ X @ (knows @ A @ Evs)))))). % Notes_imp_knows
thf(fact_20_Spy__in__bad, axiom,
    ((member_agent @ spy @ bad))). % Spy_in_bad
thf(fact_21_knows__Spy__imp__Says__Notes__initState, axiom,
    ((![X : msg, Evs : list_event]: ((member_msg @ X @ (knows @ spy @ Evs)) => (?[A3 : agent, B2 : agent]: ((member_event @ (says @ A3 @ B2 @ X) @ (set_event2 @ Evs)) | ((member_event @ (notes @ A3 @ X) @ (set_event2 @ Evs)) | (member_msg @ X @ (initState @ spy))))))))). % knows_Spy_imp_Says_Notes_initState
thf(fact_22_partsp_Oinducts, axiom,
    ((![H : msg > $o, X4 : msg, P : msg > $o]: ((partsp @ H @ X4) => ((![X2 : msg]: ((H @ X2) => (P @ X2))) => ((![X2 : msg, Y : msg]: ((partsp @ H @ (mPair @ X2 @ Y)) => ((P @ (mPair @ X2 @ Y)) => (P @ X2)))) => ((![X2 : msg, Y : msg]: ((partsp @ H @ (mPair @ X2 @ Y)) => ((P @ (mPair @ X2 @ Y)) => (P @ Y)))) => ((![K : nat, X2 : msg]: ((partsp @ H @ (crypt @ K @ X2)) => ((P @ (crypt @ K @ X2)) => (P @ X2)))) => (P @ X4))))))))). % partsp.inducts
thf(fact_23_partsp_Osimps, axiom,
    ((partsp = (^[H2 : msg > $o]: (^[A4 : msg]: (((?[X3 : msg]: (((A4 = X3)) & ((H2 @ X3))))) | ((((?[X3 : msg]: (?[Y2 : msg]: (((A4 = X3)) & ((partsp @ H2 @ (mPair @ X3 @ Y2))))))) | ((((?[X3 : msg]: (?[Y2 : msg]: (((A4 = Y2)) & ((partsp @ H2 @ (mPair @ X3 @ Y2))))))) | ((?[K2 : nat]: (?[X3 : msg]: (((A4 = X3)) & ((partsp @ H2 @ (crypt @ K2 @ X3))))))))))))))))). % partsp.simps
thf(fact_24_analz__idem, axiom,
    ((![H : set_msg]: ((analz @ (analz @ H)) = (analz @ H))))). % analz_idem
thf(fact_25_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_26_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_27_analz__parts, axiom,
    ((![H : set_msg]: ((analz @ (parts @ H)) = (parts @ H))))). % analz_parts
thf(fact_28_parts__analz, axiom,
    ((![H : set_msg]: ((parts @ (analz @ H)) = (parts @ H))))). % parts_analz
thf(fact_29_analz__conj__parts, axiom,
    ((![X : msg, H : set_msg]: ((((member_msg @ X @ (analz @ H))) & ((member_msg @ X @ (parts @ H)))) = (member_msg @ X @ (analz @ H)))))). % analz_conj_parts
thf(fact_30_analz__disj__parts, axiom,
    ((![X : msg, H : set_msg]: ((((member_msg @ X @ (analz @ H))) | ((member_msg @ X @ (parts @ H)))) = (member_msg @ X @ (parts @ H)))))). % analz_disj_parts
thf(fact_31_event_Odistinct_I5_J, axiom,
    ((![X21 : agent, X22 : msg, X31 : agent, X32 : msg]: (~ (((gets @ X21 @ X22) = (notes @ X31 @ X32))))))). % event.distinct(5)
thf(fact_32_analz_OInj, axiom,
    ((![X : msg, H : set_msg]: ((member_msg @ X @ H) => (member_msg @ X @ (analz @ H)))))). % analz.Inj
thf(fact_33_partsp_OInj, axiom,
    ((![H : msg > $o, X : msg]: ((H @ X) => (partsp @ H @ X))))). % partsp.Inj
thf(fact_34_analz__analzD, axiom,
    ((![X : msg, H : set_msg]: ((member_msg @ X @ (analz @ (analz @ H))) => (member_msg @ X @ (analz @ H)))))). % analz_analzD
thf(fact_35_initState__into__used, axiom,
    ((![X : msg, B : agent, Evs : list_event]: ((member_msg @ X @ (parts @ (initState @ B))) => (member_msg @ X @ (used @ Evs)))))). % initState_into_used
thf(fact_36_Notes__imp__used, axiom,
    ((![A : agent, X : msg, Evs : list_event]: ((member_event @ (notes @ A @ X) @ (set_event2 @ Evs)) => (member_msg @ X @ (used @ Evs)))))). % Notes_imp_used
thf(fact_37_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_38_event_Oexhaust, axiom,
    ((![Y4 : event]: ((![X112 : agent, X122 : agent, X132 : msg]: (~ ((Y4 = (says @ X112 @ X122 @ X132))))) => ((![X212 : agent, X222 : msg]: (~ ((Y4 = (gets @ X212 @ X222))))) => (~ ((![X312 : agent, X322 : msg]: (~ ((Y4 = (notes @ X312 @ X322)))))))))))). % event.exhaust
thf(fact_39_analz__into__parts, axiom,
    ((![C : msg, H : set_msg]: ((member_msg @ C @ (analz @ H)) => (member_msg @ C @ (parts @ H)))))). % analz_into_parts
thf(fact_40_not__parts__not__analz, axiom,
    ((![C : msg, H : set_msg]: ((~ ((member_msg @ C @ (parts @ H)))) => (~ ((member_msg @ C @ (analz @ H)))))))). % not_parts_not_analz
thf(fact_41_mem__Collect__eq, axiom,
    ((![A2 : event, P : event > $o]: ((member_event @ A2 @ (collect_event @ P)) = (P @ A2))))). % mem_Collect_eq
thf(fact_42_mem__Collect__eq, axiom,
    ((![A2 : msg, P : msg > $o]: ((member_msg @ A2 @ (collect_msg @ P)) = (P @ A2))))). % mem_Collect_eq
thf(fact_43_mem__Collect__eq, axiom,
    ((![A2 : agent, P : agent > $o]: ((member_agent @ A2 @ (collect_agent @ P)) = (P @ A2))))). % mem_Collect_eq
thf(fact_44_Collect__mem__eq, axiom,
    ((![A : set_event]: ((collect_event @ (^[X5 : event]: (member_event @ X5 @ A))) = A)))). % Collect_mem_eq
thf(fact_45_Collect__mem__eq, axiom,
    ((![A : set_msg]: ((collect_msg @ (^[X5 : msg]: (member_msg @ X5 @ A))) = A)))). % Collect_mem_eq
thf(fact_46_Collect__mem__eq, axiom,
    ((![A : set_agent]: ((collect_agent @ (^[X5 : agent]: (member_agent @ X5 @ A))) = A)))). % Collect_mem_eq
thf(fact_47_analz_OFst, axiom,
    ((![X : msg, Y3 : msg, H : set_msg]: ((member_msg @ (mPair @ X @ Y3) @ (analz @ H)) => (member_msg @ X @ (analz @ H)))))). % analz.Fst
thf(fact_48_analz_OSnd, axiom,
    ((![X : msg, Y3 : msg, H : set_msg]: ((member_msg @ (mPair @ X @ Y3) @ (analz @ H)) => (member_msg @ Y3 @ (analz @ H)))))). % analz.Snd
thf(fact_49_MPair__analz, axiom,
    ((![X : msg, Y3 : msg, H : set_msg]: ((member_msg @ (mPair @ X @ Y3) @ (analz @ H)) => (~ (((member_msg @ X @ (analz @ H)) => (~ ((member_msg @ Y3 @ (analz @ H))))))))))). % MPair_analz
thf(fact_50_partsp_OFst, axiom,
    ((![H : msg > $o, X : msg, Y3 : msg]: ((partsp @ H @ (mPair @ X @ Y3)) => (partsp @ H @ X))))). % partsp.Fst
thf(fact_51_partsp_OSnd, axiom,
    ((![H : msg > $o, X : msg, Y3 : msg]: ((partsp @ H @ (mPair @ X @ Y3)) => (partsp @ H @ Y3))))). % partsp.Snd
thf(fact_52_partsp_OBody, axiom,
    ((![H : msg > $o, K3 : nat, X : msg]: ((partsp @ H @ (crypt @ K3 @ X)) => (partsp @ H @ X))))). % partsp.Body
thf(fact_53_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_54_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_55_knows__imp__Says__Gets__Notes__initState, axiom,
    ((![X : msg, A : agent, Evs : list_event]: ((member_msg @ X @ (knows @ A @ Evs)) => ((~ ((A = spy))) => (?[B2 : agent]: ((member_event @ (says @ A @ B2 @ X) @ (set_event2 @ Evs)) | ((member_event @ (gets @ A @ X) @ (set_event2 @ Evs)) | ((member_event @ (notes @ A @ X) @ (set_event2 @ Evs)) | (member_msg @ X @ (initState @ A))))))))))). % knows_imp_Says_Gets_Notes_initState
thf(fact_56_analz__trivial, axiom,
    ((![H : set_msg]: ((![X2 : msg, Y : msg]: (~ ((member_msg @ (mPair @ X2 @ Y) @ H)))) => ((![X2 : msg, K : nat]: (~ ((member_msg @ (crypt @ K @ X2) @ H)))) => ((analz @ H) = H)))))). % analz_trivial
thf(fact_57_analz__impI, axiom,
    ((![Y3 : msg, Evs : list_event, Q : $o]: (((~ ((member_msg @ Y3 @ (analz @ (knows @ spy @ Evs))))) => Q) => ((~ ((member_msg @ Y3 @ (analz @ (knows @ spy @ Evs))))) => Q))))). % analz_impI
thf(fact_58_Notes__imp__knows__Spy, axiom,
    ((![A : agent, X : msg, Evs : list_event]: ((member_event @ (notes @ A @ X) @ (set_event2 @ Evs)) => ((member_agent @ A @ bad) => (member_msg @ X @ (knows @ spy @ Evs))))))). % Notes_imp_knows_Spy
thf(fact_59_Says__imp__used, axiom,
    ((![A : agent, B : agent, X : msg, Evs : list_event]: ((member_event @ (says @ A @ B @ X) @ (set_event2 @ Evs)) => (member_msg @ X @ (used @ Evs)))))). % Says_imp_used
thf(fact_60_partsp_Ocases, axiom,
    ((![H : msg > $o, A2 : msg]: ((partsp @ H @ A2) => ((~ ((H @ A2))) => ((![Y : msg]: (~ ((partsp @ H @ (mPair @ A2 @ Y))))) => ((![X2 : msg]: (~ ((partsp @ H @ (mPair @ X2 @ A2))))) => (~ ((![K : nat]: (~ ((partsp @ H @ (crypt @ K @ A2)))))))))))))). % partsp.cases
thf(fact_61_Crypt__notin__initState, axiom,
    ((![K3 : nat, X : msg, B : agent]: (~ ((member_msg @ (crypt @ K3 @ X) @ (parts @ (initState @ B)))))))). % Crypt_notin_initState
thf(fact_62_MPair__used, axiom,
    ((![X : msg, Y3 : msg, H : list_event]: ((member_msg @ (mPair @ X @ Y3) @ (used @ H)) => (~ (((member_msg @ X @ (used @ H)) => (~ ((member_msg @ Y3 @ (used @ H))))))))))). % MPair_used
thf(fact_63_MPair__used__D, axiom,
    ((![X : msg, Y3 : msg, H : list_event]: ((member_msg @ (mPair @ X @ Y3) @ (used @ H)) => ((member_msg @ X @ (used @ H)) & (member_msg @ Y3 @ (used @ H))))))). % MPair_used_D
thf(fact_64_parts__knows__Spy__subset__used, axiom,
    ((![Evs : list_event]: (ord_less_eq_set_msg @ (parts @ (knows @ spy @ Evs)) @ (used @ Evs))))). % parts_knows_Spy_subset_used
thf(fact_65_analz__mono__contra_I3_J, axiom,
    ((![C : msg, A : agent, X : msg, Evs : list_event]: ((~ ((member_msg @ C @ (analz @ (knows @ spy @ (cons_event @ (gets @ A @ X) @ Evs)))))) => (~ ((member_msg @ C @ (analz @ (knows @ spy @ Evs))))))))). % analz_mono_contra(3)
thf(fact_66_analz__mono__contra_I2_J, axiom,
    ((![C : msg, A : agent, X : msg, Evs : list_event]: ((~ ((member_msg @ C @ (analz @ (knows @ spy @ (cons_event @ (notes @ A @ X) @ Evs)))))) => (~ ((member_msg @ C @ (analz @ (knows @ spy @ Evs))))))))). % analz_mono_contra(2)
thf(fact_67_Crypt__Spy__analz__bad, axiom,
    ((![A : agent, X : msg, Evs : list_event]: ((member_msg @ (crypt @ (shrK @ A) @ X) @ (analz @ (knows @ spy @ Evs))) => ((member_agent @ A @ bad) => (member_msg @ X @ (analz @ (knows @ spy @ Evs)))))))). % Crypt_Spy_analz_bad
thf(fact_68_analz__mono__contra_I1_J, axiom,
    ((![C : msg, A : agent, B : agent, X : msg, Evs : list_event]: ((~ ((member_msg @ C @ (analz @ (knows @ spy @ (cons_event @ (says @ A @ B @ X) @ Evs)))))) => (~ ((member_msg @ C @ (analz @ (knows @ spy @ Evs))))))))). % analz_mono_contra(1)
thf(fact_69_shrK__injective, axiom,
    ((![X4 : agent, Y4 : agent]: (((shrK @ X4) = (shrK @ Y4)) = (X4 = Y4))))). % shrK_injective
thf(fact_70_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_71_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_72_used__Gets, axiom,
    ((![A : agent, X : msg, Evs : list_event]: ((used @ (cons_event @ (gets @ A @ X) @ Evs)) = (used @ Evs))))). % used_Gets
thf(fact_73_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_74_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_75_knows__subset__knows__Says, axiom,
    ((![A : agent, Evs : list_event, A5 : agent, B : agent, X : msg]: (ord_less_eq_set_msg @ (knows @ A @ Evs) @ (knows @ A @ (cons_event @ (says @ A5 @ B @ X) @ Evs)))))). % knows_subset_knows_Says
thf(fact_76_knows__subset__knows__Notes, axiom,
    ((![A : agent, Evs : list_event, A5 : agent, X : msg]: (ord_less_eq_set_msg @ (knows @ A @ Evs) @ (knows @ A @ (cons_event @ (notes @ A5 @ X) @ Evs)))))). % knows_subset_knows_Notes
thf(fact_77_knows__subset__knows__Gets, axiom,
    ((![A : agent, Evs : list_event, A5 : agent, X : msg]: (ord_less_eq_set_msg @ (knows @ A @ Evs) @ (knows @ A @ (cons_event @ (gets @ A5 @ X) @ Evs)))))). % knows_subset_knows_Gets
thf(fact_78_analz__increasing, axiom,
    ((![H : set_msg]: (ord_less_eq_set_msg @ H @ (analz @ H))))). % analz_increasing
thf(fact_79_analz__trans, axiom,
    ((![X : msg, G : set_msg, H : set_msg]: ((member_msg @ X @ (analz @ G)) => ((ord_less_eq_set_msg @ G @ (analz @ H)) => (member_msg @ X @ (analz @ H))))))). % analz_trans
thf(fact_80_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_81_parts__increasing, axiom,
    ((![H : set_msg]: (ord_less_eq_set_msg @ H @ (parts @ H))))). % parts_increasing
thf(fact_82_parts__trans, axiom,
    ((![X : msg, G : set_msg, H : set_msg]: ((member_msg @ X @ (parts @ G)) => ((ord_less_eq_set_msg @ G @ (parts @ H)) => (member_msg @ X @ (parts @ H))))))). % parts_trans
thf(fact_83_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_84_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_85_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_86_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_87_analz__subset__parts, axiom,
    ((![H : set_msg]: (ord_less_eq_set_msg @ (analz @ H) @ (parts @ H))))). % analz_subset_parts
thf(fact_88_initState__subset__knows, axiom,
    ((![A : agent, Evs : list_event]: (ord_less_eq_set_msg @ (initState @ A) @ (knows @ A @ Evs))))). % initState_subset_knows
thf(fact_89_set__subset__Cons, axiom,
    ((![Xs : list_event, X4 : event]: (ord_le152226328_event @ (set_event2 @ Xs) @ (set_event2 @ (cons_event @ X4 @ Xs)))))). % set_subset_Cons
thf(fact_90_set__subset__Cons, axiom,
    ((![Xs : list_msg, X4 : msg]: (ord_less_eq_set_msg @ (set_msg2 @ Xs) @ (set_msg2 @ (cons_msg @ X4 @ Xs)))))). % set_subset_Cons
thf(fact_91_subsetI, axiom,
    ((![A : set_event, B : set_event]: ((![X6 : event]: ((member_event @ X6 @ A) => (member_event @ X6 @ B))) => (ord_le152226328_event @ A @ B))))). % subsetI
thf(fact_92_subsetI, axiom,
    ((![A : set_agent, B : set_agent]: ((![X6 : agent]: ((member_agent @ X6 @ A) => (member_agent @ X6 @ B))) => (ord_le722097072_agent @ A @ B))))). % subsetI
thf(fact_93_subsetI, axiom,
    ((![A : set_msg, B : set_msg]: ((![X6 : msg]: ((member_msg @ X6 @ A) => (member_msg @ X6 @ B))) => (ord_less_eq_set_msg @ A @ B))))). % subsetI
thf(fact_94_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_95_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_96_not__Cons__self2, axiom,
    ((![X4 : event, Xs : list_event]: (~ (((cons_event @ X4 @ Xs) = Xs)))))). % not_Cons_self2
thf(fact_97_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_98_set__eq__subset, axiom,
    (((^[Y5 : set_msg]: (^[Z : set_msg]: (Y5 = Z))) = (^[A6 : set_msg]: (^[B3 : set_msg]: (((ord_less_eq_set_msg @ A6 @ B3)) & ((ord_less_eq_set_msg @ B3 @ A6)))))))). % set_eq_subset
thf(fact_99_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_100_Collect__mono, axiom,
    ((![P : msg > $o, Q : msg > $o]: ((![X6 : msg]: ((P @ X6) => (Q @ X6))) => (ord_less_eq_set_msg @ (collect_msg @ P) @ (collect_msg @ Q)))))). % Collect_mono
thf(fact_101_subset__refl, axiom,
    ((![A : set_msg]: (ord_less_eq_set_msg @ A @ A)))). % subset_refl
thf(fact_102_subset__iff, axiom,
    ((ord_le152226328_event = (^[A6 : set_event]: (^[B3 : set_event]: (![T : event]: (((member_event @ T @ A6)) => ((member_event @ T @ B3))))))))). % subset_iff
thf(fact_103_subset__iff, axiom,
    ((ord_le722097072_agent = (^[A6 : set_agent]: (^[B3 : set_agent]: (![T : agent]: (((member_agent @ T @ A6)) => ((member_agent @ T @ B3))))))))). % subset_iff
thf(fact_104_subset__iff, axiom,
    ((ord_less_eq_set_msg = (^[A6 : set_msg]: (^[B3 : set_msg]: (![T : msg]: (((member_msg @ T @ A6)) => ((member_msg @ T @ B3))))))))). % subset_iff
thf(fact_105_equalityD2, axiom,
    ((![A : set_msg, B : set_msg]: ((A = B) => (ord_less_eq_set_msg @ B @ A))))). % equalityD2
thf(fact_106_equalityD1, axiom,
    ((![A : set_msg, B : set_msg]: ((A = B) => (ord_less_eq_set_msg @ A @ B))))). % equalityD1
thf(fact_107_subset__eq, axiom,
    ((ord_le152226328_event = (^[A6 : set_event]: (^[B3 : set_event]: (![X5 : event]: (((member_event @ X5 @ A6)) => ((member_event @ X5 @ B3))))))))). % subset_eq
thf(fact_108_subset__eq, axiom,
    ((ord_le722097072_agent = (^[A6 : set_agent]: (^[B3 : set_agent]: (![X5 : agent]: (((member_agent @ X5 @ A6)) => ((member_agent @ X5 @ B3))))))))). % subset_eq
thf(fact_109_subset__eq, axiom,
    ((ord_less_eq_set_msg = (^[A6 : set_msg]: (^[B3 : set_msg]: (![X5 : msg]: (((member_msg @ X5 @ A6)) => ((member_msg @ X5 @ B3))))))))). % subset_eq
thf(fact_110_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_111_subsetD, axiom,
    ((![A : set_event, B : set_event, C : event]: ((ord_le152226328_event @ A @ B) => ((member_event @ C @ A) => (member_event @ C @ B)))))). % subsetD
thf(fact_112_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_113_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_114_in__mono, axiom,
    ((![A : set_event, B : set_event, X4 : event]: ((ord_le152226328_event @ A @ B) => ((member_event @ X4 @ A) => (member_event @ X4 @ B)))))). % in_mono
thf(fact_115_in__mono, axiom,
    ((![A : set_agent, B : set_agent, X4 : agent]: ((ord_le722097072_agent @ A @ B) => ((member_agent @ X4 @ A) => (member_agent @ X4 @ B)))))). % in_mono
thf(fact_116_in__mono, axiom,
    ((![A : set_msg, B : set_msg, X4 : msg]: ((ord_less_eq_set_msg @ A @ B) => ((member_msg @ X4 @ A) => (member_msg @ X4 @ B)))))). % in_mono
thf(fact_117_list_Oset__cases, axiom,
    ((![E : msg, A2 : list_msg]: ((member_msg @ E @ (set_msg2 @ A2)) => ((![Z2 : list_msg]: (~ ((A2 = (cons_msg @ E @ Z2))))) => (~ ((![Z1 : msg, Z2 : list_msg]: ((A2 = (cons_msg @ Z1 @ Z2)) => (~ ((member_msg @ E @ (set_msg2 @ Z2))))))))))))). % list.set_cases
thf(fact_118_list_Oset__cases, axiom,
    ((![E : agent, A2 : list_agent]: ((member_agent @ E @ (set_agent2 @ A2)) => ((![Z2 : list_agent]: (~ ((A2 = (cons_agent @ E @ Z2))))) => (~ ((![Z1 : agent, Z2 : list_agent]: ((A2 = (cons_agent @ Z1 @ Z2)) => (~ ((member_agent @ E @ (set_agent2 @ Z2))))))))))))). % list.set_cases
thf(fact_119_list_Oset__cases, axiom,
    ((![E : event, A2 : list_event]: ((member_event @ E @ (set_event2 @ A2)) => ((![Z2 : list_event]: (~ ((A2 = (cons_event @ E @ Z2))))) => (~ ((![Z1 : event, Z2 : list_event]: ((A2 = (cons_event @ Z1 @ Z2)) => (~ ((member_event @ E @ (set_event2 @ Z2))))))))))))). % list.set_cases
thf(fact_120_set__ConsD, axiom,
    ((![Y4 : msg, X4 : msg, Xs : list_msg]: ((member_msg @ Y4 @ (set_msg2 @ (cons_msg @ X4 @ Xs))) => ((Y4 = X4) | (member_msg @ Y4 @ (set_msg2 @ Xs))))))). % set_ConsD
thf(fact_121_set__ConsD, axiom,
    ((![Y4 : agent, X4 : agent, Xs : list_agent]: ((member_agent @ Y4 @ (set_agent2 @ (cons_agent @ X4 @ Xs))) => ((Y4 = X4) | (member_agent @ Y4 @ (set_agent2 @ Xs))))))). % set_ConsD
thf(fact_122_set__ConsD, axiom,
    ((![Y4 : event, X4 : event, Xs : list_event]: ((member_event @ Y4 @ (set_event2 @ (cons_event @ X4 @ Xs))) => ((Y4 = X4) | (member_event @ Y4 @ (set_event2 @ Xs))))))). % set_ConsD
thf(fact_123_list_Oset__intros_I1_J, axiom,
    ((![X21 : msg, X22 : list_msg]: (member_msg @ X21 @ (set_msg2 @ (cons_msg @ X21 @ X22)))))). % list.set_intros(1)
thf(fact_124_list_Oset__intros_I1_J, axiom,
    ((![X21 : agent, X22 : list_agent]: (member_agent @ X21 @ (set_agent2 @ (cons_agent @ X21 @ X22)))))). % list.set_intros(1)
thf(fact_125_list_Oset__intros_I1_J, axiom,
    ((![X21 : event, X22 : list_event]: (member_event @ X21 @ (set_event2 @ (cons_event @ X21 @ X22)))))). % list.set_intros(1)
thf(fact_126_list_Oset__intros_I2_J, axiom,
    ((![Y4 : msg, X22 : list_msg, X21 : msg]: ((member_msg @ Y4 @ (set_msg2 @ X22)) => (member_msg @ Y4 @ (set_msg2 @ (cons_msg @ X21 @ X22))))))). % list.set_intros(2)
thf(fact_127_list_Oset__intros_I2_J, axiom,
    ((![Y4 : agent, X22 : list_agent, X21 : agent]: ((member_agent @ Y4 @ (set_agent2 @ X22)) => (member_agent @ Y4 @ (set_agent2 @ (cons_agent @ X21 @ X22))))))). % list.set_intros(2)
thf(fact_128_list_Oset__intros_I2_J, axiom,
    ((![Y4 : event, X22 : list_event, X21 : event]: ((member_event @ Y4 @ (set_event2 @ X22)) => (member_event @ Y4 @ (set_event2 @ (cons_event @ X21 @ X22))))))). % list.set_intros(2)
thf(fact_129_subset__code_I1_J, axiom,
    ((![Xs : list_agent, B : set_agent]: ((ord_le722097072_agent @ (set_agent2 @ Xs) @ B) = (![X5 : agent]: (((member_agent @ X5 @ (set_agent2 @ Xs))) => ((member_agent @ X5 @ B)))))))). % subset_code(1)
thf(fact_130_subset__code_I1_J, axiom,
    ((![Xs : list_event, B : set_event]: ((ord_le152226328_event @ (set_event2 @ Xs) @ B) = (![X5 : event]: (((member_event @ X5 @ (set_event2 @ Xs))) => ((member_event @ X5 @ B)))))))). % subset_code(1)
thf(fact_131_subset__code_I1_J, axiom,
    ((![Xs : list_msg, B : set_msg]: ((ord_less_eq_set_msg @ (set_msg2 @ Xs) @ B) = (![X5 : msg]: (((member_msg @ X5 @ (set_msg2 @ Xs))) => ((member_msg @ X5 @ B)))))))). % subset_code(1)
thf(fact_132_order__refl, axiom,
    ((![X4 : set_msg]: (ord_less_eq_set_msg @ X4 @ X4)))). % order_refl
thf(fact_133_knows__Spy__Notes, axiom,
    ((![A : agent, X : msg, Evs : list_event]: (((member_agent @ A @ bad) => ((knows @ spy @ (cons_event @ (notes @ A @ X) @ Evs)) = (insert_msg @ X @ (knows @ spy @ Evs)))) & ((~ ((member_agent @ A @ bad))) => ((knows @ spy @ (cons_event @ (notes @ A @ X) @ Evs)) = (knows @ spy @ Evs))))))). % knows_Spy_Notes
thf(fact_134_knows__Spy__Says, axiom,
    ((![A : agent, B : agent, X : msg, Evs : list_event]: ((knows @ spy @ (cons_event @ (says @ A @ B @ X) @ Evs)) = (insert_msg @ X @ (knows @ spy @ Evs)))))). % knows_Spy_Says
thf(fact_135_insert__absorb2, axiom,
    ((![X4 : msg, A : set_msg]: ((insert_msg @ X4 @ (insert_msg @ X4 @ A)) = (insert_msg @ X4 @ A))))). % insert_absorb2
thf(fact_136_insert__iff, axiom,
    ((![A2 : event, B4 : event, A : set_event]: ((member_event @ A2 @ (insert_event @ B4 @ A)) = (((A2 = B4)) | ((member_event @ A2 @ A))))))). % insert_iff
thf(fact_137_insert__iff, axiom,
    ((![A2 : msg, B4 : msg, A : set_msg]: ((member_msg @ A2 @ (insert_msg @ B4 @ A)) = (((A2 = B4)) | ((member_msg @ A2 @ A))))))). % insert_iff
thf(fact_138_insert__iff, axiom,
    ((![A2 : agent, B4 : agent, A : set_agent]: ((member_agent @ A2 @ (insert_agent @ B4 @ A)) = (((A2 = B4)) | ((member_agent @ A2 @ A))))))). % insert_iff
thf(fact_139_insertCI, axiom,
    ((![A2 : event, B : set_event, B4 : event]: (((~ ((member_event @ A2 @ B))) => (A2 = B4)) => (member_event @ A2 @ (insert_event @ B4 @ B)))))). % insertCI
thf(fact_140_insertCI, axiom,
    ((![A2 : msg, B : set_msg, B4 : msg]: (((~ ((member_msg @ A2 @ B))) => (A2 = B4)) => (member_msg @ A2 @ (insert_msg @ B4 @ B)))))). % insertCI
thf(fact_141_insertCI, axiom,
    ((![A2 : agent, B : set_agent, B4 : agent]: (((~ ((member_agent @ A2 @ B))) => (A2 = B4)) => (member_agent @ A2 @ (insert_agent @ B4 @ B)))))). % insertCI
thf(fact_142_insert__subset, axiom,
    ((![X4 : event, A : set_event, B : set_event]: ((ord_le152226328_event @ (insert_event @ X4 @ A) @ B) = (((member_event @ X4 @ B)) & ((ord_le152226328_event @ A @ B))))))). % insert_subset
thf(fact_143_insert__subset, axiom,
    ((![X4 : agent, A : set_agent, B : set_agent]: ((ord_le722097072_agent @ (insert_agent @ X4 @ A) @ B) = (((member_agent @ X4 @ B)) & ((ord_le722097072_agent @ A @ B))))))). % insert_subset
thf(fact_144_insert__subset, axiom,
    ((![X4 : msg, A : set_msg, B : set_msg]: ((ord_less_eq_set_msg @ (insert_msg @ X4 @ A) @ B) = (((member_msg @ X4 @ B)) & ((ord_less_eq_set_msg @ A @ B))))))). % insert_subset
thf(fact_145_parts__cut__eq, axiom,
    ((![X : msg, H : set_msg]: ((member_msg @ X @ (parts @ H)) => ((parts @ (insert_msg @ X @ H)) = (parts @ H)))))). % parts_cut_eq
thf(fact_146_list_Osimps_I15_J, axiom,
    ((![X21 : msg, X22 : list_msg]: ((set_msg2 @ (cons_msg @ X21 @ X22)) = (insert_msg @ X21 @ (set_msg2 @ X22)))))). % list.simps(15)
thf(fact_147_list_Osimps_I15_J, axiom,
    ((![X21 : event, X22 : list_event]: ((set_event2 @ (cons_event @ X21 @ X22)) = (insert_event @ X21 @ (set_event2 @ X22)))))). % list.simps(15)
thf(fact_148_analz__insert__MPair, axiom,
    ((![X : msg, Y3 : msg, H : set_msg]: ((analz @ (insert_msg @ (mPair @ X @ Y3) @ H)) = (insert_msg @ (mPair @ X @ Y3) @ (analz @ (insert_msg @ X @ (insert_msg @ Y3 @ H)))))))). % analz_insert_MPair
thf(fact_149_parts__insert__MPair, axiom,
    ((![X : msg, Y3 : msg, H : set_msg]: ((parts @ (insert_msg @ (mPair @ X @ Y3) @ H)) = (insert_msg @ (mPair @ X @ Y3) @ (parts @ (insert_msg @ X @ (insert_msg @ Y3 @ H)))))))). % parts_insert_MPair
thf(fact_150_parts__insert__Crypt, axiom,
    ((![K3 : nat, X : msg, H : set_msg]: ((parts @ (insert_msg @ (crypt @ K3 @ X) @ H)) = (insert_msg @ (crypt @ K3 @ X) @ (parts @ (insert_msg @ X @ H))))))). % parts_insert_Crypt
thf(fact_151_insert__mono, axiom,
    ((![C2 : set_msg, D : set_msg, A2 : msg]: ((ord_less_eq_set_msg @ C2 @ D) => (ord_less_eq_set_msg @ (insert_msg @ A2 @ C2) @ (insert_msg @ A2 @ D)))))). % insert_mono
thf(fact_152_subset__insert, axiom,
    ((![X4 : event, A : set_event, B : set_event]: ((~ ((member_event @ X4 @ A))) => ((ord_le152226328_event @ A @ (insert_event @ X4 @ B)) = (ord_le152226328_event @ A @ B)))))). % subset_insert
thf(fact_153_subset__insert, axiom,
    ((![X4 : agent, A : set_agent, B : set_agent]: ((~ ((member_agent @ X4 @ A))) => ((ord_le722097072_agent @ A @ (insert_agent @ X4 @ B)) = (ord_le722097072_agent @ A @ B)))))). % subset_insert
thf(fact_154_subset__insert, axiom,
    ((![X4 : msg, A : set_msg, B : set_msg]: ((~ ((member_msg @ X4 @ A))) => ((ord_less_eq_set_msg @ A @ (insert_msg @ X4 @ B)) = (ord_less_eq_set_msg @ A @ B)))))). % subset_insert
thf(fact_155_subset__insertI, axiom,
    ((![B : set_msg, A2 : msg]: (ord_less_eq_set_msg @ B @ (insert_msg @ A2 @ B))))). % subset_insertI
thf(fact_156_subset__insertI2, axiom,
    ((![A : set_msg, B : set_msg, B4 : msg]: ((ord_less_eq_set_msg @ A @ B) => (ord_less_eq_set_msg @ A @ (insert_msg @ B4 @ B)))))). % subset_insertI2
thf(fact_157_mk__disjoint__insert, axiom,
    ((![A2 : event, A : set_event]: ((member_event @ A2 @ A) => (?[B2 : set_event]: ((A = (insert_event @ A2 @ B2)) & (~ ((member_event @ A2 @ B2))))))))). % mk_disjoint_insert
thf(fact_158_mk__disjoint__insert, axiom,
    ((![A2 : msg, A : set_msg]: ((member_msg @ A2 @ A) => (?[B2 : set_msg]: ((A = (insert_msg @ A2 @ B2)) & (~ ((member_msg @ A2 @ B2))))))))). % mk_disjoint_insert
thf(fact_159_mk__disjoint__insert, axiom,
    ((![A2 : agent, A : set_agent]: ((member_agent @ A2 @ A) => (?[B2 : set_agent]: ((A = (insert_agent @ A2 @ B2)) & (~ ((member_agent @ A2 @ B2))))))))). % mk_disjoint_insert
thf(fact_160_insert__commute, axiom,
    ((![X4 : msg, Y4 : msg, A : set_msg]: ((insert_msg @ X4 @ (insert_msg @ Y4 @ A)) = (insert_msg @ Y4 @ (insert_msg @ X4 @ A)))))). % insert_commute
thf(fact_161_insert__eq__iff, axiom,
    ((![A2 : event, A : set_event, B4 : event, B : set_event]: ((~ ((member_event @ A2 @ A))) => ((~ ((member_event @ B4 @ B))) => (((insert_event @ A2 @ A) = (insert_event @ B4 @ B)) = (((((A2 = B4)) => ((A = B)))) & ((((~ ((A2 = B4)))) => ((?[C3 : set_event]: (((A = (insert_event @ B4 @ C3))) & ((((~ ((member_event @ B4 @ C3)))) & ((((B = (insert_event @ A2 @ C3))) & ((~ ((member_event @ A2 @ C3)))))))))))))))))))). % insert_eq_iff
thf(fact_162_insert__eq__iff, axiom,
    ((![A2 : msg, A : set_msg, B4 : msg, B : set_msg]: ((~ ((member_msg @ A2 @ A))) => ((~ ((member_msg @ B4 @ B))) => (((insert_msg @ A2 @ A) = (insert_msg @ B4 @ B)) = (((((A2 = B4)) => ((A = B)))) & ((((~ ((A2 = B4)))) => ((?[C3 : set_msg]: (((A = (insert_msg @ B4 @ C3))) & ((((~ ((member_msg @ B4 @ C3)))) & ((((B = (insert_msg @ A2 @ C3))) & ((~ ((member_msg @ A2 @ C3)))))))))))))))))))). % insert_eq_iff
thf(fact_163_insert__eq__iff, axiom,
    ((![A2 : agent, A : set_agent, B4 : agent, B : set_agent]: ((~ ((member_agent @ A2 @ A))) => ((~ ((member_agent @ B4 @ B))) => (((insert_agent @ A2 @ A) = (insert_agent @ B4 @ B)) = (((((A2 = B4)) => ((A = B)))) & ((((~ ((A2 = B4)))) => ((?[C3 : set_agent]: (((A = (insert_agent @ B4 @ C3))) & ((((~ ((member_agent @ B4 @ C3)))) & ((((B = (insert_agent @ A2 @ C3))) & ((~ ((member_agent @ A2 @ C3)))))))))))))))))))). % insert_eq_iff
thf(fact_164_insert__absorb, axiom,
    ((![A2 : event, A : set_event]: ((member_event @ A2 @ A) => ((insert_event @ A2 @ A) = A))))). % insert_absorb
thf(fact_165_insert__absorb, axiom,
    ((![A2 : msg, A : set_msg]: ((member_msg @ A2 @ A) => ((insert_msg @ A2 @ A) = A))))). % insert_absorb
thf(fact_166_insert__absorb, axiom,
    ((![A2 : agent, A : set_agent]: ((member_agent @ A2 @ A) => ((insert_agent @ A2 @ A) = A))))). % insert_absorb
thf(fact_167_insert__ident, axiom,
    ((![X4 : event, A : set_event, B : set_event]: ((~ ((member_event @ X4 @ A))) => ((~ ((member_event @ X4 @ B))) => (((insert_event @ X4 @ A) = (insert_event @ X4 @ B)) = (A = B))))))). % insert_ident
thf(fact_168_insert__ident, axiom,
    ((![X4 : msg, A : set_msg, B : set_msg]: ((~ ((member_msg @ X4 @ A))) => ((~ ((member_msg @ X4 @ B))) => (((insert_msg @ X4 @ A) = (insert_msg @ X4 @ B)) = (A = B))))))). % insert_ident
thf(fact_169_insert__ident, axiom,
    ((![X4 : agent, A : set_agent, B : set_agent]: ((~ ((member_agent @ X4 @ A))) => ((~ ((member_agent @ X4 @ B))) => (((insert_agent @ X4 @ A) = (insert_agent @ X4 @ B)) = (A = B))))))). % insert_ident
thf(fact_170_Set_Oset__insert, axiom,
    ((![X4 : event, A : set_event]: ((member_event @ X4 @ A) => (~ ((![B2 : set_event]: ((A = (insert_event @ X4 @ B2)) => (member_event @ X4 @ B2))))))))). % Set.set_insert
thf(fact_171_Set_Oset__insert, axiom,
    ((![X4 : msg, A : set_msg]: ((member_msg @ X4 @ A) => (~ ((![B2 : set_msg]: ((A = (insert_msg @ X4 @ B2)) => (member_msg @ X4 @ B2))))))))). % Set.set_insert
thf(fact_172_Set_Oset__insert, axiom,
    ((![X4 : agent, A : set_agent]: ((member_agent @ X4 @ A) => (~ ((![B2 : set_agent]: ((A = (insert_agent @ X4 @ B2)) => (member_agent @ X4 @ B2))))))))). % Set.set_insert
thf(fact_173_insertI2, axiom,
    ((![A2 : event, B : set_event, B4 : event]: ((member_event @ A2 @ B) => (member_event @ A2 @ (insert_event @ B4 @ B)))))). % insertI2
thf(fact_174_insertI2, axiom,
    ((![A2 : msg, B : set_msg, B4 : msg]: ((member_msg @ A2 @ B) => (member_msg @ A2 @ (insert_msg @ B4 @ B)))))). % insertI2
thf(fact_175_insertI2, axiom,
    ((![A2 : agent, B : set_agent, B4 : agent]: ((member_agent @ A2 @ B) => (member_agent @ A2 @ (insert_agent @ B4 @ B)))))). % insertI2
thf(fact_176_insertI1, axiom,
    ((![A2 : event, B : set_event]: (member_event @ A2 @ (insert_event @ A2 @ B))))). % insertI1
thf(fact_177_insertI1, axiom,
    ((![A2 : msg, B : set_msg]: (member_msg @ A2 @ (insert_msg @ A2 @ B))))). % insertI1
thf(fact_178_insertI1, axiom,
    ((![A2 : agent, B : set_agent]: (member_agent @ A2 @ (insert_agent @ A2 @ B))))). % insertI1
thf(fact_179_insertE, axiom,
    ((![A2 : event, B4 : event, A : set_event]: ((member_event @ A2 @ (insert_event @ B4 @ A)) => ((~ ((A2 = B4))) => (member_event @ A2 @ A)))))). % insertE
thf(fact_180_insertE, axiom,
    ((![A2 : msg, B4 : msg, A : set_msg]: ((member_msg @ A2 @ (insert_msg @ B4 @ A)) => ((~ ((A2 = B4))) => (member_msg @ A2 @ A)))))). % insertE
thf(fact_181_insertE, axiom,
    ((![A2 : agent, B4 : agent, A : set_agent]: ((member_agent @ A2 @ (insert_agent @ B4 @ A)) => ((~ ((A2 = B4))) => (member_agent @ A2 @ A)))))). % insertE
thf(fact_182_parts__insertI, axiom,
    ((![C : msg, G : set_msg, A2 : msg]: ((member_msg @ C @ (parts @ G)) => (member_msg @ C @ (parts @ (insert_msg @ A2 @ G))))))). % parts_insertI
thf(fact_183_parts__insert__eq__I, axiom,
    ((![X : msg, H : set_msg]: ((![X6 : msg]: ((member_msg @ X6 @ (parts @ (insert_msg @ X @ H))) => (member_msg @ X6 @ (insert_msg @ X @ (parts @ H))))) => ((parts @ (insert_msg @ X @ H)) = (insert_msg @ X @ (parts @ H))))))). % parts_insert_eq_I
thf(fact_184_analz__cut, axiom,
    ((![Y3 : msg, X : msg, H : set_msg]: ((member_msg @ Y3 @ (analz @ (insert_msg @ X @ H))) => ((member_msg @ X @ (analz @ H)) => (member_msg @ Y3 @ (analz @ H))))))). % analz_cut
thf(fact_185_analz__insertI, axiom,
    ((![C : msg, G : set_msg, A2 : msg]: ((member_msg @ C @ (analz @ G)) => (member_msg @ C @ (analz @ (insert_msg @ A2 @ G))))))). % analz_insertI
thf(fact_186_analz__insert__eq, axiom,
    ((![X : msg, H : set_msg]: ((member_msg @ X @ (analz @ H)) => ((analz @ (insert_msg @ X @ H)) = (analz @ H)))))). % analz_insert_eq
thf(fact_187_analz__insert__cong, axiom,
    ((![H : set_msg, H3 : set_msg, X : msg]: (((analz @ H) = (analz @ H3)) => ((analz @ (insert_msg @ X @ H)) = (analz @ (insert_msg @ X @ H3))))))). % analz_insert_cong
thf(fact_188_analz__insert__eq__I, axiom,
    ((![X : msg, H : set_msg]: ((![X6 : msg]: ((member_msg @ X6 @ (analz @ (insert_msg @ X @ H))) => (member_msg @ X6 @ (insert_msg @ X @ (analz @ H))))) => ((analz @ (insert_msg @ X @ H)) = (insert_msg @ X @ (analz @ H))))))). % analz_insert_eq_I
thf(fact_189_pushCrypts_I6_J, axiom,
    ((![X : nat, K3 : msg, X7 : msg, Y3 : msg, A : set_msg]: ((insert_msg @ (crypt @ X @ K3) @ (insert_msg @ (mPair @ X7 @ Y3) @ A)) = (insert_msg @ (mPair @ X7 @ Y3) @ (insert_msg @ (crypt @ X @ K3) @ A)))))). % pushCrypts(6)
thf(fact_190_analz__insert, axiom,
    ((![X : msg, H : set_msg]: (ord_less_eq_set_msg @ (insert_msg @ X @ (analz @ H)) @ (analz @ (insert_msg @ X @ H)))))). % analz_insert
thf(fact_191_gen__analz__insert__eq, axiom,
    ((![X : msg, H : set_msg, G : set_msg]: ((member_msg @ X @ (analz @ H)) => ((ord_less_eq_set_msg @ H @ G) => ((analz @ (insert_msg @ X @ G)) = (analz @ G))))))). % gen_analz_insert_eq
thf(fact_192_parts__insert__subset, axiom,
    ((![X : msg, H : set_msg]: (ord_less_eq_set_msg @ (insert_msg @ X @ (parts @ H)) @ (parts @ (insert_msg @ X @ H)))))). % parts_insert_subset

% Conjectures (2)
thf(conj_0, hypothesis,
    ((member_event @ (says @ s @ a @ (crypt @ ka @ (mPair @ n @ (mPair @ b @ (mPair @ k @ x))))) @ (set_event2 @ evs)))).
thf(conj_1, conjecture,
    ((member_msg @ x @ (parts @ (knows @ spy @ evs))))).
